A comprehensive guide from six practitioners covering a year of hands-on experience building LLM-powered products. Covers three layers: tactical (prompting best practices, RAG design, workflow optimization, evaluation strategies), operational (data quality, model versioning, product design, team structure), and strategic (when to build vs. buy, avoiding GPU investment before product-market fit, focusing on the system over the model). Key insights include: use n-shot prompts and chain-of-thought, prefer RAG over finetuning for new knowledge, long-context models won't kill RAG, prioritize deterministic workflows for agents, use LLM-as-Judge carefully with pairwise comparisons, pin model versions in production, and choose the smallest model that gets the job done.

1h 11m read timeFrom eugeneyan.com
Post cover image
Table of contents
1.4.1 Create a few assertion-based unit tests from real input/output samples1.4.2 LLM-as-Judge can work (somewhat), but it’s not a silver bullet1.4.3 The “intern test” for evaluating generations1.4.4 Overemphasizing certain evals can hurt overall performance1.4.5 Simplify annotation to binary tasks or pairwise comparisons1.4.6 (Reference-free) evals and guardrails can be used interchangeably1.4.7 LLMs will return output even when they shouldn’t1.4.8 Hallucinations are a stubborn problem
1 Impression