Hogyan működik az utasítás tervezés
Az OpenAI modellek tanítási módja miatt vannak olyan konkrét utasításformátumok, amelyek különösen jól működnek, és hasznosabb modellkimenetekhez vezetnek.
Az OpenAI hivatalos utasítás tervezés útmutatója általában a legjobb kiindulópont az utasításadási tippekhez.
Az alábbiakban számos olyan utasításformátumot mutatunk be, amelyek tapasztalataink szerint jól működnek, de nyugodtan fedezz fel más formátumokat is, amelyek jobban illeszkedhetnek a feladatodhoz.
Ökölszabályok és példák
Megjegyzés: a „{text input here}” a tényleges szöveg/környezet helyőrzője
1. Használd a legújabb modellt
A legjobb eredmény érdekében általában a legújabb, legnagyobb képességű modellek használatát javasoljuk. Az újabb modelleknél általában könnyebb az utasítás tervezés.
Megjegyzés: Van néhány különbség, amit figyelembe kell venni, amikor egy érvelési modellnek adsz utasítást, szemben azzal, amikor egy GPT modellnek. További részletek itt.
2. Tedd az utasításokat az utasítás elejére, és használd a ### vagy a """ jelet az utasítás és a környezet elválasztására
Kevésbé hatékony ❌:
Foglald össze az alábbi szöveget a legfontosabb pontokból álló felsorolásként.
{text input here}Jobb ✅:
Foglald össze az alábbi szöveget a legfontosabb pontokból álló felsorolásként.
Szöveg: """
{text input here}
"""3. Légy konkrét, leíró és a lehető legrészletesebb a kívánt környezet, eredmény, hossz, formátum, stílus stb. tekintetében
Légy konkrét a környezetet, eredményt, hosszúságot, formátumot, stílust stb. illetően
Kevésbé hatékony ❌:
Írj egy verset az OpenAI-ról. Jobb ✅:
Írj egy rövid, inspiráló verset az OpenAI-ról, amely a DALL-E közelmúltbeli termékbevezetésére összpontosít (a DALL-E egy szövegből képet létrehozó ML modell), {famous poet} stílusában4. Példákon keresztül fogalmazd meg a kívánt kimeneti formátumot
Kevésbé hatékony ❌:
Nyerd ki az alábbi szövegben említett entitásokat. A következő 4 entitástípust nyerd ki: cégnevek, személynevek, konkrét témák és témakörök.
Szöveg: {text}Mutasd is meg, ne csak mondd el – a modellek jobban reagálnak, ha konkrét formátumkövetelményeket látnak. Ez azt is megkönnyíti, hogy programozottan, megbízhatóan lehessen több kimenetet feldolgozni.
Jobb ✅:
Nyerd ki az alábbi szövegben említett fontos entitásokat. Először az összes cégnevet nyerd ki, aztán az összes személynevet, majd a tartalomhoz illő konkrét témákat, végül az általános, átfogó témákat
Kívánt formátum:
Cégnevek: <vesszővel_elválasztott_cégnevek_listája>
Személynevek: -||-
Konkrét témák: -||-
Általános témák: -||-
Szöveg: {text}5. Kezdd zéró lövéses módszerrel, aztán kevés lövéses módszerrel, és ha egyik sem működött, finomhangolj
✅ Zéró lövéses
Nyerd ki a kulcsszavakat az alábbi szövegből.
Szöveg: {text}
Kulcsszavak:✅ Kevés lövéses – adj meg néhány példát
Nyerd ki a kulcsszavakat az alábbi kapcsolódó szövegekből.
1. szöveg: A Stripe olyan API-kat biztosít, amelyeket a webfejlesztők fizetésfeldolgozás integrálására használhatnak a weboldalaikba és mobilalkalmazásaikba.
1. kulcsszavak: Stripe, fizetésfeldolgozás, API-k, webfejlesztők, weboldalak, mobilalkalmazások
##
2. szöveg: Az OpenAI élvonalbeli nyelvi modelleket tanított be, amelyek nagyon jók a szöveg megértésében és generálásában. Az API-nk hozzáférést biztosít ezekhez a modellekhez, és gyakorlatilag bármilyen, nyelvfeldolgozással járó feladat megoldására használható.
2. kulcsszavak: OpenAI, nyelvi modellek, szövegfeldolgozás, API.
##
3. szöveg: {text}
3. kulcsszavak:✅ Finomhangolás: a finomhangolás bevált gyakorlatait itt találod.
6. Csökkentsd a „dagályos” és pontatlan leírásokat
Kevésbé hatékony ❌:
Ennek a terméknek a leírása legyen viszonylag rövid, csak néhány mondat, és ne legyen sokkal hosszabb annál.Jobb ✅:
Használj egy 3–5 mondatos bekezdést a termék leírására.7. Ne csak azt mondd el, mit ne tegyen, hanem azt is, mit tegyen helyette
Kevésbé hatékony ❌:
Az alábbiak egy Ügynök és egy Ügyfél közötti beszélgetést mutatnak. NE KÉRJ FELHASZNÁLÓNEVET VAGY JELSZÓT. NE ISMÉTELD.
Ügyfél: Nem tudok bejelentkezni a fiókomba.
Ügynök:Jobb ✅:
Az alábbiak egy Ügynök és egy Ügyfél közötti beszélgetést mutatnak. Az ügynök megpróbálja diagnosztizálni a problémát és megoldást javasolni, miközben tartózkodik a személyazonosításra alkalmas adatokkal kapcsolatos kérdésektől. Ahelyett, hogy PII-t, például felhasználónevet vagy jelszót kérne, irányítsa a felhasználót a következő súgócikkhez: www.samplewebsite.com/help/faq
Ügyfél: Nem tudok bejelentkezni a fiókomba.
Ügynök:8. Kódgenerálás-specifikus – használj „kezdő szavakat”, hogy egy adott mintázat felé tereld a modellt
Kevésbé hatékony ❌:
# Írj egy egyszerű python függvényt, amely
# 1. Bekér tőlem egy mérföldben megadott számot
# 2. Átváltja a mérföldeket kilométerreAz alábbi kódpéldában az „import” hozzáadása arra utal a modellnek, hogy Pythonban kell elkezdenie írni. (Hasonlóképpen a „SELECT” jó jelzés egy SQL-utasítás elejére.)
Jobb ✅:
# Írj egy egyszerű python függvényt, amely
# 1. Bekér tőlem egy mérföldben megadott számot
# 2. Átváltja a mérföldeket kilométerre
import9. Használd a Generate Anything funkciót
A fejlesztők a „Generate Anything” funkcióval leírhatnak egy feladatot vagy egy elvárt természetes nyelvi kimenetet, és személyre szabott utasítást kaphatnak.
További információ a „Generate Anything” funkció használatáról.
Paraméterek
Általában azt tapasztaljuk, hogy a model és a temperature a leggyakrabban használt paraméterek a modellkimenet módosítására.
model- A nagyobb teljesítményű modellek általában drágábbak, és nagyobb késleltetéssel járhatnak.temperature- Annak mértéke, hogy a modell milyen gyakran ad ki kevésbé valószínű tokent. Minél magasabb atemperature, annál véletlenszerűbb (és általában kreatívabb) a kimenet. Ez azonban nem ugyanaz, mint az „igazságtartalom”. A legtöbb tényszerű felhasználási esetben, például adatkinyerésnél és tényszerű kérdés-válasznál, a 0-stemperaturea legjobb.max_completion_tokens(maximális hossz) - Nem a kimenet hosszát szabályozza, hanem a tokengenerálás kemény felső korlátja. Ideális esetben ezt a korlátot ritkán éred el, mert a modell vagy akkor áll meg, amikor úgy gondolja, hogy befejezte, vagy amikor eléri az általad meghatározott leállítási szekvenciát.stop(leállítási szekvenciák) - Karakterek (tokenek) egy halmaza, amelyek generálásakor a szöveggenerálás leáll.
Egyéb paraméterleírásokért lásd az API-referenciát.
