Harness engineering: co to je a jak funguje
Srozumitelný průvodce tím, co jsou harnessy AI a jak harness engineering ovlivňuje, co AI agenti dokážou.

Co znamená harness engineering
Harness engineering je práce na vytváření harnessu nástroje AI, tedy všech částí nástroje kromě samotného modelu AI.
Model je systém AI natrénovaný na velkém množství textu, aby dokázal číst a psát v přirozeném jazyce. Příkladem modelů AI jsou GPT od společnosti OpenAI, Claude od společnosti Anthropic nebo Gemini od společnosti Google.
Model sám o sobě dokáže pouze přijímat text (někdy i obrázky nebo zvuk) a odpovídat textem. Nepamatuje si předchozí konverzace, nedokáže vyhledat aktuální informace ani spustit kód. Proto potřebuje harness, který řídí, jaké informace model dostane, které aplikace může používat, co smí dělat a jak se jeho práce kontroluje.
I obyčejný chatovací asistent potřebuje harness. Model každou výměnu zapomene, jakmile odpoví, a proto harness vede záznam konverzace. Když se někdo zeptá na Paříž a pak se doptá: „kolik má obyvatel?“, harness pošle modelu obě otázky společně. Díky tomu model ví, že se otázka týká Paříže.
Harness engineering je jedním z důvodů, proč mohou dva nástroje postavené na stejném modelu fungovat tak rozdílně. Například v jednom nezávislém testu výzkumníci ponechali stejný model (GPT5) a změnili pouze harness; skóre modelu v programátorském testu se přitom změnilo až o 11 %.
Vývojáři modelů AI, jako jsou společnosti Anthropic a OpenAI, vytvářejí harnessy pro své vlastní produkty AI, například Claude Code a Codex. Firmy vyvíjející produkty AI zase navrhují harnessy pro podkladové modely, které si zvolí. Část harnessu ovlivňují i lidé, kteří nástroje AI používají. Mnoho nástrojů jim umožňuje přidat trvalé pokyny, propojit aplikace a zvolit, které akce vyžadují jejich schválení, než nástroj pokračuje.
Harness engineering pro agenty AI
Harness má každý nástroj AI, ale harness engineering je obzvlášť důležitý při práci s agenty AI. Agenti samostatně zvládají vícekrokové úkoly, například průzkum konkurence a zapsání zjištění do tabulky, a harness řídí každý krok. Pokud tedy harness udělá chybu, třeba načte loňské ceny, ovlivní to i všechny další kroky.
Většina harnessů pro agenty má šest hlavních částí:
1. Agentní smyčka
Agentní smyčka je kód v harnessu, který posouvá úkol krok za krokem vpřed.
Model AI rozhodne o dalším kroku potřebném k dokončení úkolu a napíše volání nástroje: krátký požadavek, který určuje nástroj v harnessu, například vyhledávání na webu, a co má tento nástroj udělat.
Harness požadavek zachytí, spustí vyhledávání a přidá výsledky k informacím, které model vidí. Model je přečte a rozhodne, co udělat dál.
2. Správa kontextu
Model získává obecné znalosti během trénování, ty však končí datem, kdy trénování skončilo. Neobsahují nic specifického pro aktuální úkol, například soubory firmy, dnešní zprávy nebo to, co zaznělo dříve v konverzaci.
Pro všechny tyto informace je model odkázán na své kontextové okno: text, který mu harness předá před každou odpovědí, například pokyny, dotaz, dosavadní konverzaci a výsledky vyhledávání.
Okno pojme jen pevně dané množství textu. A ještě než se zaplní, modely někdy přehlédnou informace ukryté uprostřed dlouhých vstupů.
Harness proto zajišťuje správu kontextu a vybírá jen ty informace, které jednotlivé kroky potřebují. Pokud je například úkolem porovnat ceny pěti konkurentů, harness může zahrnout ceníkovou stránku každé firmy místo celého jejího webu. U dlouhých úkolů může harness také nahradit podrobný záznam předchozích kroků krátkým shrnutím, takže model má přehled o tom, co už udělal, aniž by tato historie zaplnila okno.
3. Nástroje
Nástroje jsou kód, který provádí akce, o které model požádá. Každý nástroj obstarává jeden druh akce, například vyhledávání na webu, otevření a přečtení webové stránky, spuštění kódu nebo úpravu souboru. Když model napíše volání nástroje, harness ho předá správnému nástroji a vrátí výsledek.
Mnoho harnessů obsahuje také konektory, tedy nástroje, které agenta propojí s konkrétní aplikací, například s e-mailem, kalendářem nebo sdíleným diskem, a to pomocí přístupu, který mu člověk udělil. Díky konektoru kalendáře může agent například zkontrolovat, kdy má někdo čas, a teprve pak navrhnout termín schůzky.
4. Paměť
Paměť tvoří uložené informace, které se přenášejí z jedné relace do další. Harness si během relace ukládá krátké poznámky, například o preferencích daného člověka nebo o tom, v jaké fázi je projekt. Na začátku další relace harness tyto poznámky přidá do kontextového okna, takže je model přečte dřív než nový dotaz. Díky tomu může agent například navázat na týdenní report tam, kde skončil, místo aby začínal znovu od začátku.
5. Oprávnění
Oprávnění jsou pravidla určující, k čemu má agent přístup a co smí dělat. Pravidla přístupu stanovují, které soubory, aplikace nebo weby může otevřít. Pravidla schvalování určují, které akce musí počkat na souhlas člověka, například odeslání zprávy nebo nákup.
Část těchto pravidel nastavuje v kódu harnessu společnost, která agenta vytváří. Administrátoři organizace pak mohou přidat vlastní pravidla a jednotliví uživatelé si mohou zvolit například to, které účty propojí.
6. Ověřování
Ověřování je kód, který kontroluje práci agenta dřív, než se dostane k člověku. Používá dva druhy kontrol:
- Pevná pravidla, tedy konkrétní testy, které pokaždé projdou nebo selžou stejným způsobem, například ověření, že se každý údaj v reportu objevuje v dokumentu, který agent skutečně přečetl.
- Kontrola jiným modelem AI, který práci přečte a posoudí. Dokáže odhalit problémy, které se těžko převádějí do pravidel, například shrnutí, v němž chybí důležitý bod.
Žádná jednotlivá kontrola neodhalí všechno, a proto harnessy obvykle kombinují oba druhy. Když kontrola najde problém, harness přidá jeho popis do kontextového okna modelu a pošle úkol zpět do agentní smyčky. Model problém opraví a zkusí to znovu, takže se mnoho chyb opraví dřív, než výsledek uvidí uživatel.
Příklady harness engineeringu
Příprava na schůzku s klientem
Úkol: Account manažer požádá agenta, aby připravil podklady na zítřejší schůzku s klientem, včetně otevřených problémů a návrhu programu.
Co dělá harness:
- Agent pomocí e-mailového konektoru vyhledá v manažerově doručené poště korespondenci s klientem.
- Oprávnění mu umožňují e-maily číst, ale žádné neodesílat.
- Správa kontextu předá modelu jen korespondenci s tímto klientem za poslední tři měsíce, ne celou doručenou poštu.
- Agentní smyčka provede několik kol vyhledávání a čtení a model svá zjištění seskupí do otevřených problémů.
- Ověřování pak zkontroluje, že každý problém v podkladech odkazuje na skutečný e-mail.
Možný výsledek: Manažer dostane jednostránkové podklady, v nichž lze každý bod dohledat až ke zdrojovému e-mailu.
Aktualizace měsíčního reportu prodejů
Úkol: Vedoucí provozu požádá agenta, aby aktualizoval měsíční report prodejů o čísla za tento měsíc.
Co dělá harness:
- Paměť načte poznámky z relace z minulého měsíce, včetně formátu reportu a požadavku vedoucího zaokrouhlovat údaje na celé tisíce.
- Souborový nástroj otevře tabulku prodejů na sdíleném disku týmu.
- Oprávnění umožňují agentovi upravovat koncept reportu, ale ne zdrojovou tabulku, takže původní čísla nelze omylem změnit.
- Ověřování zkontroluje, že součty v reportu odpovídají tabulce.
Možný výsledek: Report přijde ve stejném formátu jako minulý měsíc, aniž by ho uživatel musel znovu vysvětlovat.
Třídění sdílené doručené pošty
Úkol: Tým podpory požádá agenta, aby roztřídil ranní příchozí požadavky podle tématu a připravil koncepty odpovědí na ty běžné.
Co dělá harness:
- Agentní smyčka prochází doručenou poštu zprávu po zprávě.
- U každé zprávy model zvolí štítek tématu a harness ho přiřadí prostřednictvím e-mailového konektoru.
- Na začátku úkolu harness přidá do kontextového okna schválené šablony odpovědí týmu jako vodítko, aby model každý koncept založil na některé z nich.
- Pravidlo schvalování ponechá každou odpověď jako koncept, dokud ji někdo z týmu nezkontroluje a neodešle.
Možný výsledek: Tým začíná den s roztříděnými požadavky a odpověďmi připravenými ke kontrole.
Oprava chyby na webu
Úkol: Vývojář požádá programovacího agenta, aby opravil chybu, kvůli které nefunguje tlačítko pro dokončení objednávky.
Co dělá harness:
- Agent pracuje v sandboxu, tedy izolované kopii kódu, kde jeho změny nemohou ovlivnit živý web.
- Nástroj pro práci s kódem umožňuje modelu číst a upravovat soubory.
- Po každé změně spustí ověřování automatizované testy projektu.
- Všechna selhání se vracejí modelu jako nové informace.
Možný výsledek: Agent svou opravu dál upravuje, dokud testy neprojdou. Vývojář pak změnu zkontroluje, než se nasadí do provozu.
Harness engineering vs. prompt engineering vs. context engineering
Prompt engineering je práce na vytváření a optimalizaci jednoho dotazu. Context engineering je práce na správě všeho, co model vidí. Harness engineering je proces návrhu a zlepšování celého systému, v němž model pracuje.
Pojem | Kdo se tomu obvykle věnuje | Příklad z úkolu průzkumu konkurence |
Prompt engineering | Kdokoli, kdo píše dotaz | Požádat o „jeden řádek pro každého konkurenta, jeden sloupec pro každou cenovou úroveň“ |
Context engineering | Lidé, kteří vytvářejí harness, a také uživatelé, kteří přikládají soubory nebo šablony | Předat modelu ceníkovou stránku každého konkurenta a tabulkovou šablonu týmu |
Harness engineering | Společnosti, které vytvářejí produkty AI, a také týmy a uživatelé, kteří volí nastavení a preference a nahrávají informace | Rozhodnout, které nástroje může agent používat, které akce vyžadují schválení a jak se jeho práce kontroluje |
Jak mohou uživatelé ovlivnit harness AI
Většinu harnessu agenta vytváří společnost, která agenta vyvíjí, ale mnoho produktů AI umožňuje uživatelům upravit jeho část pomocí nastavení, jako jsou vlastní pokyny, propojené aplikace a schvalování.
Uživatelé mohou harness agenta ovlivnit, a zlepšit tak jeho výsledky, čtyřmi způsoby:
1. Trvalé pokyny
Trvalé pokyny jsou poznámky, které člověk napíše jednou, aby je harness mohl na začátku každého úkolu přidat do kontextového okna. Vyplatí se je nastavit pro cokoli, co by člověk jinak opakoval v jednom dotazu za druhým: kdo je a co dělá, jak chce mít texty napsané nebo jaká pravidla platí pro opakovanou práci, jako je měsíční report pro klienta.
Mnoho produktů AI nabízí trvalé pokyny na dvou úrovních. Pokyny pro celý účet se hodí pro věci, které platí pro veškerou práci, například preference pravopisu. Projektové pokyny se hodí pro jednoho klienta nebo pracovní postup, takže pokyny pro jeden z nich se nepřenášejí do jiného.
Trvalé pokyny fungují stejně v chatovacích asistentech i u agentů, ale agenti na nich závisí víc. V chatu může člověk AI opravit po každé odpovědi. Agent však může udělat mnoho kroků, než jeho práci někdo uvidí, takže pokyny zadané předem jsou jedním z mála způsobů, jak ho průběžně usměrňovat.
Jak psát účinné trvalé pokyny
- Začněte krátkým pokynem, například: „Jsem marketingový manažer v softwarové firmě. Piš srozumitelnou angličtinou, shrnutí drž pod 200 slov a používej americký pravopis.“
- Doplňujte je, když AI udělá chybu. Pokud AI stále zaokrouhluje údaje, které tým potřebuje přesné, přidejte o tom řádek.
- Formulujte pokyny konkrétně: „Uváděj přesné údaje, nikdy je nezaokrouhluj“ funguje lépe než „Buď přesný“.
- Seznam udržujte krátký a řádky odstraňte, jakmile přestanou být užitečné, protože každý řádek zabírá místo v kontextovém okně.
2. Propojené aplikace
Propojené aplikace spojují produkt AI s nástroji, které člověk už používá, například s e-mailem, kalendářem nebo sdíleným diskem. Jakmile je aplikace propojená, AI může pracovat s vlastními informacemi daného člověka, a ne jen s tím, co vloží do chatu.
Propojení se vyplatí nastavit, když úkol závisí na informacích uložených v těchto aplikacích, například při přípravě podkladů na schůzku z e-mailové korespondence nebo při shrnování dokumentů na sdíleném disku.
Jak bezpečně propojovat aplikace
- Propojujte jen aplikace, které úkol potřebuje, protože každé propojení přináší další příležitost k chybám.
- Pokud je k dispozici, zvolte přístup jen pro čtení. Například agent, který připravuje podklady na schůzky, potřebuje e-maily číst, ne odesílat.
- Kde to produkt umožňuje, nastavujte propojení podle projektů. Například v Perplexity si lidé mohou zvolit, které konektory jednotlivé projekty používají.
- Nezapomeňte odpojit aplikace, které už nepoužíváte.
3. Nastavení schvalování
Nastavení schvalování určuje, které akce musí počkat na souhlas člověka, než AI pokračuje. Některá schvalování jsou do produktu zabudovaná a některé produkty umožňují lidem zvolit, které další akce schválení vyžadují.
Jak nastavit pravidla schvalování
- Vyžadujte schválení u akcí, které nelze vrátit zpět, jako je odeslání zprávy, nákup nebo smazání souboru.
- Seznam schvalování udržujte krátký. Pokud agent žádá o odsouhlasení každého drobného kroku, lidé začnou schvalovat, aniž by si cokoli přečetli.
4. Standardy a kontroly
Většina AI produktů má některé standardy zabudované. Perplexity například ke svým odpovědím přidává citace, aby bylo možné každé tvrzení ověřit. Standardy nastavené uživatelem doplňují to, co produkt sám vědět nemůže, například formát reportů, kterému tým dává přednost.
Jak nastavit standardy pro práci AI
- Poskytněte šablonu pro opakující se práci, aby AI měla pevnou strukturu, kterou stačí vyplnit.
- Sdílejte příklad dřívější práce, se kterou byl tým spokojený, aby AI mohla napodobit její tón a míru detailu.
- Ke každému číselnému údaji si vyžádejte odkaz na zdroj.
- První výsledky pečlivě kontrolujte a opakující se nedostatky převeďte na nový trvalý pokyn.
Jak Perplexity přistupuje k harnessům agentů
Perplexity Computer běží na harnessu nezávislém na modelu, který spojuje více než 20 pokročilých modelů do jednoho systému. Každý úkol rozdělí na dílčí úkoly, předá je subagentům (samostatným agentům, z nichž každý převezme jednu část) a každou část práce nasměruje k modelu, který se pro ni hodí.
Jak nastavit pokyny, soubory a konektory, se dozvíte v průvodci projekty v Perplexity.
Časté dotazy
Kdo je harness engineer?
Harness engineer navrhuje a udržuje systém, díky kterému může model AI spolehlivě pracovat. Může to znamenat přidání nového nástroje, který bude agent používat, dohledání příčiny, proč agent opakovaně dělá stejnou chybu, nebo zpřísnění kontrol, které provádí před dokončením úkolu. Nejde o ustálený název pracovní pozice, i když se to může změnit. Tuto práci obvykle vykonávají softwaroví inženýři v AI společnostech nebo v týmech, které vyvíjejí agenty. Ve výrobě se stejný anglický název používá pro člověka, který navrhuje kabelové svazky (wire harnesses), tedy svazky kabelů uvnitř aut a strojů.
Co je harness agenta?
Harnessem agenta se obvykle myslí všechno v AI agentovi kromě samotného modelu. Patří sem kód, který spouští smyčku agenta, spravuje kontext, provádí volání nástrojů, ukládá paměť, vynucuje oprávnění a kontroluje práci agenta dřív, než se dostane k člověku.
Má každý nástroj AI harness?
Ano. I základní chatovací asistent se spoléhá na harness, který sleduje průběh konverzace, protože model si sám dřívější zprávy nepamatuje.
Vývojáři mohou model používat také tak, že mu posílají požadavky ze svého vlastního softwaru přes API (rozhraní, které jednomu programu umožňuje posílat požadavky jinému). V takovém případě práci harnessu odvádí vlastní kód vývojáře.
Budou díky lepším modelům harnessy zbytečné?
Lepší modely možná budou potřebovat méně podrobného vedení krok za krokem, takže část toho, co harnessy dělají dnes, může ubýt. Samotný model ale jen převádí text na text. Nemá připojení k internetu ani přístup k jiným aplikacím. Přístup k souborům, provádění akcí i vynucování pravidel schvalování se odehrávají v softwaru kolem modelu, takže tato práce nejspíš zůstane na harnessu bez ohledu na to, jak schopné modely budou.