How is ModelRiver different from an orchestration framework like LangChain?
Frameworks like LangChain, LangGraph and LlamaIndex are libraries inside your code: they help you chain model calls, tools and retrieval, and you host and connect everything around them. ModelRiver is a hosted service that ties together the AI gateway, multi-step pipelines, webhooks, live delivery to the browser and conversation memory, so there's less of your own code to connect.
What does a framework leave to me?#
A framework organizes the logic. You usually still build and run:
- A way to stream results to your users, like a socket server or relay
- Storage for conversation history, sent back with each call
- Queues and callbacks for steps that run in your backend
- Retries, failover and timeouts for each provider
- Logging, cost tracking and limits
How does ModelRiver handle those?#
| Piece | In ModelRiver |
|---|---|
| Model calls | One API for 13 providers, with failover and structured outputs |
| Multi-step flows | A backend pipeline of up to 6 steps after the first AI call: your backend steps (webhook, then your callback) and linked AI workflows |
| Your servers | Signed webhooks with automatic retries |
| Your users | Results and step progress pushed to the browser over WebSocket |
| Conversations | Sessions keep history and summaries, accept team replies and send live updates |
| Changes | Draft and Live versions, with publish and rollback, without redeploying |
| Visibility | One request timeline covering AI attempts, webhooks and callbacks |
Where is a framework the better fit?#
Be honest with yourself about what you need:
- Agent loops with tools run in your code. ModelRiver supports tool calling (
toolsandtool_choice), but your app executes the tools. - Retrieval (RAG) stays in your code or backend, with your own vector database.
- Custom control flow, like deep branching or your own abstractions over model calls, is easier in a code-first framework.
ModelRiver's pipelines are steps you configure, not arbitrary code it runs for you. Your own logic runs in your backend, between steps.
Can I use both?#
Yes, and it's common. Point LangChain's ChatOpenAI, LangGraph, CrewAI or the OpenAI Agents SDK at ModelRiver's OpenAI-compatible URL. Your framework keeps the logic, and every model call gets failover, cost tracking and request logs.