Instead of writing prompts and hoping they work, evaluation-driven design starts with defining success metrics (accuracy, format compliance, latency) and building test cases first. Prompts are then iterated until they consistently pass all evaluation criteria.
metrics = { 'accuracy': >= 0.95, 'format_valid_json': True, 'latency_ms': <= 2000, 'no_hallucination': True }
tests = load_golden_dataset('classification_tests.json') # 100 cases
while not all_metrics_pass(prompt, tests, metrics): prompt = refine_prompt(prompt, failure_analysis)
Claude handles Evaluation-Driven Prompt Design tasks with excellent instruction compliance and structured output formatting.