用途
本技能是一份面向生产环境的 Gemini 3 Pro 高级功能指南,帮助开发者将模型能力从基础文本生成扩展到函数调用、内置工具、结构化输出、上下文缓存、批处理与框架集成等场景。适用于需要构建生产级 AI 应用、集成自定义工具、启用搜索接地、安全执行代码、要求结构化 JSON 输出、优化成本或进行规模化批处理的开发者。
主要能力
- 函数调用(Function Calling):使用 OpenAPI 3.0 格式声明自定义工具,模型可调用 Python 函数并返回结果。
- 内置工具(Built-in Tools):包括 Google 搜索(google_search_retrieval)、代码执行(code_execution)、文件搜索、URL 上下文。
- 结构化输出(Structured Outputs):通过 response_mime_type 与 response_schema 配合 Pydantic(Python)或 Zod(TypeScript)保证 JSON 结构。
- 思维签名(Thought Signatures):管理多轮推理上下文;标准聊天由 SDK 自动处理,函数调用需按顺序返回签名,并行调用仅首个调用包含签名,图像编辑需在首部分及后续所有部分携带。
- 上下文缓存(Context Caching):复用超过 2048 token 的大上下文,缓存 token 成本约降低 90%。
- 批处理(Batch Processing):通过异步方式规模化处理多个请求。
- 框架集成:支持 LangChain、Vercel AI SDK、Pydantic AI、CrewAI。
使用方式
文档以任务形式组织,每个任务提供 Python 或 TypeScript 示例代码:
- 实现函数调用:定义 Python 函数,使用 genai.protos.FunctionDeclaration 声明,创建带 tools 的模型,处理 function_call 并回传 function_response。
- 使用内置工具:在模型 tools 参数中传入 {"google_search_retrieval": {}} 或 {"code_execution": {}}。
- 实现结构化输出:定义 Pydantic BaseModel 或 Zod schema,设置 generation_config 的 response_mime_type 为 application/json 及 response_schema。
- 设置上下文缓存:使用 genai.caching.CachedContent.create 创建缓存,通过 from_cached_content 复用,完成后调用 delete 清理。
- 实现批处理:使用 asyncio.gather 并发执行多个 generate_content 调用。
- 管理思维签名:在函数调用场景中按顺序保留并回传 thought_signature;必要时可使用 bypass 字符串 "context_engineering_is_the_way_to_go" 绕过验证。
- 集成框架:提供 LangChain(ChatGoogleGenerativeAI)、Vercel AI SDK(createGoogleGenerativeAI)、Pydantic AI(Agent)的调用示例。
适用场景
- 实现自定义工具/函数
- 启用 Google 搜索接地
- 安全执行代码
- 要求结构化 JSON 输出
- 通过缓存优化成本
- 批处理请求
- 构建生产应用
- 与 AI 框架集成
限制与注意事项
- 上下文缓存要求内容超过 2048 token。
- 思维签名在函数调用中必须按顺序返回;并行调用仅首个调用包含签名;图像编辑需在首部分及所有后续部分携带。
- 文档中的成本对比数据(如 100k tokens × 10 queries 从 $2.00 降至 $0.22,节省 89%)为示例说明,实际费用以官方定价为准。
- 生产环境建议实施错误处理(重试 ResourceExhausted、ServiceUnavailable)、限流(如 60 RPM)与成本监控。
- 相关技能包括 gemini-3-pro-api(基础设置、认证、文本生成)、gemini-3-multimodal(图像、视频、音频处理)、gemini-3-image-generation(图像生成)。
- 官方资源涵盖函数调用、接地、缓存、结构化输出等文档。