← 返回列表

AI série rozhovorů 12: Jak optimalizovat prompt?

Optimalizace promptů (Prompt Engineering / Optimization) je klíčovou dovedností, jak přimět velké jazykové modely „poslouchat“, zejména v systémech RAG, kde přímo určuje, zda se model bude ochotně držet načteného obsahu, vyhne se halucinacím a dodrží formát výstupu.


1. Základní principy optimalizace promptů

  1. Jasnost > Složitost: Jednoduché, přímé instrukce jsou často účinnější než efektní myšlenkové řetězce.
  2. Dostatečná omezení: Jasně modelu řekněte, „co může a co nesmí dělat“.
  3. Poskytněte příklady: Několik příkladů (few-shot) je stabilnější než žádný (zero-shot).
  4. Ověřitelnost: Nechte model uvádět zdroje nebo míru jistoty, aby bylo možné výstup dále zpracovat.
  5. Iterativní optimalizace: Začněte s výchozím bodem, vždy měňte jen jednu proměnnou a porovnávejte výsledky.

2. Konkrétní techniky optimalizace (od snadných po složité)

1. Nastavení role (System Prompt)

Jste profesionální asistent zákaznické podpory. Můžete odpovídat pouze na základě níže uvedených [Referenčních materiálů].
Pokud neznáte odpověď, přímo řekněte „V materiálech nejsou relevantní informace“ – nevymýšlejte si.
  • Účel: Nastavit hranice a tón.
  • Body ladění: Tón (odborný/přátelský), míra omezení (přísná/volná).

2. Jasné instrukce

❌ Špatně: „Odpovězte na otázku uživatele.“
✅ Dobře: „Pouze na základě níže uvedených [Referenčních materiálů] odpovězte. Pokud referenční materiály neobsahují odpověď, odpovězte „Na tuto otázku nedokážu odpovědět“.“

3. Řízení výstupního formátu

Prosím výstup v následujícím JSON formátu:
{
  "answer": "Vaše odpověď",
  "confidence": "vysoká/střední/nízká",
  "sources": [1, 3]
}
  • Použití: Usnadňuje zpracování, citování a ladění.

4. Příklady few-shot (velmi účinné)

Příklad 1:
Otázka: Kolik dní dovolené?
Referenční materiály: Pravidla dovolené: 1 rok = 5 dní, 10 let = 10 dní.
Odpověď: 1 rok = 5 dní, 10 let = 10 dní.

Příklad 2:
Otázka: Jak se počítá přesčas?
Referenční materiály: Přesčas v pracovní den = 1,5násobek, o víkendu = 2násobek.
Odpověď: V pracovní den 1,5násobek, o víkendu 2násobek.

Nyní odpovězte:
Otázka: {otázka uživatele}
Referenční materiály: {načtený obsah}
Odpověď:
  • Tip: Příklady by měly pokrývat různé úrovně obtížnosti, nejlépe včetně případu, kdy nelze odpovědět.

5. Vynucení citací

Na konec odpovědi uveďte číslo zdroje ve formátu [citation:X]. Například: „Dovolená činí 5 dní [citation:1].“
Pokud kombinujete více zdrojů, uveďte je samostatně.

6. Nastavení prahu pro odmítnutí

  • Pevný limit: „Pokud referenční materiály s otázkou vůbec nesouvisí, odpovězte „Materiály nesouvisejí“.“
  • Měkký limit: Kombinujte s mírou spolehlivosti načtení – při poklesu pod práh automaticky aktivujte větev odmítnutí.

7. Myšlenkový řetězec (Chain-of-Thought) pro vícekrokové usuzování

Otázka: Kdo je šéf Zhang Sana?
Kroky: 1. Nejprve zjistěte oddělení Zhang Sana. 2. Poté zjistěte vedoucího toho oddělení. 3. Uveďte konečnou odpověď.
Postupujte podle kroků a poté uveďte výstup.

8. Negativní instrukce (Negative Prompting)

Nevymýšlejte si odpovědi. Nepoužívejte vágní výrazy jako „možná“, „pravděpodobně“. Nevydávejte žádná čísla mimo referenční materiály.

3. Jak hodnotit kvalitu promptu?

Metrika Význam Jak měřit
Věrnost Zda odpověď striktně vychází z referenčních materiálů Ručně nebo pomocí RAGAS Faithfulness
Přesnost odmítnutí Zda model odmítne odpovědět, když má Na testovací sadě bez odpovědí
Dodržení formátu Zda výstup odpovídá JSON/citacím Regulární výrazy
Spokojenost uživatele Zda je odpověď užitečná Online zpětná vazba / A/B testování

Doporučení: Připravte si malou testovací sadu (20–50 okrajových případů), po každé změně promptu ji spusťte a zaznamenejte změny.

4. Časté nástrahy a směry ladění

Problém Možná příčina Metoda ladění
Model ignoruje referenční materiály a odpovídá sám Instrukce není dostatečně silná Změňte na „Pouze na základě následujících materiálů“ a pomocí few-shot ukažte odmítnutí
Model vždy říká „Nevím“ Příliš vysoký práh odmítnutí Snižte práh nebo zkontrolujte kvalitu načtení
Výstupní formát je neuspořádaný, není JSON Instrukce není jasná Dodejte přísný příklad formátu nebo použijte function calling
Odpověď je příliš dlouhá/krátká Neuvedena délka „Odpovězte nejvýše 3 větami“
Vícekrokové usuzování selhává Nedostatečná schopnost modelu Požádejte o postupné uvažování nebo použijte silnější model
Halucinace čísel/dat Model spoléhá na vlastní znalosti Zdůrazněte „nepoužívejte žádná čísla z paměti, pouze z materiálů“

评论

暂无已展示的评论。

发表评论(匿名)