adk-go的快速入门
adk-go 是 Google 开源的一款主打 “代码优先 (Code-First)” 的 AI Agent(智能体)开发框架的 Go 语言版本。 核心思想:不推崇高度封装的“黑盒”黑魔法,而是将大模型编排、工具调用、记忆管理等复杂逻辑直接转化为标准的、可预测的 Go 代码。 优势:结合了 Go 语言的高并发和强类型特性。你可以像开发普通微服务一样,对 Agent 进行断点调试、版本控制和企业级部署。
框架核心
adk-go 的运行依赖于以下几个核心概念,你可以像深度学习领域里任何一种框架一样像堆积木一样堆砌他们:
Agent (智能体):
定位:系统的“大脑”。 组成:由大模型 (Model, 如 Gemini)、系统指令 (Instructions/人设) 和 工具集 (Tools) 组成。 详情(在新窗口打开)
Session (会话)
定位:Agent 的“短期记忆”与运行沙盒。 功能:由 SessionService 管理。每次用户交互都在 Session 中进行。它记录了完整的对话历史 (Event History),并维护了一个可变的工作区状态 (State)。 详情(在新窗口打开)
Memory (长期记忆)
定位:跨 Session 的信息持久化。 机制:允许 Agent 记住历史对话中的关键信息(类似同一个客服永远记得你)。框架提供了 LoadMemory 和 PreloadMemory 等内置机制供 Agent 随时检索历史。
Tool (工具/技能)
定位:Agent 与外部世界(API、数据库、甚至物理机器)交互的“手和脚”。
部署成微服务
通过 NewHandler 自动注册路由