{"slug": "four-ways-to-teach-an-ai-to-draw-a-cat", "title": "Four Ways to Teach an AI to Draw a Cat", "summary": "A new explainer outlines four methods for training AI models to draw a cat: Supervised Fine-Tuning (SFT), Direct Preference Optimization (DPO), Reinforcement Learning (RL), and On-policy distillation (OPD). Each method uses a different training data format, from copying expert examples to scoring generated responses or receiving per-token teacher feedback.", "body_md": "# Four Ways to Teach an AI to Draw a Cat\n\nSame student, same cat, four very different lessons — and every way of training a language model is one of them.\n\n## SFT — Trace the teacher\n\nCopy the teacher's drawing, stroke for stroke.\n\nSupervised Fine-Tuning (SFT) is training a model to copy expert-written examples, token by token.\n\nSee example training JSON data set:\n\n```\n{\n  \"prompt\": \"Draw a cat.\",\n  \"completion\": \"[the teacher's drawing, stroke by stroke]\"\n}\n```\n\n## DPO — Pick the better one\n\nPick the better of two drawings.\n\nDirect Preference Optimization (DPO) is training a model to prefer one labeled response over another.\n\nSee example training JSON data set:\n\n```\n{\n  \"prompt\": \"Draw a cat.\",\n  \"chosen\": \"[a good drawing]\",\n  \"rejected\": \"[a worse drawing]\"\n}\n```\n\n## RL — Just a score\n\nDraw a cat, get a single score back.\n\nReinforcement Learning (RL) is training a model by scoring its own generated responses and reinforcing what scored well.\n\nSee example training JSON data set:\n\n```\n{\n  \"prompt\": \"Draw a cat.\",\n  \"response\": \"[the model's own drawing]\",\n  \"reward\": 7\n}\n```\n\n## OPD — Notes on every line\n\nDraw a cat, get corrected stroke by stroke.\n\nOn-policy distillation (OPD) is training a model on its own responses, graded token by token by a stronger teacher model.\n\nSee example training JSON data set:\n\n```\n{\n  \"prompt\": \"Draw a cat.\",\n  \"response\": \"[the model's own drawing]\",\n  \"teacher_logits\": \"[the teacher's per-token distribution over this response]\"\n}\n```\n\n", "url": "https://wpnews.pro/news/four-ways-to-teach-an-ai-to-draw-a-cat", "canonical_source": "https://julin.ai/2026/08/24/four-ways-to-teach-ai-eli5/", "published_at": "2026-08-23 12:00:00+00:00", "updated_at": "2026-08-26 23:19:31.464314+00:00", "lang": "en", "topics": ["machine-learning", "large-language-models", "ai-research", "ai-tools"], "entities": [], "alternates": {"html": "https://wpnews.pro/news/four-ways-to-teach-an-ai-to-draw-a-cat", "markdown": "https://wpnews.pro/news/four-ways-to-teach-an-ai-to-draw-a-cat.md", "text": "https://wpnews.pro/news/four-ways-to-teach-an-ai-to-draw-a-cat.txt", "jsonld": "https://wpnews.pro/news/four-ways-to-teach-an-ai-to-draw-a-cat.jsonld"}}