Co je promptování?
Promptování je proces, při kterém se vytváří instrukce, úkoly nebo kontext pro generativní umělou inteligenci (AI), aby vygenerovala žádaný výstup.
Na obrázku vidíme několik klíčových prvků promptu (výzvy):
- Role: Definuje, co se od AI očekává nebo jaká je její funkce v rámci daného úkolu.
- Úkoly: Konkrétní úkoly, které má AI vykonat.
- Instrukce: Specifické pokyny, které AI říkají, jak má úkoly vykonat.
- Kontext: Informace potřebné k porozumění úkolu a k tomu, aby výstup byl relevantní a přiměřený.
- Výstup: Požadavky na výstup.
Na obrázku vidíme také:
- Databáze a další úložiště informací: Zdroje informací, které AI využívá k informování svých odpovědí nebo k získání dat potřebných k vykonání úkolu.
- Knihovna promptů: Soubor předem vytvořených promptů, které mohou být použity jako šablony nebo inspirace pro vytváření nových promptů.
- Metodologie: Systém nebo postup, podle kterého jsou prompty vytvářeny a optimalizovány pro dosažení nejlepších možných výsledků.
Prompt je vytvořen a poskytnut AI, AI pak používá dostupné zdroje informací a své metodologie k vytvoření výstupu, který je následně prezentován uživateli prostřednictvím uživatelského rozhraní, jako je například chatovací aplikace na smartphonu.
Techniky Promptování
- Zero-shot Learning (Učení bez příkladů) – Tato metoda umožňuje modelu pochopit a reagovat na úkoly bez předchozího trénování nebo příkladů.
- One-shot prompting (Jednorázová výzva) – Jednorázové zadání je technika, při které je výstup modelu umělé inteligence řízen jediným příkladem. Tímto příkladem může být dvojice otázka-odpověď, jednoduchý pokyn nebo konkrétní šablona.
- Few-shot learning (Učení z příkladů) – AI se učí z pár příkladů, jak reagovat na nové situace.
- Self-consistency (Udržování soudržnosti a formy obsahu) – AI se snaží odpovídat tak, aby její odpovědi byly logické a vzájemně si neodporovaly.
- ReAct (Rekurzivní aplikace) – AI opakovaně používá stejné kroky, aby lépe pochopila problém.
- Tree of Thought (Strom myšlenek) – AI přemýšlí jako větve stromu, každá větev je jiný způsob, jak řešit problém.
- Chain-of-thought (Řetězec úvah) – Tato technika zahrnuje vedení modelu k postupnému vyjádření řetězce úvah vedoucích k finální odpovědi, což pomáhá modelu lépe zvládnout složité úlohy tím, že explicitně formuluje kroky vedoucí k řešení.
- Retrieval Augmented Prompting (Doplnění promptu pomocí vyhledávání) – AI hledá další informace v jiných zdrojích, aby mohla lépe odpovědět na dotazy.
- Prefix Tuning (Ladění prefixů) – Jakoby přilepujeme „štítek“ na začátek dotazu, který AI napovídá, jak má odpovědět.
- Fine-tuning (Jemné doladění) – Proces, při kterém je předtrénovaný model dále upravován pro specifickou úlohu nebo dataset. Toto „doladění“ obvykle zahrnuje přidání nových vrstev do modelu a jejich trénování na cílových datech, zatímco původní vrstvy modelu mohou zůstat zamrazené, aby se zabránilo přeučení. Tímto způsobem je model schopen lépe se přizpůsobit a vylepšit své predikční schopnosti na méně obecné úkoly než ty, na které byl původně trénován.
- Reasoning without Observation – ReWOO (Usuzování bez pozorování) – Tato technika je založena na principu vytváření promptů, které modelu umožňují provádět usuzování bez potřeby přímého pozorování.
- Model-guided prompting (Promptování řízené modelem) – Tato technika využívá model k vyžádání konkrétních detailů potřebných pro dokončení úkolu. Model je zde instruován, aby položil uživateli konkrétní otázky, na základě kterých pak generuje výstup. Takto model aktivně řídí proces zadávání dotazů a zlepšuje přesnost svých odpovědí (Prompt Engineering Guide – Nextra).
- Persona Pattern (Vzor Persony) – Přístup, který model umožňuje generovat odpovědi, jež jsou konzistentní s definovanou „personou“. To může zahrnovat vytvoření osobnostního profilu pro AI, který ovlivňuje jaký typ jazyka, tonality, a perspektivy AI používá ve svých odpovědích. Tento způsob může být užitečný pro simulaci specifického chování nebo postojů v rámci konverzace (ar5iv).
- The Cognitive Verifier Pattern (Vzor kognitivního ověřovatele) – Tato metoda zahrnuje aplikaci mechanismů, které umožňují modelu ověřovat své myšlenkové procesy a odpovědi před jejich prezentací. Model se snaží interně prověřit své výstupy, aby se zajistila jejich logičnost a přesnost, což je zvláště užitečné v aplikacích vyžadujících spolehlivé a objektivní analýzy (ar5iv).
- Question Refinement Pattern (Upřesňování otázek) – Metoda, která zlepšuje formulaci otázek položených AI. Pokud je původní dotaz nejasný nebo špatně formulovaný, tento přístup pomáhá upravit otázku tak, aby byla jasnější a lépe odpovídala informacím, které model potřebuje k poskytnutí relevantní odpovědi. (ar5iv).
- Prompt Injection (…) – Vkládání specifických výrazů nebo frází do promptu, aby byl model naveden k produkci určitého typu odpovědi. To může zahrnovat vložení klíčových slov nebo frází, které naznačují požadovaný styl nebo obsah odpovědi.
- Template-based Prompting (Promptování na základě šablon) – Použití předem připravených šablon, které strukturují prompt pro konkrétní úlohy nebo formáty odpovědí. Tato technika může pomoci udržet konzistenci a přesnost v odpovědích.
- Contrastive Prompts (Kontrastní prompty) – Vytváření promptů, které explicitně uvádějí, co model nemá dělat nebo jaké chyby by se měly vyhnout. Tím se zlepšuje schopnost modelu rozlišovat mezi správnými a nesprávnými odpověďmi nebo přístupy.
- Analogical Prompting (Analogické promptování) – Použití analogií k nasměrování modelu k řešení problémů nebo generování odpovědí. Tento přístup využívá schopnosti modelu k abstraktnímu myšlení a aplikaci znalostí z jedné oblasti na jinou.
- Retrieval Augmented Generation (Generování s podporou vyhledávání) – Tato metoda kombinuje generování obsahu s vyhledáváním informací. Model nejprve vyhledá relevantní informace z databáze nebo internetu a poté tyto informace využívá pro generování odpovědí nebo obsahu.
- Automatic Reasoning and Tool-use (Automatické usuzování a používání nástrojů) – Tato technika zahrnuje použití logického usuzování a externích nástrojů (například kalkulaček, map nebo databází) pro řešení úloh.
- Automatic Prompt Engineer (Automatický inženýr promptů) – Tato metoda se zaměřuje na automatizaci procesu vytváření a optimalizace promptů. Využívá algoritmy strojového učení k analýze a vylepšení efektivity promptů. Cílem je dosáhnout lepších výsledků bez nutnosti manuálního upravování promptů.
- Active-Prompt (Aktivní prompt) – Active-Prompt je dynamická forma promptování, kde se prompty neustále upravují a adaptují na základě interakce uživatele a odezvy modelu. Tato metoda umožňuje modelu reagovat flexibilněji a poskytovat přizpůsobenější odpovědi.
- Multimodal CoT Prompting (Multimodální promptování Řetězce úvah) – Tato technika kombinuje více modalit (např. text, obrazy, zvuk) a řetězec úvah pro vytváření komplexních promptů. Tímto způsobem může model zpracovávat a reagovat na úlohy, které vyžadují pochopení a integraci informací z různých zdrojů. To je obzvláště užitečné v situacích, kde je potřeba kombinovat vizuální analýzu s textovým usuzováním.
- Least-To-Most („Od nejméně po nejvíce“) – Metoda, kde se uživatel postupně vede k řešení složitějšího problému nebo otázky, začínaje od nejjednoduššího aspektu.
- Self-Ask („Zeptej se sám sebe“) – Je metoda, kde model AI (jako ChatGPT) generuje vlastní otázky na základě daného tématu nebo kontextu a následně na tyto otázky odpovídá. Tento přístup se využívá k prohloubení analýzy tématu a zlepšení pochopení problému.
- Meta-Prompt (Meta promptování) – Meta-prompting zahrnuje vytváření promptů, které nejsou přímo odpovědí na konkrétní otázku nebo řešením úkolu. Místo toho se zaměřuje na proces, jak efektivně formovat prompt, který povede k lepšímu nebo vhodnějšímu řešení dané situace nebo úkolu. Tento druh promptování se snaží optimalizovat způsob, jakým jsou úkoly modelu předkládány, aby se zvýšila pravděpodobnost, že výstup bude užitečný a relevantní.
- Symbolic Reasoning (Symbolické uvažování) – Tato metoda spočívá ve využití definovaných pravidel a symbolů pro dedukci nových informací nebo výsledků z daných premis. Jde o používání symbolů a abstraktních konceptů pro logické myšlení a řešení problémů.
- PAL – Prompt, Answer, Learn (Prompt, Odpověď, Učení) – Tato technika je užitečná pro zdokonalování interakce mezi člověkem a AI, zvyšuje efektivitu a přesnost odpovědí AI a pomáhá lépe pochopit, jak AI interpretuje a zpracovává informace.
- Iterative Prompting (Iterativní promptování) – Tento proces spočívá v opakovaném poskytování zpětné vazby AI a upravování původního promptu na základě této vazby.
- Sequential Prompting (Sekvenční promptování) – Každý následující prompt staví na informacích nebo odpovědích získaných z předchozího promptu.
- Reasoning without Observation – ReWOO (Usuzování bez pozorování) – AI řeší problémy použitím logiky a znalostí, aniž by potřebovala konkrétní příklady.
Tipy a postupy pro tvorbu a vylepšování promptů
- Přiřaďte roli (Assign Role)
- „Chovej se jako vinař sommeliér v oblasti degustace vín s více než 12 lety zkušeností v oboru.“
- Stylování výstupu (Styling Output)
- „Texty by měly upoutat pozornost a psát o přínosech.“
- Buďte konkrétní (Be Specific )
- „Shrň tento text na 50 slov.“
- Přidejte podmínky (Add Conditions)
- „Pokud najdeš [text], tak“, „změř se jen na [skupina].“
- Poskytněte data (Provide Data)
- „Zde uvádím několik příkladů: [příklad], [příklad], [příklad], [příklad]“
- Spolupracujte, Sdílejte poznatky (Collaborate and Share Insights)
- „Přečti si následující odstavec a dej mi vědět, jak ho můžeme zlepšit pro lepší pochopení technických detailů.“
- Buďte jasní a specifičtí (Be Clear and Specific)
- „Jaké jsou tři hlavní výhody použití elektrických vozidel oproti vozidlům s benzínovým motorem?“
- Používejte celé věty (Use Complete Sentences)
- Definujte kontext (Include Context)
- Používejte prompty jako vstupní příklady (Use Prompts as Input Examples)
- Specifikujte formát výstupu (Specify Output Format)
- „Výstup zpracuj do tabulky.“
- Experimentujte s různými formulacemi (Experiment with Different Phrasings)
- Testujte a vylepšujte (Test and Refine)
- Zabývejte se krajními případy (Handle Edge Cases)
- Vyvarujte se předsudků a nevhodného obsahu (Avoid Bias and Inappropriate Content)