trendingzones
← Back to the Introduction level

AI & ML — INTERMEDIATE

The Real Spectrum: Chatbot, Workflow, and Agent

The Introduction level drew one line: chatbot versus multi-step process. That line actually splits further. “Multi-step process” itself comes in two genuinely different shapes — a fixed workflow and a fully dynamic agent — and knowing which one a task needs is a real engineering decision, not a matter of taste.

The Quick Answer

Anthropic’s own engineering team draws this line precisely: “Workflows are systems where LLMs and tools are orchestrated through predefined code paths,” while “Agents… are systems where LLMs dynamically direct their own processes and tool usage, maintaining control over how they accomplish tasks.”A workflow follows a sequence someone decided in advance — search, then compare, then book, always in that order. An agent decides its own next step as it goes, based on what it actually finds. Both are “agentic” in the loose sense the Introduction level covered; only one of them is a true agent in this more precise sense.

A Spectrum, Not Three Boxes

The clearest way to see this is as one spectrum — how much control the LLM has over its own next step — rather than three unrelated categories:

A chatbot sits at one end: it produces a single reply, with no path to follow at all. A workflow sits in the middle: it follows a real multi-step process, but the order of those steps was fixed by whoever built it, not decided by the LLM in the moment. A full agent sits at the far end: the LLM itself decides what to do next, in what order, based on what it discovers along the way — nobody wrote that sequence down in advance because it couldn’t be known in advance.

Source: Anthropic, “Building Effective Agents”

The Five Named Workflow Patterns

“Workflow” isn’t one single shape either — Anthropic’s own framework names five distinct, reusable patterns that cover most real predefined-path use cases:

PatternWhat it is
Prompt chainingDecomposes a task into a sequence of steps, where each LLM call processes the output of the previous one.
RoutingClassifies an input and directs it to a specialized followup task.
ParallelizationLLMs work simultaneously on a task and have their outputs aggregated programmatically.
Orchestrator-workersA central LLM dynamically breaks down tasks, delegates them to worker LLMs, and synthesizes their results.
Evaluator-optimizerOne LLM call generates a response while another provides evaluation and feedback in a loop.

The orchestrator-workers pattern here is exactly the same architecture covered in depth in Multi-Agent Systems Intermediate. This page is where it fits into the bigger picture: it’s one of five named workflow patterns, not a category of its own.

Which Pattern Actually Fits Which Scenario

Pick a pattern below to see a scenario it genuinely fits, and why — including the case where none of the five fixed patterns work and a full dynamic agent is actually required:

Start Simple, Add Complexity Only When Needed

Anthropic’s own guidance is direct on this point: find “the simplest solution possible, and only increase complexity when needed.” For most applications, a single, well-optimized LLM call — with good retrieval and in-context examples — is already enough, and a fixed workflow or full agent should only get added once a simpler approach has actually been tried and demonstrably falls short, with the improvement confirmed by measurement rather than assumed in advance.

Fun Fact

The orchestrator-workers pattern looks the most “agentic” of the five workflow patterns — it even delegates to other LLM calls — but it’s still a workflow by Anthropic’s own definition, not a full agent. The central LLM decides how to break the task apart, but the overall shape (decompose, delegate, synthesize) is still a predefined code path someone wrote in advance. A true agent could, in principle, decide not to delegate at all if that turned out to be the wrong move for the specific request.

Test Yourself

According to Anthropic’s own definition, what makes something a “workflow” rather than an “agent”?

A task needs to check a single piece of content against 4 independent policies (spam, legal, tone, accuracy) that don’t depend on each other. Which workflow pattern fits best?

What does Anthropic actually recommend about when to add the complexity of a workflow or full agent?

Ready for the real cost and latency trade-offs, the failure modes of picking the wrong one, and working code showing the same task solved three different ways? Continue to the Advanced level →