Přeskočit na obsah

Prompt

Z Infopedia
Rozbalit box

Obsah boxu

Prompt (v češtině se nepřekládá, někdy se opisuje jako zadání nebo instrukce) je v kontextu umělé inteligence vstupní text, obrázek nebo jiný datový podnět, který je poskytnut generativnímu modelu za účelem vyvolání specifické odpovědi. Slouží jako přímý pokyn, otázka nebo kontext, na jehož základě model generuje výstup, ať už se jedná o text, kód, obrázek nebo zvuk. Kvalita a přesnost promptu zásadně ovlivňuje kvalitu a relevanci výstupu modelu, což vedlo ke vzniku nové disciplíny zvané prompt engineering.

Prompt
Soubor:Prompt interface example.png
Příklad rozhraní pro zadávání promptu v nástroji Google AI Studio
PrincipInstrukce pro generativní modely
TypVstupní data, uživatelské rozhraní

📜 Původ názvu a etymologie

Slovo prompt pochází z anglického slovesa to prompt, které znamená "pobídnout", "vyzvat k akci" nebo "našeptat". Tento význam přesně vystihuje jeho funkci – prompt "pobízí" umělou inteligenci k činnosti a dává jí podnět k vytvoření odpovědi. V informatice se tento termín historicky používal pro označení výzvy v příkazovém řádku (např. `C:\>`), která signalizovala, že systém je připraven přijmout příkaz od uživatele[1]. S nástupem konverzační AI se význam rozšířil na komplexnější instrukce v přirozeném jazyce.

⏳ Historie

Koncept zadávání instrukcí počítači je starý jako počítače samy, ale jeho podoba se dramaticky proměnila.

  • Příkazové řádky a programovací jazyky: Rané formy "promptování" byly striktně formální. Uživatel musel zadávat přesné příkazy v příkazovém řádku nebo psát kód v programovacím jazyce. Jakákoli syntaktická chyba vedla k neúspěchu.
  • Nástup zpracování přirozeného jazyka (NLP): S rozvojem strojového učení se systémy začaly učit rozumět lidské řeči. Starší modely však vyžadovaly pro každý specifický úkol (např. překlad, analýza sentimentu) samostatný a náročný proces trénování a ladění (fine-tuning) na velkých datových sadách.
  • Revoluce velkých jazykových modelů (LLM): Zásadní zlom přinesly velké jazykové modely jako GPT-3 od společnosti OpenAI kolem roku 2020. Tyto modely byly natrénovány na obrovském množství textu a ukázaly schopnost plnit širokou škálu úkolů bez nutnosti dalšího trénování. Místo toho stačilo úkol precizně popsat v promptu[2]. Tato schopnost, známá jako in-context learning, přesunula těžiště z trénování modelů na tvorbu efektivních promptů.
  • Masová popularizace (2022–současnost): Uvedení modelu ChatGPT v listopadu 2022 učinilo z promptování mainstreamovou dovednost. Miliony lidí si začaly uvědomovat, že způsob, jakým se modelu "zeptají", přímo ovlivňuje kvalitu odpovědi. To vedlo k explozi zájmu o techniky psaní promptů a vzniku profese prompt inženýra.

⚙️ Anatomie efektivního promptu

Ačkoliv lze zadat i jednoduchou otázku, pro komplexní a spolehlivé výsledky se osvědčila struktura promptu skládající se z několika klíčových prvků[3]:

  • Role (Persona): Přidělení role modelu. Například: "Chovej se jako zkušený marketingový manažer..." nebo "Jsi pomocník pro psaní kódu v jazyce Python." Tímto krokem se aktivují relevantní znalosti modelu a nastaví se styl odpovědi.
  • Úkol (Task): Jasné a jednoznačné zadání toho, co má model udělat. Například: "...vytvoř pět návrhů na reklamní slogan pro nový energetický nápoj."
  • Kontext (Context): Poskytnutí všech relevantních informací, které model potřebuje k úspěšnému splnění úkolu. Například: "Nápoj se jmenuje 'Volta', je určen pro mladé sportovce, neobsahuje cukr a jeho hlavní příchutí je mango."
  • Formát (Format): Specifikace požadované struktury výstupu. Například: "Odpověz ve formě tabulky se dvěma sloupci: 'Slogan' a 'Cílová skupina'." nebo "Výstupem by měl být JSON objekt."
  • Příklady (Examples): Uvedení jednoho nebo více příkladů požadovaného vstupu a výstupu (tzv. few-shot prompting). Tím se model nejlépe naučí přesný styl a formát, který od něj očekáváte.

🚀 Pokročilé techniky promptování

Pro řešení složitějších úkolů a zvýšení spolehlivosti modelů byly vyvinuty sofistikovanější techniky.

  • Zero-shot Prompting (Promptování bez příkladu): Základní forma, kdy model dostane pouze instrukci bez jakýchkoli příkladů. Spoléhá se na to, že model již byl natrénován na podobných úlohách a dokáže úkol splnit "na první pokus". Příklad: "Přelož větu 'Hello, world!' do španělštiny."[4]
  • Few-shot Prompting (Promptování s několika příklady): Uživatel poskytne modelu v promptu několik ukázek správného řešení (obvykle 2–5). Model se z těchto příkladů naučí požadovaný formát a styl odpovědi. Tato metoda dramaticky zvyšuje přesnost u specifických a strukturovaných úloh. Příklad: "Přelož do francouzštiny: moře -> mer, nebe -> ciel, země -> terre."
  • Chain-of-Thought (CoT) Prompting (Promptování s řetězcem myšlenek): Jedna z nejprůlomovějších technik. Místo přímé odpovědi je model instruován, aby nejdříve generoval postup řešení krok za krokem a teprve poté finální odpověď. Tím, že je model nucen "přemýšlet nahlas", se výrazně zvyšuje jeho schopnost řešit komplexní logické, matematické a úvahové úlohy[5]. Typicky se aktivuje přidáním fráze jako "Přemýšlej krok za krokem."

🛠️ Prompt Engineering jako disciplína

Prompt engineering (česky prompt inženýrství nebo inženýrství promptů) je proces navrhování, tvorby, testování a zdokonalování promptů s cílem dosáhnout co nejlepších a nejspolehlivějších výsledků od generativních modelů. Nejedná se o programování v klasickém smyslu, ale spíše o aplikovanou lingvistiku a kognitivní vědu, kde "programátorem" je uživatel a "programovacím jazykem" je přirozený jazyk.

Cílem prompt inženýra je:

  • Maximalizovat přesnost a relevanci odpovědí.
  • Minimalizovat "halucinace" a faktické chyby modelu.
  • Zajistit bezpečnost a zabránit generování škodlivého obsahu.
  • Optimalizovat prompty pro snížení výpočetních nákladů.

S rostoucí složitostí AI systémů se prompt engineering stává klíčovou dovedností a samostatnou profesí[6].

⚠️ Omezení a rizika

  • Nejednoznačnost jazyka: Přirozený jazyk je často nejednoznačný, což může vést k nepochopení instrukce modelem.
  • Citlivost na formulaci: Malá změna ve formulaci promptu může dramaticky změnit výstup modelu.
  • Prompt Injection a Jailbreaking: Jedná se o bezpečnostní hrozby, kdy útočník vytvoří škodlivý prompt, který se snaží obejít bezpečnostní filtry modelu a donutit ho k odhalení citlivých informací nebo generování zakázaného obsahu (tzv. jailbreak – útěk z vězení)[7].
  • Skrytá složitost: Ačkoliv se promptování zdá jednoduché, dosažení konzistentních a spolehlivých výsledků vyžaduje hluboké porozumění jak modelu, tak dané problematice.

Pro laiky

Představte si, že máte k dispozici neuvěřitelně chytrého, ale zároveň velmi doslovného a trochu zmateného džina z láhve (to je AI model). Tento džin umí splnit jakékoliv přání, ale musíte mu ho naprosto přesně popsat.

Prompt je vaše přání.

  • Špatný prompt: "Přeju si jídlo." Džin neví, jestli máte rádi pizzu nebo salát, a tak vám může přinést něco, co nechcete.
  • Dobrý prompt: "Přines mi velkou pizzu s mozzarellou a bazalkou, nakrájenou na osm dílů, a polož ji na stůl." Džin přesně ví, co má udělat, a výsledek bude odpovídat vašemu očekávání.

Prompt engineering je tedy umění, jak se naučit mluvit s tímto "džinem" tak, aby vám vždy splnil přání přesně podle vašich představ. Je to jako učit se psát co nejlepší recepty pro nejlepšího kuchaře na světě.

Reference