Prompt Chaining
A sequence of LLM calls where each call's output becomes the next call's input. Validation gates check quality before proceeding.
When to use
Use when a task can be broken into sequential, well-defined sub-tasks where each step produces a verifiable intermediate result.
Parallel Calls
Multiple LLM calls run concurrently on independent inputs. Results are aggregated by a combiner step.
When to use
Use when a task can be decomposed into independent sub-tasks that do not depend on each other's outputs.
Orchestrator-Worker
An orchestrator LLM decomposes a task into sub-tasks and delegates each to specialized worker LLMs.
When to use
Use when tasks are complex and dynamic — you don't know at design time how many steps or what kinds are needed.
Evaluator-Optimizer
A generator LLM produces output, an evaluator scores it, and the optimizer refines it — repeating until quality is acceptable.
When to use
Use when output quality is critical and a clear evaluation rubric exists.
ReAct
The foundational agent loop: the LLM reasons about what to do, calls a tool, observes the result, and repeats until the task is complete.
When to use
Use for open-ended tasks where the required steps are unknown upfront and can only be determined through tool-use and observation.
Plan & Execute
The LLM creates a complete plan upfront, then executes each step sequentially. Planning and execution are separated into distinct phases.
When to use
Use for complex tasks where a structured upfront plan reduces errors and enables progress tracking.
Tool Use
The LLM calls structured tools (functions) defined with JSON schemas. The framework handles dispatch and passes results back.
When to use
Use when you need the LLM to interact with external APIs, databases, or computations in a structured, schema-validated way.
Memory
The agent maintains persistent state across turns and sessions through multiple memory layers: in-context, external (KV store), and semantic (vector).
When to use
Use when the agent needs to remember information across multiple conversations or build up knowledge over time.
RAG
Retrieval-Augmented Generation: retrieves relevant documents from a knowledge base before generating a response, grounding the LLM in external knowledge.
When to use
Use when the LLM needs access to domain-specific, current, or private knowledge not in its training data.
Reflection
The LLM generates output, then critiques its own work using a structured rubric. It revises based on the critique and repeats until satisfied.
When to use
Use when output quality requires self-improvement and you have a clear rubric for "good" output.
Routing
An intent classifier dispatches incoming requests to the most appropriate specialized handler, enabling multi-skill systems.
When to use
Use when requests vary widely in type and specialized handling produces better results than a single generalist model.
Multi-Agent
A supervisor agent routes tasks to specialized sub-agents, each with its own tools and memory. Enables parallelism and deep specialization.
When to use
Use for enterprise-scale tasks requiring parallel work streams and deep specialization beyond what a single agent can do.