完整题目
请详细解释ReAct(Reasoning + Acting)框架的基本思想、工作机制及其在大模型代理(Agent)中的应用,包括它如何结合推理与外部操作来提升任务完成能力,并举例说明其实现流程。
本文目录
ReAct 的核心
ReAct 论文把语言化推理轨迹与环境动作交替:模型基于当前任务和 Observation 决定下一步 Action,环境执行后返回新的 Observation,再继续决策或结束。它的价值来自“真实观察进入后续决策”,不是必须向用户公开隐藏 Chain-of-Thought。
生产实现可以保留可审计的结构化字段:当前目标、所选工具、参数、执行状态、证据引用和简短决策摘要。内部推理文本既不保证忠实,也可能暴露提示、隐私或安全策略,不能把完整 Thought 当成可解释性证明。
服务端执行循环
- 服务端根据用户和对象权限给出当前可用工具 schema;
- 模型返回结构化的
tool_call、respond、ask_for_confirmation或stop候选; - 服务端重新校验工具名、参数、权限、预算和幂等键,再决定是否执行;
- 工具返回结构化状态与来源。Observation 是不可信输入,网页或工具文本不能提升为系统指令;
- 新状态进入下一轮,直到成功、失败、取消、超时、预算上限或需要人工处理。
Function Calling 是结构化表达工具调用的接口;ReAct 是观察驱动的多步决策模式。两者可以组合,也可以用显式状态机、Plan-and-Execute 等方案替代,不能保证 ReAct 总是更好。