返回 AI 应用工程 思维导图
中文·English
🤖 AI 应用工程ID: function-calling-protocol

Function Calling 协议与参数注入

Function Calling Protocol
🎯核心定义
函数调用协议 (Function Calling Protocol / Tool Use API) 是大语言模型与外部世界软件工程生态实现无缝对接的工业级标准化接口协议;开发者在 API 请求中以 `tools` 字段传入一组使用 JSON Schema 描述的函数元数据定义(包含函数名 `name`、清晰的用途描述 `description` 以及参数字典类型与必填约束 `parameters`);模型根据对话上下文自主判断是否需要调工具,若需要则中止生成普通文本,转而输出形如 `tool_calls: [{id: 'call_abc123', function: {name: 'get_weather', arguments: '{"city": "Tokyo"}'}}]` 的结构化调用声明,并挂起等待宿主系统执行返回。
💡使用场景
数据库查询、发送邮件、调用第三方支付/订票 API、以及构建复杂自主 Agent 的基石动作通道。
解决的核心痛点
早期通过在 Prompt 中自然语言要求大模型输出自定义格式调用命令极易发生语法错乱、参数漏传或参数类型错误;Function Calling 在模型预训练/微调阶段注入专门的语法标记,实现了确定性结构化参数解析与高鲁棒性 API 触发。
🎯5 个高频面试考点 (Exam Points)
1
详细剖析 API 请求中 `tool_choice` 参数(`'auto'`, `'none'`, `'required'`, 或强制指定特定函数 `{'type': 'function', 'function': {'name': '...'}}`)的控制逻辑?
2
大模型内部是如何将 `tools` 的 JSON Schema 定义序列化并注入系统提示词/隐藏注意力上下文中的?
3
函数的 `description` 描述文本的清晰度对大模型“工具选择准确率 (Tool Selection Accuracy)”的决定性影响?
4
当提供 50+ 个海量候选工具时,如何利用向量检索 (Semantic Tool Search / Router) 在预推理阶段动态精简注入 Top-5 工具以节省 Token?
5
Anthropic Claude Tool Use 原生协议(`<invoke>`, `<parameters>`)与 OpenAI Function Calling 协议在规范上的设计异同?
更新于 2026-08-14
🎯
检验攻克程度:针对「Function Calling 协议与参数注入」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点Toolformer 自监督工具学习下一个知识点Parallel 并行工具调用

🔗 更多 AI 应用工程 知识点卡片

向量距离度量与 L2 归一化SQ8/SQ4 标量量化PQ 乘积量化与码本聚类ADC 非对称距离计算