Aan de slag met prompt engineering [6 tips]
Met de opkomst van kunstmatige intelligentie en machine learning vanaf ca. 2010 werden chatbots steeds geavanceerder en menselijker. Moderne chatbots kunnen natuurlijke taalverwerking en machine learning gebruiken om gesprekken te voeren en vragen te beantwoorden. Ze worden steeds meer gebruikt in verschillende toepassingen, zoals klantenservice en e-commerce. Tegenwoordig is conversational design een belangrijk onderdeel van de ontwikkeling van chatbots en virtuele assistenten. Met de nieuwste AI technologieën maakt prompt engineering zijn intrede, waardoor het beroep conversational designer bij veel bedrijven plaats zal maken voor prompt engineers.
Wat is een prompt?
Laten we even bij het begin beginnen. Een ‘prompt’ is een instructie of vraag die aan een taalmodel of een chatbot gegeven wordt om bepaald gedrag te vertonen. ‘Prompt engineering’ is een relatief nieuwe techniek om prompts te ontwikkelen en optimaliseren. Met behulp van deze techniek kunnen grote taalmodellen (een taalmodel is een technische representatie van hoe menselijke taal eruit ziet) zelfstandig teksten aanvullen of schrijven.
Als je prompt engineering wilt gebruiken voor communicatie met chatbots en taalmodellen, zul je je aan een aantal basisprincipes moeten houden.
Basis prompts
De kwaliteit van de geleverde output is afhankelijk van de gegeven input. Een prompt kan een instructie of vraag bevatten, maar ook voorbeelden. In de afbeelding hieronder zie je een voorbeeld van een prompt die een instructie bevat.
Bij de eerste input wordt geen duidelijke instructie meegegeven, waardoor de output anders kan zijn dan je verwacht. Bij de tweede input wordt de gegeven instructie precies opgevolgd. Deze benadering van het ontwerpen van optimale prompts om het model te instrueren de juiste antwoorden te genereren, wordt prompt engineering genoemd.
Standaard prompts
Een standaard prompt kan worden geformatteerd in een Q&A-format, dat veel gebruikt wordt in Q&A-datasets:
Een populaire en doeltreffende manier om vragen te stellen is ‘few-shot prompting’ waarbij je bijvoorbeeld meerdere Q&A’s onder elkaar zet om een betere context te creëren. Dit ziet er dan als volgt uit:
Een andere mogelijkheid voor een standaard prompt is het geven van voorbeelden als input, die context geven. Die kennis kan vervolgens worden gebruikt in de output, bijvoorbeeld:
Componenten van een prompt
Een prompt kan bestaan uit verschillende componenten:
- Een instructie: een bepaalde taak of instructie die je het model wilt laten uitvoeren
- Context: bepaalde informatie die het model kan sturen naar de juiste antwoorden
- Input data: de vraag waar je een antwoord op wilt krijgen
- Output indicator: het type of de vorm van de output die je graag wilt
Niet alle componenten zijn noodzakelijk voor een prompt. Dit is afhankelijk van de gewenste output en wat je wilt bereiken.
Het ontwerpen van prompts
Om effectieve prompts te ontwerpen, adviseer ik je om deze handige tips te volgen.
1. Start eenvoudig
Prompt engineering is een proces wat je moet blijven herhalen en waarbij je veel moet experimenten om optimale resultaten te krijgen. Het is daarom allereerst belangrijk om eenvoudig te starten. Je kunt beginnen met eenvoudige prompts en steeds meer elementen en context toevoegen om betere resultaten te verkrijgen.
2. Bepaal de context
Prompts die relevant zijn bij het bouwen van een chatbot zijn bijvoorbeeld een ‘business prompt’ (bedrijfsinformatie), ‘service prompt’ (wat voor service biedt het bedrijf), ‘personality prompt’ (de persoonlijkheid van de chatbot, hoe wil je de bezoeker te woord staan) en ‘decision tree’ (als de bezoeker A zegt, reageert de chatbot met B). Door het schrijven van deze prompts geef je de chatbot context mee en weet de chatbot hoe er gereageerd moet worden op bepaalde vragen of teksten.
3. De juiste instructies en trefwoorden
Je kunt effectieve prompts ontwerpen voor verschillende eenvoudige taken door bevelen te gebruiken om het model te instrueren wat je wilt bereiken, zoals “Reageer met”, “Leg uit hoe”, “Antwoord met” etc. Probeer verschillende instructies met verschillende trefwoorden, context en gegevens en kijk wat het beste werkt voor jouw specifieke gebruik en doel.
4. Wees uitgebreid en duidelijk
Wees zeer specifiek over de instructie en de taak die het model moet uitvoeren. Hoe meer beschrijvend en gedetailleerder de opdracht, hoe beter de resultaten. Dit is vooral belangrijk wanneer je een gewenst doel hebt of een gewenste manier van genereren wenst. Het geven van voorbeelden in de prompt is effectief om de gewenste output in specifieke formats te krijgen.
5. Te lang is nooit goed
Bij het ontwerpen van prompts moet je ook rekening houden met de lengte van de prompt, want er zijn beperkingen wat betreft de lengte. Denk na over hoe specifiek en gedetailleerd je moet zijn. Te veel onnodige details is niet per se een goede aanpak. De details moeten relevant zijn en bijdragen aan de opdracht.
6. Bepaal de focus
Er wordt afgeraden om in prompts aan te geven wat je niet wilt. Geef liever aan wat je wel wilt. Dit bevordert specificiteit en focus op details die leiden tot goede reacties van de chatbot.
Nogmaals: veel experimenteren en herhalen is belangrijk om de chatbot te optimaliseren.
Wil je zelf aan de slag met Prompt engineering voor je chatbot? Start dan vandaag nog met Watermelon, hét chatbot platform gebouwd op de technologie van ChatGPT. Bouw een chatbot in één dag en lanceer hem op je website, Facebook, WhatsApp en Instagram zonder 1 regel code te schrijven. Maak nu je gratis account aan.
Tot slot deel ik graag nog een aantal voorbeelden van prompts die relevant zijn bij het bouwen van een chatbot.