cloudwego/eino

Универсальная фреймворк для разработки LLM/AI приложений на Go.

LLM⭐ 13 115Goпоследний релиз: v0.9.20
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Eino — это фреймворк на Go для разработки LLM-приложений, вдохновленный LangChain и Google ADK, но созданный с учетом конвенций языка Go.

Зачем нужен

Инструмент упрощает создание AI-агентов и сложных рабочих процессов (workflows), предоставляя готовые компоненты (ChatModel, Tool, Retriever) и механизмы оркестрации. Он полезен для Go-разработчиков, которым нужно интегрировать LLM в свои приложения, управляя потоками данных и состоянием детерминировано.

Что можно реализовать

  • Создание автономных AI-агентов с использованием инструментов (ReAct-паттерн) для выполнения задач, требующих внешних вызовов.
  • Построение сложных многоагентных систем (DeepAgent), где задачи разбиваются на шаги и делегируются специализированным суб-агентам.
  • Разработка детерминированных графов выполнения (workflows) для строгой обработки данных с последующей интеграцией в агенты.
  • Реализация RAG-систем и пайплайнов обработки данных с использованием готовых компонентов для работы с векторными хранилищами и моделями.

Ключевые возможности

  • Готовая экосистема компонентов: официальные реализации для OpenAI, Claude, Gemini, Ollama, Elasticsearch и других.
  • Встроенная поддержка потоковой обработки (streaming) данных между узлами графа без ручной синхронизации.
  • Гибкая оркестрация: возможность комбинировать автономных агентов с детерминированными графами (compose) через механизм инструментов.
  • Поддержка сложных паттернов: multi-agent coordination, human-in-the-loop (interrupt/resume) и контекстное управление.

👤 Кому подойдёт: Go-разработчики, создающие LLM-приложения, AI-инженеры, нуждающиеся в строгой типизации и контроле потоков выполнения.

Релизы

v0.9.20patch
🕐 вчера · релиз на GitHub ↗

Исправлена стабилизация порядка запросов в памяти и сохранение контрольных точек для отменённых потоков инструментов в ADK.

  • Fixed: Стабилизирован порядок запросов к файловому хранилищу в памяти в модуле ADK.
  • Fixed: Обеспечено сохранение контрольных точек для отменённых потоков инструментов в ADK.
v0.10.0-alpha.29patch
🕐 19 дн назад · релиз на GitHub ↗

Исправлена дублирующая вложенная проверка в ADK и улучшено усечение контекста в agentsmd.

  • Fixed: Исправлена ошибка с дублированием вложенных полезной нагрузки чекпоинтов в ADK.
  • Added: В agentsmd добавлена ограничение по объему файла и усечение с учетом бюджета.
  • Исправлены битые ссылки на бейджи в документации README.
v0.9.19minor
🕐 20 дн назад · релиз на GitHub ↗

В релиз Eino v0.9.19 добавлены лимиты размера файлов и усечение с учётом бюджета для компонента agentsmd.

  • Added: Добавлена поддержка установки лимита размера файла (byte cap) для agentsmd.
  • Added: Реализовано усечение контента с учётом доступного бюджета (budget-aware truncation) в agentsmd.
v0.9.18patch
🕐 21 дн назад · релиз на GitHub ↗

Исправлена дублирующая вложенная полезная нагрузка чекпоинтов в ADK и устранены битые ссылки в документации.

  • Fixed: Исправлена проблема с дублирующей вложенной полезной нагрузкой чекпоинтов в ADK.
  • Fixed: Устранены неработающие ссылки на бейджи в файлах README.md и README.zh_CN.md.
v0.9.17patch
🕐 24 дн назад · релиз на GitHub ↗

Исправлена регистрация конвертеров потоков для границ контрольных точек в компоненте compose.

  • Fixed: Исправлена регистрация конвертеров потоков для границ контрольных точек в модуле compose.
v0.9.16patch
🕐 24 дн назад · релиз на GitHub ↗

Исправлена ошибка с контрольными точками для вложенных потоков в компоненте compose.

  • Fixed: Исправлена работа контрольных точек для вложенных потоков в модуле compose.
v0.10.0-alpha.23patch
🕐 25 дн назад · релиз на GitHub ↗

Исправлены гонки данных, таймауты и сохранение чекпоинтов в ADK; добавлены описания в события задач.

  • Fixed: Устранена гонка данных в синтетических агентных потоках.
  • Fixed: Исправлено сохранение чекпоинтов при очистке подагентов.
  • Fixed: Таймаут выполнения теперь задаётся в секундах.
  • Fixed: Корректное ограничение отмены потока при очистке подагентов.
  • Added: В события создания задач добавлены описания.
v0.9.14patch
🕐 1 мес назад · релиз на GitHub ↗

Исправлена передача контекста в middleware для ADK и добавлен генератор результатов для EnhancedTool.

  • Fixed: Исправлена ошибка в middleware для ADK: теперь при ошибке в процессе суммаризации корректно возвращается входной контекст, а не nil.
  • Added: Добавлен PatchedToolResultGenerator для поддержки результатов EnhancedTool-стиля в ADK.
v0.9.13patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлены критические ошибки в ADK (стриминг, отмены, чекпоинты) и устранена гонка таймеров в compose.

  • Fixed: Исправлено сохранение стримингового вывода инструментов при редукции в ADK.
  • Fixed: Унифицированы области отмены дочерних задач, aware к чекпоинтам, в ADK.
  • Fixed: Изолирована область отмены для прямых вложенных агентов в ADK.
  • Fixed: Устранена гонка time.After(0) при немедленном прерывании графа в compose.
  • Added: Добавлена подсказка о чтении инструмента в уведомление об усечении в ADK.