The first six parts measured the card. Parts 7 through 9 measure the workload. An agentic AI workflow — built for demonstration purposes — has been live on this single Radeon AI PRO R9700 for four days, serving steady traffic from a small panel of agents. The point is not the agents themselves: anyone can swap in their own. The point is the loop, and where each step of the loop runs on a single EPYC + Radeon node. Here is what an agentic workload actually is, broken into five phases.
Parts 1 through 6 measured the R9700 across three serving stacks — vLLM, llama.cpp (Vulkan and HIP), and SGLang. For an agentic workload, the choice is vLLM, and the reason is structural: this is a multi-agent system. Traffic does not arrive as one user typing one message. It arrives as many agents firing at the same model at the same time — classifier ticks, verifier loops, synthesis batches, Q&A from frontends — all generating simultaneous requests across overlapping batches. vLLM's continuous batching folds those concurrent requests into one rolling forward pass, so the GPU stays at duty cycle even when twenty agents are mid-flight.
A chatbot answers when asked. An agent decides when to ask itself, what to look at, what to write, and what to do next — on a loop, against real data, without a human prompt in the middle.
Every agentic workload reduces to these five phases. The shape of your hardware bill comes from how you map them.
| Phase | What it does | Runs on |
|---|---|---|
| 1. Sense | Ingest email, Teams chats, shared documents and files, meeting recordings, Salesforce changes | CPU (EPYC) + I/O |
| 2. Synthesize | Embed, summarize, extract entities, write structured rows into the brain | R9700 (LLM) + CPU (embeddings) |
| 3. Verify | Fact-check every claim, score veracity, requeue weak rows for re-synthesis | R9700 + AMD Enterprise gateway (public oracle) |
| 4. Decide | Route user/agent questions to the right tool, plan multi-step actions | R9700 (LLM tool-calling) |
| 5. Act | Send Telegram alert, write SF note, draft email, update Excel tracker, post Teams reply | CPU + external APIs |
Four days of production traffic from a small panel of users, fed by 8,892 indexed meeting recordings and a continuous email/shared documents stream.
35.24 million prompt tokens against 8.73 million generated. The model spends most of its silicon reading, not writing. That changes which numbers from Parts 1 through 6 matter most.
From Part 4: this card does 3,491 prompt tok/s on llama.cpp HIP. From Part 2: vLLM holds 381 tok/s aggregate decode at N=16. In live telemetry under 23–24 concurrent agents, aggregate decode has been observed climbing to ~450–480 tok/s — nearly 10× the ~50 tok/s single-stream rate. That scaling is the whole point: one mainstream professional PCIe card serving many agents at once, not one user at a time.
Ten background agents, four live ingestors, three frontends, two databases. One LLM endpoint. One physical machine.
| Component | Type | Cadence |
|---|---|---|
| EmailClassifierAgent | Background | Every 10 min |
| DigestAgent | Background | Daily 9:00am |
| WeeklyDigestAgent | Background | Weekly Mon 8:00am |
| ActivityTrackerAgent | Background | Fri 9:00am + 4:00pm |
| ReminderAgent | Background | Hourly |
| SFSyncAgent | Background | Every 30 min |
| ProactiveAlertAgent | Background | Every 15 min |
| CompetitiveG2Agent | Background | Every 14 days |
| verify_worker loop | Continuous | 24 in flight at all times |
| kb_synth loop | Continuous | Single writer to the synthesis store |
| meeting_ingest (speech preprocessor) | Ingestor | Bounded slice per cycle |
| doc_fs_ingest | Ingestor | 12 parallel workers |
| ingest_email / ingest_teams / ingest_net | Ingestor | Continuous |
| telegram_bot · teams_claude_bridge · server.py · Gradio app.py | Frontend | Always on |
Twenty plus components throwing requests at the model. vLLM's continuous batching folds them into a single rolling forward pass. The R9700 sees one busy queue, never twenty idle ones.
Agentic AI is not the same problem as serving a chatbot. The right card is not the biggest card — it is the card that holds a quantized MoE with 32k context, runs continuous batching at full duty cycle, and stays on your desk. The right CPU is not the most cores — it is the one with enough CCDs to give each agent class its own isolated home.
Part 8 takes the five-phase map and pins each phase to silicon. Where the EPYC CPU does its job. Where the R9700 does its job. Why this split is what makes a agentic AI node buildable today.