推理与行动交替——让AI学会"边想边做"
"凌晨3分37秒,AI终于不再只回答问题。它开始思考、行动、观察、再思考。就像一个学生考试,不再是直接填答案,而是在草稿纸上一笔一笔算。ReAct——这个让AI从'知道答案'到'知道怎么找答案'的魔法。"
ReAct(Reasoning and Acting)是由 IBM 研究院在2022年提出的一种 AI Agent 设计模式。它的核心思想是将推理(Reasoning)和行动(Acting)交替结合,让AI能够像人类一样"边想边做"。
传统AI:看题→写答案。ReAct AI:看题→想一想→查查资料→再想想→动动手→检查一下→写答案。
就像你妈叫你修水管,你不会直接上手,而是先看看什么问题,再找扳手,试了不行再换个思路。
ReAct 循环包含三个关键步骤:
然后循环继续,直到AI认为可以给出最终答案。
| 维度 | Chain-of-Thought | ReAct |
|---|---|---|
| 核心机制 | 纯推理,无外部操作 | 推理+行动交替 |
| 知识来源 | 仅模型内部知识 | 模型知识 + 外部工具 |
| 幻觉风险 | 较高(可能编造事实) | 较低(可通过工具验证) |
| 计算成本 | 较低 | 较高(需要工具调用) |
| 实时性 | 无法获取实时信息 | 可通过工具获取最新数据 |
| 复杂任务 | 适合逻辑推理 | 适合需要外部信息的任务 |
CoT像闭卷考试——全凭记忆作答,遇到不知道的就只能猜。
ReAct像开卷考试——先想想答案,然后翻书查证,再整理答案。不确定的还可以反复翻。
OpenClaw 的设计天然契合 ReAct 模式——每次工具调用本质上都是一次"Thought→Action→Observation"循环:
# 用户:"帮我检查网站miaoquai.com的SEO状况"
# --- Thought 1: 思考 ---
# "需要先获取网站首页,看看meta标签和结构"
# --- Action 1: 行动 ---
web_fetch({
"url": "https://miaoquai.com",
"extractMode": "markdown"
})
# --- Observation 1: 观察 ---
# 获取到页面内容,发现缺少meta description
# --- Thought 2: 思考 ---
# "首页缺少description,需要检查其他页面是否也有这个问题"
# --- Action 2: 行动 ---
exec({
"command": "find /var/www/miaoquai -name '*.html' | head -20"
})
# --- Observation 2: 观察 ---
# 发现50+个HTML文件
# --- Thought 3: 思考 ---
# "需要批量检查所有页面的meta标签,然后生成修复方案"
# ... 继续循环直到生成完整的SEO报告
OpenClaw 的记忆搜索工具 tdai_memory_search 和 tdai_conversation_search 配合工具调用,形成了强大的 Agentic RAG 模式:
# ReAct 循环 + RAG 检索
# Thought: 用户问之前配置过什么工具
tdai_memory_search({
"query": "OpenClaw 工具配置",
"limit": 5
})
# Observation: 找到3条相关记忆
# Thought: 记忆不够详细,搜索原始对话
tdai_conversation_search({
"query": "MCP服务器配置命令"
})
# Observation: 找到具体配置命令
# Thought: 现在有足够信息回答了
# Action: 生成最终回复
ReAct循环:识别错误→查看日志→分析原因→尝试修复→验证结果→仍有问题则继续循环
ReAct循环:理解问题→搜索数据→分析结果→补充搜索→综合分析→生成报告
ReAct循环:收集信息→评估选项→比较优劣→征求反馈→优化方案→给出建议