Kako funkcioniše izrada upita
Zbog načina na koji se OpenAI modeli treniraju, postoje specifični formati upita koji posebno dobro funkcionišu i dovode do korisnijih izlaza modela. Zvanični vodič za izradu upita kompanije OpenAI obično je najbolje mjesto za početak kada tražite savjete za upite.
U nastavku predstavljamo niz formata upita za koje smatramo da dobro funkcionišu, ali slobodno istražite i druge formate koji mogu bolje odgovarati vašem zadatku.
Pravila iz prakse i primjeri
Napomena: „{text input here}“ je rezervirano mjesto za stvarni tekst/kontekst
1. Koristite najnoviji model
Za najbolje rezultate općenito preporučujemo korištenje najnovijih i najsposobnijih modela. Kod novijih modela izrada upita obično je lakša.
Napomena: Postoje neke razlike koje treba uzeti u obzir kada se upit daje modelu rezonovanja u odnosu na GPT model. Više detalja ovdje.
2. Stavite upute na početak upita i koristite ### ili """ za odvajanje upute i konteksta
Manje učinkovito ❌:
Sažmi tekst ispod kao listu najvažnijih stavki s grafičkim oznakama.
{text input here}Bolje ✅:
Sažmi tekst ispod kao listu najvažnijih stavki s grafičkim oznakama.
Tekst: """
{text input here}
"""3. Budite što konkretniji, opisniji i detaljniji u vezi sa željenim kontekstom, ishodom, dužinom, formatom, stilom itd.
Budite konkretni u vezi s kontekstom, ishodom, dužinom, formatom, stilom itd.
Manje učinkovito ❌:
Napiši pjesmu o OpenAI. Bolje ✅:
Napiši kratku inspirativnu pjesmu o OpenAI, fokusirajući se na nedavno lansiranje proizvoda DALL-E (DALL-E je ML model za pretvaranje teksta u sliku) u stilu {famous poet}4. Izrazite željeni format izlaza kroz primjere
Manje učinkovito ❌:
Izdvoji entitete spomenute u tekstu ispod. Izdvoji sljedeće 4 vrste entiteta: nazive kompanija, imena ljudi, specifične teme i opće teme.
Tekst: {text}Pokažite i recite - modeli bolje reaguju kada im se pokažu specifični zahtjevi za format. To također olakšava pouzdano programsko parsiranje više izlaza.
Bolje ✅:
Izdvoji važne entitete spomenute u tekstu ispod. Prvo izdvoji sve nazive kompanija, zatim sva imena ljudi, potom specifične teme koje odgovaraju sadržaju i na kraju opće krovne teme
Željeni format:
Nazivi kompanija: <lista_naziva_kompanija_odvojenih_zarezom>
Imena ljudi: -||-
Specifične teme: -||-
Opće teme: -||-
Tekst: {text}5. Počnite s učenjem bez primjera, zatim s učenjem s malim brojem primjera; ako nijedno ne uspije, fino podesite
✅ Učenje bez primjera
Izdvoji ključne riječi iz teksta ispod.
Tekst: {text}
Ključne riječi:✅ Učenje s malim brojem primjera - navedite nekoliko primjera
Izdvoji ključne riječi iz odgovarajućih tekstova ispod.
Tekst 1: Stripe pruža API-je koje web programeri mogu koristiti za integraciju obrade plaćanja u svoje web stranice i mobilne aplikacije.
Ključne riječi 1: Stripe, obrada plaćanja, API-ji, web programeri, web stranice, mobilne aplikacije
##
Tekst 2: OpenAI je trenirao napredne jezičke modele koji su vrlo dobri u razumijevanju i generiranju teksta. Naš API pruža pristup ovim modelima i može se koristiti za rješavanje gotovo svakog zadatka koji uključuje obradu jezika.
Ključne riječi 2: OpenAI, jezički modeli, obrada teksta, API.
##
Tekst 3: {text}
Ključne riječi 3:✅Fino podešavanje: najbolje prakse za fino podešavanje pogledajte ovdje.
6. Smanjite „prazne“ i neprecizne opise
Manje učinkovito ❌:
Opis ovog proizvoda treba biti prilično kratak, svega nekoliko rečenica i ne mnogo više od toga.Bolje ✅:
Upotrijebi odlomak od 3 do 5 rečenica da opišeš ovaj proizvod.7. Umjesto da samo kažete šta ne treba raditi, recite šta treba uraditi umjesto toga
Manje učinkovito ❌:
Slijedi razgovor između Agenta i Korisnika. NE TRAŽI KORISNIČKO IME ILI LOZINKU. NE PONAVLJAJ.
Korisnik: Ne mogu se prijaviti na svoj račun.
Agent:Bolje ✅:
Slijedi razgovor između Agenta i Korisnika. agent će pokušati dijagnosticirati problem i predložiti rješenje, uz suzdržavanje od postavljanja bilo kakvih pitanja vezanih za PII. Umjesto traženja PII-ja, kao što su korisničko ime ili lozinka, uputi korisnika na članak pomoći www.samplewebsite.com/help/faq
Korisnik: Ne mogu se prijaviti na svoj račun.
Agent:8. Specifično za generisanje koda - koristite „vodeće riječi“ da usmjerite model prema određenom obrascu
Manje učinkovito ❌:
# Napiši jednostavnu python funkciju koja
# 1. Traži od mene broj u miljama
# 2. Pretvara milje u kilometreU primjeru koda u nastavku dodavanje „import“ nagovještava modelu da treba početi pisati u Pythonu. (Slično tome, „SELECT“ je dobar nagovještaj za početak SQL naredbe.)
Bolje ✅:
# Napiši jednostavnu python funkciju koja
# 1. Traži od mene broj u miljama
# 2. Pretvara milje u kilometre
import9. Koristite funkciju „Generiraj bilo šta“
Programeri mogu koristiti funkciju „Generiraj bilo šta“ da opišu zadatak ili očekivani izlaz na prirodnom jeziku i dobiju prilagođeni upit.
Saznajte više o korištenju funkcije „Generiraj bilo šta“.
Parametri
Općenito, model i temperatura najčešće su korišteni parametri za mijenjanje izlaza modela.
model – Modeli boljih performansi uglavnom su skuplji i mogu imati veću latenciju.
temperatura – Mjera učestalosti kojom model generira manje vjerovatan token. Što je temperatura viša, izlaz je nasumičniji (i obično kreativniji). Međutim, to nije isto što i „istinitost“. Za većinu činjeničnih slučajeva upotrebe, poput izdvajanja podataka i istinitih pitanja i odgovora, najbolja je temperatura 0.
max_completion_tokens (maksimalna dužina) – Ne određuje dužinu izlaza, već postavlja strogu granicu nakon koje se generiranje tokena prekida. U idealnom slučaju ovu granicu nećete često dosezati jer će se model zaustaviti kada procijeni da je završio ili kada naiđe na sekvencu za zaustavljanje koju ste definirali.
stop (sekvence za zaustavljanje) – Skup znakova (tokena) koji će, kada budu generirani, zaustaviti generiranje teksta.
Opise ostalih parametara potražite u referentnoj dokumentaciji API-ja.
