← 返回 2026-09-20 简报

为何客户端SDK生成应走向开源

语音播报
摘要
事件:Google与Speakeasy合作将OpenAPI代码生成套件开源,以应对原供应商被收购停服带来的平台风险,确保SDK生成基础设施的稳定性。 要点:支持Python等七种语言,涵盖流式传输及严格类型安全;结合Antigravity AI代理加速定制部分,维护成本降至一人。 影响:开发者可自主构建多语言SDK、CLI及MCP服务器,避免闭源工具断供风险,保障AI生态底层基础设施的安全与可控。

在过去的几个月里,我们与 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 生态系统一直依赖专门的工具来生成客户端库,这些库能够处理复杂的流式协议、严格的错误层次结构以及丰富的类型联合,而不会让人感觉是机器生成的。

2026 年 5 月,正当我们为 Google I/O 和 Interactions API 的正式发布做准备时,我们使用的 SDK 生成提供商被收购并突然宣布关闭服务。

这一突如其来的中断凸显了专有、闭源生成器所带来的不可接受的平台风险。如果行业依赖 OpenAPI 来定义接口,那么将这些接口编译为客户端库、CLI 和代理工具的工具链应当成为开放的基础设施。

评估前进的道路

在紧迫的时间表内重新构建我们的 SDK 管道时,我们的首要任务是最大限度地减少对开发者的干扰,并避免破坏性变更。

我们与 Speakeasy 合作就地迁移了我们的客户端库,核心承诺是将生成器套件开源。这次迁移需要细致的工程工作:对齐所有目标语言的类型定义,保留严格的错误层次结构和流式行为,并将生成器直接集成到我们的内部单体仓库和构建系统中。

在 Google DeepMind,虽然我们在开发工作流程中广泛使用 AI,但我们相信为堆栈的每一层选择正确的工具。将形式化的 API 规范转换为多语言 SDK 需要确定性和严格的类型安全。借助 Speakeasy,我们在核心部分搭配一个快速、确定性的生成器,同时利用 Antigravity AI 代理加速 SDK 的自定义部分。

维护以前手工打造的生成器通常需要多名工程师。如今,这一设置通过大约一名工程师即可支撑我们面向六个目标(已发布三个 SDK,更多即将推出)的客户端管道。

今天开源了什么

为了确保更广泛的开发者生态系统能够访问高质量、维护良好的 SDK 生成工具,且无需面临类似中断的风险,Speakeasy 在 AGPLv3 许可下开源了其完整的 OpenAPI 客户端套件。

多语言 SDK 生成器:为 7 种语言(Python、TypeScript、Go、Java、C#、PHP、Ruby)生成客户端库。每个库都包含静态类型、服务器发送事件(SSE)流式传输、重试和分页功能。

面向代理原生的 CLI 生成器:编译独立的 CLI 二进制文件。AI 编码代理可以直接从终端会话中运行您的 API,而无需编写一次性 HTTP 脚本。

文档 MCP 服务器生成器:将您的 OpenAPI 规范和 Markdown 文档转换为模型上下文协议(MCP)服务器。像 Antigravity 这样的编码代理可以查询实时、经过验证的模式,而不是猜测过时的方法。

该生成器采用 AGPLv3 许可。这允许您在开发或 CI 管道中运行它,同时根据您选择的许可证(如 MIT 或 Apache 2.0)完全拥有生成的代码/SDK。如果您修改了生成器编译器本身,AGPL 保证这些改进将对社区保持开放。

试用

您可以使用我们更新的 SDK 今天探索新的 Gemini Interactions API。如果您想生成自己的客户端库、CLI 或 MCP 服务器,您可以在 GitHub 上找到 Speakeasy 生成器,并将其应用于您的 OpenAPI 规范。

感谢阅读!继续构建。

原文链接:https://developers.googleblog.com/why-client-sdk-generation-belongs-in-the-open/
来源:Google Developers Blog
以上内容由 AI 自动翻译,仅供参考。
← 返回简报