Jak získat stabilní výsledky z lokálních modelů

Lokální modely působí nepředvídatelně, když stejný Prompt pokaždé dá jiný tvar: jednou odrážky, jednou esej, jednou omluvu a k ní esej. Většinou za tím jsou nastavení a chybějící omezení, ne rozbitá instalace. Shrnutí, extrakci a malé úlohy s kódem můžete udělat natolik opakovatelné, že se dají použít v denním postupu.

Tahle stránka předpokládá, že už píšete jasný Prompt. Pokud je formulace pořád volná, přečtěte si nejdřív Jak psát lepší Prompty pro lokální modely AI. Metody, které přežijí testování, jsou shrnuté v textu Co opravdu funguje.

Proč se odpověď mění

Vzorkování vybírá další Token s jistou náhodností. Vyšší teplota (temperature) znamená víc náhody. Dlouhý chat znamená, že dřívější pravidla jsou dál od poslední otázky. Otevřený Prompt („napište něco užitečného“) má mnoho platných dokončení, takže vzorkovač má kam uhnout. Rozptyl zmenšíte tím, že ten prostor zúžíte: nižší teplota, Seed, když potřebujete skutečné opakování, formát s malým prostorem, krátký kontext a model, po kterém nežádáte pět prací najednou.

1. Snižte teplotu dřív, než přepíšete Prompt

U úkolu, který chcete opakovat, nastavte teplotu mezi 0,1 a 0,3. Top-p nechte na výchozí hodnotě aplikace, pokud nevíte, proč ho měníte. Potom spusťte stejný Prompt třikrát.

Stejný Prompt, tři záměry:

Vypište přesně 4 pravidla pojmenování souborů pro sdílenou složku. Každé v jedné větě. Žádný úvod.
Seznam vypadá náhodně, tak jsem přepsal celý Prompt, přidal dlouhou personu a teplotu nechal na 1,0.

Změnili jste příliš mnoho a nechali nastavení, které způsobuje míchání. Prompt zmrazte, snižte teplotu a teprve potom upravte jeden řádek, pokud je formát pořád špatně.

2. Použijte Seed, když porovnáváte Prompty

Ollama, LM Studio a některé další aplikace dovolují nastavit Seed. Stejný model, stejný Prompt, stejný Seed a stejné nastavení vzorkování by se měly vrátit skoro stejně. Tak poznáte, jestli změna formulace pomohla.

Praktické porovnání:

  1. Nastavte teplotu na 0,2 a Seed na 42.
  2. Uložte výstup Promptu A.
  3. Změňte jeden řádek a vznikne Prompt B. Seed ponechte.
  4. Porovnejte A a B. Pokud je B lepší, nechte ho a potom jednou zkuste Seed 43, ať vidíte, jestli formát pořád drží.

Pokud vaše aplikace Seed neumí, bit po bitu stejné opakování nedostanete. Pořád můžete vyžadovat formát a nízkou teplotu, a to je to, co potřebujete pro denní použití. Seed je na testování, ne pro čtenáře shrnutí.

3. Udělejte formát, od kterého se těžko uhýbá

Čím těsnější tvar, tím míň vzorkovač zmůže. Štítky jsou lepší než „uspořádejte to“.

Můžete tento e-mail zákazníka uspořádat do něčeho, co náš tým použije?
Přepište e-mail pouze do těchto štítků: Požadavek: Produkt: Termín: Chybí: Pravidla: - Jeden řádek na štítek - Pokud je to neznámé, napište „neuvedeno“ - Nepřidávejte doporučenou odpověď E-mail: [vložte]

Pokud model doporučenou odpověď pořád přidá, dejte zákaz na vlastní poslední řádek: „Nepište odpověď.“ Pravidla na posledním řádku se dodržují častěji než pravidla zahrabaná uprostřed.

4. U křehkých formátů přidejte kontrolu na jeden řádek

Použijte to u JSON, tabulek a přesných počtů. U běžné prózy to nepoužívejte.

Vraťte JSON s klíči sku a qty. qty je celé číslo. Chybějící hodnoty jsou null. Pokud nějaký klíč chybí, opravte JSON, než odpovíte. Opravu nevysvětlujte. Text: [vložte]

Výstup si přečtěte. Pokud uvidíte odstavec, který začíná „Zkontroloval jsem JSON“, model kontrolu ukazuje. Doplňte „Výstupem je pouze JSON“, nebo kontrolu odeberte a spolehněte se na seznam klíčů. Některé malé modely tichou kontrolu nezvládnou. V tom případě je lepší Prompt samotný seznam klíčů.

Pečlivě si práci dvakrát zkontrolujte, zvažte okrajové případy a zařiďte, aby na toto přání k narozeninám byl hrdý přemýšlivý člověk.

Není tu co kontrolovat. Dostanete strnulý vzkaz a někdy odstavec o kvalitě. Místo toho omezte slova.

5. Držte kontext krátký

Pravidla z deseti zpráv nazpět malý model snadno pustí. U opakovatelné práce v chatu nepokračujte. Začněte novou relaci, nebo pravidla znovu vložte na začátek nejnovější zprávy.

Vzor, který zůstává stabilní:

[po 15 kolech smíchaných otázek] Stejný formát jako předtím, víte, jak to myslím.

Často to neví. Formát vložte znovu. „Stejně jako předtím“ není formát.

6. Velikost modelu přiřaďte k práci

Menší model s úzkým Promptem je často konzistentnější než větší obecný model s ledabylým Promptem, ale není to kouzlo. Malý model použijte na přepis, extrakci a krátká shrnutí textu, který sami dodáte. Větší lokální model použijte, když úkol potřebuje delší kód nebo uvažování o více krocích. Nežádejte model 3B, aby zrevidoval soubor o 400 řádcích, a nečekejte stabilní revizi.

Pokud formát drží na modelu 7B a na modelu 3B se rozpadne, Prompt si nechte a vyměňte model. Nepřidávejte pravidla, dokud malý model nezavalíte.

Opakovatelný kontrolní seznam

  1. Napište formát jako štítky, počet, nebo klíče JSON.
  2. Zdrojový text dejte za pravidla, za jasný štítek.
  3. U všeho, čemu chcete věřit, nastavte teplotu na 0,2.
  4. Nastavte maximální limit Tokenů kousek nad odpověď, o kterou jste žádali.
  5. Spusťte dvakrát. Pokud se tvar liší, utáhněte poslední řádek dřív, než přidáte nová pravidla.
  6. Pokud porovnáváte dvě formulace, nastavte Seed.
  7. Pokud je chat dlouhý, začněte znovu a pravidla vložte ještě jednou.

Čím konzistence není

Když je Prompt stabilní, uložte ho. Knihovna Promptů je sada výchozích bodů, které si můžete uložit vedle vlastních. Nejste-li si jistí, jestli uložený Prompt není na kontextové okno příliš dlouhý, odhadněte ho Počítadlem Tokenů, než přiložíte velký soubor.

Související příručky a nástroje