What LangChain and LangGraph are
LangChain is an MIT licensed Python and JavaScript framework for building LLM applications. LangGraph, from the same team, is a low-level orchestration framework for stateful agents: you define a graph in code, and it adds durable execution that resumes after failures and human-in-the-loop checkpoints where you can inspect and modify agent state. LangSmith is the commercial product for tracing, evaluation and observability, and LangSmith Deployment hosts long-running agents. The integration surface is the widest in the ecosystem.
This is a library versus platform question
EDDI is not a competing framework. EDDI uses LangChain4j, the Java sibling of LangChain, internally. The real question is not which abstraction is better. It is whether the control flow lives in code you write, as a LangGraph graph, or in declarative configuration you deploy, and who builds and owns everything around it: the REST layer, authentication, tenancy, state, audit, and the interface non-developers use.
What you build versus what you deploy
| Dimension | LangChain / LangGraph | EDDI |
|---|---|---|
| Form factor | A library imported into your application | Deployable middleware; runs wherever Docker runs |
| Orchestration logic | Python or TypeScript graphs in your repository | JSON configuration and deterministic behavior rules, changed without redeployment |
| Human in the loop | Interrupts let you inspect and modify state; the approval UI and policy are yours to build | Gates on turns, tool calls and group phases, with timeout policies, Manager and Slack approvals |
| Durability | Durable execution with persistence you configure | Conversation memory persisted by the platform, with explicit states such as AWAITING_HUMAN |
| REST API and routing | You build it, or host on LangSmith Deployment | Included, plus OpenAPI 3.1, A2A protocol, and SSE streaming |
| Authentication and RBAC | You build it | Optional OIDC/Keycloak with eddi-admin and eddi-approver roles |
| Non-developer interface | You build it (LangSmith Studio is aimed at developers) | EDDI Manager, a production React UI in 11 languages |
| Secret management | You build it, or bring a vault | Built-in AES-256-GCM Secrets Vault, referenced as ${vault:key} |
| Observability | LangSmith (commercial) or your own instrumentation | Prometheus metrics and auto-provisioned Grafana dashboards |
| Audit and compliance | You build it | HMAC-signed, append-only, sequence-checked audit ledger, data subject rights API, 15+ frameworks addressed |
| Iteration loop | Change code, review, test, deploy | Change configuration in the UI or API; effective immediately |
| Ceiling on control | None. Anything expressible in code is available | Bounded by what configuration can express, by design |
Details about the other tool were checked against its official documentation and repository in October 2026. These projects change quickly, so confirm current behavior with the vendor before you decide.
Choosing between them
Where LangChain and LangGraph are the better choice
- The orchestration itself is your competitive advantage and belongs in your codebase, not in a config store.
- You need control flow that declarative configuration cannot express: custom graph topologies, bespoke retry semantics, unusual state machines.
- You are a Python or TypeScript shop and want the agent to live inside an existing service rather than beside it.
- You need a brand-new integration the week it appears. LangChain moves faster than any platform can.
- The team is one or two engineers, with no compliance officer, no tenancy requirement, and no non-developer who needs access.
Where EDDI is the better choice
- You recognise the Day 2 operations list as work your team is doing instead of shipping product.
- Prompt engineers and operations staff need to change agent behavior without a pull request.
- Several teams or customers share one deployment and need isolation, quotas, and cost attribution.
- Procurement wants an answer on audit trails, data residency, and framework coverage before anything ships.
- You want the orchestration layer to be a dependency you upgrade, not a codebase you maintain.
Moving an application from LangChain or LangGraph
The logic usually survives; the surrounding infrastructure is what you stop maintaining. Work outward from the chain or graph definition. Control flow that depends on arbitrary Python will need to become behavior rules or a declared tool.
| LangChain / LangGraph | EDDI |
|---|---|
| Chain or LangGraph graph | EDDI pipeline configuration and behavior rules |
| Tools and function calling | MCP tool definitions or httpCall declarations |
| Interrupt for human review | PAUSE_CONVERSATION rule or toolApprovals globs, approved in the Manager or Slack |
| Checkpointer and memory classes | Conversation memory with step, conversation and longTerm scopes |
| Retriever and vector store setup | RAG configuration across 8 embedding providers and 6 vector stores |
| Prompt templates | Versioned prompt snippets, referenced by name |
| FastAPI wrapper | Built-in REST API, OpenAPI 3.1, and SSE streaming |
| LangSmith tracing | Prometheus metrics, Grafana dashboards, and the audit ledger |
Frequently asked
Does EDDI use LangChain?
EDDI uses LangChain4j, the Java implementation, internally. This is not a competing abstraction. EDDI is the deployable platform built around that kind of library, providing the API layer, authentication, state management, management UI, and compliance infrastructure that a library deliberately leaves to you.
What is the difference between LangChain and LangGraph?
LangChain provides components and integrations for LLM applications. LangGraph is the lower-level layer for stateful, long-running agents defined as graphs, with durable execution and human-in-the-loop checkpoints. Both are libraries you embed in your own service. The comparison with EDDI applies to both.
What is the Day 2 operations gap?
Day 1 is getting an agent to respond correctly, which a library handles well. Day 2 is everything after: authentication, multi-tenancy, conversation state across restarts, audit logging, secret rotation, horizontal scaling, cost tracking, and an interface for people who do not write Python. Teams routinely spend more time on Day 2 than on the agent itself.
Is configuration less powerful than code?
Yes, and that trade is deliberate. Configuration cannot express everything code can. In exchange you get changes without redeployment, behavior that non-engineers can review, and no runtime code execution to defend in a security review. If you need the ceiling that code provides, use the library.
Can we keep LangChain and still use EDDI?
Yes. EDDI exposes an MCP server and a REST API, so a LangChain application can call EDDI agents as tools, and EDDI can call your LangChain service through httpCall. Splitting along the line of what is differentiated versus what is infrastructure is a reasonable design.
Other comparisons
- EDDI vs. Microsoft Agent Framework (AutoGen and Semantic Kernel)
- EDDI vs. CrewAI
- EDDI vs. Dify
- EDDI vs. n8n
- EDDI vs. Flowise
- EDDI vs. Rasa
- All alternatives: builders, libraries, and cloud platforms
Ready for production?
Get managed deployment, SLA-backed support, and hands-on help from the team that builds EDDI.
Talk to us about enterprise deployment