Skip to content

Gemini Function Calling

Gemini 常见术语是 function calling

为什么 Gemini 更容易让人困惑

因为很多人看到的是 SDK 示例,而不是原始协议,结果往往搞不清:

  • 工具定义到底在哪里声明
  • 返回结构来自模型还是 SDK 封装
  • function call 和流式事件如何组合

文档应该覆盖的内容

一篇真正有用的 Gemini function calling 文档,至少要写清楚:

  1. 使用的 SDK / 版本
  2. function declaration 的格式
  3. 模型返回 function call 时的对象结构
  4. 如何把函数执行结果继续回传
  5. 多模态输入与 function calling 是否会互相影响

推荐写法

与其只给一段“能跑”的 demo,不如提供:

  • 一段最小示例
  • 一段带错误处理的示例
  • 一段和 OpenAI / Anthropic 的差异说明

迁移建议

如果你已经有 OpenAI 风格的业务层,接 Gemini 时最重要的是:

  • 先做 provider adapter
  • 不要把 SDK 对象直接泄漏进业务逻辑
  • 把 function call 统一转成内部结构再处理

聚焦 OpenClaw、tool_calls、function calling 与 agent 实战。