模型怎么学会选工具:从 Toolformer 自监督到 Kimi K2 强化学习的四幕剧
讲次页教你把工具递给模型,本篇追问这份能力是怎么训出来的。Toolformer、Gorilla、ToolLLM、ToolRL 到 Kimi K2 恰好排成一部四幕剧,每一幕都在回答同一个问题:监督信号从哪来。看懂这条主线,散落的工具训练论文就串成了一张地图。
能不能不靠人类标注,让模型自己教会自己调工具?2023 年的 Toolformer 把肯定答案写进了论文标题。工具调用这门能力,预训练并不白送,从那年起,是一拨拨研究者刻意训出来的。
把 Toolformer、Gorilla、ToolLLM、ToolRL 到 Kimi K2 按时间排开,正好是一部四幕剧。四幕同题,都在追问:监督信号(supervision signal)从哪来。说白了,你拿什么告诉模型这次调用是对的。
一条主线:四幕在演同一出戏
工具训练的各流派,分歧就一条:给模型配哪种监督信号。四路供给:
- 自监督(self-supervised):困惑度(perplexity)当裁判;
- 检索增强:API 文档当教材;
- 大规模合成:教师模型加树搜索造数据;
- 强化学习(RL,reinforcement learning):奖励函数说了算。
四幕不是互相取代,而是把监督信号的来源一格一格拓宽。
| 幕 | 代表作 | 监督信号来源 | 关键结果 |
|---|---|---|---|
| 一・自监督 | Toolformer(2023,Meta) | 调用执行结果带来的后续 token 损失下降 | 6.7B 在部分任务超越当时大得多的模型 |
| 二・检索增强微调 | Gorilla(2023,UC Berkeley) | 检索到的相关 API 文档 | 7B 真实 API 调用超 GPT-4,幻觉显著下降 |
| 三・大规模合成 | ToolLLM(2024,清华 THUNLP) | GPT-4 合成指令+DFSDT 标注轨迹 | 16000+ 真实 API 构成 ToolBench,训出 ToolLLaMA+ToolEval |
| 四・强化学习 | ToolRL / Kimi K2(2025) | 奖励函数(解析奖励与结果奖励) | 精细解析奖励即可大幅提升;K2 逼近闭源前沿 |
下面逐幕拆开。
前两幕:自监督与检索增强(Toolformer、Gorilla)
第一幕・自监督:让语料自己长出调用
第一幕的动机,就是开头那一问。Toolformer 出自 Meta,2023 年,回答叫自监督,分三步:
- 采样候选:在语料的大量位置上,让模型自己提出可能的 API 调用并插入文本;
- 真实执行:把候选调用真跑一遍,取回执行结果;
- 过滤再微调:按调用结果是否让后续文本更好预测来过滤,只保留插入调用后、后续 token 损失明显下降的样本,再拿过滤后的语料做一轮监督微调(SFT,supervised fine-tuning)。
过滤判据翻译成代码,示意版只有几行:
# Toolformer 的过滤判据(示意)
# 在语料某位置插入候选调用 c,真实执行得到结果 r
loss_with = nll(后续文本 | 前文 + c + r) # 插入调用后的预测难度
loss_without = nll(后续文本 | 前文) # 不插调用
if loss_without - loss_with > 阈值:
保留样本 # 调用结果让后续更好预测 → 好样本
# 过滤后的语料整体做一轮 SFT;每个 API 只需少量演示
妙处是裁判免费:不用人标对错,后续 token 损失降没降,自动就是监督。自监督的名字就是这么来的。裁判是模型自己的困惑度。
每个 API 只需少量演示就能起步,6.7B 的模型在部分任务上超越了当时大得多的模型。
局限也明显。过滤依赖真实执行,API 必须能廉价执行;阈值还敏感,卡紧了样本太少,卡松了噪声进来。
第二幕・检索增强微调:把文档当监督
第一幕要求 API 可执行,可现实里大多数工具只有文档可看。第二幕 Gorilla 换了信号源:API 文档。这篇出自 UC Berkeley,2023 年提出,后来中了 NeurIPS 2024。
做法两步。先用 Torch Hub、TensorFlow Hub、HuggingFace 三类真实 API 文档构建基准 APIBench;再提出检索增强微调(retrieval-augmented fine-tuning),训练时先检索与问题相关的 API 文档,连同问题一起喂给模型微调。
模型由此学会「先查再答」,不靠硬背答案。
关键数字很硬:7B 的 Gorilla 在真实 API 调用上超过 GPT-4,幻觉也显著下降。
这一幕还有个延续至今的副产品。项目组随后孵化出 Berkeley 函数调用榜单,简称 BFCL,成了函数调用评测生态的源头;本讲评测篇的详解还会再遇到它。
第三幕 大规模合成:教师模型加树搜索(ToolLLM)
前两幕各答了一半,第一幕管单点调用的数据哪来,第二幕管文档怎么进训练,都没碰真正的难题:多工具、多步依赖的调用链数据从哪来。
第三幕 ToolLLM 出自清华 THUNLP,发表在 ICLR 2024,回答是大规模合成。它从 RapidAPI Hub 抓取 16000+ 个真实 API,构成 ToolBench 数据集。
指令由 GPT-4 合成;调用链不用人标,交给 DFSDT(深度优先搜索决策树)在工具空间里搜索出多工具依赖链,当标注用。最后训出 ToolLLaMA,并配套自动评测器 ToolEval。
多工具、多步依赖的训练数据从哪来?ToolBench 的配方:真实 API 做底座,教师模型 GPT-4 合成指令,DFSDT 树搜索标注多工具依赖轨迹。监督信号由此从人类演示彻底换成机器合成。
第四幕 强化学习:奖励接管监督(ToolRL 与 Kimi K2)
前三幕都是先造数据再做 SFT,第四幕换了引擎:让模型自己试,用奖励函数当监督。
ToolRL 出自复旦大学等机构,2025 年。它把工具强化学习里最要紧的设计变量做成了受控实验:奖励拆成解析奖励与结果奖励,系统扫过两者的粒度、规模与混合比例。
结论反直觉:不必等到任务结局,精细设计的解析奖励就足以大幅提升工具能力。
看调用本身:格式对不对、参数选得对不对。规则可判定、反馈即时,信号稠密。
只看任务最终成没成。信号稀疏但真实,直接对齐用户目标。
产业级的收官是 Kimi K2,月之暗面 2025 年发布:1T 参数的混合专家(MoE,Mixture of Experts)开源模型,公开了「agentic 优先」的完整配方。
配方两段。大规模合成工具调用语料做 SFT 打底,再叠数十万步的 RL 课程,编程与智能体基准逼近闭源前沿。中文团队给这条路交出了产业级证据。
它没推翻前三幕,只是把它们串成了流水线:第三幕的合成造 SFT 数据,第四幕的奖励接管后半程。
与本讲的连接
本篇补的是讲次页「工具调用」板块的训练侧地基。两处回指:
- 前几篇详解拆的 schema、序列化与约束解码,是这些训练所用的输出格式层,模型在什么格式上训,推理时就得在什么格式上看;
- 伴读笔记里 ReAct 的 Thought–Action–Observation 节奏,是四幕训练要固化进模型的行为目标。
资料卡六份材料按幕对应,综述 Tool Learning with Large Language Models: A Survey 可作全景索引。
一条时间线收束全篇:监督信号从人类示范走到自监督,再走到原生强化学习,四幕在 RL 处落幕。下一幕的钩子是奖励设计与智能体 RL 训练,课程 5a/6a 讲正式展开。
本节论文与规范
本节资料
- Gorilla: Large Language Model Connected with Massive APIs 论文2305.15334进阶
用 Torch Hub、TensorFlow Hub、HuggingFace 三大 API 池构建 APIBench 基准与 AST 评测,提出检索感知微调,让 7B 的 Gorilla 在真实 API 调用准确率上超过 GPT-4 且幻觉更少。项目组随后孵化出 Berkeley Function-Calling Leaderboard,是函数调用评测生态的源头。
- Kimi K2: Open Agentic Intelligence 论文2507.20534前沿
1T 参数 MoE 开源模型的「agentic 优先」训练配方:用大规模合成工具调用数据做 SFT,再上数十万步的 RL 课程(agentic 轨迹与通用能力混合),在函数调用与 agent 评测上比肩闭源旗舰。中文团队给出的产业级证据,也是开源模型工具能力的当前标杆。
- Tool Learning with Large Language Models: A Survey 论文2405.17935入门
给工具学习一幅统一叙事地图:为什么需要工具、工具从哪里发现与制造、四类训练方法、评测体系与文献地图。适合作为本讲的课后全景回顾。注意文献收录止于 2024 年,需与 ToolRL、Kimi K2 等新文互补阅读。
- Toolformer: Language Models Can Teach Themselves to Use Tools 论文2302.04761进阶官方指定
自监督让模型自学工具调用:在语料中采样 API 调用候选插入文本、真实执行取回结果、再按「执行结果对后续文本困惑度的增益」过滤,最后用过滤后的数据微调。6.7B 模型在部分任务上超越大一个数量级的模型,证明工具使用能力可以低成本注入。这是「训练模型用工具」谱系的起点文献。
- ToolLLM: Facilitating LLMs to Master 16000+ Real-world APIs 论文2307.16789进阶
抓取 RapidAPI Hub 上 16000+ 真实 API 构建 ToolBench 数据集:用 GPT-4 合成指令、以 DFSDT 树搜索标注多工具依赖链,训练出 ToolLLaMA 并配 ToolEval 评测器。直接回答了「多工具调用的训练数据从哪来」这一工程关键问题。
- ToolRL: Reward is All Tool Learning Needs 论文2504.13958前沿
系统研究工具调用 RL 的奖励设计:把奖励拆成格式正确性、参数选择等解析奖励与最终结果奖励,扫遍粒度、规模、配比三个维度做受控实验。结论反直觉——不需要结果奖励,精细设计的解析奖励就足以大幅提升工具调用能力。
AI 生成 · 仅供参考,与课程方无关。选中正文里的任何一段也能直接问我(解释一下 / 举个例子)。
本详解以 CMU 11-768 AI Agents (Fall 2026) 课程大纲为参考框架独立撰写,AI 辅助起草、人工抽审。 涉及的官方课件、论文与课程材料版权归原所有方,讲义为站内镜像、其余外链原文出处; 观点与文字(除标注引用外)为作者原创。