Zero-shot- ja few-shot-promptaus
Tutustu siihen, miten vastauksia voidaan saada ilman esimerkkejä (zero-shot) tai tarjoamalla muutamia havainnollistavia esimerkkejä (few-shot).
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!
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
- LLM:ien ominaisuuksien ymmärtäminen
- Zero-shot- ja few-shot-promptaus
- Roolien ja persoonien määrittäminen prompteilla