用 Go 写 AI 应用的人,长期有个尴尬:Python 生态几乎垄断了 LLM 开发,Go 这边只能自己封装 HTTP 客户端,或者生搬硬套 LangChain 的 Python 设计模式,类型系统一乱,流式处理也跟着复杂。字节跳动 CloudWeGo 团队开源的 Eino,就是冲着这个痛点来的,目前 GitHub 上已经超过 1.3 万 Star。

Eino 吸收了 LangChain 和 Google ADK 的设计思路,但完全按 Go 的原生编程哲学来做,兼顾高并发、低延迟和工程化可维护性。
开箱即用的组件很全:统一的 ChatModel、Tool、Retriever、ChatTemplate 接口,原生支持 OpenAI、Ollama 等主流模型和工具链。
流式处理是它的一大亮点。不用手写繁琐的 channel 同步逻辑,节点与图之间自动支持流的拼接、装箱、合并与分发。
Agent 开发套件也完整:工具调用、多智能体协同、上下文管理全覆盖,生产环境必不可少的中断与恢复机制(Interrupt/Resume)也做了进去,Human-in-the-loop 人工介入能直接落地。
可观测性方面,基于 Aspect 的回调机制,可以在 OnStart、OnEnd、OnError 等生命周期节点无缝注入日志、指标和分布式追踪。
如果你正计划用 Go 构建高并发的企业级 AI Agent 或 RAG 应用,这个框架值得花时间看一看官方代码库和示例。