Applied GenAI Curriculum for AI PMs · Depth Layer · Architecture Thread
Tool design, planning approaches, the agent failure-mode taxonomy, and memory systems — enough to contribute to agent scoping, especially the failure-mode budgeting where agent projects live or die.
Unit 04 taught you to resist agents until they're justified. This unit is for the moment one clears the bar and gets greenlit — because "we're building an agent" is not one decision, it's four: what tools it gets, how it plans, how you'll catch its failures, and how it remembers. The single most important of these for a PM is failure-mode budgeting — agents fail in more ways than any other system, and projects live or die on whether you planned for that.
An agent's capabilities are defined by its tool inventory. Tools fall into three categories, escalating in power and risk:
Read-only info gathering — retrievers, SQL executors, web/search APIs, email readers. Keeps the model current and grounded.
Fixes inherent weaknesses — calculator, code interpreter, unit/timezone converters, or another model (image gen, OCR, transcription) to add a modality.
Change the world — send email, place order, update a database, initiate a transfer. Power and danger live here.
Choosing tools is empirical, not a checklist. More tools = more capability but harder use (and longer descriptions that eat context). The moves: compare agent performance across tool sets; run an ablation (drop a tool — if performance holds, remove it); find tools the agent keeps misusing and simplify or swap them. Note different tasks and even different models prefer different tools.
A task is a goal plus constraints ("two-week SF→India trip" is the goal; "$5,000 budget" is the constraint). A plan is the roadmap of steps. The critical design choice:
Reflection (evaluate the plan, then evaluate the results — "did this actually accomplish the goal?") isn't mandatory but sharply improves performance. Humans can sit at any stage: provide a high-level plan, approve a risky step, or execute sensitive operations — so define the level of automation allowed per action.
Evaluation is detecting failures, and agents have more failure surface than anything else. To evaluate an agent you identify its failure modes and measure how often each happens. Three families:
Agents juggle instructions, context, tool outputs, plans, and reflections — usually more than fits in context. A memory system supplements it. Three mechanisms, mirroring human memory:
What the model learned in training — always available, changes only if you retrain/finetune. (Like knowing how to breathe.)
The conversation so far — fast, but capacity-limited by context length; holds what's most relevant right now. (The name of someone you just met.)
External sources fetched via retrieval — persists across tasks, cheap to extend, deletable without retraining. (Your books and notes.)
Which to use depends on frequency: universal info → internal knowledge (training); rarely-needed → long-term; immediate → short-term. Memory buys real things: handling info overflow within a session, persisting preferences between sessions (an AI coach you don't re-explain your life to each time), boosting consistency, and preserving structure (store leads in a sheet, actions in a queue).
The hard part is managing limited short-term memory — deciding what to keep vs. drop. FIFO (drop the oldest) is simple but dangerous — the earliest message often states the whole purpose. Better strategies remove redundancy via running summaries, entity tracking, or reflection that decides whether new info should be added, merged, or replace outdated (contradictory) memory.
That's the agent deep dive. The last architecture-thread deep dive is finetuning — Unit 19 — for when someone seriously proposes changing model weights.