推理循环是 Agent 在任务执行期间反复进行"思考—行动—观察"的迭代结构,是让 LLM 从静态生成转向动态解决问题的关键机制。其典型运行过程为:接收目标或观测 → LLM 进行推理并决定下一步 → 执行动作获得观测结果 → 将结果纳入上下文继续下一轮,直至任务完成或触发终止条件。
ReAct(Reasoning + Acting)是推理循环最具代表性的范式之一:它要求模型交替生成"推理轨迹(Thought)"与"动作(Action)",并接收"观察(Observation)"作为下一轮输入,使推理过程可见、可追溯。工程上通常以结构化提示或函数调用实现——模型先输出思考与工具调用请求,运行环境执行工具后将结果回填为观察,再交给模型继续推理。
循环的每一轮都会更新 Agent 的上下文,包括历史对话、工具返回与中间结论,使后续决策建立在累积信息之上;这也正是上下文工程需要精细管理的原因。当上下文过长时,需通过摘要、裁剪或外部存储来搬运状态。
循环中常包含"反思(Reflection)"环节:Agent 对自身输出或工具结果进行评估,若不满足目标则修正计划重新执行。实践中还常对原始 ReAct 做增强,例如加入计划(Plan)、自我批评(Self-Critique)或工具结果缓存,以抑制无效循环并提升复杂任务的成功率。
循环必须有终止条件,否则会陷入无限循环并持续消耗成本。常见终止信号包括:模型输出最终答案、连续多轮无新增信息、步数或成本触及预算上限、以及人工中断。Anthropic 在《Building Effective Agents》中将"Agent 由 LLM 在运行时动态指导自身流程与工具使用"作为 Agent 的定义性特征,而"由预定义代码路径编排"则属于 Workflow,二者的分界正在于此。