Ako písať lepšie Prompty pre lokálne modely AI
Lokálny model nie je menšia kópia špičkového chatovacieho produktu. Má kratší užitočný kontext, slabšie drží inštrukcie a menej znáša nejednoznačné formulácie. Úpravy nižšie sú tie, ktoré na bežnom domácom počítači menia výstup: dajte úlohu na začiatok, uzamknite formát, nechajte úlohu malú, píšte Prompt jednoduchým jazykom, kontrolu pridajte len keď ju úloha potrebuje, a obmedzte dĺžku.
Verzie týchto vzorov pripravené na kopírovanie sú v Najlepších šablónach Promptov pre lokálne LLM. Dlhšie poznámky z testov sú v texte Čo naozaj funguje.
1. Dajte inštrukcie pred zdrojový text
Mnohé lokálne modely vážia začiatok Promptu viac než koniec. Keď vložíte dlhý článok a až potom poviete „zhrňte to“, model môže v článku pokračovať, zhrnúť len úvod alebo odpovedať na otázku, ktorá bola vnútri zdroja. Najprv uveďte rolu, úlohu a pravidlá. Text vložte až pod jasný štítok, napríklad Text:.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: inštrukcia prichádza neskoro, je krátka a hmlistá. Model už „čítal“ tak, akoby článok bol samotná úloha. „Nech je to dobré“ nehovorí, čo dobré znamená. Presuňte konkrétnu inštrukciu na súhrn na prvé riadky a „nech je to dobré“ zmažte.
2. Pomenujte formát, nie dojem
Slová ako „pekné“, „profesionálne“ a „prenikavé“ nie sú formát. Formát je počet, tvar alebo zákaz. Lokálne modely častejšie poslúchnu počty a zákazy než vkus.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: nie je tu dĺžka, počet bodov ani zákaz úvodu. Často dostanete nadpis, nadšený úvod, päť nerovnakých odsekov a „dúfam, že to pomôže“. Nahraďte to počtom a limitom viet.
3. Žiadajte jeden výstup
Jediný Prompt, ktorý žiada koncept, preklad, zoznam titulkov a text na sociálnu sieť, sú štyri úlohy. Na malom modeli sa neskoršie úlohy stratia alebo sa zmiešajú do prvej. Rozdeľte ich. Môžete ich zreťaziť sami: vezmite koncept, začnite nový Prompt a žiadajte len preklad.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: štyri výstupy, žiadna dĺžka a „buďte kreatívni“ ide proti stálosti. Model zvyčajne napíše krátky text a ku zvyšku len voľne mávne. Spustite štyri Prompty, alebo najviac dva, ak máte väčší model a výstupy očíslujete.
4. Píšte Prompt jednoduchším jazykom než výstup
Môžete žiadať formálne oznámenie. Samotné inštrukcie nech sú stále krátke vety. Vložené vety, naukladané zápory a žargón v systémovom Prompte sú miesta, kde menšie modely stratia niť.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: inštrukcia je ťažšia než úloha. Model môže žargón opakovať alebo zamrznúť do hmlistého textu. Povedzte, pre koho to je, aké je to dlhé a čo má obsahovať.
5. Sebakontrolu pridajte len pri krehkých úlohách
Sebakontrola pomáha, keď výstup musí sedieť na tvar: JSON, pevný počet odrážok alebo kód, ktorý nemá obsahovať prózu. Pri bežnom prepise nepomáha a na malých modeloch môže model vytlačiť kontrolu namiesto odpovede. Použite jeden riadok, na konci.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: kontrola je ťažšia než úloha. Chceli ste prianie. Často dostanete odsek o uvažovaní a na konci strnulé prianie. Pri prianí k narodeninám sebakontrolu vynechajte a namiesto toho nastavte limit slov.
6. Obmedzte dĺžku v Prompte aj v aplikácii
Lokálne modely sa rozpisujú, keď strop nenastaví ani Prompt, ani aplikácia. Nastavte oboje. V Prompte použite počet slov alebo počet odrážok. V Ollama, LM Studio alebo Jan nastavte maximálny počet Tokenov kúsok nad tento počet, aby model dokončil poslednú vetu a nebol odseknutý uprostred slova. Ak si nie ste istí, aký dlhý je samotný Prompt, prejdite ho Počítadlom Tokenov, skôr než vložíte dlhý zdrojový dokument.
Príklady, ktoré fungujú
Protipríklad
Prečo to zlyhá: nie je tu koniec. Lokálny model bude vypisovať všeobecné tipy, kým nenarazí na maximum Tokenov v aplikácii, a často sa bude opakovať. Pomenujte publikum a dĺžku: „Dajte používateľovi domáceho počítača 6 krokov zálohovania, každý v jednej vete.“
Krátko predtým a potom
Je to tá istá žiadosť. Prvá je spôsob, akým ľudia často píšu. Druhá je verzia, ktorú model 7B zvládne.
Ak chcete druhý prechod, nežiadajte ten istý model v tom istom Prompte, aby to „tiež spravil krajšie“. Začnite nový Prompt s upravenými poznámkami a jedinou novou inštrukciou.
Čo toto nespraví
- Model, ktorý nikdy nebol trénovaný na jazyk, o ktorý žiadate, sa plynulým nestane len preto, že je Prompt úhľadný.
- Model 3B bude s dlhou revíziou kódu stále zápasiť. Skráťte úryvok alebo použite väčší lokálny model.
- Fakty, ktoré model nepozná, nevynútite prísnejším formátom. Požiadajte ho, nech použije len text, ktorý ste vložili.
- Vysoká teplota (temperature) bude stále prehadzovať formulácie, aj keď je Prompt dobrý. Pri opakovateľných úlohách pozrite Ako získať stabilné výsledky z lokálnych modelov.