核心要点

  • 能讲清 Agent 的本质:用 LLM 在运行时动态决定下一步调用哪个工具,而非提前编排好步骤

  • 能背出 ReAct 循环:思考(Thought)→ 选工具与入参(Action)→ 执行工具 → 观察结果(Observation)→ 回到思考,直到得出最终答案,整个循环由 AgentExecutor 驱动

  • 能说清与 Chain 的区别:Chain 是预定义、确定性的固定流程(输入→步骤A→步骤B→输出),Agent 是运行时由模型决策的不确定流程

  • 能点出 2026 的工程现状:复杂、多步、需要分支与状态的 Agent 推荐用 LangGraph 显式建图,旧的 AgentExecutor 适合简单单 Agent 场景

标准回答

Agent 是什么

Agent 是一个以 LLM 为决策核心的循环系统。它拿到用户目标后,不走固定脚本,而是每一步都让模型读取当前状态、判断「下一步该做什么」——是调用某个工具,还是已经可以给出最终答案。

ReAct 执行流程

主流 Agent 遵循 ReAct(Reasoning + Acting)范式,单步分为:

  • Thought(思考):模型推理当前要解决什么子问题。
  • Action(行动):模型输出要调用的工具名与结构化入参。
  • Observation(观察):执行工具,把返回结果喂回上下文。

这三步(Thought→Action→Observation)首尾相接构成一个循环,由 AgentExecutor 反复驱动:它负责解析模型输出、真正执行工具、把 Observation 拼回 prompt,并控制最大迭代次数、超时与异常处理,直到模型给出 Final Answer。

和 Chain 的区别

  • Chain:开发者预先编排好的固定流程,步骤与顺序在编码时就确定,可重复、可预测,适合「提示→检索→改写→输出」这类确定性任务。
  • Agent:流程在运行时由模型动态生成,调用几次工具、调用哪些、什么时候停,都不固定,灵活但更难预测和调试。

一句话:Chain 把控制流写死在代码里,Agent 把控制流交给 LLM。

2026 的选型现状

LangChain 早期的 initialize_agent / AgentExecutor 已不再是构建复杂 Agent 的首选。官方现在推荐用 LangGraph 把 Agent 建模成显式的状态图(节点 = 步骤,边 = 转移条件),天然支持分支、循环、人工介入(human-in-the-loop)、持久化与多 Agent 协作。简单的单 Agent、单工具场景仍可用 AgentExecutor,但生产级复杂编排几乎都迁到了 LangGraph。

常见误区

⚠️ 常见踩坑

把 Agent 当成「更高级的 Chain」而无脑替换——Agent 每步都要额外的 LLM 推理,延迟更高、成本更贵、行为更难预测,能用确定性 Chain 解决的固定流程就不该上 Agent;同时别再把 AgentExecutor 当成 2026 构建复杂 Agent 的标准答案,复杂编排应优先 LangGraph。

追问

追问 1AgentExecutor 是怎么防止 Agent 陷入死循环的?

它内置了 max_iterations(最大迭代步数)和 max_execution_time(最大执行时长)两道闸:超过上限就强制停止并返回当前结果或报错。此外可设置 early_stopping_method 控制到限时是直接停还是再让模型生成一次收尾答案。生产中通常还会在工具层加幂等与重试上限,避免模型反复调用同一个失败工具。

追问 2ReAct 和 Function Calling(工具调用)是什么关系?

ReAct 是一种「思考-行动」交替的推理范式,最早靠纯文本约定 Thought/Action 格式、再用正则解析。Function Calling 是模型原生支持的结构化工具调用能力,模型直接输出 JSON 形式的工具名与参数,无需脆弱的文本解析。2026 的实践是用 Function Calling 作为底层执行机制,ReAct 作为上层的循环编排思路,二者互补而非互斥。

追问 3为什么 LangGraph 比 AgentExecutor 更适合复杂 Agent?

AgentExecutor 把控制流隐藏在一个固定的 while 循环里,分支、回退、并行、人工审批都很难表达。LangGraph 把流程显式建成有向图:节点是计算步骤,边是带条件的状态转移,可以画出循环和分叉,支持检查点持久化(崩溃可恢复)、中断后等人工输入再继续、以及多个 Agent 作为子图协作。可控性、可观测性和可恢复性都远强于黑盒的 AgentExecutor。

🔗 相似问题

同一考点的不同问法,面试官可能换着问,一起刷更稳

没找到想看的面试题?把你想看的告诉我们 →

延伸学习

按主题分类的相关资源,便于系统复习