← All posts

Guides

Building AI that survives production

Most AI demos work once and break in production. These are my engineering guides for shipping real AI — agents, RAG, grounded chatbots, MCP, and the cost, latency and guardrails it takes to run an LLM for real.

Building an AI demo takes an afternoon; putting it in production is a different job. A model is a fluent text predictor that sometimes invents, so the hard part is never the prompt — it is the engineering around it. These guides separate what is real from what is hype: when you actually need an agent versus a workflow, how to give a model your data without it hallucinating, and what breaks the moment real users arrive.

The thread tying it together is to treat the LLM call like an unreliable network dependency that occasionally lies: ground it in your data with retrieval, wrap it in guardrails that live outside the prompt, cap its cost and latency, and protect every change with evals and observability. From 'what is an agent?' to shipping an LLM in production, that is the path these guides walk.

The guides

FAQ

Do I need an AI agent or just a workflow?
Most things people call "agents" should be workflows — fixed steps with maybe one AI step for the fuzzy part. Reserve a true agent for when the path genuinely cannot be predefined and you can tolerate the variance, cost and latency.
RAG or fine-tuning?
RAG gives the model current knowledge at query time; fine-tuning shapes behavior (format, tone), not facts. To answer from your company data, you almost always want RAG, not fine-tuning.
Why does my chatbot hallucinate, and how do I stop it?
An ungrounded model answers from training memory, so it invents prices and policies. You ground it with retrieval (RAG) so it answers only from your real content, cites the source, and says "I do not know" when there is no context.