首页/AI/提示词工程速查/工具调用提示结构(Toolformer 思路)
模式与框架50 条

工具调用提示结构(Toolformer 思路)

在提示中声明可用工具、调用格式与使用条件,让模型在需要时主动发起调用;工具结果回填后继续推理。

提示词工程速查AI更新于 2026-10-13

工具调用提示结构

在提示里声明工具,要写清三件事:有哪些工具、怎么调用、什么时候该调用。工具清单说明能力边界,调用语法规定输出格式(带参数的命令行式标记或结构化调用),使用条件则决定模型是否会主动求助外部信息。工具调用与函数调用是同一条路的两种实现:前者靠提示约定格式,由程序解析;后者由平台用 Schema 约束,更严格。

三要素

工具清单工具名、用途、参数含义与返回内容说明
调用语法固定格式(如带标记的命令行式写法),便于程序解析
使用条件何时必须调用(实时数据、事实核查)、何时不必调用
回填格式结果以固定标记回填,模型据此继续推理
护栏工具白名单;参数长度与调用频率设上限

典型使用场景

  • 实时信息问答:价格、库存、天气等必须检索后才回答
  • 企业助手:查内部系统数据、发起审批、回写备注
  • 计算类任务:把算术交给计算器工具,减少算错
  • 多步排障:每步动作基于上一步的查询结果
  • 无平台函数调用能力的接口:用标记格式约定调用与回填

工具声明模板

工具声明模板
可用工具:
- search(query):检索事实类信息
- calc(expr):执行四则运算
调用格式:[TOOL_CALL:{name}({args})]                  # 固定标记便于程序解析
使用条件:涉及实时数据或不确定的事实时先调用 search;
收到 [TOOL_RESULT:...] 后继续作答;不需要工具的问题直接回答。

常见故障与处理

故障表现处理
该调不调凭记忆回答实时性问题使用条件写明必须调用的场景
格式不合规调用标记拼错,程序解析不了给出示例并做解析容错与重试
编造返回模型自己写了工具结果回填只由系统写入,提示里明确禁止
无限调用对同一参数反复调用设频率与轮数上限,去重相同参数
平台支持函数调用时优先用它:Schema 由平台校验,比标记格式的纯文本约定更不容易被写错与伪造。

易错点

  • 只列工具名不写使用条件,模型凭记忆回答本该检索的问题
  • 调用格式没有示例,模型拼出各种变体,程序解析失败率高
  • 允许模型自行编写工具返回结果,整条推理建立在编造数据上
  • 不设调用上限,模型对同一参数反复重试,费用与延迟失控
  • 把工具返回内容直接当指令执行,第三方内容里的注入被放大到工具层

数据来源与参考

  • Toolformer: Language Models Can Teach Themselves to Use Tools(Schick et al., NeurIPS 2023)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌