Repolode
cloudwego

cloudwego/eino

一个用 Go 编写的 LLM 应用开发框架,提供组件、图编排与智能体开发能力。

可替代:LangChain

Star
13,361
Fork
1,138
未关闭 Issue
258
最近提交
昨天

这是什么?

Eino 是一个基于 Go 的 LLM 应用开发框架,遵循 Golang 的编码习惯,设计上参考了 LangChain 和 Google ADK 等框架。它提供 ChatModel、Tool、Retriever、ChatTemplate 等可复用组件,并为 OpenAI、Ollama 等模型服务提供官方实现。

在组件之上,Agent Development Kit(ADK)可用于构建使用工具、协调多个子智能体、管理上下文的 AI 智能体,并支持通过中断与恢复机制等待人工输入。ChatModelAgent 内部处理 ReAct 循环,DeepAgent 则可将复杂任务拆解为步骤并交给子智能体执行。

编排层可以把组件连接成图和工作流,既能独立运行,也能作为工具暴露给智能体使用。数据在节点间流动时流式处理由框架自动完成,还可在固定节点挂载回调,用于日志、链路追踪和指标采集。

核心功能

  • 01提供 ChatModel、Tool、Retriever、ChatTemplate 等可复用组件,并附带官方模型实现。
  • 02内置智能体开发套件,支持工具调用、多智能体协作与上下文管理。
  • 03支持中断与恢复,可在检查点保存状态后等待人工输入。
  • 04可将图与工作流编排为工具,供智能体按需调用。
  • 05节点间的流式数据由框架自动处理,并支持回调用于日志、追踪和指标。

适用场景

  • 在 Go 服务中构建带工具调用能力的对话智能体。
  • 编排确定性的 LLM 流水线,例如生成、校验、格式化等步骤。
  • 构建由协调者分派任务给专业子智能体的多智能体系统。
  • 在智能体流程中加入人工审批环节,借助中断与恢复实现。

快速上手

  1. 1

    使用 API 密钥配置 OpenAI ChatModel

  2. 2

    基于 ChatModel 创建 ChatModelAgent 和 Runner

  3. 3

    调用 runner.Query 发送请求,并从迭代器读取事件

使用前须知

  • 快速入门示例需要 OpenAI API 密钥(OPENAI_API_KEY)或其他类似的模型服务商密钥。
  • OpenAI、Ollama 等官方组件实现位于独立的 eino-ext 仓库中。

标签

常见问题

eino 是什么?
一个用 Go 编写的 LLM 应用开发框架,提供组件、图编排与智能体开发能力。 Eino 是一个基于 Go 的 LLM 应用开发框架,遵循 Golang 的编码习惯,设计上参考了 LangChain 和 Google ADK 等框架。它提供 ChatModel、Tool、Retriever、ChatTemplate 等可复用组件,并为 OpenAI、Ollama 等模型服务提供官方实现。
eino 可以免费使用吗?用的什么许可证?
eino 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
eino 还在维护吗?
活跃维护中。eino 最近一次提交是在 2026年10月19日。
eino 适合用来做什么?
在 Go 服务中构建带工具调用能力的对话智能体。 编排确定性的 LLM 流水线,例如生成、校验、格式化等步骤。 构建由协调者分派任务给专业子智能体的多智能体系统。 在智能体流程中加入人工审批环节,借助中断与恢复实现。
eino 怎么安装和运行?
使用 API 密钥配置 OpenAI ChatModel 基于 ChatModel 创建 ChatModelAgent 和 Runner 调用 runner.Query 发送请求,并从迭代器读取事件
在哪里获取 eino?
源代码和安装说明在 GitHub 上:https://github.com/cloudwego/eino

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目