AI Engineering / Working with LLMs
LLM Application Architecture & Design Patterns
55 lessons in AI Engineering / Working with LLMs
- Stateless LLM Calls vs Stateful AppsSlides / Video
- Choosing the Right PatternSlides / Video
- Composability and Modular Component DesignSlides / Video
- RAG Knowledge Assistant ArchitectureSlides / Video
- Chatbot Reference ArchitectureSlides / Video
- Sync vs Async LLM ArchitecturesSlides / Video
- The LLM Gateway / Proxy LayerSlides / Video
- Separating Business Logic from LLM CallsSlides / Video
- Deterministic vs Model-Driven Control FlowSlides / Video
- Workflows vs Agents: When to Use EachSlides / Video
- Fan-Out/Fan-In for LLM CallsSlides / Video
- The Orchestrator-Workers PatternSlides / Video
- The Evaluator-Optimizer PatternSlides / Video
- Layers of an LLM App StackSlides / Video
- What LLM Application Architecture MeansSlides / Video
- Orchestrator Missing AwaitCode Quiz
- Reflection Returns Uncritiqued DraftCode Quiz
- ReAct Loop Drops ObservationsCode Quiz
- Evaluator-Optimizer Ignores CritiqueCode Quiz
- Parallelization Runs SequentiallyCode Quiz
- Prompt Chaining Broken LinkCode Quiz
- Router Pattern Missing FallbackCode Quiz
- RAG Retrieve-Then-Generate FlowCode Quiz
- Routing Tasks To The Right ArchitectureCode Quiz
- Memory Layering Short-Term vs Long-TermCode Quiz
- Streaming LLM Response To ClientCode Quiz
- Conversation State Persistence And ReconstructionCode Quiz
- Separating Prompt Templates From LogicCode Quiz
- Stateless vs Stateful Session HandlingCode Quiz
- Human-in-the-Loop Approval GateCode Quiz
- Multi-Agent Handoff DesignCode Quiz
- Provider-Agnostic LLM Client InterfaceCode Quiz
- Handling Non-Determinism in DesignQuiz
- RAG as an Architectural PatternQuiz
- Batch vs Real-Time ProcessingQuiz
- Orchestrator-Worker PatternQuiz
- RAG vs Fine-Tuning vs PromptingQuiz
- Evaluator-Optimizer Reflection LoopQuiz
- Single-Prompt vs Multi-Step DesignQuiz
- What LLM Application Architecture IsQuiz
- Layers of an LLM ApplicationQuiz
- Routing PatternQuiz
- Idempotency and Retry-Safe LLM OperationsFlashcard
- Handling Non-DeterminismFlashcard
- Async and Event-Driven PipelinesFlashcard
- Separating Prompts from CodeFlashcard
- Parallelization PatternFlashcard
- LLM Gateway / Proxy LayerFlashcard
- Router PatternFlashcard
- Choosing the Right PatternFlashcard
- Architecture for LLM AppsFlashcard
- Orchestrator-Worker PatternFlashcard
- Evaluator-Optimizer LoopFlashcard
- Fallback and Graceful DegradationFlashcard
- Agentic vs Workflow ArchitecturesFlashcard