Siirry sisältöön
Service status

Kirjoita hakeaksesi

Promptauksen peruskurssi · 3 min lukuaika

Anna esimerkkejä selitysten sijaan

Opi few-shot-promptauksen periaate – miten oikeat esimerkit parantavat dramaattisesti tekoälyn tarkkuutta ja vähentävät yleisiä vastauksia.

Oppimistavoitteet

  • Ymmärtää “few-shot-promptauksen” periaate
  • Oppia, kuinka monta esimerkkiä on optimaalinen
  • Osata luoda tehokkaita esimerkkejä mukautetuille ohjeille

Edelliset osiot käsittelivät ohjeiden jäsentelyä ja oikeiden kysymysten esittämistä. Nyt opit yhden tehokkaimmista promptauksen tekniikoista: näyttämistä selittämisen sijaan. Yksi hyvin valittu esimerkki voi korvata useita lauseita selitystä – ja tuottaa dramaattisesti parempia tuloksia.

Olet varmasti kokenut sen: selität tarkasti, mitä haluat, mutta sävy on väärä, muoto outo tai yksityiskohtien taso ei lainkaan se, mitä ajattelit. On yksinkertaisempi ratkaisu – ja se on se, jota katsomme nyt.

Miksi esimerkit usein voittavat selitykset

Salaisuus, jota suuret tekoälyyritykset käyttävät, on yksinkertainen: sen sijaan, että yrität selittää kaiken sanoilla, näytä mallille esimerkkejä täsmälleen siitä, miltä haluat tuloksen näyttävän.

“Examples are your secret weapon shortcut for getting Claude to generate exactly what you need.” — Anthropic, Best Practices for Prompt Engineering

Tätä kutsutaan few-shot-promptaukseksi (tai multishot-promptaukseksi) – ja se on yksi tehokkaimmista tekniikoista, joita voit käyttää. Zero-shot tarkoittaa, että et anna esimerkkejä lainkaan, one-shot tarkoittaa yhtä esimerkkiä ja few-shot tarkoittaa kahta tai useampaa.

Se, että esimerkit toimivat paremmin kuin selitykset, ei ole sattumaa – on neljä konkreettista syytä, miksi tekniikka on niin tehokas.

Miksi se toimii niin hyvin?

Ihmiset (ja tekoälymallit) oppivat paremmin konkreettisista esimerkeistä kuin abstrakteista kuvauksista. Yksi hyvä esimerkki voi selventää asioita, joiden selittämiseen kuluisi useita lauseita.

On odotuksia, joita on vaikea ilmaista sanoin – kuten täsmälleen millainen sävy haluat, kuinka muodollinen tekstin pitää olla tai kuinka yksityiskohtainen selityksen pitää olla. Esimerkit osoittavat tämän suoraan ilman tulkintaa.

Kun mallilla on nähtynä esimerkkejä “oikeasta” muodosta, se noudattaa sitä mallia paljon johdonmukaisemmin kuin jos vain kuvailisit sen. Johdonmukaisuus on kriittistä, kun rakennat assistentin käytännölliseen käyttöön.

4. Vähentää yleisiä tekoälyvastauksia

Osio nimeltä “4. Vähentää yleisiä tekoälyvastauksia”

Anthropicin testien mukaan oikeat esimerkit voivat eliminoida jopa 80 % yleisistä, sisällöttömistä tekoälyvastauksista – erityisesti jos yhdistät positiiviset ja negatiiviset esimerkit (lisää tästä myöhemmin tässä osiossa).

Ero esimerkkien käyttämisen ja käyttämättä jättämisen välillä on helpoin ymmärtää konkreettisella tapauksella. Tässä suora vertailu.

Zero-shotista few-shotiin: käytännön vertailu
## TEHTÄVÄ
Luokittele asiakassähköpostit oikeaan kategoriaan.
## KATEGORIAT
- Tekninen tuki
- Laskutuskysymykset
- Tuotetiedot
- Valitus
- Muu

Tulos: toimii ihan hyvin selkeissä tapauksissa, mutta tulee epävarmaksi rajatapauksissa. Mikä ero on “Tekninen tuki” ja “Valitus”, jos asiakas sekä valittaa ETTÄ tarvitsee apua?

## TEHTÄVÄ
Luokittele asiakassähköpostit oikeaan kategoriaan.
## KATEGORIAT
- Tekninen tuki
- Laskutuskysymykset
- Tuotetiedot
- Valitus
- Muu
## ESIMERKIT
Sähköposti: "Sovellukseni kaatuu aina, kun yritän kirjautua sisään. Apua!"
Kategoria: Tekninen tuki
Sähköposti: "Miksi minulle on veloitettu ylimääräinen 29,99 €?"
Kategoria: Laskutuskysymykset
Sähköposti: "Tukeeko tuote X Bluetooth 5.0:aa?"
Kategoria: Tuotetiedot
Sähköposti: "Olen erittäin tyytymätön asiakaspalveluunne ja haluan korvauksen!"
Kategoria: Valitus
Sähköposti: "Olen vaihtanut sähköpostiosoitetta, mistä päivitän sen?"
Kategoria: Muu

Tulos: malli näkee nyt selkeät esimerkit siitä, miltä jokainen kategoria näyttää, ja tekee paljon parempia arvioita – erityisesti rajatapauksissa, joissa kysymys voi kuulua useampaan kuin yhteen kategoriaan.

Yksi yleisimmistä kysymyksistä few-shot-promptauksessa on: kuinka monta esimerkkiä oikeasti tarvitaan? Vastaus on vivahteikkaampi kuin ehkä luulet.

Kuinka monta esimerkkiä tarvitset?

Anthropicin suositus: aloita yhdellä esimerkillä

Osio nimeltä “Anthropicin suositus: aloita yhdellä esimerkillä”

“Start with one example (one-shot). Only add more examples (few-shot) if the output still doesn’t match your needs.”

  • Aloita 0 esimerkillä (zero-shot) – testaa, selviääkö malli tehtävästä ilman esimerkkejä
  • Lisää 1 esimerkki (one-shot) – usein tämä riittää
  • Nosta 2–3 esimerkkiin, jos tulokset vaihtelevat edelleen
  • Käytä 5–10 esimerkkiä vain monimutkaisiin tai nicheisiin tehtäviin

Tutkimus osoittaa, että enemmät esimerkit eivät aina ole parempi. Tietyn määrän jälkeen saat marginaalisen parannuksen mutta käytät enemmän tokeneita.

  • 1 esimerkki → yksinkertaiset luokittelutehtävät, selkeät muodot
  • 2–3 esimerkkiä → kohtalaisesti monimutkaiset tehtävät, vivahteinen sävy
  • 5+ esimerkkiä → monimutkaiset toimialat, hyvin erityiset vaatimukset

Testaa aina! Optimaalinen määrä vaihtelee tehtävän ja mallin mukaan.

Tietää, että tarvitset esimerkkejä, on yksi asia – hyvien esimerkkien luominen on toinen. Tässä on se, mikä todella erottaa tehokkaan esimerkin tehottomasta.

Miten luot tehokkaita esimerkkejä

Esimerkkiesi pitää heijastaa sitä vaihtelua, jota odotat käytännössä – ei keinotekoisia oppikirjatapauksia.

Huono esimerkki (liian yksinkertainen ja keinotekoinen)
Osio nimeltä “Huono esimerkki (liian yksinkertainen ja keinotekoinen)”
Kysymys: "Mikä on Python?"
Vastaus: "Python on ohjelmointikieli."
Hyvä esimerkki (realistinen ja oikealla yksityiskohtien tasolla)
Osio nimeltä “Hyvä esimerkki (realistinen ja oikealla yksityiskohtien tasolla)”
Kysymys: "Olen juuri aloittanut Pythonin opettelun enkä ymmärrä
eroa listojen ja tuplejen välillä. Voitko selittää?"
Vastaus: "Hyvä kysymys! Sekä listat että tuplet tallentavat useita
arvoja, mutta suuri ero on se, että listoja voi muuttaa (mutable)
kun taas tuplet ovat kiinteitä (immutable).
Ajattele näin: Lista on kuin tehtävälista – voit lisätä, poistaa
tai muuttaa kohtia. Tuple on kuin syntymäpäivä – kun se on asetettu,
et voi muuttaa päivämäärää.
# Lista (voi muuttaa)
hedelmia = ['omena', 'banaani']
hedelmia.append('appelsiini') # OK!
# Tuple (ei voi muuttaa)
paivamaara = (2024, 3, 15)
paivamaara[0] = 2025 # VIRHE! Antaa poikkeuksen
Käytä listoja, kun data voi muuttua, tupleita kun data pitää pysyä vakiona."

Toinen esimerkki on parempi, koska se näyttää, miten todellinen käyttäjä esittää kysymyksen, osoittaa halutun sävyn (pedagoginen, analogioiden kanssa) ja näyttää tarkalleen, millaista yksityiskohtien tasoa ja rakennetta haluat.

Jos käytät useita esimerkkejä, varmista, että ne näyttävät vaihtelua sävyssä ja tilanteessa – ei vain helppoja, selkeitä tapauksia.

## ESIMERKIT
Skenaario 1: Yksinkertainen tekninen kysymys
Asiakas: "Miten nollaan salasanani?"
Assistentti: "Klikkaa 'Unohtuiko salasana' kirjautumissivulla.
Saat sähköpostiin nollauslinkin 5 minuutin kuluessa.
Tarkista myös roskaposti! Tarvitsetko lisää apua? 😊"
Skenaario 2: Turhautunut asiakas
Asiakas: "Tämä on kolmas kerta, kun otan teihin yhteyttä samasta ongelmasta!"
Assistentti: "Ymmärrän täysin turhautumisesi, ja pahoittelen, että
emme ole ratkaisseet tätä aikaisemmin. Priorisoin asiasi nyt.
Voitko kertoa, minkä virhekoodin sait, niin voin eskaloida asian
suoraan tekniselle osastollemme?"
Skenaario 3: Tiedon ulkopuolinen kysymys
Asiakas: "Onko teillä suunnitelmia julkaista Mac-versio?"
Assistentti: "Valitettavasti minulla ei ole tietoa tulevista
tuotejulkaisuista. Suosittelen seuraamaan blogimme osoitteessa
yritys.fi/uutiset. Voinko auttaa jossakin muussa tänään?"

Esimerkit kattavat eri tunnetilat ja näyttävät, miten sävyä pitää mukauttaa tinkimättä ammattimaisuudesta.

3. Selkeä rakenne, jota on helppo seurata

Osio nimeltä “3. Selkeä rakenne, jota on helppo seurata”

Käytä johdonmukaista muotoilua esimerkeissäsi, jotta malli näkee selvästi mallin.

## ESIMERKIT
Syöte: [käyttäjän todellinen syöte]
Tuloste: [täsmälleen se muoto, jonka haluat]
Syöte: [seuraava esimerkki]
Tuloste: [seuraava vastaus]

Tehokas tekniikka on näyttää sekä se, mitä HALUAT, että se, mitä ET halua. Anthropicin testien mukaan tämä voi eliminoida jopa 80 % yleisistä tekoälyvastauksista.

## ESIMERKKEJÄ HYVISTÄ VASTAUKSISTA
Kysymys: "Mikä on koneoppiminen?"
HYVÄ VASTAUS:
"Koneoppiminen on sitä, kun tietokoneet oppivat malleja datasta
sääntöjen sijaan. Ajattele näin: sen sijaan, että ohjelmoisit
'jos sähköposti sisältää sanan Viagra → roskaposti', koulutat
mallin tuhansilla esimerkeillä. Se oppii itse, mitkä mallit ovat
tyypillisiä roskapostille.
Esimerkki: Netflixin suositukset käyttävät koneoppimista
oppiakseen, mistä pidät sen perusteella, mitä olet katsonut
aiemmin."
HUONO VASTAUS (liian tekninen):
"Koneoppiminen on tekoälyn osa-alue, joka käyttää tilastollisia
tekniikoita saadakseen tietokonejärjestelmät 'oppimaan' datasta
ilman eksplisiittistä ohjelmointia."
Miksi huono: Tekninen jargon ilman selitystä, ei analogiaa tai
konkreettista esimerkkiä.
HUONO VASTAUS (liian epämääräinen):
"Koneoppiminen on sitä, kun tietokoneet tulevat älykkäämmiksi."
Miksi huono: Liian pintapuolinen, ei anna käyttäjälle
todellista ymmärrystä.

Few-shot-promptaus on yksi tehokkaimmista prompt engineeringin tekniikoista – ja helpompi aloittaa kuin luulet.

  • Esimerkit voittavat selitykset – ne näyttävät mallille tarkalleen, mitä haluat, mukaan lukien sävyn, muodon ja yksityiskohtien tason, joita on vaikea kuvailla sanoin.
  • Aloita 1 esimerkillä – lisää vain lisää, jos tuotos ei vieläkään vastaa odotuksiasi.
  • 2–3 esimerkkiä riittää useimmiten – enemmät esimerkit tuottavat vähenevää tuottoa ja lisäävät kustannuksia ilman suhteellista parannusta.
  • Tee esimerkeistä realistisia – heijasta todellista käyttöä ja vaihtelua, ei keinotekoisia oppikirjatapauksia.
  • Näytä negatiivisia esimerkkejä – osoittaminen, mitä et halua, eliminoi jopa 80 % yleisistä vastauksista.
  • Johdonmukainen muotoilu – käytä samaa rakennetta (Syöte/Tuloste) kaikissa esimerkeissä, jotta malli näkee selvästi mallin.

Testaa tietosi

Kysymys 1/5

Kysymys 1/5

Mitä on few-shot-promptaus?

Mitä on few-shot-promptaus?