💡 Eksempel på basal prompting
Input: "København er hovedstaden i"
Modellens interne logik: Sandsynligheden for, at det næste token er "Danmark", er 99,9%.
Output: "Danmark."
For at forstå, hvordan vi får en kunstig intelligens (AI) til at udføre præcis det, vi ønsker, må vi rykke væk fra forestillingen om, at en Large Language Model (LLM) blot er en avanceret chatbot. Her får du den komplette, videnskabelige guide til prompt engineering.
For at forstå, hvordan vi får en kunstig intelligens (AI) til at udføre præcis det, vi ønsker, må vi rykke væk fra forestillingen om, at en Large Language Model (LLM) blot er en avanceret chatbot, der svarer på spørgsmål. I datalogien betragtes prompt engineering ikke som "gode råd til Google-søgninger", men som en tæt på deterministisk disciplin, der styrer komplekse statistiske sandsynligheder.
I sin mest basale form er en prompt det input (tekst, kode eller data), du giver til en AI-model for at fremprovokere et specifikt output.
Ordet "prompt" stammer fra teaterverdenen (en sufflør, der hvisker de næste ord til en skuespiller) og datalogien (en kommandolinje, der venter på input). Inden for generativ AI fungerer prompten som en aktiveringsmekanisme – du fodrer en matematisk model med en sekvens af tokens, og modellens opgave er at beregne det mest sandsynlige næste ord.
Input: "København er hovedstaden i"
Modellens interne logik: Sandsynligheden for, at det næste token er "Danmark", er 99,9%.
Output: "Danmark."
Avanceret prompting handler om at manipulere denne sandsynlighedsfordeling, så modellen ikke bare gætter det mest almindelige næste ord, men følger en dyb, logisk ræsonnementsvej.
Når virksomheder som OpenAI, Google eller Anthropic træner en LLM, gennemgår modellen to primære faser: Pre-training (generel indlæring) og Fine-tuning (adfærdstilpasning).
Scenarie A (Ustyret): "Skriv en kontrakt på leje af en lejlighed." → Resultat: Generisk dokument, der blander amerikansk og dansk lovgivning.
Scenarie B (Styret): "Du er en dansk ejendomsadvokat med speciale i Lejeloven. Skriv et udkast til en lejekontrakt for et klubværelse i Aarhus under overholdelse af Lejelovens § 11." → Resultat: Præcis, juridisk korrekt kontrakt.
For at mestre avanceret prompt engineering må man aflægge sig den antropomorfe opfattelse af AI. Modellen har ingen bevidsthed eller intuition – dens adfærd styres af ren matematik, dataarkitektur og statistiske vægtninger.
Moderne LLM'er bygger på en specifik arkitektur kaldet en Transformer. Transformeren introducerede mekanismen Self-Attention (selv-opmærksomhed), der behandler alle ord i en prompt samtidigt og udregner matematiske forbindelser mellem samtlige ord for at forstå den præcise kontekstuelle betydning.
En LLM genererer tekst ét token ad gangen. Hver gang modellen skal skrive det næste ord, genererer den en sandsynlighedsfordeling over alle de ord, den kender.
Hvis din prompt er vag, bliver sandsynlighedsfordelingen flad og uforudsigelig. Hvis den er ultra-præcis, kollapser fordelingen omkring de helt rigtige tokens.
Forskning fra Stanford University viser, at modeller har tendens til at fokusere på information i begyndelsen (Primacy-effekt) og slutningen (Recency-effekt) af prompten. Information begravet i midten bliver ofte overset.
Strategisk optimering:
Zero-Shot Prompting betyder, at du fodrer modellen med en instruktion uden at give den forudgående eksempler. Du forventer, at modellen leverer det korrekte svar udelukkende baseret på din beskrivelse.
Mekanisme: Aktivering af eksisterende parametrisk viden – modellen analyserer dine ord og navigerer til det abstrakte vidensdomæne, der matcher din beskrivelse.
Prompt: "Klassificer følgende kundeklage som enten [TEKNISK], [FINANSIEL] eller [LOGISTIK]: Jeg har forsøgt at logge på jeres portal tre gange i dag, men hver gang låser skærmen fast i en uendelig indlæsningsskærm, hvorefter jeg får en fejl 504."
Output: [TEKNISK]
Ved at give modellen eksempler (input-output-par) før den egentlige opgave, lærer du modellen præcis, hvad du forventer. Teknikken udnytter In-Context Learning, hvor modellen danner et midlertidigt matematisk mønster og udfører analogisk ræsonnement.
Eksempel 1: Input: "Hej, jeg har lige solgt 50 aktier i Apple for 175 dollars stykket i går aftes." → Output: ACTION: SELL | TICKER: AAPL | QTY: 50 | PRICE: 175.00 | TIME: YESTERDAY
Eksempel 2: Input: "Købte præcis 100 Tesla-aktier til kurs 210 her til morgen." → Output: ACTION: BUY | TICKER: TSLA | QTY: 100 | PRICE: 210.00 | TIME: TODAY
Ny opgave: "Vi har netop afhændet 150 Microsoft værdipapirer, stykpris 400." → Output: ACTION: SELL | TICKER: MSFT | QTY: 150 | PRICE: 400.00 | TIME: TODAY
Datalogisk tommelfingerregel
Rækkefølgen og kvaliteten af dine eksempler betyder alt. Hvis du introducerer fejl i dine eksempler, vil modellen matematisk forstærke disse fejl i sit endelige output.
Chain-of-Thought (CoT), introduceret af Google-forskere i 2022, tvinger modellen til at generere en sekvens af mellemliggende ræsonnementstrin.
Mekanisme: Opsplitning af komplekse problemer i sekventielle sub-tokens. Hvert logisk trin bliver en del af kontekstvinduet, hvilket reducerer den kognitive belastning per token.
10 kunder × 30 kr. = 300 kr.
Halvdelen af 10 kunder er 5. 5 × 25 kr. = 125 kr.
300 kr. + 125 kr. = 425 kr.
425 kr. × 0,10 = 42,50 kr.
425 kr. - 42,50 kr. = 382,50 kr.
Udviklet af Princeton University og MIT. Tillader modellen at udforske flere ræsonnementsveje samtidigt i en træstruktur.
Mekanisme: Integration af selvevaluering (heuristik) og backtracking. For hvert trin genereres grene. En ekstern evaluator vurderer; blindgyder kasseres.
Udviklet ved ETH Zürich. Repræsenterer information som en rettet graf, hvor tanke-enheder er knuder og logiske forbindelser er kanter.
Mekanisme: Cykliske argumenter, aggregation (sammenfletning af uafhængige veje) og transformation af idéer. Refinement loops tillader tilbagevenden til tidligere knuder.
Fokuserer på at løse generationshastighed (latency).
Mekanisme:
1) Fase 1 (Skelet-generering): Modellen genererer en overordnet disposition.
2) Fase 2 (Parallel udfyldelse): Et script sender punkterne som uafhængige API-kald parallelt.
Self-Consistency (introduceret af Google i 2023) genererer et ulige antal uafhængige CoT-rækker (f.eks. 5 eller 11) og anvender flertalsafstemning.
Mekanisme: Reducering af stokastisk støj og tilfældige fejl. Ved at eliminere outliers opnås et mere robust svar.
Vej 1: 925,44 | Vej 2: 921,60 (fejl) | Vej 3: 925,44 | Vej 4: 925,44 | Vej 5: 925,44
Flertal: 925,44 (korrekt) – den tilfældige afvigelse i Vej 2 elimineres.
Automatic Prompt Engineer (APE) behandler prompt engineering som et rent optimeringsproblem.
Mekanisme:
Self-Refine er en teknik, hvor modellen agerer sin egen kritiske korrekturlæser. Processen kører i en lukket programmatisk løkke:
Modellen laver et første udkast (Draft 1).
Modellen modtager sit eget udkast og finder fejl, mangler eller logiske brister.
Modellen omskriver udkastet baseret på sin egen kritik.
Role-Prompting handler om at tildele modellen en specifik identitet via System Prompt, hvilket indsnævrer dens semantiske søgerum til et relevant fagligt domæne.
Forsyner modellen med strategiske hints eller nøgleord, der guider genereringen i en specifik retning.
Mekanisme: Dynamisk vægtning af specifikke tokens under genereringen. Stimulus-blokken fungerer som en magnet, der konstant trækker modellens opmærksomhed tilbage til de ønskede nøglepunkter.
I softwareudvikling er fritekst ubrugeligt som output. Ved at tvinge modellen til at kommunikere i JSON via et præcist JSON Schema gøres outputtet 100% deterministisk og maskinlæsbart.
Gennem programmeringssprog som Python opnår man fuld kontrol med modellens hyperparametre:
RAG injicerer programmatisk ekstern data fra en vektordatabase i prompten. Brugerens spørgsmål sendes til en vektordatabase, databasen finder de mest relevante dokumenter, og et Python-script indsprøjter disse som kontekst i prompten.
| Teknik | Sværhedsgrad | Token-forbrug | Primære styrke | Bedst egnet til |
|---|---|---|---|---|
| Zero-Shot | Lav | Ultra-lav | Hurtig eksekvering | Simple, standardiserede opgaver |
| Few-Shot (ICL) | Lav | Lav til Medium | Låser syntaks og struktur | Klassificering og data-parsing |
| Chain-of-Thought (CoT) | Medium | Medium | Opdeler problemer i sekventielle trin | Lineær logik og matematik |
| Tree of Thoughts (ToT) | Høj | Høj | Udforsker flere grene med backtracking | Strategisk planlægning |
| Graph of Thoughts (GoT) | Meget høj | Meget høj | Cykliske loops og fusion af idéer | Netværksbaserede systemer |
| Skeleton-of-Thought (SoT) | Høj | Medium | Reducerer svartid via parallelisering | Lange essays og rapportgenerering |
| Self-Consistency (CoT-SC) | Medium | Meget høj | Minimerer statistisk støj via afstemning | Kritiske beregninger og fejlsikring |
| Self-Refine | Medium | Høj | Iterativ fejlretning uden ekstern kode | Kodeoptimering og tekstkorrektur |
| Automatic Prompt Engineer (APE) | Høj | Ekstremt høj | Algoritmisk optimering af prompt-tekst | Enterprise-skalering og automatisering |
| Role-Prompting | Lav | Lav | Indsnævrer modellens vidensdomæne | Tonefald og fagspecifik rådgivning |
| Directional Stimulus (DSP) | Medium | Lav | Guider outputtet dynamisk med ankerord | Målrettede artikelsammendrag |
| Programmatisk JSON / RAG | Ekstremt høj | Høj | Gør AI-output 100% maskinlæsbart | Enterprise-applikationer |
Her er 10 konkrete, avancerede eksempler på prompts, der demonstrerer de vigtigste teknikker fra artiklen i praksis. De er designet, så du kan kopiere dem direkte over i en moderne LLM.
System Prompt: "Du er en Senior Cloud Infrastructure Architect med speciale i AWS, Kubernetes (EKS) og Zero-Trust netværkssikkerhed. Du taler udelukkende i et teknisk, præcist ingeniørsprog."
User Prompt: "Analyser denne arkitekturfejl: Vores mikroservices i Kubernetes mister sporadisk forbindelsen til vores RDS PostgreSQL-database under spidsbelastninger, og applikationsloggen viser en 'Connection pool starved' fejl. Hvad er de 3 mest sandsynlige underliggende årsager på infrastrukturniveau?"
"Konverter ustrukturerede e-mails om lagerstatus til vores interne JSON-format efter følgende eksempler: [Input: 'Hej logistik, vi har lige modtaget 50 paller med blå t-shirts på lager 4' → Output: {"action":"RECEIVE","item":"t-shirt","color":"blue","qty_pallets":50}]"
"Beregn virksomhedens nettooverskud i marts. Løs opgaven trin for trin: 1. Beregn antallet af brugere i februar. 2. Gentag for marts. 3. Udregn abonnementsindtægter. 4. Træk faste udgifter fra."
"Fase 1 (Generering): Generer 3 fundamentalt forskellige marketingstrategier. Fase 2 (Selvevaluering): Analyser hver strategi og tildel en score. Fase 3 (Udvælgelse): Kassér strategier under 7 og lav en handlingsplan."
"Generer 3 uafhængige ræsonnementsveje. Afslut med en konklusion, hvor du sammenligner resultaterne og udtager det svar, der er konsistens om."
"Trin 1 (Udkast): Skriv en kold salgs-e-mail. Trin 2 (Kritik): Analyser dit eget udkast kritisk. Trin 3 (Raffinering): Omskriv e-mailen baseret på din egen kritik."
"[Directional Stimulus]: Følgende nøgleord SKAL vægtes højest: [Arbejdsløshed, materialemangel, byggebranchen]. [Instruktion]: Skriv et resumé af pressemeddelelsen med fokus på disse temaer."
"[START - KRITISKE INSTRUKSER]: Du er compliance-officer. Find overtrædelser af Whistleblower-lovgivningen. [MIDTEN - RÅDATA]: 40 sider medarbejderhåndbog... [SLUTNING - GENTAGELSE]: Husk instruktionen. Lever svar som liste med sidetal."
"Generer UDELUKKENDE et skelet bestående af nøjagtig 4 overordnede kapitler. Hvert kapitel må kun bestå af én enkelt linje med en præcis overskrift."
"Transformer rå support-beskeder til et strikt JSON-objekt, som overholder følgende JSON Schema: [schema]. Lever udelukkende det færdige JSON-objekt."
Store sprogmodeller (LLM'er) som GPT-4, Claude 3.5 og Llama 3 opererer ikke med en iboende forståelse af sandhed. De er avancerede statistiske motorer, der beregner sandsynligheden for det næste ord i en sekvens.
Når en model mangler data, eller når dens probabilistiske vægte skaber uheldige forbindelser, opstår AI-hallucinationer: Genereringen af indhold, der er grammatisk fejlfrit og dybt overbevisende, men faktuelt forkert eller direkte opdigtet.
For virksomheder, der integrerer AI i kundeservice, jura, finans eller medicinsk rådgivning, er hallucinationer en kritisk risiko. Denne guide gennemgår de mest avancerede metoder til at eliminere hallucinationer med dybdegående, realiserbare eksempler.
Standardprompts inviterer til hallucinationer, fordi de efterlader for meget fortolkningsrum. Ved at anvende systemprompts, der eksplicit definerer modellens epistemiske grænser, tvinges AI'en til at erkende sin egen uvidenhed.
Modeller vil instinktivt forsøge at behage brugeren ved at levere et svar. Du skal eksplicit give den tilladelse til at fejle eller melde pas.
Vis modellen, hvordan den skal håndtere spørgsmål, den ikke kan svare på, ved at give den eksempler i selve prompten.
[Kontekst: Du er en support-AI for en webshop, der kun sælger elektronik.]
Spørgsmål: Hvad er leveringstiden på jeres smartphones?
Svar: Leveringstiden på alle lagervarer, herunder smartphones, er 1-2 hverdage.
Spørgsmål: Sælger I økologiske kaffebønner?
Svar: Beklager, det ligger uden for mit vidensdomæne. Jeg kan kun besvare spørgsmål relateret til vores elektroniske produkter.
Spørgsmål: Hvornår udkommer den nye Playstation-model, og hvad bliver den præcise pris i Danmark?
Svar: [Her indsættes brugerens aktuelle spørgsmål, og AI'en vil nu efterligne den restriktive tone fra eksemplerne, hvis prisen ikke er officielt bekræftet]
Den mest effektive arkitektoniske løsning mod hallucinationer er at ændre modellens rolle fra at være et "leksikon" til at være en "boganmelder". Med RAG (Retrieval-Augmented Generation) søger systemet først i en lukket database (f.eks. en vektordatabase som Pinecone eller Milvus) efter relevante dokumenter og fodrer derefter disse dokumenter ind i AI'ens kontekstvindue (Context Window).
Hvis en bruger spørger: "Hvad er vores politik for barselsorlov for funktionærer ansat efter 2024?", fungerer processen således:
Brug udelukkende nedenstående kontekst til at besvare spørgsmålet. Hvis svaret ikke findes i teksten, skal du svare: 'Informationen findes ikke i HR-håndbogen'.
[KONTEKST START]
Afsnit 4.2: Funktionærer ansat efter 1. januar 2024 har ret til fuld løn under barsel i op til 16 uger for moderen og 11 uger for faderen/medmoderen.
[KONTEKST SLUT]
Spørgsmål: Hvad er vores politik for barselsorlov for funktionærer ansat efter 2024?
Svar:
Ved at låse modellen til denne specifikke kontekst reduceres sandsynligheden for hallucinationer til tæt på nul, da modellen ikke skal trække på sin generelle træningsviden.
Når du integrerer AI via API'er (f.eks. OpenAI, Anthropic eller Azure), kan du kontrollere modellens stokastiske (tilfældige) natur ved at justere på dens matematiske parametre.
LLM'er genererer tekst token-for-token fra venstre mod højre. Hvis de gætter forkert i starten af en sætning, tvinges de logisk til at fortsætte ud af det forkerte spor for at bevare den grammatiske sammenhæng. Chain-of-Thought (CoT) løser dette ved at tvinge modellen til at udarbejde en intern logisk kladde, før den leverer det endelige svar.
Når modellen tvinges til at skrive sine delberegninger og observationer eksplicit i teksten, fungerer de tidligere genererede tokens som et faktuelt anker for de efterfølgende konklusioner. Dette minimerer logiske kortslutninger markant.
I avancerede systemer anvender man et setup med flere AI-agenter, hvor én agent genererer et udkast, og en anden agent (med en hyper-kritisk systemprompt) agerer "faktatjekker" eller "djævlens advokat".
Agent 1 (Generator): Skriver artiklen eller rapporten baseret på inputdata.
Agent 2 (Kritiker): Modtager Agent 1's output med følgende instruks: "Gennemlæs denne tekst ekstremt kritisk. Find tre potentielle faktuelle fejl, udokumenterede påstande eller logiske svagheder. Henvis til de oprindelige kildedokumenter for at verificere hver påstand."
Refinement: Agent 1 modtager kritikken, korrigerer teksten og spytter først derefter det endelige, rensede resultat ud til slutbrugeren.
| Metode | Hvornår skal den bruges? | Effekt på hallucinationer |
|---|---|---|
| RAG Arkitektur | Når du har dynamiske, interne data (PDF'er, guides, CRM). | Ekstremt høj (95-98% reduktion) |
| Temperature = 0.0 | Ved matematiske, juridiske eller rent faktuelle opgaver. | Høj (Fjerner tilfældighed) |
| Negative Constraints | I alle prompts, hvor sandhedsværdien er kritisk. | Medium (Afhænger af modelstyrke) |
| Multi-Agent Debat | Ved generering af lange rapporter, kontrakter og analyser. | Høj (Fanger komplekse logiske fejl) |
Prompt engineering har udviklet sig fra overfladiske "hacks" til en stringent, datalogisk disciplin. Moderne prompt engineering handler ikke om at lære en LLM nye sandheder, men om at arkitektonere input, så vi med kirurgisk præcision aktiverer de mest relevante dele af modellens eksisterende viden.
At mestre avanceret prompt engineering er derfor lig med at mestre grænsefladen mellem menneskelig logik, datastrukturer og kunstig intelligens. Den ultimative prompt-ingeniør er ikke en forfatter, der taler med maskinen – det er en softwarearkitekt, der programmerer med naturligt sprog.