1. ReAct 的观察—行动循环如何实现,什么证据表明它陷入了无效反复
ReAct 的观察—行动循环如何实现?什么证据表明它陷入了无效反复?
- ReAct 循环结构:Thought-Action-Observation 三要素
- 循环终止条件与工具结果回填
- 无效反复的证据:重复动作、无进展、振荡
ReAct 循环的实现:模型每次迭代输出 Thought(对当前情况的推理)、Action(选择工具与参数,或直接给出 Final Answer),系统执行 Action 得到 Observation(工具结果),把 Observation 追加到上下文后进入下一轮迭代,直到模型输出 Final Answer 或触发终止条件。实现要点:工具调用用结构化格式(function calling 或 JSON),结果截断后回填(长结果摘要化),上下文只保留最近 N 轮防止膨胀;循环必须配最大迭代数与停滞检测,不能依赖模型自觉停止。
无效反复的证据:一是重复动作——同一工具、同一参数被反复调用,结果相同(如反复查询同一订单却不下结论);二是无进展——多轮后状态变量、产物、累计信息都没有实质变化,Thought 内容高度雷同;三是振荡——在两个动作之间来回切换(查询→重试→再查询),或不断要求澄清但用户已给全信息;四是循环越转越偏——动作序列与最初目标逐渐脱节。检测方法:记录动作指纹(工具+参数哈希),连续相同或周期性重复即告警;发现无效反复后应中断循环、注入"回顾目标"提示或回退到人工,而不是放任模型继续空转。
本题考察 ReAct 模式的实现与故障识别。回答要讲清三要素循环结构与终止条件,再用四类证据(重复、无进展、振荡、偏离)说明如何识别无效反复。能提到动作指纹检测是工程细节加分项。