
Limits of Linear LLM Pipelines
Why simple chains break down when facing complex, real-world tasks.
Limits of Linear LLM Pipelines
The first generation of LLM applications were built as chains.
The Chain Architecture
A chain is a sequence of deterministic steps where the output of one step becomes the input of the next.
graph LR
Input --> PromptTemplate
PromptTemplate --> LLM
LLM --> OutputParser
OutputParser --> FinalOutput
Why Chains Work for Simple Tasks
For tasks like "Summarize this article" or "Translate this text", chains are perfect.
- Predictable: Step A always leads to Step B.
- Fast: No complex routing logic.
- Easy to Debug: If it fails, you know exactly which step broke.
Where Chains Fail
Real-world problems are rarely linear. Consider a "Travel Planning Assistant".
- User: "Book me a flight to Paris."
- Chain: Calls Flight API.
- API: Returns "No flights found".
- Chain: Crashes or returns the raw error to the user.
A linear chain has no mechanism to say: "Oh, no flights? Let me try checking nearby airports or different dates."
The Need for Cycles
To handle failure or complexity, you need cycles (loops). You need the ability to go back to a previous step and try again with new information. Linear DAGs (Directed Acyclic Graphs) cannot loop. This is the fundamental limit that LangGraph overcomes.