Function Calling/Tool Use的原理与实现
请解释Function Calling(工具调用)的原理。OpenAI如何定义和调用工具?工具描述的Schema格式是什么?模型如何选择工具并生成参数?
回答
苦行僧
Function Calling让LLM能调用外部函数。 工具定义使用JSON Schema:name/description/parameters(properties+required)。 调用流程:
- LLM接收工具描述,输出tool_calls
- 开发者执行工具,返回结果
- 结果作为新消息发给LLM继续生成
支持并行调用(多条tool_calls)。需验证工具调用的权限和参数合法性。