firehose> #llmops

Building Effective Agents

TL;DR

Anthropic's (Dec 2024) field guide from working with dozens of teams: the most successful LLM agent systems use simple, composable patterns, not complex frameworks — find the simplest solution and add complexity only when it demonstrably improves outcomes (Agentic Simplicity). The core architectural fork is Workflows vs Agents: workflows run LLMs/tools through predefined code paths (predictable, for well-defined tasks); agents let the LLM dynamically direct its own process (flexible, for open-ended tasks you can't hardcode — at the cost of higher spend and compounding-error risk). Everything is built from one primitive, the The Augmented LLM (LLM + retrieval + tools + memory it drives itself). Between a single call and a full agent sit five Agentic Workflow Patterns — prompt chaining, routing, parallelization (sectioning/voting), orchestrator-workers, evaluator-optimizer. Whatever you build, the tools are the agent's interface: invest in the Agent-Computer Interface (ACI) (ACI) as much as teams invest in HCI. Three closing principles: simplicity, transparency (show the planning steps), and a carefully crafted, well-documented ACI.

Concepts introduced

Held, not dropped (themes the capture touches that don't warrant their own page yet — spin out on demand):

Key claims

Why this is novel (and where it corroborates)

The graph so far is entirely an evals / continual-improvement spine (Eval-Driven Development, Error Analysis, LLM-as-Judge, Levels of Evaluation, Synthetic Data Generation). This capture opens a second, orthogonal region — agent architecture — that attaches to none of those concepts, so the dominant stance is novel: five new pages, no existing concept duplicated or subsumed.

Two genuine corroboration threads connect the regions (recorded as backlinks, not duplicated concepts):

  1. Evaluator-optimizer ↔︎ the eval flywheel. The evaluator-optimizer pattern — one LLM generates, another evaluates and feeds back in a loop — is Eval-Driven Development's generate→evaluate→refine flywheel collapsed to inference time. An independent witness that the loop works, now cross-linked from both Agentic Workflow Patterns and Eval-Driven Development.
  2. "Measure and iterate" ↔︎ "don't trust vibes." The article's repeated "add complexity only when it demonstrably improves outcomes" and "measure performance and iterate" is the same evidence-over-intuition discipline the eval graph insists on — here applied to architecture decisions rather than quality gates. Parallelization's "voting" and the "evaluator" call are also LLM-as-Judge applied online.

No contradicts tension surfaced: the two regions are complementary, not in conflict.


Linked from