Kaip veikia užklausų inžinerija
Dėl to, kaip mokomi OpenAI modeliai, yra konkrečių užklausų formatų, kurie veikia ypač gerai ir lemia naudingesnius modelio rezultatus. Oficialus OpenAI užklausų inžinerijos vadovas paprastai yra geriausia vieta pradėti ieškant patarimų, kaip rengti užklausas.
Toliau pateikiame kelis užklausų formatus, kurie, mūsų manymu, veikia gerai, bet drąsiai išbandykite kitus formatus, kurie gali labiau tikti jūsų užduočiai.
Praktinės taisyklės ir pavyzdžiai
Pastaba: „{text input here}“ yra faktinio teksto / konteksto vietaženklis
1. Naudokite naujausią modelį
Geriausiems rezultatams paprastai rekomenduojame naudoti naujausius, pajėgiausius modelius. Naujesnių modelių užklausų inžinerija paprastai yra lengvesnė.
Pastaba: Yra keletas skirtumų, į kuriuos reikia atsižvelgti teikiant užklausas protavimo modeliui, palyginti su GPT modeliu. Daugiau informacijos čia.
2. Nurodymus pateikite užklausos pradžioje ir naudokite ### arba """ nurodymams ir kontekstui atskirti
Mažiau veiksminga ❌:
Žemiau pateiktą tekstą apibendrinkite svarbiausių punktų sąrašu su ženkleliais.
{text input here}Geriau ✅:
Žemiau pateiktą tekstą apibendrinkite svarbiausių punktų sąrašu su ženkleliais.
Tekstas: """
{text input here}
"""3. Kuo konkrečiau, aprašomiau ir išsamiau nurodykite norimą kontekstą, rezultatą, ilgį, formatą, stilių ir kt.
Konkrečiai nurodykite kontekstą, rezultatą, ilgį, formatą, stilių ir kt.
Mažiau veiksminga ❌:
Parašykite eilėraštį apie OpenAI. Geriau ✅:
Parašykite trumpą įkvepiantį eilėraštį apie OpenAI, daugiausia dėmesio skirdami nesenam DALL-E produkto pristatymui (DALL-E yra teksto į vaizdą ML modelis), {famous poet} stiliumi4. Pageidaujamą išvesties formatą išreikškite pavyzdžiais
Mažiau veiksminga ❌:
Iš toliau pateikto teksto išskirkite paminėtus esinius. Išskirkite šiuos 4 esinių tipus: įmonių pavadinimus, žmonių vardus ir pavardes, konkrečias temas ir bendras temas.
Tekstas: {text}Parodykite ir pasakykite – modeliai reaguoja geriau, kai jiems parodomi konkretūs formato reikalavimai. Tai taip pat padeda programiškai patikimai išskirti kelias išvestis.
Geriau ✅:
Iš toliau pateikto teksto išskirkite svarbius esinius. Pirmiausia išskirkite visus įmonių pavadinimus, tada išskirkite visų žmonių vardus ir pavardes, tada išskirkite konkrečias temas, atitinkančias turinį, ir galiausiai išskirkite bendras pagrindines temas
Pageidaujamas formatas:
Įmonių pavadinimai: <kableliais_atskirtas_įmonių_pavadinimų_sąrašas>
Žmonių vardai ir pavardės: -||-
Konkrečios temos: -||-
Bendros temos: -||-
Tekstas: {text}5. Pradėkite be pavyzdžių, tada naudokite kelis pavyzdžius; jei nė vienas būdas neveikia, atlikite tikslinimą
✅ Be pavyzdžių
Iš toliau pateikto teksto išskirkite raktažodžius.
Tekstas: {text}
Raktažodžiai:✅ Naudojant kelis pavyzdžius – pateikite porą pavyzdžių
Iš toliau pateiktų atitinkamų tekstų išskirkite raktažodžius.
1 tekstas: Stripe teikia API, kurias žiniatinklio kūrėjai gali naudoti mokėjimų apdorojimui integruoti į savo svetaines ir mobiliąsias programėles.
1 raktažodžiai: Stripe, mokėjimų apdorojimas, API, žiniatinklio kūrėjai, svetainės, mobiliosios programėlės
##
2 tekstas: OpenAI apmokė pažangiausius kalbos modelius, kurie labai gerai supranta ir generuoja tekstą. Mūsų API suteikia prieigą prie šių modelių ir gali būti naudojama sprendžiant beveik bet kokią užduotį, susijusią su kalbos apdorojimu.
2 raktažodžiai: OpenAI, kalbos modeliai, teksto apdorojimas, API.
##
3 tekstas: {text}
3 raktažodžiai:✅Tikslinimas: apie geriausią tikslinimo praktiką skaitykite čia.
6. Mažinkite „išpūstus“ ir netikslius aprašymus
Mažiau veiksminga ❌:
Šio produkto aprašymas turėtų būti gana trumpas, tik kelių sakinių ir ne ką ilgesnis.Geriau ✅:
Šį produktą aprašykite 3–5 sakinių pastraipa.7. Užuot tiesiog sakę, ko nedaryti, pasakykite, ką daryti vietoj to
Mažiau veiksminga ❌:
Toliau pateikiamas pokalbis tarp agento ir kliento. NEKLAUSKITE NAUDOTOJO VARDO AR SLAPTAŽODŽIO. NEKARTOKITE.
Klientas: Negaliu prisijungti prie savo paskyros.
Agentas:Geriau ✅:
Toliau pateikiamas pokalbis tarp agento ir kliento. Agentas bandys nustatyti problemą ir pasiūlyti sprendimą, tuo pačiu vengdamas užduoti bet kokius su PII susijusius klausimus. Užuot prašę PII, pavyzdžiui, naudotojo vardo ar slaptažodžio, nukreipkite naudotoją į pagalbos straipsnį www.samplewebsite.com/help/faq
Klientas: Negaliu prisijungti prie savo paskyros.
Agentas:8. Specifiška kodo generavimui – naudokite „pradinius žodžius“, kad nukreiptumėte modelį į konkretų šabloną
Mažiau veiksminga ❌:
# Parašykite paprastą python funkciją, kuri
# 1. Paprašo manęs skaičiaus myliomis
# 2. Konvertuoja mylias į kilometrusToliau pateiktame kodo pavyzdyje pridėjus „import“ modeliui duodama užuomina, kad jis turėtų pradėti rašyti Python. (Panašiai „SELECT“ yra gera užuomina SQL sakinio pradžiai.)
Geriau ✅:
# Parašykite paprastą python funkciją, kuri
# 1. Paprašo manęs skaičiaus myliomis
# 2. Konvertuoja mylias į kilometrus
import9. Naudokite funkciją „Generate Anything“
Kūrėjai gali naudoti funkciją „Generate Anything“, kad apibūdintų užduotį arba numatomą natūralios kalbos išvestį ir gautų pritaikytą užklausą.
Sužinokite daugiau apie funkcijos „Generate Anything“ naudojimą.
Parametrai
Apskritai pastebime, kad `model` ir `temperature` yra dažniausiai naudojami parametrai modelio išvesčiai keisti.
`model` - Didesnio našumo modeliai paprastai kainuoja daugiau ir gali turėti didesnę delsą.
`temperature` - Matas, rodantis, kaip dažnai modelis pateikia mažiau tikėtiną žetoną. Kuo didesnė
temperature, tuo atsitiktinesnė (ir paprastai kūrybiškesnė) išvestis. Tačiau tai nėra tas pats, kas „teisingumas“. Daugumai faktinių naudojimo atvejų, pvz., duomenų išgavimui ir teisingiems Q&A, geriausiatemperaturereikšmė yra 0.`max_completion_tokens` (maksimalus ilgis) - Nekontroliuoja išvesties ilgio; tai griežta žetonų generavimo riba. Idealiu atveju šios ribos dažnai nepasieksite, nes jūsų modelis sustos arba tada, kai manys baigęs, arba kai pasieks jūsų apibrėžtą stabdymo seką.
`stop` (stabdymo sekos) - Simbolių (žetonų) rinkinys, kuris, sugeneruotas, sustabdys teksto generavimą.
Kitų parametrų aprašymus žr. API nuorodą.
