Gemini 工具调用示例
以下示例展示如何使用Gemini的Function Calling功能,让AI能够调用外部工具来获取信息或执行操作。快速开始
只需要替换<API-KEY> 为你的实际API密钥即可运行。
Gemini工具调用的特点
1. 工具定义格式
Gemini使用functionDeclarations 数组来定义工具:
2. 响应结构
Gemini的工具调用响应格式:3. 工作流程
- 用户发送带有工具定义的消息
- Gemini分析是否需要使用工具
- Gemini返回包含
functionCall的响应 - 客户端执行对应的函数
- 客户端将结果作为
functionResponse发送回Gemini - Gemini基于工具结果生成最终回复
结果示例
200
Google Search 工具
Gemini 支持内置的 Google Search 工具,可以让模型搜索实时信息来回答问题。与自定义函数调用不同,Google Search 是由 Gemini 自动执行的,无需客户端处理搜索逻辑。Google Search 工具特点
- 自动执行: 模型会自动调用 Google Search 获取信息,无需客户端处理
- 实时信息: 可以获取最新的新闻、事件、数据等实时信息
- 简单配置: 只需在
tools中添加{"googleSearch": {}}即可启用
注意事项
- 消息角色: 多轮对话时,所有消息都需要指定
role字段(user或model) - 字段命名: API 使用 camelCase 命名(
functionCall、functionResponse),而不是 snake_case - 函数响应: 函数执行结果需要以
role: "user"的消息发送回模型 - 错误处理: 建议在函数执行中添加完善的错误处理机制

