Compare Architectures
Side-by-side: use case, requirements, latency, cost, strengths, weaknesses, failure modes, example — and when to choose each.
Workflow vs AgentSingle agent vs Multi-agentRAG vs Fine-tuningVector search vs BM25Function calling vs MCPDirect API integration vs MCPPlan-then-execute vs ReActShort-term memory vs Long-term memoryLLM-as-judge vs Deterministic evaluatorsHuman-in-the-loop vs Human-on-the-loopSupervisor vs PipelinePrompt caching vs Semantic cachingRouter vs SupervisorFramework vs No framework
| Framework | No framework | |
|---|---|---|
| Use case | Graph orchestration, checkpointing, streaming, or many integrations needed | Single agent or workflow with a handful of tools |
| Requirements | Learn the abstraction; track releases; accept its opinions | Provider SDK, ~200 lines of loop and tool dispatch |
| Latency | Extra layers; usually negligible, sometimes hidden calls | Exactly the calls you wrote |
| Cost | Hidden prompts and retries can add tokens | Fully visible |
| Strengths | Batteries included; community patterns; persistence and tracing hooks | Total control, transparent, trivial to debug |
| Weaknesses | Leaky abstractions, churn, hard-to-debug magic | You re-implement checkpointing, streaming, retries |
| Failure modes | Breaking upgrade; unable to see what prompt was sent | Home-grown loop lacks limits and observability |
| Example | Durable multi-step workflow with human approval and resume | A support bot with 6 tools and a RAG lookup |
| Choose this when | Choose a framework once you need durable state, graphs, or streaming and can name the problem it solves. | Choose no framework first: build the loop yourself, learn the failure modes, then adopt a framework for a specific need. |