AI-prompt engineering · leksjon

Zero-shot- og few-shot-prompting

Oppdag hvordan De kan fremkalle svar uten eksempler (zero-shot) eller ved å gi noen få illustrerende eksempler (few-shot).

Leksjon 2 av 311 trinn

Zero-shot- og few-shot-prompting er en gratis leksjon i AI-prompt engineering på CoddyKit. Dette er leksjon 2 av 3. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AI-prompt engineering, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AI-prompt engineering inneholder totalt 3 leksjoner.

Introduksjon til zero-shot og few-shot

Velkommen til denne leksjonen om zero-shot- og few-shot-prompting! Dette er grunnleggende teknikker for å veilede store språkmodeller (LLM-er) til å utføre oppgaver.

Å forstå dem hjelper deg med å få bedre og mer presise resultater fra AI.

Å forstå zero-shot

Zero-shot-prompting innebærer å gi en LLM en oppgave uten å vise eksempler på hvordan den skal løses.

  • Du baserer deg utelukkende på LLM-ens forhåndstrente kunnskap.
  • Prompten inneholder bare instruksjoner og inndataene.
  • Det er effektivt for enkle, vanlige oppgaver som LLM-en sannsynligvis har sett under treningen.

Zero-shot i praksis: Klassifisering

Her er et zero-shot-eksempel. Vi ber LLM-en klassifisere tekstens sentiment uten å vise den tidligere sentimentklassifiseringer.

Prøv å kjøre dette eksempelet:

def call_llm_api(prompt):
    # In a real scenario, this would call an LLM API.
    # For this example, we simulate a response.
    if "sentiment" in prompt.lower():
        return "Sentiment: Positive"
    return "LLM Response: Could not process."

# Our zero-shot prompt
zero_shot_prompt = "Classify the sentiment of 'The movie was fantastic!'"

print(f"Prompt: {zero_shot_prompt}")
print(f"LLM Output: {call_llm_api(zero_shot_prompt)}")

Zero-shot: trekke ut informasjon

Zero-shot-prompting egner seg også godt til å trekke ut bestemte informasjonsbiter fra tekst.

Vi forteller bare LLM-en hva den skal se etter, og den bruker den generelle kunnskapen sin til å finne det.

def call_llm_api(prompt):
    if "name and age" in prompt.lower():
        return "Name: Alice, Age: 30"
    return "LLM Response: Information not found."

# Another zero-shot prompt example
zero_shot_prompt = "Extract the name and age from 'My name is Alice and I am 30 years old.'"

print(f"Prompt: {zero_shot_prompt}")
print(f"LLM Output: {call_llm_api(zero_shot_prompt)}")

Begrensninger ved zero-shot

Selv om zero-shot-prompting er kraftig, har det begrensninger:

  • Tvetydighet: Oppgaver som kan tolkes på flere måter, kan gi inkonsistente resultater.
  • Nyhet: Hvis oppgaven eller konseptet er helt nytt eller svært nisjepreget, kan LLM-en få problemer uten eksempler.
  • Kompleksitet: Ved resonnering i flere trinn eller svært spesifikk formatering er det kanskje ikke nok med bare instruksjoner.

Introduksjon til few-shot-prompting

Few-shot-prompting avhjelper begrensningene ved zero-shot ved å inkludere noen få eksempler på inndata og utdata direkte i prompten.

  • Disse eksemplene veileder LLM-en i ønsket oppgave, stil eller format.
  • Det er som å vise en elev noen løste oppgaver før du ber eleven løse en ny.
  • Denne teknikken forbedrer ytelsen betydelig på komplekse eller tvetydige oppgaver.

Few-shot i praksis: omskriving

Her viser vi et eksempel på hvordan en setning kan omformuleres til aktiv form. Dette hjelper LLM-en med å forstå den spesifikke transformasjonen vi ønsker.

Legg merke til hvordan eksempelet tydeliggjør oppgaven:

def call_llm_api(prompt):
    if "active voice" in prompt.lower() and "ball was thrown" in prompt.lower():
        return "Output: The boy threw the ball."
    return "LLM Response: Could not rephrase."

# Our few-shot prompt with one example
few_shot_prompt = """Rephrase into active voice:
Input: The mouse was chased by the cat.
Output: The cat chased the mouse.

Rephrase into active voice:
Input: The ball was thrown by the boy."""

print(f"Prompt: {few_shot_prompt}")
print(f"LLM Output: {call_llm_api(few_shot_prompt)}")

Few-shot: kodegenerering

Few-shot-prompting er svært nyttig for å generere kode eller følge bestemte utdataformater.

Ved å vise et eksempel på ønsket kode (f.eks. en funksjonssignatur og funksjonskropp) kan LLM-en bedre gjenskape den strukturen.

def call_llm_api(prompt):
    if "function to add" in prompt.lower():
        return "def add(a, b):\n    return a + b"
    return "LLM Response: Code not generated."

# Few-shot prompt for code generation
few_shot_prompt = """Generate a Python function:
Example 1:
Input: Function to multiply two numbers.
Output:
def multiply(a, b):
    return a * b

Example 2:
Input: Function to add two numbers."""

print(f"Prompt: {few_shot_prompt}")
print(f"LLM Output:\n{call_llm_api(few_shot_prompt)}")

Å velge riktig teknikk

Hvordan avgjør du om du skal bruke zero-shot eller few-shot?

  • Zero-shot: Best egnet for enkle, veldefinerte oppgaver der LLM-ens generelle kunnskap er tilstrekkelig. Det er kortfattet og sparer token-plass.
  • Few-shot: Ideelt for komplekse, nyanserte eller tilpassede oppgaver som krever bestemte formater eller stiler. Det gir viktig veiledning og forbedrer nøyaktigheten, men bruker flere tokens.

Test av zero-shot og few-shot

Hvilken promptteknikk er vanligvis best for enkle, tydelig definerte oppgaver der det ikke er behov for spesifikke eksempler?

Oppsummering: Promptkraft

Du har lært om to grunnleggende promptteknikker:

  • Zero-shot-prompting bruker bare instruksjoner og utnytter LLM-ens brede kunnskap til enkle oppgaver.
  • Few-shot-prompting inkluderer eksempler i prompten og gir viktig veiledning for mer komplekse, nyanserte eller tilpassede resultater.

Når du mestrer disse, kan du kommunisere mer effektivt med LLM-er og oppnå ønskede resultater!

Gratis å komme i gang

Lær deg AI-prompt engineering med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
53
Leksjoner
199

Ofte stilte spørsmål

Er leksjonen «Zero-shot- og few-shot-prompting» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien AI-prompt engineering, inkludert «Zero-shot- og few-shot-prompting», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i AI-prompt engineering inneholder totalt 3 leksjoner.

Hva lærer jeg i «Zero-shot- og few-shot-prompting»?

Oppdag hvordan De kan fremkalle svar uten eksempler (zero-shot) eller ved å gi noen få illustrerende eksempler (few-shot). Du øver på AI-prompt engineering med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med AI-prompt engineering?

Ingen tidligere erfaring er nødvendig. AI-prompt engineering på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 3.

Hvor lang tid tar leksjonen «Zero-shot- og few-shot-prompting»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne AI-prompt engineering-leksjonen?

Ja. Alle AI-prompt engineering-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Forstå LLM-enes muligheter
  2. Zero-shot- og few-shot-prompting
  3. Rollespill- og persona-prompter
← Tilbake til AI-prompt engineering