Eino: Cookbook

本文档为 eino-examples 项目的示例索引,帮助开发者快速找到所需的示例代码。

GitHub 仓库: https://github.com/cloudwego/eino-examples


📦 ADK (Agent Development Kit)

Hello World

目录名称说明
adk/helloworldHello World Agent最简单的 Agent 示例,展示如何创建一个基础的对话 Agent

入门示例 (Intro)

目录名称说明
adk/intro/chatmodelChatModel Agent展示如何使用 ChatModelAgent 并配合 Interrupt 机制
adk/intro/custom自定义 Agent展示如何实现符合 ADK 定义的自定义 Agent
adk/intro/workflow/loopLoop Agent展示如何使用 LoopAgent 实现循环反思模式
adk/intro/workflow/parallelParallel Agent展示如何使用 ParallelAgent 实现并行执行
adk/intro/workflow/sequentialSequential Agent展示如何使用 SequentialAgent 实现顺序执行
adk/intro/sessionSession 管理展示如何通过 Session 在多个 Agent 之间传递数据和状态
adk/intro/transferAgent 转移展示 ChatModelAgent 的 Transfer 能力,实现 Agent 间的任务转移
adk/intro/agent_with_summarization带摘要的 Agent展示如何为 Agent 添加对话摘要功能
adk/intro/http-sse-serviceHTTP SSE 服务展示如何将 ADK Runner 暴露为支持 Server-Sent Events 的 HTTP 服务

Human-in-the-Loop (人机协作)

目录名称说明
adk/human-in-the-loop/1_approval审批模式展示敏感操作前的人工审批机制,Agent 执行前需用户确认
adk/human-in-the-loop/2_review-and-edit审核编辑模式展示工具调用参数的人工审核和编辑,支持修改、批准或拒绝
adk/human-in-the-loop/3_feedback-loop反馈循环模式多 Agent 协作,Writer 生成内容,Reviewer 收集人工反馈,支持迭代优化
adk/human-in-the-loop/4_follow-up追问模式智能识别信息缺失,通过多轮追问收集用户需求,完成复杂任务规划
adk/human-in-the-loop/5_supervisorSupervisor + 审批Supervisor 多 Agent 模式结合审批机制,敏感操作需人工确认
adk/human-in-the-loop/6_plan-execute-replan计划执行重规划 + 审核编辑Plan-Execute-Replan 模式结合参数审核编辑,支持预订参数修改
adk/human-in-the-loop/7_deep-agentsDeep Agents + 追问Deep Agents 模式结合追问机制,在分析前主动收集用户偏好
adk/human-in-the-loop/8_supervisor-plan-execute嵌套多 Agent + 审批Supervisor 嵌套 Plan-Execute-Replan 子 Agent,支持深层嵌套中断

Multi-Agent (多 Agent 协作)

目录名称说明
adk/multiagent/supervisorSupervisor Agent基础的 Supervisor 多 Agent 模式,协调多个子 Agent 完成任务
adk/multiagent/layered-supervisor分层 Supervisor多层 Supervisor 嵌套,一个 Supervisor 作为另一个的子 Agent
adk/multiagent/plan-execute-replanPlan-Execute-Replan计划-执行-重规划模式,支持动态调整执行计划
adk/multiagent/integration-project-manager项目管理器使用 Supervisor 模式的项目管理示例,包含 Coder、Researcher、Reviewer
adk/multiagent/deepDeep Agents (Excel Agent)智能 Excel 助手,分步骤理解和处理 Excel 文件,支持 Python 代码执行
adk/multiagent/integration-excel-agentExcel Agent (ADK 集成版)ADK 集成版 Excel Agent,包含 Planner、Executor、Replanner、Reporter

GraphTool (图工具)

目录名称说明
adk/common/tool/graphtoolGraphTool 包将 Graph/Chain/Workflow 封装为 Agent 工具的工具包
adk/common/tool/graphtool/examples/1_chain_summarizeChain 文档摘要使用 compose.Chain 实现文档摘要工具
adk/common/tool/graphtool/examples/2_graph_researchGraph 多源研究使用 compose.Graph 实现并行多源搜索和流式输出
adk/common/tool/graphtool/examples/3_workflow_orderWorkflow 订单处理使用 compose.Workflow 实现订单处理,结合审批机制
adk/common/tool/graphtool/examples/4_nested_interrupt嵌套中断展示外层审批和内层风控的双层中断机制

🔗 Compose (编排)

Chain (链式编排)

目录名称说明
compose/chainChain 基础示例展示如何使用 compose.Chain 进行顺序编排,包含 Prompt + ChatModel

Graph (图编排)

目录名称说明
compose/graph/simple简单 GraphGraph 基础用法示例
compose/graph/stateState Graph带状态的 Graph 示例
compose/graph/tool_call_agentTool Call Agent使用 Graph 构建工具调用 Agent
compose/graph/tool_call_once单次工具调用展示单次工具调用的 Graph 实现
compose/graph/two_model_chat双模型对话两个模型相互对话的 Graph 示例
compose/graph/async_node异步节点展示异步 Lambda 节点,包含报告生成和实时转录场景
compose/graph/react_with_interruptReAct + 中断票务预订场景,展示 Interrupt 和 Checkpoint 实践

Workflow (工作流编排)

目录名称说明
compose/workflow/1_simple简单 Workflow最简单的 Workflow 示例,等价于 Graph
compose/workflow/2_field_mapping字段映射展示 Workflow 的字段映射功能
compose/workflow/3_data_only纯数据流仅数据流的 Workflow 示例
compose/workflow/4_control_only_branch控制流分支仅控制流的分支示例
compose/workflow/5_static_values静态值展示如何在 Workflow 中使用静态值
compose/workflow/6_stream_field_map流式字段映射流式场景下的字段映射

Batch (批处理)

目录名称说明
compose/batchBatchNode批量处理组件,支持并发控制、中断恢复,适用于文档批量审核等场景

🌊 Flow (流程模块)

ReAct Agent

目录名称说明
flow/agent/reactReAct AgentReAct Agent 基础示例,餐厅推荐场景
flow/agent/react/memory_example短期记忆ReAct Agent 的短期记忆实现,支持内存和 Redis 存储
flow/agent/react/dynamic_option_example动态选项运行时动态修改 Model Option,控制思考模式和工具选择
flow/agent/react/unknown_tool_handler_example未知工具处理处理模型幻觉产生的未知工具调用,提高 Agent 鲁棒性

Multi-Agent

目录名称说明
flow/agent/multiagent/host/journal日记助手Host Multi-Agent 示例,支持写日记、读日记、根据日记回答问题
flow/agent/multiagent/plan_executePlan-Execute计划执行模式的 Multi-Agent 示例

完整应用示例

目录名称说明
flow/agent/manusManus Agent基于 Eino 实现的 Manus Agent,参考 OpenManus 项目
flow/agent/deer-goDeer-Go参考 deer-flow 的 Go 语言实现,支持研究团队协作的状态图流转

🧩 Components (组件)

Model (模型)

目录名称说明
components/model/abtestA/B 测试路由动态路由 ChatModel,支持 A/B 测试和模型切换
components/model/httptransportHTTP 传输日志cURL 风格的 HTTP 请求日志记录,支持流式响应和敏感信息脱敏

Retriever (检索器)

目录名称说明
components/retriever/multiquery多查询检索使用 LLM 生成多个查询变体,提高检索召回率
components/retriever/router路由检索根据查询内容动态路由到不同的检索器

Tool (工具)

目录名称说明
components/tool/jsonschemaJSON Schema 工具展示如何使用 JSON Schema 定义工具参数
components/tool/mcptool/callresulthandlerMCP 工具结果处理展示 MCP 工具调用结果的自定义处理
components/tool/middlewares/errorremover错误移除中间件工具调用错误处理中间件,将错误转换为友好提示
components/tool/middlewares/jsonfixJSON 修复中间件修复 LLM 生成的格式错误 JSON 参数

Document (文档)

目录名称说明
components/document/parser/customparser自定义解析器展示如何实现自定义文档解析器
components/document/parser/extparser扩展解析器使用扩展解析器处理 HTML 等格式
components/document/parser/textparser文本解析器基础文本文档解析器示例

Prompt (提示词)

目录名称说明
components/prompt/chat_promptChat Prompt展示如何使用 Chat Prompt 模板

Lambda

目录名称说明
components/lambdaLambda 组件Lambda 函数组件的使用示例

🚀 QuickStart (快速开始)

目录名称说明
quickstart/chatChat 快速开始最基础的 LLM 对话示例,包含模板、生成、流式输出
quickstart/eino_assistantEino 助手完整的 RAG 应用示例,包含知识索引、Agent 服务、Web 界面
quickstart/todoagentTodo Agent简单的 Todo 管理 Agent 示例

🛠️ DevOps (开发运维)

目录名称说明
devops/debug调试工具展示如何使用 Eino 的调试功能,支持 Chain 和 Graph 调试
devops/visualize可视化工具将 Graph/Chain/Workflow 渲染为 Mermaid 图表

📚 相关资源