Google Antigravity SDK是什么?Google官方AI Agent开发框架完整架构解析
【免费下载链接】antigravity-sdk-pythonA Python library for building AI agents that leverage the full power of Google Antigravity.项目地址: https://gitcode.com/gh_mirrors/an/antigravity-sdk-python
Google Antigravity SDK 是 Google 官方推出的 Python AI Agent 开发框架(SDK),让你用几行代码就能构建出安全、可扩展、有状态的 AI 智能体。它底层由 Antigravity 引擎和 Gemini 大模型驱动,把复杂的 agentic loop(智能体循环)封装成基础设施层——你只需要关心智能体"做什么",而不用纠结它"怎么跑"。本文带你快速搞懂它的核心概念、三层架构设计和上手路径。
一分钟了解:Google Antigravity SDK 能做什么?
一句话概括:它是一个 Python 库,用于构建能调用 Google Antigravity 全部能力的 AI Agent。🚀
它帮你解决了 AI Agent 开发中最头疼的几类问题:
| 痛点 | SDK 提供的方案 |
|---|---|
| Agent 生命周期管理复杂 | Agent类一个异步上下文管理器搞定 |
| 会话历史、上下文维护繁琐 | Conversation有状态会话自动累积步骤历史 |
| 本地/云端/端侧模型切换困难 | Connection抽象层支持多后端策略 |
| 工具调用不安全 | Hooks 钩子 + 声明式 Policies 策略系统 |
| 只能"一问一答" | Triggers 触发器支持定时任务、文件监听等后台事件 |
核心源码入口:google/antigravity/agent.py
安装 Google Antigravity SDK 最快方法
安装非常简单,一条 pip 命令即可:
pip install google-antigravity⚠️新手最容易踩的坑:SDK 依赖一个编译好的运行时二进制文件(Go 编写的 localharness),它打包在 PyPI 上各平台的 wheel 包里。只克隆代码仓库是跑不起来的,必须从 PyPI 安装才能拿到二进制文件。
项目构建配置见 pyproject.toml,支持 Python 3.10 ~ 3.13,核心依赖包括google-genai、pydantic、websockets、protobuf等。
30 秒上手:你的第一个 Agent
设置好 API Key 后,直接运行官方示例即可体验:
export GEMINI_API_KEY="your_api_key_here" python ./examples/getting_started/hello_world.py官方示例文件:examples/getting_started/hello_world.py
其核心逻辑只有四步:创建配置 → 启动 Agent → 发送消息 → 打印回复。system_instructions参数可以自定义系统指令,Agent会自动处理二进制发现、工具接线、钩子注册等全部脏活累活。
三层架构深度解析(Agent / Conversation / Connection)
Google Antigravity SDK 采用清晰的三层架构,这也是理解整个框架的关键:
| 层级 | 定位 | 核心类 |
|---|---|---|
| Layer 1 — 简化层 | 开箱即用的高层入口,新手首选 | Agent |
| Layer 2 — 会话层 | 有状态会话,管理历史与便捷方法 | Conversation、ChatResponse、ToolRunner、HookRunner、TriggerRunner |
| Layer 3 — 适配层 | 传输与后端的抽象,屏蔽运行位置差异 | Connection、ConnectionStrategy、LocalConnection |
📌工作流是这样的:你在AgentConfig中声明期望的能力和行为 →Agent根据配置选择合适的连接策略并创建Conversation→Conversation建立底层Connection并维护消息历史 → 你调用agent.chat()时,数据经由Connection发送到后端,响应以流式方式返回。
三个支柱的权威说明文档:skills/google-antigravity-sdk/references/architecture.md
多后端连接策略(Layer 3 亮点)
SDK 内置了三种连接策略,覆盖不同部署场景:
LocalConnectionStrategy— 通过 WebSocket 连接 Go 编写的本地 harness,通信使用 protobuf 消息LiteRTConnectionStrategy— 基于 LiteRT-LM 在设备端本地运行模型LocalOpenAIConnectionStrategy— 对接任意 OpenAI 兼容的本地服务(Ollama、LM Studio 等)
每个策略以独立子包形式组织在connections/下,实现、配置、proto 绑定和测试同包存放,扩展性极好。详见 google/antigravity/connections/README.md。
此外还支持Gemini Enterprise Agent Platform(原 Vertex AI):在LocalAgentConfig中设置vertex=True并指定 GCP 项目与地域即可,默认使用 Application Default Credentials 认证。
核心功能清单:6 个让 Agent 生产可用的能力
1️⃣ 流式响应(Streaming)
支持实时流式输出,ChatResponse可以直接用async for迭代文本 token,零额外网络开销。更进阶的用法还能单独订阅模型"思考过程"(response.thoughts)和强类型的工具调用事件流(response.tool_calls),适合做思考气泡、执行进度条等 UI。
2️⃣ 多模态输入(Multimodal)
Agent 可以同时接收文本指令 + 图片、视频、音频、文档附件。既支持从文件路径直接附加(自动识别类型和 MIME),也支持用Image等内容类直接传入内存字节。
3️⃣ 自定义工具(Custom Tools)
把你的 Python 函数注册为工具,Agent 就能调用它们查天气、查数据库、操作内部系统——普通同步函数会自动放到独立线程执行,不会阻塞异步事件循环。源码:google/antigravity/tools/tool_runner.py
4️⃣ MCP 集成
一行配置即可连接外部 MCP Server,将其工具暴露给 Agent,轻松复用整个 MCP 生态的工具资产。
5️⃣ Hooks 钩子与 Policies 策略系统
这是 SDK 的安全核心,分为三类钩子:
| 类型 | 行为 | 典型用途 |
|---|---|---|
| Inspect(只读、不阻塞) | 只能观察不能修改 | 日志、监控 |
| Decide(只读、阻塞) | 返回 allow/deny 决定是否放行 | 权限检查、护栏 |
| Transform(可修改、阻塞) | 可改写数据,失败即熔断 | 数据脱敏、错误恢复 |
更妙的是声明式策略 API:deny("*")默认全禁、allow("view_file")放行读文件、ask_user("run_command", ...)执行命令前先问用户——按"具体 > 通配符、拒绝 > 询问 > 放行"的优先级模型求值,且默认 fail-closed(失败即拒绝)。策略源码:google/antigravity/hooks/policy.py,完整设计文档:google/antigravity/hooks/README.md
💡安全默认值:Agent默认以只读模式运行,需要写入能力时显式传入capabilities=CapabilitiesConfig()才会开启全部工具。
6️⃣ Triggers 触发器
与 Hooks 管"Agent 生命周期"不同,Triggers 管"外部事件":定时任务(如每 60 秒检查部署状态)、文件变更监听、Webhook 回调,都能把消息推入正在运行的 Agent 会话。源码:google/antigravity/triggers/trigger_runner.py
仓库目录结构速览
| 路径 | 说明 |
|---|---|
| google/antigravity/ | SDK 核心源码 |
| google/antigravity/agent.py | Layer 1 高层入口Agent |
| google/antigravity/conversation/conversation.py | 有状态会话管理 |
| google/antigravity/connections/ | 连接抽象与本地策略实现 |
| google/antigravity/hooks/ | 生命周期钩子与策略系统 |
| google/antigravity/tools/ | 进程内工具执行 |
| google/antigravity/triggers/ | 后台任务与外部事件 |
| examples/getting_started/ | 单文件入门示例(一个文件一个特性) |
| examples/deep_dives/ | 多特性深度实战示例 |
| skills/google-antigravity-sdk/ | 内置技能包与参考文档 |
从入门示例到深度实战的学习路线
官方示例按学习曲线组织,建议按顺序看:
起步阶段(examples/getting_started/,单文件、单特性):
- hello_world.py — 最小可运行 Agent
- streaming.py — 流式输出
- custom_tools.py — 自定义工具
- policies.py / hooks.py — 策略与钩子
- structured_output.py — 结构化输出
- persistence.py — 会话持久化
- cancellation.py — 取消机制
进阶实战(examples/deep_dives/,多特性组合的迷你应用):
- interactive_cli.py — 完整交互式 CLI(自定义工具 + MCP + 钩子审批)
- agent_middleware.py — 钩子堆叠成中间件:限流、审计、错误恢复
- multimodal_pipeline.py — 图像生成 → 盲测视觉分析的流水线
- doc_maintenance_agent.py — 细粒度策略约束的自主文档维护 Agent
- async_chat.py — 完全异步的 Agent 间 P2P 聊天
常见问题 FAQ
Q1:克隆仓库就能跑吗?不能。SDK 依赖编译好的运行时二进制,必须pip install google-antigravity从 PyPI 安装。
Q2:和直接调 Gemini API 有什么区别?Gemini API 是模型接口,Antigravity SDK 是完整的 Agent 基础设施:内置工具执行、文件操作、会话状态、安全策略、触发器、可观测性(OpenTelemetry)等一整套能力。
Q3:Agent 会不会乱改我的文件?默认只读模式,写操作需要显式开启,还可以用策略系统精确到"哪个工具、什么参数下允许",甚至执行前弹窗征求用户同意。
总结
Google Antigravity SDK 用三层架构(Agent → Conversation → Connection)把 AI Agent 开发中最复杂的循环、状态、传输、安全问题全部抽象掉,让开发者聚焦业务逻辑。如果你正在寻找一个官方出品、开箱即用又安全可控的 Python AI Agent 开发框架,它就是当前值得重点关注的选择。🎯
下一步建议:先跑通hello_world,再对照 examples/README.md 的示例索引按图索骥,逐个特性动手实践。
【免费下载链接】antigravity-sdk-pythonA Python library for building AI agents that leverage the full power of Google Antigravity.项目地址: https://gitcode.com/gh_mirrors/an/antigravity-sdk-python
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考