让大模型学会计算器、知识库和机器人动作,常见办法是收集完整调用轨迹,再微调整个模型或增加 LoRA。工具数量一多,每次扩充都可能重新训练;大模型参数也会把一件相对局部的工作变成昂贵工程。能否只教它识别“现在该用哪个工具”,同时保留原有语言能力?
ToolkenGPT 给每个工具增加一个可学习的特殊 token,作者把它称为 toolken。语言模型主体保持冻结,训练时主要学习这些工具 token 的嵌入。生成过程中一旦选出某个 toolken,系统便切换到工具模式,补齐参数、执行函数,再把返回结果放回文本继续推理。
工具像新词一样进入模型词表
普通 token 表示“苹果”“计算”等词,toolken 则指向某个外部函数,例如求平方、最大公约数、知识库关系或机器人动作。它们和词 token 一起参与下一 token 预测。模型根据当前问题与已生成文本,决定继续说话还是输出工具标记。
这种设计把工具选择变成模型熟悉的分类问题:哪个特殊 token 在当前位置概率最高。工具本身不需要被塞进模型参数,新增工具也不必重训全部权重。训练样本仍要告诉系统什么场景应触发该工具,以及参数应怎样从上下文提取。
Toolken 的嵌入数量与工具数量相关,主体语言模型参数保持不动。作者希望借此保住原模型的通用生成能力,同时用很小的可训练部分适配工具。它也便于分批扩充工具库,不过当多个工具功能高度相似时,特殊 token 之间仍会竞争,训练样本必须提供足够清晰的触发边界。

图1:冻结语言模型通过toolken在推理模式与工具模式之间切换
图1用一道花园面积题展示完整过程。模型先在推理模式生成分析,随后选中求最大公约数的 toolken;进入工具模式后,从题目补齐 64 和 96 两个参数;函数返回 16,结果被填回文本,模型继续算出面积。该图说明的是触发、传参、执行与回填四个环节如何衔接。
参数补全决定工具能不能真正运行
选中正确工具只完成了一半。计算器需要数字,知识库查询需要实体和关系,机器人动作可能需要对象与位置。ToolkenGPT 为每个工具准备少量演示,让模型在进入工具模式后根据当前上下文生成参数。执行结果再作为新的上下文,使后续步骤可以继续调用其他工具。
多步任务尤其依赖这一交接:上一工具的返回值可能成为下一工具参数。任意一步选错 toolken、抽错数字或解析失败,后面的推理都会受到影响。因此上线时要把“工具选择正确率”和“参数可执行率”分开记录,并对参数类型、范围和权限做程序化校验。
论文将语言生成阶段称为 reasoning mode,将触发函数后的阶段称为 tool mode。两种模式共享同一个上下文,工具结果回填后无需另起一套对话。这种连续性有利于多步推理,也要求返回值经过清洗;一段过长、格式混乱或包含恶意文字的工具输出,可能干扰下一轮 token 选择。
数学与函数问答检验选择和串联能力
作者在 GSM8K-XL 与 FuncQA 上比较零样本 ChatGPT、思维链、ReAct 和 ToolkenGPT。GSM8K-XL 为题目配置四种数学工具;FuncQA 包含 13 种函数,并区分一步与多步问题。ToolkenGPT 在三项指标上分别达到 0.33、0.73 和 0.15。

图2:ToolkenGPT在数学题、一步函数问答和多步函数问答上的结果
图2检查系统是否借助给定工具得到正确答案。ToolkenGPT 在表内三项任务上均高于列出的 ChatGPT、思维链和 ReAct 基线,多步函数问答仍只有 0.15,说明连续选择工具与传递中间结果仍然困难。这个低绝对值很重要,它阻止我们把单步调用成功直接等同于完整流程可靠。
两分钟训练换来接近LoRA的成绩
论文用 LLaMA-7B 比较 ToolkenGPT 与 LoRA 微调在 FuncQA 上的成本。LoRA 使用 8 张 A100 80G 训练 40 分钟,一步和多步准确率为 0.62、0.07;ToolkenGPT 使用 1 张 RTX 3090 24G 训练 2 分钟,结果为 0.55、0.06。

图3:ToolkenGPT与LoRA的训练成本比较
图3呈现的是效率与精度之间的取舍。ToolkenGPT 用显著更少的计算资源获得接近 LoRA 的结果,精度仍略低。表中的显卡数量、显存和训练时间共同说明,学习少量工具表示可以明显降低接入成本。
轻量接入适合扩展,敏感操作仍需硬约束
企业可能持续增加库存查询、销量预测、补货规则、审批和消息接口。给每个工具学习一个小型表示,比反复改动大模型主体更便于扩展,也有机会为不同部门维护独立工具集合。工具下线时,可以移除对应标记并更新路由层。
轻量训练不会自动解决安全与可靠性。模型仍可能在不合适的位置触发写操作,也可能生成超出范围的参数。涉及采购、价格或库存变更时,toolken 应只负责提出调用意图,真正执行前还需权限检查、参数模式验证、幂等键和人工确认。
ToolkenGPT 把工具调用压缩成一个很有工程感的问题:让模型学会在合适位置按下正确按钮。它用较低训练成本证明这条路线可行,同时也留下清晰边界。按钮选对以后,参数、返回值、多步依赖和执行权限仍需要一整套系统来兜住。
这也是轻量适配最适合承担的角色:降低接入成本,把执行安全继续交给确定性的系统规则。
论文:ToolkenGPT: Augmenting Frozen Language Models with Massive Tools via Tool Embeddings
作者:Shibo Hao、Tianyang Liu、Zhen Wang、Zhiting Hu
期刊与年份:NeurIPS,2023
DOI:10.52202/075280-1988;arXiv:2305.11554
夜雨聆风