Prompt engineering
Prompt engineering is een concept in kunstmatige intelligentie (AI), met name natuurlijke taalverwerking of natural language processing (NLP). Normaal wordt de taakbeschrijving impliciet gegeven aan de toepassing, maar bij prompt engineering wordt deze ingebed in de invoer (de prompt), bijvoorbeeld als een vraag.
Prompt engineering werkt meestal door een of meer taken om te zetten in een op prompts gebaseerde dataset en een taalmodel te trainen met wat "prompt-based learning" of gewoon "prompt learning" wordt genoemd. Prompt engineering kan werken vanuit een groot "bevroren" vooraf getraind taalmodel en waarbij alleen de representatie van de prompt wordt geleerd (dwz geoptimaliseerd), met behulp van methoden zoals "prefix-tuning" of "prompt tuning".
De taalmodellen GPT-2 en GPT-3 waren belangrijke stappen in prompt engineering. In 2021 liet multitask prompt engineering met behulp van meerdere NLP-datasets goede prestaties zien bij nieuwe taken. Bij een methode die chain-of-thought (CoT)-prompting wordt genoemd, worden enkele voorbeelden van een taak aan het taalmodel gegeven en is aangetoond dat ze haar redeneervermogen verbeteren. CoT-prompts kunnen ook worden gedaan als een zero-shot leertaak door tekst voor de prompt te plaatsen die een gedachtegang aanmoedigt (bijv. "Laten we stap voor stap nadenken"), wat ook de prestaties van een taalmodel kan verbeteren bij redeneerproblemen met meerdere stappen. De brede toegankelijkheid van deze tools werd gestimuleerd door de publicatie van verschillende open-source notebooks en door de gemeenschap geleide projecten voor beeldsynthese.
Een beschrijving voor het afhandelen van prompts meldde dat er in februari 2022 meer dan 2.000 openbare prompts voor ongeveer 170 datasets beschikbaar waren.
In 2022 werden machine learning-modellen (ML) zoals DALL-E 2, Stable Diffusion en Midjourney vrijgegeven voor het publiek. Deze modellen nemen tekstprompts als invoer en gebruiken deze om afbeeldingen te genereren, waarmee een nieuwe categorie van prompt-engineering werd geïntroduceerd met betrekking tot tekst-naar-afbeelding-prompts.
Misbruik
[bewerken | brontekst bewerken]Prompt injection is een familie van gerelateerde computerbeveiligingsexploits. Hierbij probeert men machine learning-modellen (zoals een groot taalmodel) zo ver te krijgen dat ze instructies van een kwaadwillende gebruiker opvolgen, in tegenstelling tot instructies van het model zelf.
Veelvoorkomende soorten prompt-injection-aanvallen zijn jailbreaking, waaronder:
- rollenspellen waarbij men het model overtuigt om te antwoorden met bepaalde argumenten of om te doen alsof ze superieur zijn aan moderatie-instructies
- prompt-lekken, waardoor gebruikers de prompt kunnen lezen die normaal gesproken voor hen verborgen is.
Een ander type jailbreak-aanval is token-smokkel, waarbij de kwaadwillige prompt wordt verpakt in een taak voor het schrijven van code.
Prompt injection kan worden gezien als een aanval met code-injectie waarbij gebruik wordt gemaakt van kwaadwillige prompt engineering. In 2022 heeft de NCC Group prompt injection gekarakteriseerd als een nieuwe klasse van kwetsbaarheden van AI/ML-systemen.
Prompt-injection-aanvallen werden voor het eerst ontdekt door Preamble, Inc. in mei 2022, en er werd een "responsible disclosure" verstrekt aan OpenAI.
Begin 2023 werd prompt injection "in het wild" gezien in kleine exploits tegen ChatGPT, Bing en soortgelijke chatbots, bijvoorbeeld om de verborgen eerste prompts van de systemen te onthullen, of om de chatbot te misleiden om deel te nemen aan gesprekken die in strijd zijn met het inhoudsbeleid van de chatbot. Een van deze prompts staat bij de beoefenaars bekend als "Do Anything Now" (DAN).
- Dit artikel of een eerdere versie ervan is een (gedeeltelijke) vertaling van het artikel Prompt engineering op de Engelstalige Wikipedia, dat onder de licentie Creative Commons Naamsvermelding/Gelijk delen valt. Zie de bewerkingsgeschiedenis aldaar.