Eino
by cloudwego
Eino aims to be the ultimate LLM application development framework in Golang. It offers a framework that emphasizes simplicity, scalability, reliability and effectiveness that better aligns with Golang programming conventions.
Last updated: N/A
What is Eino?
Eino is an LLM application development framework in Golang that provides component abstractions, a composition framework, a set of APIs, bundled flows and examples, and tools for the entire development cycle.
How to use Eino?
Eino provides components that can be used directly or orchestrated using Chains or Graphs. Chains are simple chained directed graphs, while Graphs are more powerful and flexible, allowing for cyclic or acyclic directed graphs. The framework handles type safety, concurrency management, aspect injection, and option assignment.
Key features of Eino
Rich Components: Encapsulates common building blocks into component abstractions.
Powerful Orchestration: Implements complex business logic through graph orchestration.
Complete Stream Processing: Handles streaming data between components automatically.
Highly Extensible Aspects (Callbacks): Supports aspects for logging, tracing, metrics, etc.
Use cases of Eino
Building ReAct agents
Creating chat applications
Developing tool-calling applications
Implementing multi-query retrievers
FAQ from Eino
What is Eino?
What is Eino?
Eino is an LLM application development framework in Golang.
What are the main features of Eino?
What are the main features of Eino?
Rich components, powerful orchestration, complete stream processing, and highly extensible aspects (callbacks).
How does Eino handle stream processing?
How does Eino handle stream processing?
Eino automatically concatenates, boxes, merges, and copies streams as needed during graph execution.
What is graph orchestration in Eino?
What is graph orchestration in Eino?
Graph orchestration allows for the directed flow of data through multiple components, with the framework handling type checking, concurrency management, aspect injection, and option assignment.
Where can I find examples of how to use Eino?
Where can I find examples of how to use Eino?
Check out the EinoExamples repository for example applications and best practices.