工具可扩展 Gemini 模型的功能,使其能够在现实世界中采取行动、访问实时信息并执行复杂的计算任务。模型可以通过 Live API 在标准请求-响应互动和实时流式传输会话中使用工具。
Gemini API 提供了一套全托管式内置工具,这些工具针对 Gemini 模型进行了优化;您也可以使用函数调用来定义自定义工具。
可用的内置工具
| 工具 | 说明 | 使用场景 |
|---|---|---|
| Google 搜索 | 根据当前事件和网络上的事实信息来生成回答,以减少幻觉。 | - 回答有关近期活动的问题 - 通过各种来源验证事实 |
| Google 地图 | 构建位置感知助理,该助理可以查找地点、获取路线,并提供丰富的本地背景信息。 | - 规划包含多个经停点的旅游行程 - 根据用户条件查找本地商家 |
| 代码执行 | 允许模型编写和运行 Python 代码,以准确解决数学问题或处理数据。 | - 求解复杂的数学方程式 - 精确处理和分析文本数据 |
| 网址上下文 | 指示模型读取和分析特定网页或文档中的内容。 | - 根据特定网址或文档回答问题 - 检索不同网页中的信息 |
| 电脑使用情况(预览版) | 使 Gemini 能够查看屏幕并生成与 Web 浏览器界面互动的操作(客户端执行)。 | - 自动执行重复的基于 Web 的工作流 - 测试 Web 应用界面 |
| 文件搜索 | 为自己的文档编制索引并进行搜索,以实现检索增强生成 (RAG)。 | - 搜索技术手册 - 基于专有数据的问答 |
如需详细了解与特定工具相关的费用,请参阅价格页面。
工具执行的运作方式
借助工具,模型可以在对话期间请求执行操作。具体流程因工具是内置(由 Google 管理)还是自定义(由您管理)而有所不同。
内置工具流程
对于 Google 搜索或代码执行等内置工具,整个过程都在一次 API 调用中完成:
- 您发送提示:“GOOG 最新股价的平方根是多少?”
- Gemini 确定需要使用工具,并在 Google 的服务器上执行这些工具(例如,搜索股价,然后运行 Python 代码来计算平方根)。
- Gemini 会根据工具结果发送最终答案。
自定义工具流程(函数调用)
对于自定义工具和计算机使用,您的应用会处理执行:
- 您发送提示以及函数(工具)声明。
- Gemini 可能会发回结构化 JSON 来调用特定函数(例如
{"name": "get_order_status", "args": {"order_id": "123"}})。 - 您可以在应用或环境中执行该函数。
- 您将函数结果发送回 Gemini。
- Gemini 会使用这些结果生成最终回答或其他工具调用。
如需了解详情,请参阅函数调用指南。
结构化输出与函数调用
Gemini 提供了两种生成结构化输出的方法。当模型需要通过连接到您自己的工具或数据系统来执行中间步骤时,请使用函数调用。如果您需要模型的最终回答严格遵循特定架构(例如用于呈现自定义界面),请使用结构化输出。
构建代理
智能体是使用模型和工具来完成多步任务的系统。虽然 Gemini 提供了推理能力(“大脑”)和基本工具(“双手”),但您通常需要一个编排框架来管理代理的记忆、规划循环和执行复杂的工具链。
Gemini 与领先的开源代理框架集成:
- LangChain / LangGraph:使用图结构构建有状态的复杂应用流程和多代理系统。
- LlamaIndex:将 Gemini 智能体连接到您的私有数据,以实现 RAG 增强型工作流。
- CrewAI:编排协作式角色扮演的自主 AI 智能体。
- Vercel AI SDK:使用 JavaScript/TypeScript 构建 AI 赋能的用户界面和智能体。
- Google ADK:一个开源框架,用于构建和编排可互操作的 AI 智能体。