用途:Eino ADK(导入 github.com/cloudwego/eino/adk)是用 Go 构建 AI Agent 的开发框架,通过泛型 MessageType 同时支持 *schema.Message 与 *schema.AgenticMessage,新用法建议后者。
主要能力:提供多种 Agent 类型——ChatModelAgent(LLM 推理调用工具循环的 ReAct 模式)、DeepAgent(内置规划、文件系统、子智能体)、TurnLoop(支持抢占与生命周期的推送式多轮事件循环),也可直接实现 TypedAgent 接口自定义。Runner 管理智能体生命周期、上下文传递与中断/恢复。可配置取消(CancelImmediate、CancelAfterChatModel、CancelAfterToolCalls 等安全点)、输出驱动的模型重试、模型故障转移,以及通过 Handlers 挂载 8 种内置中间件(文件系统、动态工具搜索、工具结果裁剪、摘要、任务规划、技能、工具调用修补、Agents.md 注入)。支持 AgentAsTool 将智能体包装为工具,以及通过 compose.Interrupt 与 ResumeWithParams 实现 human-in-the-loop。
使用方式:用 adk.NewChatModelAgent 创建智能体并配置 Name、Instruction、Model、ToolsConfig,再用 adk.NewRunner 执行 Query/Run,遍历返回的异步事件迭代器。TurnLoop 通过 loop.Push 输入、loop.Run 启动、loop.Stop 停止、loop.Wait 取最终状态。
适用场景:在 Go 中构建单智能体工具调用、多智能体协作、交互式多轮应用及需人工审批的流程。
限制:资料未提供收费、价格、支持平台或效果数据;其余细节需查阅各参考文件。