学习笔记 · 2026-10-07 · 基础
智能体与工具使用:从会说话的模型到会做事的模型
LLM 擅长写作,但无法独自完成计算、核实最新信息或操作外部系统。于是出现了让模型思考、调用工具、查看结果再思考的“智能体”结构。如今的研究关注的不再是能否使用工具,而是能否可靠地使用工具。
目录
- LLM 不擅长算术、事实核查这类简单任务。工具使用就是把这些弱项交给外部程序的方法。
- ReAct 让模型交替进行“思考”和“行动(工具调用)”,形成根据工具返回的结果不断修正计划的循环。
- Toolformer 让模型自行学习何时调用何种工具,Reflexion 让模型用文字反思失败并用于下一次尝试。CodeAct 把行动本身变成了可执行代码。
- 在 WebArena 和 SWE-bench 等实战型评测中,智能体的成功率远低于人类。
- 近期研究表明,当工具结果出错、在缺乏依据的情况下行动、或不知道何时停止时,智能体就会崩溃,并报告“强制”验证的设计是有效的。
为什么需要:能说会道却算错数的模型
LLM(大语言模型)通过预测下一个词元(token,文字片段)的方式生成文本。这种方式擅长翻译、摘要和对话,但正如 Toolformer 论文所指出的,在算术或事实查询这类用小得多、简单得多的程序就能做好的任务上,它反而会出错。它不了解最新事件,还会出现编造看似合理的虚假内容的幻觉(Hallucination)。
另一方面,让模型逐步写出思考过程的方式(chain-of-thought,思维链)提升了推理能力,但 ReAct 论文称其为“封闭的黑箱”。模型只凭自己脑中的知识思考,无法与外部世界核对,一旦中间夹杂错误事实,这个错误就会一直延续到最后。
反过来,也有研究只让模型制定行动计划,但这类研究缺少权衡高层目标或记住进展情况的“思考”。思考与行动被分开研究的这一空白,正是智能体与工具使用研究的起点。
核心思路:拿着笔记本的新员工
AI 智能体(AI Agent)是一种 LLM 系统:接到目标后,它会自行拆分步骤、使用外部工具来完成任务。这里的工具指计算器、搜索引擎、维基百科 API、代码执行器、网页浏览器等在模型之外返回准确结果的程序。
想象一位新员工就容易理解了。接到任务后,先在笔记本上写下“得先查一下上季度的销售额”(思考),然后查询公司内部系统(行动),看到查出的数字(观察),再写下“比预期低,再找找原因”。不只靠脑子编答案,不懂的就去查,并根据查到的结果修改计划。
ReAct 把这种记笔记的做法原样搬到了 LLM 上。ReAct 论文将其表述为“为了行动而思考(reason to act),为了思考而行动(act to reason)”。思考帮助制定计划、处理异常,行动则引入外部信息,让思考扎根于事实。
如何运作:思考–行动–观察的循环
第 1 步,接收问题。智能体根据提示词(Prompt)中的指令和几个示例,判断该做什么。ReAct 只给一两个示例也能运作。
第 2 步,把“思考”写成文字。写下现在知道什么、缺什么、下一步做什么。第 3 步,发出“行动”,即以规定格式调用工具,例如写成“在维基百科中搜索 X”。Toolformer 把这类调用用特殊标记包起来插入文本中,并把工具返回的结果也接在原处。
第 4 步,系统实际执行工具,并把结果作为“观察”返回。智能体读取这一观察,再回到第 2 步继续思考。当判断已收集到足够依据时,给出最终答案。
此外还有附加机制。Reflexion 在一次尝试失败后,让智能体根据反馈用文字反思“哪里出了错”,存入记忆(情景记忆),并在下一次尝试时一起读取这份反思。也就是不修改模型的参数(Parameter),只通过文字来学习。
发展脉络:各项起点研究分别带来了什么新东西
ReAct(2022)让思考与行动在同一流程中交替进行。在问答(HotpotQA)和事实核查(Fever)上,仅使用简单的维基百科 API,就减少了思维链方式的幻觉和错误传播问题;在文本游戏(ALFWorld)和购物网站导航(WebShop)上,仅用一两个示例,成功率就比模仿学习和强化学习方法分别绝对提高了 34% 和 10%。人可以阅读思考记录、核查判断依据,这也被列为优点。不过论文报告称,将使用内部知识的思维链与 ReAct 结合的方法整体效果最好。
Toolformer(2023)让模型自己学习“何时、调用哪个工具、用什么输入”。每个工具只给几个人工编写的示例,让模型在大量文本中插入候选工具调用,然后实际执行,只保留有助于下一个词元预测的调用,再用这些数据进行微调(Fine-tuning)。它涵盖计算器、问答、搜索、翻译和日历,基于 67 亿参数 GPT-J 的模型在多项任务上取得了比大得多的 GPT-3 更好的结果。
Reflexion(2023)改变了从试错中学习的方式。它不像传统强化学习那样使用大量样本和昂贵的微调,而是让模型用语言反思失败。论文报告其在编程评测 HumanEval 上取得 91% 的 pass@1,超过了当时 GPT-4 的 80%。
CodeAct(2024)改变了行动的形式。通常智能体用 JSON 或规定的文本格式调用工具,这样很难超出预先设定的工具范围,也难以组合多个工具。CodeAct 将行动统一为可执行的 Python 代码,用一段代码串联多个工具,并根据执行结果进行修改。对 17 个 LLM 的分析显示,其成功率比现有方式最多高 20%,还公开了 7000 条多轮交互数据(CodeActInstruct)。梳理这一脉络的基于 LLM 的自主智能体综述(2023)将智能体的构建方式归入一个统一框架,并一并整理了应用与评估方法。
实战评估:比想象中难得多
使用工具的智能体在简单任务上表现好,并不意味着在实际工作中也表现好。WebArena(2023)把电子商务、社区论坛、协作开发、内容管理四个领域中真实可运行的网站构建成可复现的环境。给出人们在互联网上常做的冗长复杂任务后,最好的基于 GPT-4 的智能体成功率为 14.41%,远低于人类(78.24%)。
SWE-bench(2023)从 12 个热门 Python 仓库的真实 GitHub issue 及其修复提交中收集了 2,294 个问题。模型需要查看整个代码库,同时修改多个函数、类和文件,还要与执行环境交互并处理极长的上下文。当时最好的 Claude 2 也只解决了 1.96%。
两项评估说明的是同一件事:让工具调用格式正确,与把漫长过程准确地完成到底,是完全不同的问题。这正是此后研究关注点转向“工作有多可靠”的背景。
面对实战任务:智能体的成功率
最新方向:善于“怀疑”工具的智能体
第一,工具给出错误答案时。2026 年 10 月发布的“When Tools Lie”研究,悄悄把解数学题的智能体得到的工具结果替换成看似合理的错误答案。在 31 道题上,没有验证机制时准确率从 100% 降到 72.4%;在同一上下文中加入必须回头复核的“强制反思”后,准确率恢复到 100%。如果只把验证工具作为可选项提供,只有在模型真正调用它时才有效。结论是:拥有验证手段,与让模型执行验证的规则,是两回事。
第二,没有依据就行动时。“From Evidence to Action”研究构建了包含 656 个案例的 SafeActBench,追踪智能体在确认了什么之后才行动。失败往往在执行阶段之前就已开始:调查没做完就停下,或在获得必要依据之前就采取行动。获得依据后的单个行动大体可靠,但在多个行动接续的任务中,遗漏前置条件或中途结束的问题更为明显。
第三,不知道何时该停时。在“Judged Useless, Queried Anyway”研究中,七个智能体以 97~100% 的比例正确判断出故障检索源的结果“没用”,但大多没有按照这一判断停下来。即使用提示词告知规则,也只有部分遵守。当执行框架(harness)强制规定连续五次得到无用结果就作答后,所有模型的成功率都提高了。三项研究都表明,与其只依赖模型的判断力,不如用外部结构强制验证与停止,效果更好。
工具悄悄给出错误答案时
局限与争议
首先是信任问题。智能体容易把工具结果当作“正确答案”接受。工具一旦悄无声息地出错,这个错误就会扩散到之后的整个推理过程。ReAct 想要减少的错误传播,这次是从工具那一侧进入的。
其次是评估问题。短任务的成功率即使很高,在 WebArena、SWE-bench 这类长的实战任务上也会大幅下降。而且正如最近的研究所示,在静态情境下准确判断“这个行动是否正确”,与在实际交互中正确执行,是两回事。结果对了,也不能保证过程是基于依据的。
最后还有设计选择问题。是把工具调用限制在规定格式内,还是像 CodeAct 那样通过代码自由开放,是灵活性与可控性之间的权衡。反思或验证是交给模型自行决定,还是用规则强制执行,目前也没有定论。强制执行更稳定,但可能增加不必要的检查。
延伸学习
如果是初学者,建议先读 ReAct(paper)。思考–行动–观察循环这一当今智能体的基本形态就源于此,论文的图 1 将普通提示、思维链、仅行动、ReAct 四种方式并列比较,便于理解。
接着读 Toolformer(paper)了解“模型如何自学使用工具”,读 Reflexion(paper)了解“如何通过文字从失败中学习”,读 CodeAct(paper)了解“如何用代码表达行动”,起点研究的三条分支就梳理清楚了。整体版图可以通过基于 LLM 的自主智能体综述(paper)来把握。
如果对评估感兴趣,可以看 WebArena(paper)和 SWE-bench(paper)。最新动向可以按“When Tools Lie”(paper)、“From Evidence to Action”(paper)、“Judged Useless, Queried Anyway”(paper)的顺序阅读,就能清楚看到“如何可靠地使用工具”这一当下的问题。
相关术语
参考资料
奠基论文
- ReAct: Synergizing Reasoning and Acting in Language Models (2022)
- Toolformer: Language Models Can Teach Themselves to Use Tools (2023)
- Reflexion: Language Agents with Verbal Reinforcement Learning (2023)
- A Survey on Large Language Model based Autonomous Agents (2023)
- Executable Code Actions Elicit Better LLM Agents (2024)
- WebArena: A Realistic Web Environment for Building Autonomous Agents (2023)
- SWE-bench: Can Language Models Resolve Real-World GitHub Issues? (2023)
最新研究
由 AI 根据所列参考资料撰写并经过审核。详情请查看原始资料。