Tekoälyn prompt engineering · Oppitunti

Zero-shot- ja few-shot-promptaus

Tutustu siihen, miten vastauksia voidaan saada ilman esimerkkejä (zero-shot) tai tarjoamalla muutamia havainnollistavia esimerkkejä (few-shot).

Oppitunti 2/311 vaihetta

Zero-shot- ja few-shot-promptaus on ilmainen Tekoälyn prompt engineering-oppitunti CoddyKitissä. Tämä on oppitunti 2/3. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Tekoälyn prompt engineering-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Tekoälyn prompt engineering-kurssilla on yhteensä 3 oppituntia.

Johdatus zero-shot- ja few-shot-kehotteisiin

Tervetuloa oppitunnille, jolla käsitellään zero-shot- ja few-shot-kehotteita! Nämä ovat keskeisiä tekniikoita, joilla ohjataan suuria kielimalleja (LLM:iä) suorittamaan tehtäviä.

Niiden ymmärtäminen auttaa saamaan tekoälyltä parempia ja täsmällisempiä tuloksia.

Zero-shot-kehotteiden ymmärtäminen

Zero-shot-kehote tarkoittaa, että LLM:lle annetaan tehtävä ilman esimerkkejä sen suorittamisesta.

  • Tällöin luotetaan yksinomaan LLM:n esikoulutettuun tietoon.
  • Kehote sisältää vain ohjeet ja syötetiedot.
  • Tekniikka toimii tehokkaasti yksinkertaisissa ja yleisissä tehtävissä, joita LLM on todennäköisesti käsitellyt koulutuksensa aikana.

Zero-shot käytännössä: luokittelu

Tässä on esimerkki zero-shot-kehotteesta. Pyydämme LLM:ää luokittelemaan tekstin sentimentin näyttämättä sille aiempia sentimenttiluokituksia.

Kokeilkaa tämän esimerkin suorittamista:

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: tietojen poiminta

Zero-shot-kehotteet sopivat erinomaisesti myös tiettyjen tietojen poimimiseen tekstistä.

Kerromme LLM:lle vain, mitä sen tulee etsiä, ja se käyttää yleistä tietämystään tietojen löytämiseen.

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)}")

Zero-shot-kehotteiden rajoitukset

Vaikka zero-shot-kehotteet ovat tehokkaita, niillä on rajoituksia:

  • Monitulkintaisuus: Tulkinnanvaraiset tehtävät voivat tuottaa epäjohdonmukaisia tuloksia.
  • Uutuus: Jos tehtävä tai käsite on hyvin uusi tai erityisen rajattu, LLM:llä voi olla vaikeuksia ilman esimerkkejä.
  • Monimutkaisuus: Monivaiheisessa päättelyssä tai erittäin tarkasti määritellyssä muotoilussa pelkät ohjeet eivät ehkä riitä.

Johdatus few-shot-kehotteisiin

Few-shot-kehote korjaa zero-shot-kehotteiden rajoituksia sisältämällä muutaman syöte–tuloste-esimerkin suoraan kehotteessa.

  • Nämä esimerkit ohjaavat LLM:ää halutun tehtävän, tyylin tai muodon suhteen.
  • Se on kuin näyttäisitte opiskelijalle muutaman ratkaistun tehtävän ennen kuin pyydätte häntä ratkaisemaan uuden tehtävän.
  • Tämä tekniikka parantaa suorituskykyä merkittävästi monimutkaisissa tai monitulkintaisissa tehtävissä.

Few-shot käytännössä: uudelleenkirjoitus

Tässä annamme esimerkin siitä, miten lause muotoillaan uudelleen aktiiviin. Tämä auttaa LLM:ää ymmärtämään halutun muunnoksen.

Huomatkaa, miten esimerkki selventää tehtävää:

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: koodin tuottaminen

Few-shot-kehotteet ovat erittäin hyödyllisiä koodin tuottamiseen tai tiettyjen tulostemuotojen noudattamiseen.

Näyttämällä esimerkin halutusta koodista, kuten funktion allekirjoituksesta ja rungosta, LLM pystyy toistamaan rakenteen paremmin.

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)}")

Oikean tekniikan valitseminen

Miten päätätte zero-shot- ja few-shot-kehotteiden välillä?

  • Zero-shot: Sopii parhaiten yksinkertaisiin ja hyvin ymmärrettyihin tehtäviin, joissa LLM:n yleinen tietämys riittää. Se on tiivis ja säästää tokenitilaa.
  • Few-shot: Sopii ihanteellisesti monimutkaisiin, hienovaraisiin tai mukautettuihin tehtäviin, joissa tarvitaan tiettyjä muotoja tai tyylejä. Se tarjoaa tärkeää ohjausta ja parantaa tarkkuutta, mutta kuluttaa enemmän tokeneita.

Zero-shot/few-shot-testi

Mikä kehotetekniikka on yleensä parempi yksinkertaisiin, tarkasti määriteltyihin tehtäviin, joissa ei tarvita erityisiä esimerkkejä?

Kertaus: kehotteiden voima

Olette oppineet kaksi keskeistä kehotetekniikkaa:

  • Zero-shot-kehotteissa käytetään vain ohjeita ja hyödynnetään LLM:n laajaa tietämystä yksinkertaisissa tehtävissä.
  • Few-shot-kehotteissa kehotteeseen lisätään esimerkkejä, jotka tarjoavat tärkeää ohjausta monimutkaisempia, hienovaraisempia tai mukautettuja tuloksia varten.

Kun hallitsette nämä tekniikat, voitte olla tehokkaammin vuorovaikutuksessa LLM:ien kanssa ja saavuttaa halutut tulokset!

Aloita maksutta

Opi Tekoälyn prompt engineering tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
53
Oppitunnit
199

Usein kysytyt kysymykset

Onko oppitunti ”Zero-shot- ja few-shot-promptaus” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Tekoälyn prompt engineering-oppimispolun 3 oppituntia, myös oppitunnin “Zero-shot- ja few-shot-promptaus”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Tekoälyn prompt engineering-kurssilla on yhteensä 3 oppituntia.

Mitä opin oppitunnilla ”Zero-shot- ja few-shot-promptaus”?

Tutustu siihen, miten vastauksia voidaan saada ilman esimerkkejä (zero-shot) tai tarjoamalla muutamia havainnollistavia esimerkkejä (few-shot). Harjoittelet Tekoälyn prompt engineering-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Tekoälyn prompt engineering-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Tekoälyn prompt engineering-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/3.

Kuinka kauan ”Zero-shot- ja few-shot-promptaus”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Tekoälyn prompt engineering-oppitunnilla?

Kyllä. Jokainen Tekoälyn prompt engineering-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. LLM:ien ominaisuuksien ymmärtäminen
  2. Zero-shot- ja few-shot-promptaus
  3. Roolien ja persoonien määrittäminen prompteilla
← Takaisin: Tekoälyn prompt engineering