Function Calling(工具调用) 工具与循环

别名: Tool Calling · 工具调用

让模型声明「我要调用哪个工具、参数是什么」的机制:把工具的 JSON Schema 声明成 `input_schema`,模型返回结构化的 `tool_calls` / `arguments`。它同时是强制 JSON 输出的技巧——模型为了「调用工具」会产出严格符合 schema 的参数。第 06 章做手动全流程。

它是什么

Function Calling(工具调用)让模型「声明我要调用哪个工具、参数是什么」:把工具的 JSON Schema 声明成 input_schema,模型返回结构化的 tool_calls / arguments。注意执行权始终在程序手里——模型只是「提议」,程序决定是否执行,执行后把 tool_result 回填给模型。

为什么它能当结构化输出用

模型为了「调用工具」会产出严格符合 schema 的参数——这是 Anthropic 官方课程著名的「用工具强制 JSON」技巧:把想要的 JSON 形状声明成工具的 input_schema,让模型为了调用而输出合规 JSON。这正是第 06 章手动全流程(schema 声明 → 调用解析 → 结果回填 → 并行调用)的预告。

与结构化输出的关系

两者同源:都依赖 JSON Schema(json-schema)。区别是 function-calling 把「形状」绑定在工具参数上,同时是 Agent 行动能力的入口——它一端连着结构化输出,另一端连着工具执行。相关词条:tool-callingtool-schema

相关词条

出现在这些章节