跳到主内容
智客 ZICQ

智客百科 AI 概念

函数调用(Function Calling)

AI 概念
别名: 工具调用 Tool Use tool calling ·2026-09-14

函数调用(Function Calling)

**函数调用(Function Calling)**让 大语言模型以结构化 JSON 形式输出"调用哪个工具、传什么参数",再由宿主程序执行实际工具(如查数据库、调 API、跑代码)。

工作流程

  1. 定义工具 schema:每个工具用 JSON Schema 描述名称、描述、参数。
  2. 传入 LLM:连同用户问题一起送进模型。
  3. 模型决策:要么直接回答,要么输出"调用工具 X,参数 Y"。
  4. 宿主执行:程序解析 JSON、调用工具、把结果回传模型。
  5. 模型再生成:基于工具结果生成最终回答。

主流支持

  • OpenAI:原生 tools 参数。
  • Anthropic Claude:tools 参数,结构类似。
  • Google Gemini:function_declarations。
  • 开源模型:Llama 3.1+、Qwen2.5、Mistral 等都已支持。

实战经验

  • 工具描述要详细:模型看不到代码,只能看 description 和参数说明。
  • 参数用枚举:可选值枚举能让模型少出错。
  • 错误处理:工具调用失败时要让模型能"重试"或"换工具"。
  • 并行调用:GPT-4 等支持一次返回多个 tool call,宿主并行执行。