ReAct(推理与行动循环)
定义
Reasoning and Acting(推理与行动循环)是 Agent 思考和行动循环的经典模式。Agent 在完成任务的过程中,不断在"思考"和"行动"之间循环,直到目标达成。
循环步骤
- 思考(Reasoning):根据当前状态和目标,决定下一步应该做什么
- 行动(Acting):调用相应的工具或执行具体操作
- 观察(Observation):获取工具返回的结果或操作反馈
- 再思考:根据观察结果,决定下一步行动
- 循环直至任务完成
工程示例
任务:查 1 号车间 ROS 2 移动机器人状态,电量低于 20% 则导航到最近充电桩
ReAct 循环:
- 思考:需要先查询机器人状态
- 行动:调用
get_robot_telemetry("robot_1") - 观察:电量 15%,低于 20%
- 思考:需要找最近空闲充电桩
- 行动:调用
find_nearest_charger("robot_1") - 观察:找到充电桩 A,位置 (x, y)
- 思考:需要下发导航指令
- 行动:调用
navigate_to("robot_1", "charger_A") - 观察:导航指令已下发
- 思考:任务完成,向用户汇报
与 Agent 的关系
- [[Agent]] 是具备规划和执行能力的智能体
- ReAct 是 Agent 实现规划和执行的核心模式
- Agent 与普通问答模型最大的区别:不是只负责"说",而是开始负责"做"