谷歌反重力 SDK

Antigravity SDK 是一个编程式 Python 框架,旨在构建、测试和运行自主 AI 代理。它扩展了为 Antigravity CLI 和 Antigravity 2.0 提供支持的相同核心代理工具,允许您将高级代理功能直接集成到您自己的应用程序和工作流程中。

SDK 将代理的逻辑与其运行位置解耦,让您可以专注于代理的功能; SDK 处理它的执行方式和位置。

快速入门使用 pip 安装 SDK:

pip install google-antigravity

你好世界示例一个功能代理,可以用不到 15 行 Python 代码与本地环境进行交互:

import asyncio
from google.antigravity import Agent, LocalAgentConfig

async def main():
    config = LocalAgentConfig()
    async with Agent(config) as agent:
        response = await agent.chat("What files are in the current directory?")
        print(await response.text())

if __name__ == "__main__":
    asyncio.run(main())

核心支柱

1. 受控的可扩展性(工具) 每个代理都以内置工具集(文件 I/O、代码编辑、shell 执行、目录搜索)开始,并且可以在统一执行管道下使用四种类型的工具进行扩展:

  • 内置工具: 核心文件和系统操作功能。
  • 自定义 Python 函数: 将任何可调用的 Python 注册为代理工具。
  • MCP 服务器: 连接任何模型上下文协议 (MCP) 服务器(stdio、SSE 或 HTTP)。
  • 代理技能: 加载可重复使用的说明和工具包。

2. 声明性安全政策 使用声明性“默认拒绝”策略系统配置代理权限,以控制工具的执行时间和方式:

from google.antigravity.hooks.policy import deny, allow, ask_user

policies = [
    deny("*"),                                         # Block all tools by default
    allow("view_file"),                                # Allow reading files silently
    ask_user("run_command", handler=my_handler),       # Require human approval for shell execution 
]

3. 生命周期挂钩 通过跨越九个具体生命周期点(例如,会话启动、前/后轮转、前/后工具调用)的三类钩子,获得对代理执行的精细控制:

  • 检查(只读、非阻塞):用于日志记录、审计跟踪和指标。
  • 决定(只读、阻止):用于自定义批准/拒绝逻辑(策略)。
  • 转换(修改、阻止):用于清理传输中的数据或从工具错误中恢复。

关键能力

  • 流式传输: 在生成实时模型推理和输出块时访问它们。
  • 多模式输入: 使用 from_file() 在本机传递图像、PDF、音频和视频。
  • 子代理: 使用独立的工具和上下文生成子代理来构建多代理团队。
  • 结构化输出: 使用 Pydantic 模型定义模式,直接返回经过验证的类型化数据。
  • 人在环: 暂停执行以提出结构化问题并根据用户输入进行分支。
  • 可观察性: 跟踪每轮和累计代币使用情况并访问思维痕迹。要在 Antigravity 2.0 中更轻松地使用 SDK,请使用 Antigravity SDK 技能。要了解有关反重力 SDK 的更多信息并查看更多如何使用它的示例,请访问 GitHub 存储库