Google 近日为其 Agent Development Kit(ADK)添加了对 Go 语言的支持。这使 Go 开发者能够以一种符合语言习惯的方式来构建和管理智能体,充分利用 Go 强大的并发和类型特性。
Go ADK 是一个开源工具包,使开发者能够构建模块化的多智能体系统。在此类系统中,专门的智能体以分层方式组织。该工具包还提供调试、版本控制和灵活部署的支持。
Agent Development Kit(ADK)专为那些在构建与 Google Cloud 服务紧密集成的先进 AI 智能体时,追求灵活性的开发者而设计。
Google 表示,其 ADK 支持“代码优先”(code-first)的智能体开发模式,这意味着所有逻辑、工具和编排都使用编程语言来定义。这种方法为开发者带来了显著优势,包括更高的灵活性、更好的可测试性以及更轻松的版本控制。ADK 还包含一个内置的开发 UI,旨在简化智能体的测试、评估、调试和演示。
这个被称为 ADK web 的开发 UI 是一个基于 Angular 构建的 Node.js 应用,可以通过浏览器访问 localhost:4200。它允许开发者检查 ADK 运行时内的事件、跟踪记录和工件。正如 Google 关系工程师 Daniela Petruzalek 所解释的,ADK 开发 UI 对于“专注于构建智能体能力和工具”特别有用,能帮助团队尽快达成 MVP(最小可行产品)。不过,开发者最终可能需要创建自定义 UI,这需要与 ADK 运行时进行交互。她在文章中举例说明,通过使用 HTML/CSS、JavaScript 以及通过 FastAPI 与 Python 后端通信,构建了一个简单的智能体前端。
Go ADK 是同一更广泛生态系统的一部分,该生态系统也支持 Java 和 Python,并包含 OpenAI 规范、预构建工具和自定义函数。预构建工具使智能体能够执行诸如使用 Gemini 搜索网络、执行代码、与 Google Cloud API 集成以及访问众多第三方服务等任务。开发者还可以构建自己的自定义工具,使智能体能够执行查询数据库、从文档中检索信息等操作。
ADK 还支持用于智能体互操作和协调的 Agent2Agent 协议(A2A):
借助 A2A,一个主智能体可以无缝编排任务并将其委托给专门的子智能体——无论它们是本地服务还是远程部署——确保安全且不透明的交互,而无需暴露内部记忆或专有逻辑。
A2A 支持通过一个独立的库提供,该库可以扩展以支持不同的通信协议和数据库后端。
如需快速上手,请查看 GitHub 上的 Google ADK 示例仓库,其中包含涵盖一系列用例和复杂程度的示例智能体,从简单的对话机器人到复杂的多智能体工作流。也不要错过详尽的官方文档,它深入介绍了 ADK 的所有功能。
|