Skip to main content
工具调用(Function Calling)允许 AI 模型调用外部函数和 API,极大扩展了智能体的能力边界,使其能够执行具体操作和获取实时数据。

功能特性

函数调用功能为 AI 模型提供了与外部系统交互的能力,支持多种复杂的应用场景和集成需求。

核心参数说明

  • tools: 定义可调用的函数列表,包含函数名、描述和参数规范
  • tool_choice: 控制函数调用策略, 默认且仅支持 auto
  • model: 使用支持函数调用的模型,如 glm-5.2glm-5.1glm-5glm-4.7

响应参数说明

函数调用响应中的关键字段:
  • tool_calls: 包含模型决定调用的函数信息
  • function.name: 被调用的函数名称
  • function.arguments: 函数调用参数(JSON 格式字符串)
  • id: 工具调用的唯一标识符

代码示例

通过定义函数工具和处理函数调用,可以让 AI 模型执行各种外部操作:
安装 SDK
验证安装
完整示例

场景示例

在使用函数调用时,请确保对外部 API 和数据库操作进行适当的安全验证和权限控制。

实践建议

函数设计原则

  • 单一职责:每个函数只做一件事
  • 清晰命名:函数名和参数名要有意义
  • 完整描述:提供详细的函数和参数描述

安全考虑

  • 输入验证:严格验证所有输入参数
  • 权限控制:限制函数的访问权限
  • 日志记录:记录函数调用日志

参数设计

错误处理

输入验证

权限控制

建议为每个函数提供详细的文档和示例,帮助模型更好地理解函数的用途和使用方法。
函数调用涉及代码执行,请确保实现适当的安全措施,包括输入验证、权限控制和错误处理。