[Question] consult about eino's functions
I would like to consult about whether the functions of eino and langgraph are aligned, and if not, what are the differences in their features. Thank you.
Common core:
- both have component abstraction and implementations for LLM application development: ChatModel, Retrievers, Tool, etc.
- both have strong Graph orchestration capabilities: control flows, callbacks, checkpoint & interrupt.
- both have strong streaming support.
langgraph's strength:
- more feature complete in certain areas, such as memory components
- richer eco-system.
eino's strength:
- built-in type safety and performance built on strength of golang language, better for scaling
- more focused set of APIs and deeper functionality in certain areas, such as workflow API
Common core:
- both have component abstraction and implementations for LLM application development: ChatModel, Retrievers, Tool, etc.
- both have strong Graph orchestration capabilities: control flows, callbacks, checkpoint & interrupt.
- both have strong streaming support.
langgraph's strength:
- more feature complete in certain areas, such as memory components
- richer eco-system.
eino's strength:
- built-in type safety and performance built on strength of golang language, better for scaling
- more focused set of APIs and deeper functionality in certain areas, such as workflow API
EDIT: Is it the Checkpointer?
Hi, I'm on my phone now and so it's difficult to look through code.. if you don't mind me asking so naively.
I haven't seen any references to memory.. is there any sort of memory built in (whether abstractions or a simple message state that's always sent to the model).
no built-in memory abstraction. They should be handled external to graph execution. However, the built-in state (and checkpoint) mechanism can be used to persist messages within a single graph run.