====== autoresearch – autonomní ML experiment loop ====== [[https://github.com/karpathy/autoresearch|autoresearch]] je open-source framework od Andreje Karpathyho, který umožňuje AI agentovi autonomně provádět stovky ML experimentů přes noc. Agent opakovaně upravuje trénovací kód, spouští krátké experimenty a měří výsledky – bez zásahu člověka. ===== Jak to funguje ===== Celý cyklus je přímočarý: - Agent si přečte instrukce v ''program.md'' - Navrhne změnu v ''train.py'' – architekturu, hyperparametry, optimizer - Spustí trénink (přesně 5 minut na hodinách) - Změří výsledek (metrika ''val_bpb'') - Pokud je výsledek lepší, změnu ponechá; pokud horší, zahodí - Cyklus se opakuje Za noc tak proběhne přibližně 100 experimentů. Člověk nastaví pravidla hry v ''program.md'', agent dělá experimenty sám. ===== Klíčové soubory ===== **prepare.py** – jednosměrná příprava dat. Stáhne trénovací data a natrénuje BPE tokenizer. Tento soubor člověk ani agent neupravuje. **train.py** – jediný soubor, který agent edituje. Obsahuje architekturu GPT-like modelu, optimizer (Muon + AdamW) a celý trénovací loop. Agent může měnit cokoliv: hloubku modelu, batch size, attention pattern, regularizaci, scheduling. **program.md** – instrukce pro agenta. Tento soubor edituje člověk – zde se nastavuje výzkumný směr, omezení a cíle experimentů. ===== Instalace ===== Potřebuješ NVIDIA GPU (projekt je testovaný na H100) a Python 3.10+. curl -LsSf https://astral.sh/uv/install.sh | sh uv sync uv run prepare.py # stáhne data a tokenizer, jednorázově (~2 minuty) uv run train.py # spustí jeden 5minutový experiment ručně Komunita vytvořila forky i pro macOS, Windows a AMD GPU s upravenými hyperparametry pro menší compute. ===== Metrika: val_bpb ===== Všechny experimenty se porovnávají podle jedné metriky – **validation bits per byte (val_bpb)**. Čím nižší číslo, tím lepší model. Fixní časový rozpočet 5 minut zajistí, že všechny pokusy jsou přímo srovnatelné a výsledek je optimalizovaný pro konkrétní hardware, na kterém experimenty běží. ===== Co obsahuje – a co ne ===== Repo obsahuje: * architekturu malého GPT-like modelu (transformer decoder) * trénovací pipeline s optimizery Muon + AdamW * skript pro přípravu dat a tokenizer Repo **neobsahuje**: * natrénované váhy ani hotový model ke stažení * velký foundation model * nástroje pro fine-tuning open-weight modelů (Llama, Mistral apod.) Při spuštění se model inicializuje s náhodnými vahami a trénuje se od nuly. Pro použití s open-weight modely by bylo potřeba upravit experiment loop a metriku. ===== Typické use cases ===== * Automatické noční ladění malého LLM na konkrétním GPU * Hledání optimálních hyperparametrů (learning rate, batch size, scheduler) * Testování různých architektur (hloubka, šířka, attention pattern) * Sandbox pro pochopení agentic coding nad měřitelným cílem * Prototyp vlastního autonomního experiment loopu ===== Limity ===== * Vyžaduje NVIDIA GPU; standardní repo není připravené na CPU ani AMD * Výsledky jsou vázané na konkrétní hardware – přenositelnost není zaručena * Hrozí přeladění na validační metriku (overfitting na ''val_bpb'') * Agent může generovat slepé nebo nefunkční pokusy, které trénink rozbijí * Není to hotový produkční model ani univerzální AutoML framework * Není vhodné pro ladění hosted API modelů (OpenAI, Claude) – ty nemají přístupný trénovací kód ===== Zdroje ===== * [[https://github.com/karpathy/autoresearch|karpathy/autoresearch – GitHub]] * [[https://venturebeat.com/technology/andrej-karpathys-new-open-source-autoresearch-lets-you-run-hundreds-of-ai|VentureBeat: Andrej Karpathy's new open-source autoresearch]]