system prompt
Co je system prompt a jak řídí chování AI
System prompt je sada nadřazených instrukcí, které určují roli, pravidla, kontext a způsob odpovídání AI modelu ještě před zpracováním konkrétního požadavku uživatele. Můžete si ho představit jako provozní manuál pro AI: říká jí, kým má být, jaký úkol plní, co smí používat a v jakém tvaru má vracet výsledek. Zatímco běžný prompt popisuje jeden konkrétní požadavek, system prompt nastavuje mantinely celé konverzace nebo aplikace. Je proto jedním ze základních nástrojů prompt engineeringu.
Pojem pochází z rozhraní jazykových modelů, která rozlišují různé role zpráv. System prompt bývá modelu předán dříve než zpráva uživatele a v instrukční hierarchii má vyšší prioritu. Některé platformy dnes místo systémové role používají také označení developer instructions nebo system instructions. Princip je stejný: autor aplikace oddělí trvalá pravidla od proměnlivého dotazu uživatele.
Jak system prompt funguje:
- Určuje roli a cíl: Model může dostat instrukci, že je například asistent zákaznické podpory, editor textu, analytik dat nebo lektor. Dobře zvolená role zpřesní, z jaké perspektivy má úkol řešit.
- Nastavuje pravidla: System prompt může vymezit povolené zdroje, zakázané akce, jazyk odpovědi, požadovanou míru stručnosti nebo postup při nedostatku informací.
- Dodává kontext: Může obsahovat popis firmy, produktu, cílové skupiny, terminologii nebo další informace potřebné pro správnou odpověď. Dlouhý system prompt přitom zabírá část kontextového okna, stejně jako ostatní zprávy.
- Definuje výstup: Lze v něm stanovit strukturu odpovědi, například JSON s konkrétními poli, tabulku, krátké odstavce nebo HTML bez dalších komentářů.
- Drží konzistenci: Stejná sada instrukcí může platit pro mnoho různých dotazů. Uživatel tak nemusí v každé zprávě znovu vysvětlovat tón, formát a hranice asistenta.
Když aplikace odešle požadavek modelu, skládá se jeho vstup obvykle z několika vrstev. Nejdříve přijdou pravidla poskytovatele a vývojáře, potom zprávy uživatele, předchozí části konverzace a případně výsledky nástrojů. Model negeneruje odpověď pouze podle poslední věty. Vyhodnocuje celý dostupný kontext a snaží se respektovat pořadí instrukcí. System prompt proto může uživateli dovolit měnit téma, ale současně zachovat například češtinu, věcný tón a pevný formát výstupu.
Co patří do dobrého system promptu:
Dobré systémové instrukce jsou konkrétní a ověřitelné. Místo neurčitého požadavku „odpovídej kvalitně“ je lepší napsat, pro koho odpověď vzniká, jak dlouhá má být a podle jakých zdrojů se má řídit. Praktická kostra může obsahovat cíl, roli, kontext, pravidla, postup práce a formát výstupu. U složitějšího úkolu pomohou také příklady správných vstupů a výstupů.
System prompt ale nemá být skladiště všeho, co by se jednou mohlo hodit. Příliš mnoho instrukcí zvyšuje cenu zpracování, spotřebovává kontext a může vytvářet rozpory. Když jedno pravidlo požaduje stručnost a jiné úplný rozbor všech možností, model musí konflikt nějak vyřešit. Lepší je několik jasných priorit než desítky vágních zásad. U opakované práce se vyplatí sledovat reálné výsledky, prompt postupně upravovat a testovat ho na běžných i hraničních případech.
System prompt v praxi:
U firemního AI chatbotu může system prompt určit, že odpovídá pouze z dodané znalostní báze, nevymýšlí si informace o cenách a při nejistotě předá dotaz člověku. Dotaz „Kolik stojí doprava?“ je potom uživatelský prompt. Pravidla, podle kterých chatbot odpověď sestaví, jsou v system promptu.
U nástroje pro zpracování faktur může systémová instrukce požadovat výstup jako JSON s částkou, měnou, datem splatnosti a identifikací dodavatele. U obsahového asistenta zase určuje jazyk, cílového čtenáře, zakázané fráze a redakční styl. U programovacího asistenta může vymezit technologický stack, pravidla bezpečnosti a povinnost spustit testy před odevzdáním změny.
System prompty jsou důležité také pro AI agenty. Agent totiž nejen píše odpověď, ale může plánovat kroky a používat nástroje. Jeho systémové instrukce proto typicky popisují dostupné nástroje, podmínky jejich použití, práci s chybami a akce, které vyžadují souhlas člověka. Čím větší má systém oprávnění, tím důležitější je přesné vymezení hranic a samostatné technické zabezpečení.
Proč je system prompt důležitý:
Bez systémových instrukcí musí uživatel pokaždé znovu popsat, co očekává. Výsledky pak více kolísají a aplikace se hůře udržuje. System prompt oddělí produktová pravidla od jednotlivých dotazů, takže lze měnit chování asistenta na jednom místě. To je užitečné pro zákaznickou podporu, interní vyhledávání, analýzu dokumentů, tvorbu obsahu i automatizované workflow.
Současně není system prompt zárukou, že model vždy poslechne. Jazykové modely pracují pravděpodobnostně, mohou instrukci špatně vyložit a mohou být vystavené prompt injection, tedy škodlivému pokynu vloženému do uživatelského vstupu nebo načteného dokumentu. System prompt proto není náhradou za kontrolu oprávnění, validaci vstupů a výstupů, filtrování dat ani schvalovací kroky. Citlivé údaje, hesla a API klíče do něj nepatří. Uživatel je nemusí běžně vidět, ale nelze spoléhat na to, že zůstanou navždy skryté.
Časté otázky:
Jaký je rozdíl mezi system promptem a běžným promptem?
System prompt nastavuje dlouhodobější roli, pravidla a kontext modelu. Běžný uživatelský prompt obsahuje konkrétní dotaz nebo úkol, například „Shrň tento dokument do pěti bodů“. Obě části model zpracuje společně, ale systémové instrukce mají v podporovaných rozhraních vyšší prioritu.
Vidí uživatel system prompt?
Záleží na aplikaci. V běžném chatovacím rozhraní ho uživatel často přímo nevidí, zatímco vývojář ho nastavuje v aplikaci nebo přes API. Skrytý ale neznamená bezpečně utajený. Model může část instrukcí nepřímo odhalit a útočník se je může pokusit získat, proto v nich nemají být secrets ani osobní údaje.
Může system prompt zabránit prompt injection?
Může modelu popsat, jak zacházet s nedůvěryhodným obsahem, ale sám o sobě útoku spolehlivě nezabrání. Bezpečná aplikace kombinuje instrukce s omezenými oprávněními, oddělením dat od pokynů, kontrolou nástrojů, validací výstupů a lidským schválením rizikových akcí.
Jak dlouhý má system prompt být?
Tak krátký, jak dovoluje spolehlivé splnění úkolu. Jednoduchému asistentovi mohou stačit jednotky vět, složitý agent potřebuje podrobnější pravidla a příklady. Každá část by ale měla mít jasný účel. Pokud její odstranění nemění chování nebo měřitelné výsledky, pravděpodobně v promptu překáží.