ReAct 的工作流程是一个迭代循环,每一轮包含三个核心环节:
a. Thought(思考):模型分析当前状态,推理下一步需要做什么。例如:"我需要查找爱因斯坦的出生日期。"
b. Action(行动):模型根据思考结果,选择一个工具并传入参数。例如:Search["Albert Einstein birth date"]。
c. Observation(观察):工具执行后返回结果,作为下一轮思考的输入。例如:"Albert Einstein was born on March 14, 1879."
循环持续进行,直到模型输出 Finish[answer] 给出最终答案,或达到预设的最大步数限制。
在需要长期规划的任务(如 ALFWorld)中,模型可以采用稀疏推理策略——仅在关键决策点生成 Thought,其余步骤直接执行 Action,从而提高效率。而在知识密集型任务(如多跳问答)中,密集的 Thought 有助于保持推理链条的完整性。