为什么客户端 SDK 的生成应当走向开放
2026 年 9 月 17 日 Amir Hardon 高级资深软件工程师 Philipp Schmid 开发者关系工程师 分享

过去几个月里,我们与 Speakeasy 紧密合作,为我们的 Interactions、Agents 和 Webhooks API 发布了全新的 Google GenAI SDK。今天,我们很高兴地宣布与 Speakeasy 达成合作,将其 OpenAPI 代码生成套件开源。
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.8-flash",
input="Analyze this commit log and find regressions.",
)
print(interaction.output_text)
Python 已复制
为什么客户端生成需要开放的工具链
从快速演进的 OpenAPI 规范出发,跨多种语言生成简洁、符合惯用风格的 SDK,本身就是一项工程难题。多年来,包括 Google 在内的前沿 AI 生态,一直依赖专门的工具来生成客户端库:它们必须能够妥善处理复杂的流式协议、严格的错误层级以及丰富的类型联合(union)类型,同时还不能让人感觉是机器生成的。
2026 年 5 月,就在我们紧锣密鼓筹备 Google I/O 与 Interactions API 正式发布(General Availability)之际,我们当时所使用的 SDK 生成供应商被收购,并突然宣布关停。
这次突如其来的中断凸显出一个事实:专有的、闭源的生成器会带来不可接受的平台风险。如果整个行业依赖 OpenAPI 来定义接口,那么把这些接口编译为客户端库、CLI 以及智能体工具的工具链,就理应成为开放的基础设施。
评估前进的方向
由于我们要在紧迫的时间窗口内重做整条 SDK 流水线,首要任务便是尽量减少对开发者的打扰,并避免引入破坏性变更。
我们与 Speakeasy 合作,在原地迁移了现有的客户端库,并郑重承诺将该生成器套件开源。这次迁移需要细致入微的工程工作:在所有目标语言之间对齐类型定义、保留严格的错误层级与流式行为,并将生成器直接接入我们内部的 monorepo 与构建系统。
在 Google DeepMind,尽管我们在开发工作流中广泛使用 AI,但我们始终坚持为技术栈的每一层选择最合适的工具。把形式化的 API 规范转换成多语言 SDK,要求确定性(determinism)与严格的类型安全。借助 Speakeasy,我们以一个快速且确定性的生成器作为核心,再搭配 Antigravity AI 智能体来加速 SDK 中需要定制化的部分。
过去,维护那些手工打造的生成器需要多位工程师同时投入。而今天,这套方案只需要大约一名工程师,就能支撑起横跨六个目标平台(三款已发布的 SDK,以及即将陆续推出的更多版本)的客户端流水线。
今天开源了什么
为了确保更广泛的开发者生态能够获得高质量、持续维护的 SDK 生成工具,免于遭受类似中断带来的风险,Speakeasy 已将其完整的 OpenAPI 客户端套件以 AGPLv3 许可证开源。
- 多语言 SDK 生成器:为 7 种语言(Python、TypeScript、Go、Java、C#、PHP、Ruby)生成客户端库。每个库都包含静态类型、Server-Sent Events(SSE)流式传输、自动重试以及分页(pagination)能力。
- 面向智能体的 CLI 生成器:将规范编译为独立的 CLI 二进制文件。AI 编程智能体可以直接在终端会话中调用你的 API,而无需再编写一次性的 HTTP 脚本。
- 文档 MCP 服务器生成器:把 OpenAPI 规范与 Markdown 文档转化为一个 Model Context Protocol(MCP)服务器。像 Antigravity 这样的编程智能体可以查询实时的、经过校验的 schema,而不再去猜测那些已经过时的方法。
该生成器以 AGPLv3 许可证发布。这意味着你可以在自己的开发或 CI 流水线中运行它,同时完全保留对你所生成代码/SDK 的所有权,并可选用你期望的许可证(例如 MIT 或 Apache 2.0)。如果你对生成器编译器本身进行了修改,AGPL 条款将保证这些改进同样回馈给整个开源社区。
立即试用
你今天就可以使用我们更新后的 SDK,体验全新的 Gemini Interactions API。如果你希望为自己的 API 生成客户端库、CLI 或 MCP 服务器,可以在 GitHub 上找到 Speakeasy 生成器,直接针对你自己的 OpenAPI 规范运行它。
感谢阅读!请继续创造吧。