Ako funguje návrh príkazov
Vzhľadom na spôsob, akým sa modely OpenAI trénujú, existujú konkrétne formáty príkazov, ktoré fungujú mimoriadne dobre a vedú k užitočnejším výstupom modelu. Oficiálna príručka OpenAI k návrhu príkazov je zvyčajne najlepším miestom, kde začať s tipmi na príkazy.
Nižšie uvádzame niekoľko formátov príkazov, ktoré podľa nás fungujú dobre, no pokojne preskúmajte aj iné formáty, ktoré môžu vašej úlohe vyhovovať lepšie.
Praktické pravidlá a príklady
Poznámka: „{sem vložte text}“ je zástupný symbol pre skutočný text/kontext
1. Používajte najnovší model
Pre najlepšie výsledky vo všeobecnosti odporúčame používať najnovšie a najschopnejšie modely. Pri novších modeloch býva návrh príkazov jednoduchší.
Poznámka: Pri zadávaní príkazov uvažovaciemu modelu oproti zadávaniu príkazov modelu GPT treba zohľadniť určité rozdiely. Viac podrobností nájdete tu.
2. Umiestnite pokyny na začiatok príkazu a použite ### alebo """ na oddelenie pokynu a kontextu
Menej účinné ❌:
Zhrňte text nižšie do zoznamu odrážok s najdôležitejšími bodmi.
{text input here}Lepšie ✅:
Zhrňte text nižšie do zoznamu odrážok s najdôležitejšími bodmi.
Text: """
{text input here}
"""3. Buďte čo najkonkrétnejší, opisní a podrobní pri požadovanom kontexte, výsledku, dĺžke, formáte, štýle atď.
Buďte konkrétni pri kontexte, výsledku, dĺžke, formáte, štýle atď.
Menej účinné ❌:
Napíšte báseň o OpenAI. Lepšie ✅:
Napíšte krátku inšpiratívnu báseň o OpenAI so zameraním na nedávne uvedenie produktu DALL-E (DALL-E je ML model na prevod textu na obraz) v štýle {famous poet}4. Vyjadrite požadovaný formát výstupu pomocou príkladov
Menej účinné ❌:
Z textu nižšie vyextrahujte uvedené entity. Vyextrahujte tieto 4 typy entít: názvy spoločností, mená ľudí, konkrétne témy a všeobecné témy.
Text: {text}Ukážte aj vysvetlite – modely reagujú lepšie, keď im ukážete konkrétne požiadavky na formát. Vďaka tomu je tiež jednoduchšie spoľahlivo programovo analyzovať viacero výstupov.
Lepšie ✅:
Z textu nižšie vyextrahujte dôležité entity. Najprv vyextrahujte všetky názvy spoločností, potom všetky mená ľudí, potom konkrétne témy, ktoré zodpovedajú obsahu, a nakoniec vyextrahujte všeobecné zastrešujúce témy
Požadovaný formát:
Názvy spoločností: <čiarkami_oddelený_zoznam_názvov_spoločností>
Mená ľudí: -||-
Konkrétne témy: -||-
Všeobecné témy: -||-
Text: {text}5. Začnite bez príkladov, potom s niekoľkými príkladmi; ak nefunguje ani jedno, vykonajte jemné doladenie
✅ Bez príkladov
Vyextrahujte kľúčové slová z textu nižšie.
Text: {text}
Kľúčové slová:✅ S niekoľkými príkladmi – poskytnite pár príkladov
Vyextrahujte kľúčové slová zo zodpovedajúcich textov nižšie.
Text 1: Stripe poskytuje API, ktoré môžu weboví vývojári použiť na integráciu spracovania platieb do svojich webových stránok a mobilných aplikácií.
Kľúčové slová 1: Stripe, spracovanie platieb, API, weboví vývojári, webové stránky, mobilné aplikácie
##
Text 2: OpenAI natrénovalo špičkové jazykové modely, ktoré veľmi dobre rozumejú textu a generujú ho. Naše API poskytuje prístup k týmto modelom a možno ho použiť na vyriešenie prakticky akejkoľvek úlohy, ktorá zahŕňa spracovanie jazyka.
Kľúčové slová 2: OpenAI, jazykové modely, spracovanie textu, API.
##
Text 3: {text}
Kľúčové slová 3:✅ Jemné doladenie: pozrite si osvedčené postupy jemného doladenia tu.
6. Obmedzte „prázdne“ a nepresné opisy
Menej účinné ❌:
Opis tohto produktu by mal byť pomerne krátky, len niekoľko viet a nie oveľa viac.Lepšie ✅:
Na opísanie tohto produktu použite odsek s 3 až 5 vetami.7. Namiesto toho, aby ste len hovorili, čo nerobiť, povedzte, čo robiť namiesto toho
Menej účinné ❌:
Nasleduje konverzácia medzi agentom a zákazníkom. NEPÝTAJTE SA NA POUŽÍVATEĽSKÉ MENO ANI HESLO. NEOPAKUJTE TO.
Zákazník: Nemôžem sa prihlásiť do svojho účtu.
Agent:Lepšie ✅:
Nasleduje konverzácia medzi agentom a zákazníkom. agent sa pokúsi diagnostikovať problém a navrhnúť riešenie, pričom sa zdrží kladenia akýchkoľvek otázok súvisiacich s PII. Namiesto žiadania o PII, ako je používateľské meno alebo heslo, odkážte používateľa na článok pomocníka www.samplewebsite.com/help/faq
Zákazník: Nemôžem sa prihlásiť do svojho účtu.
Agent:8. Špecifické pre generovanie kódu – použite „úvodné slová“ na nasmerovanie modelu ku konkrétnemu vzoru
Menej účinné ❌:
# Napíš jednoduchú funkciu v pythone, ktorá
# 1. sa ma opýta na číslo v míľach
# 2. prevedie míle na kilometreV príklade kódu nižšie pridanie „import“ naznačí modelu, že má začať písať v Pythone. (Podobne je „SELECT“ dobrou pomôckou pre začiatok príkazu SQL.)
Lepšie ✅:
# Napíš jednoduchú funkciu v pythone, ktorá
# 1. sa ma opýta na číslo v míľach
# 2. prevedie míle na kilometre
import9. Použite funkciu Generovať čokoľvek
Vývojári môžu použiť funkciu „Generovať čokoľvek“, aby opísali úlohu alebo očakávaný výstup v prirodzenom jazyku a získali prispôsobený príkaz.
Zistite viac o používaní funkcie „Generovať čokoľvek“.
Parametre
Vo všeobecnosti zisťujeme, že `model` a `temperature` sú najčastejšie používané parametre na zmenu výstupu modelu.
`model` – Výkonnejšie modely sú vo všeobecnosti drahšie a môžu mať vyššiu latenciu.
`temperature` – Miera toho, ako často model vypíše menej pravdepodobný token. Čím vyššia je hodnota
temperature, tým náhodnejší (a zvyčajne kreatívnejší) je výstup. To však nie je to isté ako „pravdivosť“. Pre väčšinu faktických prípadov použitia, ako je extrakcia dát a pravdivé otázky a odpovede, je najlepšia hodnotatemperature0.`max_completion_tokens` (maximálna dĺžka) – Neriadi dĺžku výstupu, ale predstavuje pevný limit na generovanie tokenov. V ideálnom prípade na tento limit nenarazíte často, pretože váš model sa zastaví buď vtedy, keď si myslí, že skončil, alebo keď narazí na vami definovanú stop sekvenciu.
`stop` (stop sekvencie) – Súbor znakov (tokenov), ktoré po vygenerovaní spôsobia zastavenie generovania textu.
Ďalšie opisy parametrov nájdete v referenčnej príručke API.
