Quickstart
Installation
Eino ADK 自 v0.5.0 起可用,v0.9.0 为当前推荐版本:
go get github.com/cloudwego/eino@latest
核心概念
Eino ADK 是 Go 语言的 Agent 开发框架。核心原语是 ChatModelAgent——以 ChatModel 为决策器、以 Tools 为行动空间、通过 ReAct Loop 自主推进问题求解的智能体。
💡 如果你只读一篇文档,请读:Eino ADK: ChatModelAgent 介绍
组件地图
| 组件 | 职责 | 文档 |
| ChatModelAgent | ReAct Loop:推理 → 行动 → 反馈,自主决策 | ChatModelAgent 介绍 |
| Middleware | 在 ReAct Loop 的生命周期点位注入行为(压缩、搜索、重试等) | ChatModelAgentMiddleware |
| Runner | 单次 Agent 运行入口:Query / Run → 事件流 | Agent Runner 与扩展 |
| TurnLoop | 多轮运行时:Push / Preempt / Stop + 声明式 checkpoint/resume | Agent Cancel 与 TurnLoop |
| DeepAgents | 预构建 Agent:任务规划(PlanTask)+ 子任务委派(TaskTool) | DeepAgents |
其他 Agent 类型
除 ChatModelAgent 外,ADK 还提供确定性编排原语:
- Workflow Agents:Sequential / Loop / Parallel Agent,用于预定义流程的结构化编排。
- Custom Agent:实现
Agent接口即可接入框架。
💡 Graph(确定性编排)与 Agent(自主决策)是两种不同的 AI 应用形态。当核心问题是"自主决策 + 运行时增强"时,推荐使用 ChatModelAgent。详见 ChatModelAgent 介绍中的"为什么不继续使用 flow/react"。
示例
eino-examples/adk 提供了完整的 ADK 示例代码:
- ChatModelAgent 入门:chatmodel — 书籍推荐 Agent,含中断与恢复
- DeepAgents:deep — 任务规划 + 子任务委派
- Workflow:sequential / loop / parallel
- Multi-Agent:supervisor / plan-execute