# One-shot prompting voor betere output [[TOC]] ## Wat is one-shot prompting? One-shot prompting is een techniek waarbij je precies een voorbeeld meestuurt in je prompt. Dat voorbeeld laat het model zien hoe jij wilt dat het antwoord eruitziet, zonder dat je uitgebreide instructies hoeft te schrijven. Het principe is simpel: tonen werkt beter dan zeggen. In plaats van een lange beschrijving van het gewenste formaat te schrijven, laat je het model een referentieantwoord zien en zeg je in feite: "Doe het zo." One-shot prompting zit tussen zero-shot (geen voorbeelden) en few-shot (meerdere voorbeelden) in. Het is bijzonder nuttig wanneer je een specifiek formaat of een stijl wilt die moeilijk te omschrijven is, maar makkelijk te demonstreren. ## Wanneer werkt one-shot het beste? One-shot prompting blinkt uit in een paar situaties. **Je wilt een specifiek uitvoerformaat.** Als je output er precies zo uit moet zien als een bepaald sjabloon, een productbeschrijving, een e-mailstijl of een rapportstructuur, dan is een voorbeeld vaak genoeg om het model op het goede spoor te zetten. **De taak is herkenbaar maar niet standaard.** Voor taken die het model kent, maar waarvoor je een afwijkende aanpak wilt, werkt one-shot uitstekend. Het model past zijn standaardaanpak aan op basis van jouw voorbeeld. **Je wilt snel itereren.** Een voorbeeld schrijven kost weinig tijd. Je kunt snel experimenteren met verschillende voorbeelden om te zien welk resultaat het beste bij je doel aansluit. :::info title="Waar one-shot het sterkst is" One-shot is ideaal voor taken waarbij het formaat belangrijker is dan de inhoud. Denk aan product-bullets, functieomschrijvingen, samenvattingen in een vaste stijl of klantenservicereacties. ::: ## Anatomie van een one-shot prompt Een one-shot prompt bestaat uit drie delen: 1. De taakomschrijving (wat je wilt). 2. Het voorbeeld (invoer plus gewenste uitvoer). 3. De nieuwe invoer waarop het model moet reageren. Een voorbeeld ziet er zo uit: ``` Schrijf een productomschrijving van twee zinnen. Voorbeeld: Product: Draadloze oordopjes Omschrijving: Geniet van kristalhelder geluid zonder kabels in de weg. Perfect voor sport, werk en onderweg. Product: Slimme thermostaat Omschrijving: ``` Het model leest het voorbeeld, herkent het patroon (twee actieve zinnen, voordelen benoemen, geen technische specs) en past dat toe op het nieuwe product. ## Hoe kies je het juiste voorbeeld? Het voorbeeld is het hart van je one-shot prompt. Een slecht voorbeeld stuurt het model de verkeerde richting op. :::howto title="Zo kies je een sterk voorbeeld" 1. **Kies een representatief voorbeeld.** Het moet typisch zijn voor wat je wilt, niet een uitzondering. 2. **Scheid invoer en uitvoer duidelijk.** Gebruik labels zoals `Invoer:` en `Uitvoer:`, of `Voorbeeld:` met een heldere afscheiding. 3. **Stem de complexiteit af.** Een te simpel voorbeeld geeft onvoldoende sturing, een te complex voorbeeld kan het model in de war brengen. 4. **Test met verschillende voorbeelden.** Wissel het voorbeeld en vergelijk de output. Soms maakt een ander voorbeeld een groot verschil. 5. **Let op de toon.** Een formeel voorbeeld levert formele output, een informeel voorbeeld levert informele output. ::: ## Vergelijking: zero-shot tegenover one-shot Neem deze taak: schrijf een afwijzingsmail voor een sollicitant, vriendelijk maar duidelijk. Met **zero-shot** geef je alleen de instructie: "Schrijf een vriendelijke afwijzingsmail voor een sollicitant." Het model schrijft dan een generieke mail. Die kan prima zijn, maar de toon, lengte en opbouw variƫren per model en per sessie. Met **one-shot** voeg je een voorbeeld toe: ``` Schrijf een vriendelijke afwijzingsmail voor een sollicitant. Voorbeeld: Sollicitant: Anna de Vries, functie: marketingmanager Mail: Beste Anna, hartelijk bedankt voor je interesse in de functie van marketingmanager bij ons bedrijf. Na zorgvuldige overweging hebben we besloten verder te gaan met een andere kandidaat. We waren onder de indruk van je ervaring en hopen je in de toekomst te mogen spreken. Met vriendelijke groet, [naam] Sollicitant: Pieter Smit, functie: software engineer Mail: ``` Nu schrijft het model een mail die de opbouw, toon en lengte van het voorbeeld volgt. Het resultaat is veel consistenter. ## Praktische toepassingen **Klantenservice.** Stuur een voorbeeldreactie in de toon van je bedrijf mee. Elke nieuwe vraag krijgt dan een antwoord in dezelfde stijl. **Contentgeneratie.** Handig voor blogintro's, nieuwsbrieven of social-mediaberichten met een vaste stijl. **Data-extractie.** Geef een voorbeeld van de gewenste JSON-structuur bij een extractietaak, dan snapt het model direct wat je bedoelt. **Formattering.** Laat zien hoe je getallen, datums of adressen opgemaakt wilt zien. Een voorbeeld is duidelijker dan een uitleg. :::warn title="Let op overfitting" Pas op dat het model niet te sterk vasthoudt aan je voorbeeld. Is je voorbeeld te specifiek, dan kopieert het model details die je niet wilt. Gebruik generieke maar representatieve voorbeelden. ::: ## One-shot in API-gebruik Bij programmatisch gebruik via een API is one-shot eenvoudig te implementeren. Je voegt het voorbeeld toe als onderdeel van het gebruikersbericht, of als een apart assistant-bericht in de berichtgeschiedenis. Het structureren van voorbeelden als chatbeurten (een wisseling van user en assistant) werkt vaak beter dan alles in een gebruikersbericht plakken. Het model herkent het patroon dan als een echte wisselwerking. :::tip title="Houd je voorbeeld kort" Een voorbeeld telt mee in je tokengebruik. Een compact, kloppend voorbeeld stuurt vaak net zo goed als een lang voorbeeld, en houdt je prompt goedkoper en sneller. ::: :::faq ### Werkt one-shot altijd beter dan zero-shot? Niet per se. Voor eenvoudige taken voegt one-shot nauwelijks iets toe. De meerwaarde is het grootst bij taken met een specifiek formaat of een vaste stijl. ### Wat als mijn voorbeeld niet perfect is? Het model generaliseert vanuit je voorbeeld. Kleine imperfecties hebben weinig impact, maar structurele fouten worden overgenomen. Zorg dus dat je voorbeeld zelf klopt. ### Kan ik meerdere voorbeelden gebruiken? Ja, dat heet few-shot prompting. Met meer voorbeelden neemt de consistentie toe, maar ook de promptlengte en het tokengebruik. ### Is one-shot geschikt voor elk model? De meeste moderne grote taalmodellen begrijpen one-shot prompts goed. Kleinere of gespecialiseerde modellen reageren soms minder voorspelbaar op voorbeelden. ### Hoeveel verbetering levert one-shot op? Dat hangt van de taak af en is niet vast. Bij taken met een sterk formaat zie je vaak de grootste sprong, bij feitelijke vragen soms weinig. Test het met je eigen prompt om het verschil te zien. ### Wat is het verschil met een systeeminstructie? Een systeeminstructie beschrijft gedrag in woorden, een one-shot voorbeeld demonstreert het concreet. Vaak werken ze het sterkst samen: een korte instructie plus een voorbeeld. ::: One-shot prompting is een krachtige tussenoplossing: meer sturing dan zero-shot, minder werk dan few-shot. Met een goed gekozen voorbeeld stuur je de output precies de richting op die jij wilt.