基本工具定义
使用与 OpenAI 兼容的tools 数组来定义工具:
执行工具
当模型选择了一个工具时,检查message.tool_calls,解析其参数,执行你的应用函数,然后把结果作为 tool 消息发回。
Python
选择模型
函数调用的支持因模型而异。可在 文本模型 页面或通过 Models API 查找具备supportsFunctionCalling 能力的模型。
更进一步
上面的示例在一次往返之后就停止了。真实的智能体会持续运行,因为模型通常需要多次调用工具才能给出答案。使用函数调用构建能使用工具的智能体完整走通了整个循环,面对的是模型从未见过的数据库,其中包括并行工具调用、模型能从中恢复的错误返回,以及模型自己”拒绝”与守护逻辑强制”拦截”之间的区别。设计建议
- 让工具名和描述简短、直接。
- 使用 JSON Schema,让模型更容易生成合法的参数。
- 优先使用输入清晰、职责单一的小工具,而不是包含大量可选行为的一个大工具。
- 返回简洁的工具结果,让最终回答有足够的上下文但不会浪费 token。