Agent_Planning 面试专题手册
💡 本章节共收录 438 道面试真题,建议每天复习 10-20 题。
Q1: 相比于CoT,ReAct在模型与外部环境交互时解决了什么问题?
【核心解析】 CoT仅依赖内部推理的局限性;ReAct交替推理与行动以获取外部反馈;解决幻觉和知识陈旧问题;增强决策的实时性和适应性
Q2: 为什么用LangGraph构建状态图?如何定义循环终止条件防止Agent陷入逻辑死循环?
【核心解析】 LangGraph通过状态图显式管理Agent的决策流程,支持条件分支和循环,适合复杂多步任务;循环终止条件可基于最大步数、任务完成信号或LLM判断;需设计合理的停止机制避免无限循环消耗资源;状态图便于调试和可视化Agent行为;与ReAct等模式结合可提升可控性。
Q3: 了解ToT或者GoT吗?
【核心解析】 ToT(思维树)通过树状结构探索多条推理路径,支持回溯和评估,提升复杂推理能力;GoT(思维图)将推理建模为有向图,允许合并和循环,更灵活;两者均用于增强LLM的规划与推理;需设计评估函数选择最优路径;与链式推理相比,能处理多步规划和不确定性。
Q4: 当用户提问很含糊时,你的Agent是直接检索知识库,还是先进行反问确认?
【核心解析】 设计意图识别模块,判断模糊程度和歧义性;若关键信息缺失,优先反问澄清,避免无效检索;可结合检索结果辅助生成澄清问题;设置反问次数上限,防止对话陷入循环;在特定场景下可尝试基于模糊查询检索并给出带置信度的回答
Q5: 在LangGraph中,Node和Edge分别代表业务流中的什么?
【核心解析】 Node代表具体的执行步骤或状态,如LLM调用、工具执行;Edge代表控制流,决定节点间的转移条件;通过图结构可定义复杂的多步骤Agent逻辑;支持条件边,实现动态路由和循环;便于可视化与调试Agent工作流。
Q6: 对于Agent多步推理带来的延迟问题,有哪些优化方法?
【核心解析】 模型推理优化:使用更高效的推理框架、量化、剪枝等技术加速单步推理;缓存机制:对重复或相似的子问题缓存结果,避免重复计算;并行执行:将无依赖的子任务并行处理;提前停止:当置信度足够高时提前终止推理链;规划优化:改进规划算法,减少不必要的探索步骤;流式输出:边推理边输出,降低用户感知延迟。
Q7: Agent的循环流程是什么?每个阶段怎么做的?请举例说明。
【核心解析】 典型循环包括计划、执行、观察、评估;计划阶段分解任务并选择工具;执行阶段调用工具并获取结果;观察阶段解析反馈;评估阶段判断是否达成目标或需继续循环;举例说明如多步问答或数据检索场景。
Q8: 遇到Agent陷入死循环或执行时间过长时,你是怎么处理的?
【核心解析】 设置最大迭代步数或超时时间强制终止;引入重复检测机制,如状态哈希或动作相似度比较;在Prompt中明确终止条件;记录日志并触发人工干预或降级策略。
Q9: 你提到那个self-refine/自我修正,你做过哪些修正策略?
【核心解析】 自我反思与迭代改进机制;基于外部反馈的修正;修正策略的触发条件与停止标准
Q10: 请详细介绍 AI 智能体的典型 workflow,并以 RAG 知识库为例说明其设计要点。
【核心解析】 多阶段任务流:意图识别、任务规划、工具选择、检索增强、生成、校验;RAG 中结构化与非结构化数据分离;向量检索结合元数据过滤(租户、时间、权限等);rerank 与 prompt 组装;证据校验与结果落库
Q11: Agent 流程中执行一个 step 又产生了新的问题,应该怎么处理?
【核心解析】 采用动态规划或 replan 机制,将新问题插入任务队列;评估新问题的优先级与依赖关系;支持子任务分解与递归求解;设置最大迭代次数防止无限扩展。
Q12: Agent 是如何判断已经收集了足够的信息,并最终给出输出结论的?
【核心解析】 定义信息充分性阈值或置信度指标;利用终止条件判断(如达到最大步数、信息增益低于阈值);结合任务类型设置硬性停止规则;使用评估模型对当前状态进行打分。
Q13: 遇到 Agent 陷入死循环时,你是怎么处理的?
【核心解析】 设置最大执行步数或超时强制终止;检测重复状态或动作序列进行循环识别;引入随机扰动或回退策略打破循环;记录循环日志用于事后分析与优化。
Q14: 大模型如何判断何时使用 MCP 工具而不是直接回答?
【核心解析】 不能完全依赖模型自由判断,需要工程路由层;路由层判断用户问题是否需要实时数据、内部系统数据、权限数据或可执行动作;若为通用概念问题则直接回答;否则触发工具调用流程
Q15: 请解释ReAct模式在智能体项目中的工作原理。
【核心解析】 ReAct模式结合推理与行动;交替生成思考轨迹和任务动作;与外部环境交互获取信息;动态更新上下文;提升复杂任务解决能力。
Q16: agent 执行 step 之后,问题没有解决怎么办?
【核心解析】 Agent 应具备错误恢复和重规划能力:可设置最大重试次数,调整参数或换用其他工具;若多次失败,可触发澄清机制向用户询问更多信息;或记录失败原因,回退到上一状态尝试替代路径;也可通过评估当前进度,判断是否需要终止任务或转人工。
Q17: ReAct和Reflection分别是什么
【核心解析】 ReAct:推理与行动交替进行,结合思维链和工具调用;Reflection:在行动后增加自我反思与评估环节,用于改进后续行为;两者在循环结构上的差异;Reflection如何提升任务成功率;典型应用场景
Q18: ReAct里人能不能介入
【核心解析】 Human-in-the-loop的概念;在ReAct循环中插入人工确认或干预的时机;人介入对安全性和准确性的影响;实现方式(如暂停等待输入);与全自动Agent的权衡
Q19: Reflection比ReAct多出来的核心价值是什么
【核心解析】 自我评估与纠错能力;从错误中学习并调整策略;提高复杂任务的鲁棒性;减少重复错误;对长期任务和开放域问题的适应性
Q20: 如果让你设计一个自动拉日志的 Agent,整体流程是怎样的?如果这个 Agent 要扩展到自动检测、排障、自动化修复,架构怎么演进?
【核心解析】 设计感知-规划-执行-反馈的闭环流程;利用 LLM 进行日志分析和异常检测;集成监控告警触发 Agent 自主运行;构建可扩展的工具集和知识库;考虑多步骤推理和故障树分析;引入安全机制防止误操作。
Q21: 在 RAG 中,单轮检索与多轮推理分别适用于什么场景?实际工程中如何选择?
【核心解析】 单轮 RAG 适用于简单事实查询(如函数定义位置),成本低、延迟小、结果稳定;多轮推理适用于需要跨文件、多跳依赖和动态证据整合的复杂问题,但可能引入路径漂移、上下文膨胀和重复调用;实际工程中通常先做查询分类,根据问题复杂度路由到单轮或多轮链路,而非二选一。
Q22: Agent 如何解决死循环问题?
【核心解析】 设置最大步数或超时限制;循环检测算法(如记录状态哈希);引入人工干预或确认机制;基于强化学习的终止策略
Q23: 如何处理Agent中的死循环?
【核心解析】 循环检测机制(如重复状态检测、步数限制);终止条件设定;基于LLM的自我反思与重规划;安全兜底策略
Q24: Agent prompt动态上下文如何加载?重新再看Agent这个项目,有哪些优化点或新的思考?
【核心解析】 动态上下文加载机制(基于检索、用户状态、任务进度);上下文窗口管理(摘要、截断、记忆压缩);Agent优化方向(规划能力、工具使用效率、记忆持久化);反思与自我改进机制;多模态上下文的融合
Q25: 在Agent的查询理解中,如何处理复杂查询的分解(query decomposition)?请举例说明。
【核心解析】 复杂查询需拆分为多个子问题分别召回;避免单一查询导致召回混乱;对包含代码或报错日志的查询,保留关键错误码和接口名,不过度语义改写
Q26: 如果重新设计 Agent 架构,结合最新的 Agent 技术演进,你会怎么做?
【核心解析】 采用图结构编排替代线性链,支持动态路由和循环;引入规划模块(如 ReAct、Plan-and-Execute)提升推理能力;集成记忆系统(短期/长期)和 RAG 增强知识获取;使用工具调用标准化接口(如 MCP);考虑多 Agent 协作和评估安全机制。
Q27: LangGraph 的图编排模式与 Claude Code/OpenClaw 等模式有何差异?
【核心解析】 LangGraph 是显式图结构,开发者定义节点和边,控制流清晰;Claude Code/OpenClaw 可能采用隐式规划或代码生成方式,由模型自主决策步骤;LangGraph 更适合需要精确控制流程的场景;后者更依赖模型能力,灵活性高但可控性低;LangGraph 支持状态持久化和断点恢复。
Q28: 系统中是否使用了ReAct模式?请解释其原理。
【核心解析】 ReAct模式交替进行推理和行动,让模型在思考后调用工具并观察结果;它增强了模型处理复杂任务的能力;通过提示词引导模型生成推理轨迹和行动指令;适用于需要多步交互和动态调整的场景;与纯推理或纯行动模式相比,ReAct更灵活。
Q29: workflow和agent的主要的区别
【核心解析】 Workflow:预定义步骤、确定性流程、无自主决策,适合标准化任务;Agent:自主规划、动态决策、可调用工具,适合开放域任务;Agent具备观察、思考、行动循环(ReAct模式),Workflow是静态DAG;Agent能处理异常和未知情况,Workflow需预设所有分支;在复杂应用中两者常结合,如Agent调用Workflow作为工具
Q30: 如果一个 Agent 推理链路包含多个工具和高频请求,整体延迟较高,你会如何优化?
【核心解析】 先拆解链路,定位延迟瓶颈(模型、工具、网络或排队);优化方法包括:并行化可并行工具、缩短上下文、压缩工具返回、提前缓存高频结果、对低价值步骤降级或跳过;对高频请求可做请求合并、热点缓存和异步预取;避免所有步骤串行硬跑,防止单个慢点放大到整体体验。
Q31: 在 Modular Agent 中,如何实现多步规划以避免任务失败时全盘重来?
【核心解析】 不一次性生成完整计划,而是先做任务分解,为每一步建立状态和约束;计划层维护目标、子目标、依赖关系、已完成动作和待执行动作,执行层只负责当前一步;遇到失败时可局部回退,避免整个任务重来;关键是将计划与执行分离,确保中间出错时能明确回退点。
Q32: Agent没有训练的话,在推理过程中,它怎么知道自己要调用什么工具
【核心解析】 基于LLM的推理能力进行工具选择;通过提示词工程引导工具调用决策;工具描述与上下文学习的作用;ReAct等推理-行动框架的原理
Q33: 长任务Agent为什么常常不是死在模型能力,而是死在状态恢复?
【核心解析】 长任务中最致命的问题不是单步推理错误,而是中断后无法接续,如工具超时、用户插入新需求、网络断开、服务重启等;缺乏状态恢复能力会导致从头开始,造成重复调用、重复写入、重复扣费甚至重复外发;真正可用的长任务Agent必须有checkpoint、事件日志和可重放机制;模型负责局部推理,系统负责保存任务连续性,如通过TaskState类记录目标、步骤、完成状态和历史
Q34: ReAct 的几种模式差异是什么,为什么很多实现最后都要做成显式状态机?
【核心解析】 原始 ReAct 是 Thought-Action-Observation 交替,模型边想边做,但生产环境易出现无限思考、乱调工具、观察污染后续推理;改进模式向显式状态机收敛,将计划、执行、观察、重试、回退和终止条件写入系统运行时;模型负责局部决策,系统负责全局约束;工业可用的 ReAct 重点在于每一步都在受控状态里思考;状态机可保证执行边界清晰、失败可恢复。
Q35: 为什么要做思维链,这里会不会涉及到过度设计
【核心解析】 思维链(CoT)的原理与作用;提升推理能力与可解释性;过度设计的判断标准;适用场景与局限性
Q36: 为什么要做反思验证
【核心解析】 反思验证的定义与目的;提升Agent输出准确性与可靠性;自我纠错机制;在复杂任务中的必要性
Q37: 意图识别和问题重写是用一个模型做的吗
【核心解析】 意图识别和问题重写可以分开或合并实现;合并模型可减少延迟,但可能影响各自精度;分开模型更灵活,便于单独优化;多任务学习或统一模型的设计思路;实际应用中需权衡性能和资源
Q38: 在Agent中是否加入了CoT(思维链)之类的内容?效果如何?
【核心解析】 CoT的引入方式:在Prompt中引导逐步推理;CoT对复杂推理任务的效果提升;可能的问题:推理步骤错误、效率降低;结合工具调用或RAG的CoT设计
Q39: 如果用Agent的切分方法,上下文过长怎么办?
【核心解析】 上下文窗口限制与token管理;分段处理与摘要策略;记忆模块的压缩与检索;任务分解与子任务调度;长短期记忆结合机制
Q40: 介绍一下ReAct范式
【核心解析】 ReAct(Reasoning + Acting)交替推理与行动;思维链(Chain-of-Thought)与行动观察循环;工具调用与外部环境交互;提升可解释性与任务成功率;与纯推理或纯行动模型的对比
Q41: ReAct和Agent Loop的区别是什么?
【核心解析】 ReAct强调推理与行动交替的特定模式;Agent Loop泛指Agent的感知-规划-行动循环;ReAct是Agent Loop的一种实现方式;Loop可能包含更复杂的控制流(如条件分支、多步规划);ReAct更侧重语言模型驱动的推理步骤
Q42: 智能客服Agent应该用ReAct还是WorkFlow的设计模式?二者的应用场景是什么?
【核心解析】 ReAct适用于需要动态推理和工具调用的场景;WorkFlow适用于流程固定、步骤明确的任务;智能客服中简单查询可用WorkFlow,复杂问题需ReAct;混合模式结合两者优势;根据业务需求权衡灵活性与可控性
Q43: 结合具体业务,如果让你设计一个agent,你会如何设计?
【核心解析】 明确业务需求与agent目标;设计agent的规划与决策机制(如ReAct、Plan-and-Execute);选择合适的工具调用与记忆模块;考虑多轮交互与上下文管理;评估系统的可扩展性与鲁棒性
Q44: LangGraph 中状态机的设计是怎样的?状态之间如何流转?
【核心解析】 LangGraph 基于有向图的状态管理机制;节点与边的定义;状态更新与条件路由;与 Agent 决策循环的结合
Q45: Agent中Planner的使用场景有哪些?
【核心解析】 复杂任务分解为可执行的子任务;多步骤推理与决策;动态调整计划以适应环境变化;协调多个子Agent或工具调用;在不确定环境中进行路径规划
Q46: 什么是ReAct?它的Agent执行流程是怎样的?
【核心解析】 ReAct是Reasoning和Acting交替进行的范式;流程包括:接收任务→思考(Thought)→行动(Action)→观察(Observation)→循环直至完成;结合了思维链推理和工具调用;每一步行动后根据反馈调整后续推理;常用于需要与环境交互的任务
Q47: 如何通过SFT提升Agent的规划(Plan)能力?
【核心解析】 构造高质量的规划指令数据集;使用监督微调让模型学习分解任务和生成步骤;结合强化学习优化规划策略;引入过程奖励模型评估中间步骤;多任务训练增强泛化能力
Q48: 主Agent的意图识别是怎么做的?
【核心解析】 基于分类模型或LLM对用户输入进行意图分类;结合上下文对话历史提升准确率;使用few-shot或指令微调让模型输出结构化意图标签;多轮交互中动态修正意图;可结合槽位填充获取参数。
Q49: 请介绍 ReAct 模式,并说明在什么场景下应该使用 ReAct,什么场景下更适合使用 Plan-Execute 模式。
【核心解析】 ReAct 模式的定义与工作流程(推理与行动交替);Plan-Execute 模式的特点(先规划后执行);ReAct 适用于动态、不确定、需要逐步推理的环境;Plan-Execute 适用于任务明确、步骤可预先规划的场景;两者在灵活性与效率上的权衡
Q50: 你觉得 Cursor 和 Claude Code 分别更接近哪种 Agent 模式(ReAct / Plan-Execute)?
【核心解析】 ReAct 模式的定义与推理-行动循环;Plan-Execute 模式的分阶段规划与执行;Cursor 的交互方式与模式匹配;Claude Code 的交互方式与模式匹配;两种模式在实际产品中的融合体现
Q51: 智能客服Agent应该用ReAct还是WorkFlow的设计模式,二者的应用场景
【核心解析】 ReAct模式的特点(推理与行动交替)与适用场景;WorkFlow模式的特点(预定义流程)与适用场景;智能客服中多轮对话与任务确定性对模式选择的影响;两种模式在灵活性、可控性、开发成本上的权衡;混合模式的可能性
Q52: Agent架构上还有什么优化?
【核心解析】 规划能力的增强(如分层规划、动态重规划);记忆机制的改进(如向量数据库、摘要记忆);工具调用的可靠性(如结构化输出、错误处理);多Agent协作与通信;推理效率优化(如缓存、并行执行)
Q53: Agent中的Planner规划机制是怎么样的?
【核心解析】 Planner负责将复杂任务分解为可执行的子任务或步骤序列;常见实现包括基于LLM的思维链(CoT)、树搜索(ToT)、ReAct框架等;规划需考虑任务依赖、资源约束和中间结果反馈;动态规划能根据环境变化或执行结果调整后续计划;评估规划质量需看任务完成率、执行效率和容错能力。
Q54: 你的ReAct范式是怎么做的?
【核心解析】 ReAct交替进行推理(Reasoning)和行动(Acting),让Agent在思考中调用工具并观察结果;实现时需设计思考-行动-观察的循环提示模板;推理步骤生成行动计划,行动步骤执行工具调用;观察结果反馈到下一轮推理;需处理工具调用失败或意外结果的重新规划。
Q55: 用户发散提问很多时,系统如何将对话收敛到可执行的排障路径?
【核心解析】 将用户问题映射到结构化任务槽位(如服务名、环境、时间范围、异常现象、影响范围、最近变更);关键槽位未补齐前不生成执行方案;每轮对话需产生结构化增量(如JSON),而非仅累积自然语言;通过槽位填充逐步收敛状态,避免无效探索。
Q56: 面对模糊度很高的任务,如何拆解以避免反复返工?
【核心解析】 先定义问题边界、约束条件、验收口径和不可触碰的红线;拆解为可独立验证的小阶段;AI系统需先产出结构化任务定义,而非直接生成结果;避免目标定义模糊导致后续调优无效。
Q57: 请为智能导购Agent编写Prompt,使其能进行意图识别。
【核心解析】 Prompt需明确Agent角色和任务;定义意图类别(如商品咨询、比价、下单、售后等);提供示例(few-shot)以规范输出格式;要求输出结构化意图标签及置信度;考虑多轮对话中的上下文关联。
Q58: Agent 执行循环时,如何判断是否需要执行下一个循环?
【核心解析】 终止条件设定(如达到最大步数、任务完成信号);基于模型输出的停止判断(如生成特殊停止 token);外部反馈或环境信号;循环内的状态检查与错误处理;动态规划与重规划机制
Q59: Agent的三种范式(ReAct、Plan-and-Execute、Reflection)的核心区别是什么?
【核心解析】 ReAct边想边干,交替推理和行动,适合简单任务;Plan-and-Execute先规划再执行,适合长流程复杂任务;Reflection在执行后检查修正,输出高质量结果。
Q60: Planner/Executor/Supervisor模式中,如果Planner做步骤规划时出现循环依赖或某一步失败,Supervisor是怎么处理的?
【核心解析】 循环依赖的检测与打破机制;失败步骤的重试与回退策略;Supervisor的监控与干预逻辑;任务依赖图与状态管理;动态重规划与异常处理
Q61: ReAct 模式和 Chain of Thought (CoT) 的区别是什么?
【核心解析】 ReAct 将推理与行动交替进行,适合需要与环境交互的任务;CoT 是纯推理链,不涉及外部行动;ReAct 能动态获取外部信息,CoT 仅依赖内部知识;ReAct 适用于工具调用场景,CoT 适用于数学推理等静态问题;两者可结合使用以提升性能。
Q62: 设计一个行程规划Agent,最关键的不是“会规划”,而是哪几个不可省的模块?
【核心解析】 行程规划Agent需处理硬约束、软偏好和外部变化;不可省模块包括约束解析、候选方案召回、冲突消解、成本估计、日程编排、工具调用和异常重规划;难点在于当机票价格、天气、景点营业时间和用户临时改需求同时变化时,系统仍保持全局一致,而非局部修补。
Q63: 这种Agent的扩展能力应该预留在什么地方,才不会后面一加功能就重构?
【核心解析】 扩展能力应放在系统结构上,而非依赖prompt的抽象;需将约束求解、工具层、状态存储、评分函数和输出模板解耦;新增能力时只需在候选生成或评分层扩展,避免重写主流程;扩展性来自模块边界清晰和中间表示稳定,而非单个模型的能力。
Q64: 从入口到结果回写,一个完整的Agent项目架构设计应覆盖哪些关键组件?
【核心解析】 输入适配(文本、语音、截图、事件流统一成内部消息);会话状态管理;意图路由;规划执行(单Agent直做或拆给多个子Agent);工具层(搜索、知识库、数据库、业务API、外部应用);结果验证;记忆写入;观测闭环
Q65: ReAct 机制在生产环境里怎么设计,为什么不能只靠 prompt 写几句 Thought/Action?
【核心解析】 纯 prompt 版 ReAct 缺乏结构化控制,易出现格式错误或无限循环;生产环境需引入解析器、重试机制、超时控制;需结合工具调用状态管理,确保动作可执行与可观测;需考虑上下文窗口限制与成本优化;需与业务系统集成,如日志、监控、错误恢复。
Q66: 主 Agent 的意图识别应该如何设计,为什么单轮分类器经常不够用?
【核心解析】 意图识别需考虑历史状态、未完成任务、工具返回和用户角色,不能仅做句子级分类;应构建带状态的判别过程,先抽取当前显式动作,再结合历史任务栈、未决槽位和环境事件判断用户意图(如追问、纠错、切换任务、补参数或启动新流程);单轮分类器缺乏上下文依赖,无法处理“用户上一轮已请求过”等场景。
Q67: 用户一次提多个需求时,Agent 的任务分解应如何设计以避免互相污染?
【核心解析】 先识别需求间的依赖关系、资源冲突和共享上下文;对于独立需求(如总结会议、查竞品价格、写邮件),拆分为独立子任务并维护各自状态;避免过度拆分,确保输入和产出不交叉污染。
Q68: 什么是SDD(Spec/Schema Driven Development),为什么它适合复杂Agent系统?
【核心解析】 SDD是一种规范驱动的开发思路,显式定义任务输入输出、状态约束、工具协议、错误语义和验收标准;让Prompt、执行器、评测和日志围绕统一规范运行,减少系统混乱;适合Agent系统因为其多环节、多状态、多失败模式,需要统一规范来校验工具参数、检查状态迁移和分类异常;将不可控的自然语言流程压缩为部分可验证的执行结构;对多Agent系统,没有spec容易失控
Q69: OpenSpec的设计思路是什么,核心优缺点在哪?
【核心解析】 核心思路是将任务目标、角色边界、工具协议、约束条件、输出格式和中间状态显式化,减少对隐式prompt的依赖;优点包括可观测、可测试、可扩展、可替换模型,适合团队协作;缺点包括前期抽象成本高,规格差时比自由prompt更僵,开放任务需不断扩展schema;真正难点在版本演化,spec变更会影响工具层、执行层、评测层和历史数据兼容性;更像系统工程而非提示词工程
Q70: 推理加速的方法有哪些?
【核心解析】 模型量化(INT8/INT4);KV Cache 优化;投机采样;算子融合;并行解码;蒸馏与剪枝
Q71: 智能体范式 ReAct 和 Reflection 的区别是什么?
【核心解析】 ReAct 交替进行推理与行动,强调思考-行动-观察循环;Reflection 在行动后增加自我反思与修正步骤;ReAct 适合动态环境交互,Reflection 更注重自我改进;两者可结合使用
Q72: 如何处理用户低质量、语义模糊的提问,以保证系统稳定且不显得笨拙?
【核心解析】 不能直接让模型自由发挥,否则容易在错误方向上深入;需要先进行意图澄清或问题分解;可结合上下文推断用户真实需求;采用渐进式确认或提供多个可能的解释方向;在工程上可设置安全兜底策略,避免生成无意义或有害内容。
Q73: Planner/Executor/Supervisor 模式的优点是什么?
【核心解析】 将任务分解、执行和监控职责分离,提高复杂任务的处理效率;Planner 负责制定计划,Executor 执行具体步骤,Supervisor 监控进度并处理异常;增强系统的模块化和可维护性;支持并行执行和错误恢复;适用于需要多步骤、多工具协作的场景。
Q74: 在 Planner/Executor/Supervisor 模式中,拆分为三个 Agent 与只使用一个 Agent 相比,最关键的优势和区别是什么?
【核心解析】 拆分后各 Agent 职责单一,降低单个 Agent 的认知负荷;Planner 专注策略,Executor 专注执行,Supervisor 专注监控,提高整体鲁棒性;更容易进行错误定位和恢复;支持更复杂的任务流程和并行处理;单 Agent 模式在简单任务中可能更高效,但复杂任务中易出现上下文混乱和错误累积。
Q75: 你这个 Agent 的自主规划执行有没有轮次限制?如何控制规划与执行的边界?
【核心解析】 规划执行的最大步数或时间限制;防止无限循环或无效重试的机制;规划与执行的分离或交织模式;基于置信度或外部反馈的动态停止条件;轮次限制对任务完成率和资源消耗的平衡
Q76: 如何规范Agent在调用Skill后的行为,使其严格按照Skill定义的流程执行?
【核心解析】 Skill的标准化描述(如JSON Schema);行为约束机制(状态机、规则引擎);执行监控与异常处理;与规划模块的集成;确保可解释性与可控性
Q77: LangGraph如何实现代替ReAct这个循环,代码上具体是如何实现的
【核心解析】 LangGraph的图结构定义与状态管理;用节点和边表示ReAct的思考-行动-观察循环;条件边实现循环控制;代码中如何构建和编译图;与ReAct模式的对比优势
Q78: CoT(思维链)的核心原理、在教育场景的价值与优化方法有哪些?
【核心解析】 核心原理是让大模型生成中间推理步骤,提升推理能力与可解释性;在教育场景中,帮助学生理解解题思路、掌握知识点、培养逻辑思维,提升复杂题目解答准确率;优化方法包括自洽性检查、多步推理优化、提示工程优化、思维链蒸馏、工具调用增强
Q79: 智能体开发有哪些常见范式?分别适合什么场景?
【核心解析】 单Agent+Tool:中小复杂度任务,成本低,调试简单;Planner-Executor:需先分解再执行的任务,如代码修复、复杂问答;Supervisor多智能体:角色边界清晰的任务,如规划、检索、审计分工;Graph State Machine:强可控和可恢复的生产链路;落地建议从单Agent或图式workflow开始,按需升级。
Q80: Agent 的规划、执行、反思三段式链路怎么设计?
【核心解析】 规划阶段将用户目标拆解为可执行步骤,显式标注所需工具、输入依赖和终止条件;执行阶段严格按步骤推进,记录中间状态和工具返回,减少隐式假设;反思阶段基于执行轨迹检查目标完成度、证据充分性、关键工具调用和冲突规则触发;反思需设定预算(如最大重试轮数、回滚条件、人工接管规则),避免无限循环导致成本和时延失控
Q81: Agent 里单个节点的 token 预算一般怎么控制,为什么这件事比想象中更重要?
【核心解析】 token 预算控制信息密度与系统成本;预算过松导致推理成本、时延和噪声上升;预算过紧导致关键证据缺失,模型凭先验猜测;不同节点分配不同预算(规划节点需高抽象信息,执行节点需精确结构化输入,审查节点需摘要和关键证据);预算需与节点角色、上下文来源、历史长度及模型窗口动态联动
Q82: 请解释ReAct原理、tool calling、任务拆解,并说明如何设计一个数据分析Agent的架构,包括memory设计、多Agent协作、幻觉控制、成本管理、失败重试与评估。
【核心解析】 ReAct结合推理与行动,交替生成思考与工具调用;tool calling需定义清晰的工具接口和调用策略;任务拆解将复杂任务分解为稳定子任务;架构设计需考虑memory存储上下文与状态;多Agent协作需明确角色与通信;幻觉控制通过校验与约束;成本管理优化调用次数;失败重试与评估建立鲁棒流程
Q83: 在Agent系统中,如何进行任务拆解?为什么任务拆解很重要?
【核心解析】 任务拆解是将复杂任务分解为更小、可执行的子任务;拆得越细,Agent执行时越不容易跑偏,减少幻觉和无关输出;拆解方法包括基于规则、提示工程或模型自身规划能力;拆解后每个子任务可独立调用工具或推理,便于错误恢复和并行执行;是避免Agent直接硬上、输出一堆废话的关键步骤。
Q84: 在构建Agent框架时,LangChain和LangGraph有什么区别?各自适用于什么场景?
【核心解析】 LangChain的链式调用与线性工作流特点;LangGraph的图结构支持循环与条件分支;状态管理与持久化差异;复杂决策场景下的适用性对比;与工具调用和记忆模块的集成方式
Q85: 如何理解Agent中“想清楚-干一步-看结果”的循环?在实际项目中如何实现这种循环?
【核心解析】 ReAct模式或类似思考-行动-观察循环的原理;规划与执行的解耦;基于反馈的动态调整机制;避免模型幻觉与盲目猜测;循环终止条件的设计
Q86: 有没有遇到过 agent 陷入死循环的情况?如何解决?
【核心解析】 设置最大步数或超时限制;引入循环检测机制,如状态哈希比较;使用规划器生成可执行计划,避免无效动作;增加人工干预或回退策略;优化提示词,减少模型幻觉导致的重复行为
Q87: 如何通过任务分解和逐步生成来提高Agent代码生成的稳定性?
【核心解析】 明确输入、输出、约束条件和异常场景;将任务拆解为子任务(接口定义、业务逻辑、异常处理、测试);逐步生成并验证中间结果;利用结构化提示词引导Agent按步骤执行;减少一次性生成完整功能的歧义
Q88: 了解过spec-driven的code agent吗?
【核心解析】 Spec-driven code agent基于规范或规格说明生成代码;理解如何将需求规格转化为可执行计划;与传统代码生成的区别;spec-driven方法如何提高代码质量和可维护性;相关工具或框架(如OpenAI Codex with spec)
Q89: Agent 多轮对话中有哪些难点?
【核心解析】 上下文管理与状态保持;意图识别与槽位填充的持续性;多轮对话中的指代消解与省略补全;对话策略与流程控制;错误恢复与澄清机制。
Q90: 是否了解 Agent 的设计范式,例如 ReAct 范式?
【核心解析】 ReAct 范式(推理与行动交替);思维链(CoT)与思维树(ToT);规划-执行-反思循环;工具调用与观察反馈;不同范式在复杂任务中的适用性
Q91: 你的 Agent 循环一般多少步可以完成任务,有没有出现过达到最大步数仍无法完成的情况?
【核心解析】 步数统计与任务复杂度关系;最大步数设置策略;无法完成时的兜底机制(如任务拆分、人工干预);循环效率优化(如早停、并行);步数超限的根因分析与改进
Q92: 你的 Agent 编排流程中有没有做 Plan 阶段?
【核心解析】 Plan 阶段的作用与设计;任务分解与依赖关系;动态规划与静态规划;规划的可解释性;规划失败时的重新规划策略
Q93: 在Agent系统中,如何理解“状态”与“上下文”的区别,以及为什么需要显式状态?
【核心解析】 上下文是模型看到的输入材料,状态是系统对任务推进过程的结构化刻画;模型不天然擅长长期状态一致性,仅靠对话历史难以维持执行;状态通常包括当前阶段、已完成子任务、失败次数、已调用工具、关键中间结果、待确认信息等;显式状态让系统明确告知模型当前节点,避免模型从自然语言中自行猜测任务进度;Agent不稳定的本质常在于缺乏显式状态而非上下文不足
Q94: 在Agent系统中,如何决定何时追问用户、何时继续自主推理?
【核心解析】 若缺失的信息可由外部系统补齐(如通过工具调用获取),应自主推理;若缺失的是用户意图、偏好或关键决策信息,且无法从上下文推断,应追问用户;需评估信息缺失对任务完成的影响程度,避免在不必要的情况下打断用户;可结合任务状态和置信度阈值进行决策
Q95: CoT和ToT的核心原理是什么?
【核心解析】 CoT(思维链)通过逐步推理分解复杂问题,提升逻辑性;ToT(思维树)在CoT基础上扩展为树状搜索,探索多条推理路径;ToT利用广度优先或深度优先搜索结合剪枝策略;两者均通过中间步骤增强模型推理能力。
Q96: ReAct了解过吗?
【核心解析】 ReAct将推理(Reasoning)和行动(Acting)交替结合;模型生成思考轨迹和动作,并观察环境反馈;适用于需要与外部环境交互的任务;相比纯推理或纯行动模式,能动态调整策略。
Q97: 如果让你设计一个Agent的规划器,怎么避免它每一步都重新规划,导致路径震荡?
【核心解析】 引入状态表示,记录当前子目标、已完成步骤、失败原因和剩余预算;采用局部调整策略,仅在当前阶段内微调具体动作;设置重规划阈值,仅在关键前提失效、连续失败或用户目标变化时触发重规划;避免将每次新观察视为全新任务,保持规划连续性。
Q98: 如果一个Agent需要同时读知识库、调外部API、再结合用户历史偏好回答,你怎么处理这三类上下文的优先级?
【核心解析】 根据任务目标动态确定优先级,如实时性要求高时优先API;用户历史偏好用于个性化,但需验证时效性;知识库提供稳定事实,作为基础参考;设计融合机制,如加权检索或分层决策;考虑冲突时的消解策略,如以用户偏好为准但提示知识库差异。
Q99: 如果分模块输入任务,agent是否会对整个需求缺乏认知,导致成果不符合预期?如何解决?
【核心解析】 模块化任务分解与全局目标对齐;通过接口定义和约束确保模块间一致性;借鉴人类协作模式(独立worktree、明确接口契约、定期同步)
Q100: 讲讲ReAct,还有什么其他减少幻觉的技术
【核心解析】 ReAct原理:交替生成推理轨迹和行动,与外部环境交互获取信息;减少幻觉技术:检索增强生成(RAG)、自我反思与验证、工具调用获取事实、思维链提示、事实核查机制