Hlavní navigace

Meta-Harness: bezpečnější sebezdokonalující podnikové AI workflow

Systematický meta-harness pomáhá podnikovým týmům bezpečně zlepšovat workflow agentů v dlouhodobých programovacích úlohách.

Shrnutí pro vedení

  • Dosavadní systémy autonomního zlepšování dosáhly výborných výsledků v programovacích úlohách. Stále však není jasné, zda dokážou zlepšovat i komplexní dlouhodobá AI workflow podobná skutečným podnikovým nasazením.

  • Náš výzkum Meta-Harness využívá autonomní sebezdokonalování u workflow agentního vyhledávání, hloubkového výzkumu a signálového zpravodajství a zároveň přidává podnikové požadavky, jako jsou vyhodnocení na oddělených datech, auditovatelnost, kontrola rozpočtu a schválení člověkem.

  • Meta-Harness výrazně zlepšil výkon ve třech reprezentativních úlohách. U Signal Engine dosáhl 84% zlepšení výkonu v odděleném testu a u agentního multimodálního vyhledávání zvýšil přesnost při 16× rychlejším běhu.

  • Na rozdíl od většiny předchozích přístupů měří Meta-Harness úspěšnost všude, kde je to možné, na oddělených datových sadách. Ověřuje tak, zda se zlepšení zobecňují i mimo data použitá při optimalizaci.

  • Výsledky naznačují, že autonomní zlepšování workflow lze rozšířit z programovacích benchmarků na reálné podnikové AI systémy. Nabízí tak praktickou cestu k průběžnému zdokonalování AI aplikací.

Nedávný výzkum autonomního AI výzkumu, včetně článku Meta-Harness, frameworku CORAL a projektu karpathy/autoresearch, ukázal, že programovací agenti mohou podle zadané hodnoticí metriky iterativně zlepšovat řešení. Otevřenou otázkou zůstává, zda lze tyto metody použít i na dlouhodobá AI workflow, například agentní multimodální vyhledávání, v němž agent při hledání odpovědi opakovaně prochází multimodální oborové korpusy, nebo složité datové pipeline vyžadující mnoho navazujících kroků, volání nástrojů a rozhodnutí při řešení výjimek. Zásadnější otázkou je, zda zlepšení přetrvají i na datech, která optimalizátor nikdy neviděl.

Náš výzkum a vývoj Meta-Harness je odpovědí na tuto otázku. Přebírá myšlenky z nedávného výzkumu a přizpůsobuje je podnikovým potřebám: vyhodnocení na oddělených datech, auditním záznamům, nákladovým stropům a jasnému předání lidskému kontrolorovi před jakýmkoli nasazením.

Otestovali jsme jej na třech dlouhodobých úlohách vycházejících ze skutečné práce pro klienty. Signal Engine sleduje živý proud příspěvků na síti X o trhu s AI a vytváří strukturované zprávy o trendech s kvalitně doloženými zdroji. Agentní multimodální vyhledávání analyzuje dotazy kombinující text a obrázky a vrací nejrelevantnější stránky dokumentů. Hloubkový výzkum koordinuje několik agentů, kteří prohledávají web, ověřují zdroje a píší rozsáhlé výzkumné zprávy.

Výsledky v kostce

  • Signal Engine: souhrnné skóre v odděleném testu 0,456 → 0,841, tedy relativní nárůst o 84 %. CORAL i karpathy/autoresearch zůstaly se stejným rozpočtem pod hodnotou 0,50.

  • Agentní multimodální vyhledávání: NDCG@10 v odděleném testu 0,705 → 0,744, přičemž reálná doba jednoho vyhodnocení klesla z 869 s na 54 s. Jde o 16násobné zrychlení při vyšší přesnosti.

  • Hloubkový výzkum: souhrnné skóre kvality zpráv 0,449 → 0,802 u 10 referenčních otázek, zatímco základní metody dosáhly přibližně 0,52. Tato úloha neměla oddělenou testovací sadu, proto výsledek považujeme pouze za výkon na trénovacích datech.

  • Efektivita hledání: díky prediktivnímu přeřazování hypotéz dosáhl Signal Engine 91 % nejlepšího skóre referenčního běhu za 3 iterace namísto 20, a to se stejným rozpočtem na vyhodnocení.

Většina systémů autonomního výzkumu optimalizuje a vyhodnocuje na stejné datové sadě, takže nelze určit, zda se výsledek zobecňuje. U Signal Engine a agentního multimodálního vyhledávání vynucujeme přísné rozdělení: trénovací sadu, na níž mohou kandidáti získávat skóre, vývojovou sadu pro základní kontroly a oddělenou testovací sadu, kterou optimalizátor nikdy nevidí. Každý uvedený výsledek pochází z jediné konkrétní verze kódu ohodnocené na všech datových oddílech. Nikdy tedy nekombinujeme nejlepší trénovací skóre jednoho kandidáta s nejlepším testovacím skóre jiného.

Jak to funguje

V každém kole harness vygeneruje sadu strukturovaných hypotéz, jak změnit kód. Každá hypotéza uvádí mechanismus, který chce změnit, předchozí verzi, na níž staví, a typ selhání, na který se zaměřuje. Než se prostředky vynaloží na nákladná vyhodnocení, sada projde filtrem založeným na pořadí. Postupující hypotézy převezmou paralelně pracující agenti. Sdílejí společnou znalostní bázi, ale kód upravují ve zcela oddělených pracovních prostorech, takže se každý kandidát hodnotí spravedlivě a nezávisle. Na konci kola řídicí modul vybere jednoho vítěze: kandidáta s nejvyšším skóre, který zároveň prošel všemi kontrolami ve viditelných datových oddílech. Tento vítěz se stane výchozím bodem pro další kolo. Každý pokus zapíše do úložiště důkazů pouze pro přidávání pevně danou sadu: záplatu kódu, skóre jednotlivých datových oddílů, protokol událostí a čtyři krátké analýzy vytvořené LLM, které se věnují průběhu, chybám, nákladům a reflexi. Navrhovatel v dalším kole tuto historii znovu načte. Harness tak zužitkuje získané poznatky a neopakuje stejné slepé uličky.

Schéma workflow Meta-Harness znázorňující vstupy, vyhodnocení výchozí verze, hledání hypotéz, paralelní týmy agentů, pracovní prostor pro vyhodnocování, výstupy kontrol, úložiště důkazů a řízení bezpečnosti a nákladů.

Bezpečný průběh smyčky zajišťují tři ochranné mechanismy. Zásady rozsahu omezují soubory, do nichž smí kandidát zasahovat, a všechny ostatní změny vracejí zpět. Rozpočty tokenů a času ukončí běh po překročení stropu výdajů, zatímco omezení souběžnosti udržuje harness v mezích limitů požadavků modelu a GPU. Harness navíc nikdy nic sám nenasazuje. Vytvoří seřazeného, plně zdokumentovaného kandidáta. Lidský vývojář poté zkontroluje rozdíly a rozhodne, zda se má nasadit do produkce.

Co se děje na pozadí

Každé kolo výše popsané smyčky stojí v místním prostředí na pěti základních technických prvcích.

  • Oddělení pracovních prostorů. Pro každého kandidáta jeden pracovní strom gitu. Větve sdílejí databázi objektů, ale nikdy své soubory. Kandidáti tak mohou běžet paralelně s téměř neměnnými nároky na disk a lze je snadno porovnat s aktuálně nejlepší verzí.

  • Sandbox pro spouštění. Konfigurace nabízí dva režimy: nativní podproces pro rychlé iterace, nebo zcela izolované běhové prostředí. Korpusy se připojují jen pro čtení a dočasný adresář každého pokusu se po ohodnocení odstraní. Pokus proto nemůže změnit datovou sadu ani přenést svůj stav do následujícího pokusu.

  • Zásady rozsahu. Seznam povolených cest definovaný v konfiguraci experimentu. Všechny změny mimo tento seznam se před ohodnocením pokusu vrátí zpět a pokus se označí příznakem. Rozdíly, které kontrolor uvidí, tak zaručeně zůstanou v deklarovaném rozsahu.

  • Vynucování rozpočtu. Tři vrstvy: limit tokenů a času na pokus, souhrnný strop na celý běh a omezení souběžnosti. Společně udržují výdaje předvídatelné a zajišťují, aby harness nepřekračoval limity požadavků modelu ani infrastruktury.

  • Úložiště důkazů. Soubor JSONL pouze pro přidávání, který obsahuje záplatu kódu, skóre jednotlivých datových oddílů, protokol událostí a čtyři analýzy vytvořené LLM. Materializované pohledy (žebříček, nejlepší verze a index selhání) se obnovují po každém pokusu. Další kola tak mohou navázat na dosavadní historii a každý běh přitom zůstává reprodukovatelný do posledního bajtu.

Žádný z těchto prvků není volitelný. Smyslem harnessu je dát kontrolorovi na konci běhu něco, co skutečně může schválit: vítězného kandidáta, jasně omezené rozdíly, úplný záznam všech pokusů a známé náklady. Odstraníte-li kterýkoli z pěti prvků, jedna z těchto záruk zmizí.

Prediktivní přeřazování hypotéz

Všechny tři experimenty používají stejnou strategii hypotéz. V každé iteraci navrhovatel vytvoří více hypotéz, než dovoluje rozpočet spustit: M = 8 kandidátů při kapacitě odeslání K = 4. Samostatný řadicí LLM pak všech osm seřadí během jediného třicetisekundového volání. Má přitom úplný přehled: aktuální nejlepší skóre a jeho slabé stránky, analýzy selhání z nedávných pokusů a všech osm návrhů vedle sebe. Čtyři nejlepší převezme výkonný modul; každý z nich stojí 15 až 30 minut. Zbývající čtyři se vyřadí dříve, než spotřebují jakékoli prostředky.

Vyhodnocení

Podkladové modely zůstaly po celou dobu beze změny; harness upravoval pouze okolní kód. Signal Engine a hloubkový výzkum běžely na modelu gpt-5.5. Agentní multimodální vyhledávání běželo na otevřeném modelu Qwen3.6-35B-A3B provozovaném lokálně přes vLLM spolu s obrazovým retrieverem ColQwen3-4B. Tuto kombinaci jsme zvolili kvůli předvídatelným nákladům při místním provozu.

Následující graf ukazuje vývoj skóre našich tří hlavních úloh. „Výchozí verze“ je počáteční kód napsaný lidským vývojářem. „Meta-Harness“ je nejlepší verze, kterou Meta-Harness našel. U všech tří úloh pozorujeme zlepšení výkonu v oddělené testovací sadě.

Sloupcový graf porovnávající výkon výchozí verze a Meta-Harness v úlohách Signal Engine, agentního multimodálního vyhledávání a hloubkového výzkumu; Meta-Harness dosahuje lepších výsledků ve všech oddělených testech.

Signal Engine hodnotil LLM posuzovatel podle aktuálnosti, faktické správnosti, podrobnosti a tónu na 150 trénovacích a 150 oddělených testovacích tweetech. Nejlepší verze během běhu zvýšila souhrnné trénovací skóre z 0,431 na 0,756 a skóre v odděleném testu z 0,456 na 0,841. Zlepšení přinesly změny samotného harnessu, nikoli jen úpravy promptů. Úspěšné iterace se naučily filtrovat šum ze sociálních sítí, přidaly kroky pro křížové ověřování faktů a vyžadovaly, aby každý výstup vycházel z výslovných důkazů. Následující schéma znázorňuje proces iterací.

Spojnicový graf trénovacích pokusů Signal Engine znázorňující, jak se průběžně nejlepší skóre a skóre v odděleném testu zlepšují od výchozí hodnoty směrem k cíli během opakovaných průzkumných a zpřesňovacích pokusů.

Historie pokusů ukazuje, jak se tato zlepšení postupně sčítala. Jedna z prvních strukturálních změn zvýšila dosud nejlepší skóre na 0,625; podrobnější práce s důkazy je posunula na 0,679 a zdokonalená smyčka reflexe a hodnoticích kritérií až na 0,819. Přibližně polovina běhů kandidátů dosáhla horších výsledků nebo zcela selhala, žebříček však neovlivnila. Každá větev běžela odděleně, neúspěšné rozdíly se zahodily a selhání se zapsala do úložiště reflexí, aby další navrhovatel neopakoval stejnou slepou uličku.

Nejdůležitější je, že křivka odděleného testu během celého běhu rostla spolu s trénovací křivkou. To naznačuje, že harness zlepšoval workflow, místo aby si pouze zapamatoval trénovací korpus. Skóre v odděleném testu bylo mírně vyšší než trénovací skóre, což považujeme za běžný výběrový šum mezi dvěma malými, vzájemně se nepřekrývajícími datovými oddíly.

Agentní multimodální vyhledávání se měří pomocí NDCG@10 na veřejném datovém oddílu Computer Science sady ViDoRe V3, rozděleném na 20 trénovacích, 10 vývojových a 20 oddělených testovacích dotazů. Harness zvýšil NDCG@10 v odděleném testu z 0,705 na 0,744 a současně zkrátil celkovou reálnou dobu vyhodnocení z 869 sekund na 54 sekund.

Hloubkový výzkum se podle metodiky DeepResearch-Eval hodnotí u 10 referenčních otázek souhrnným skóre věcné kvality a kvality zdrojů, které určuje LLM. Vylepšený kód zvýšil průměr z 0,449 na 0,802. Vítězné změny byly z rozdílů snadno patrné: úvodní plánovací krok, který porovná přístupy ještě před vysláním výzkumných agentů, a závěrečná kontrola zaměřená na oblasti, v nichž zprávy dříve dosahovaly slabých výsledků. Protože je tato sada malá a její vyhodnocení nákladné, nerozdělili jsme ji a výsledek považujeme za výkon na trénovacích datech.

Srovnání s CORAL a karpathy/autoresearch

Sloupcové grafy porovnávající Meta-Harness, CORAL a karpathy/autoresearch podle skóre Signal Engine, agentního multimodálního vyhledávání a hloubkového výzkumu a podle latence vyhodnocení.

Všechny tři metody jsme porovnávali se stejným rozpočtem: na stejných datových sadách a podkladových modelech, se stejným limitem iterací i celkovým počtem vyhodnocení kandidátů. V odděleném testu Signal Engine dosáhl Meta-Harness skóre 0,841, zatímco obě základní metody zůstaly pod 0,50. U agentního multimodálního vyhledávání dosáhl náš tým nejvyššího NDCG@10 v odděleném testu (0,744 oproti 0,700 u CORAL a 0,738 u karpathy) a oficiální vyhodnocení spustil dvanáctkrát až čtrnáctkrát rychleji: za 54 s oproti 786 s a 650 s. U hloubkového výzkumu dosáhl náš tým skóre 0,802, zatímco obě základní metody zůstaly kolem 0,52. Pro celé srovnání platí jedna výhrada: CORAL a karpathy/autoresearch jsme implementovali znovu podle jejich zveřejněných popisů, takže část rozdílu může vycházet z odlišné implementace, nikoli pouze z odlišností metod.

Rozdíl vysvětlují čtyři konstrukční rozhodnutí. Zaprvé náš tým před jakoukoli úpravou kódu vytvoří strukturovanou specifikaci návrhu. Díky tomu upřednostňuje strukturální změny, například nové fáze pipeline, před úpravami promptů. Zadruhé spouští souběžné větve odvozené od společného nejlepšího kandidáta. Zlepšení se tak sčítají rychleji než u nezávislých agentů CORAL nebo striktně sekvenční smyčky karpathy. Zatřetí každý pokus zanechá strukturované artefakty — skóre, protokoly událostí a čtyři analýzy vytvořené LLM — které načte další navrhovatel. Základní metody uchovávají pouze prosté protokoly pokusů. Začtvrté adaptivní řídicí modul po stagnaci směruje navrhovatele k průzkumu a po úspěchu ke zpřesňování. Nad tím funguje prediktivní přeřazování hypotéz, které vyřadí slabé nápady dříve, než spotřebují rozpočet.

Co jsme neprokázali

Křivky oddělených testů dokazují zobecnění v rámci stejné domény, nikoli přenos mezi doménami. Nelze očekávat, že workflow vyladěné pro získávání signálů z trhu s AI obstojí u právních či biomedicínských textů bez opětovného spuštění harnessu. Harness se navíc řídí výhradně cílem definovaným hodnotitelem. Hlučnou trénovací sadu nebo špatně kalibrovaného posuzovatele tedy svědomitě přeučíme. Před rozsáhlejším během doporučujeme alespoň 20 pečlivě vybraných trénovacích položek a samostatnou vývojovou sadu. Největším praktickým omezením jsou náklady. Každé vyhodnocení znovu spustí celou pipeline na všech datových oddílech. Jen vybraný kandidát pro vyhledávání spotřeboval přibližně 2,2 milionu vstupních tokenů a důkladná optimalizace úlohy na modelu třídy gpt-5.5 stojí stovky až nižší tisíce dolarů. Tato čísla navíc pocházejí z jednotlivých běhů, nikoli z opakovaných pokusů. Proto je zveřejňujeme jako technický příspěvek na blogu, a ne jako formální studii.

Závěr

Meta-Harness ukazuje, že autonomní zlepšování kódu lze řídit dostatečně systematicky pro podnikové využití. Základem jsou strukturální hypotézy, prediktivní předběžné filtrování, izolované vyhodnocování, testování na oddělených datech všude, kde to data dovolují, a úplná auditní stopa každé přijaté změny. Vývojovému týmu společně nabízejí předvídatelnou cestu od funkční výchozí pipeline k prokazatelně lepší verzi. Provoznímu vedení pak dávají jednoduchý model: výhody autonomního průzkumu uzavřené v přísném rámci zohledňujícím rozpočet, v němž před každým nasazením rozhoduje člověk.

Autoři

David Huang, Bjorn Jee