Karpathyのautoresearch、AI agentがPyTorch実験を反復する研究ループ

Andrew Karpathy の autoresearch は、大きな発想をかなり小さな実験系に落とし込んだ repository だ。AI agent にコンパクトな PyTorch training 環境を与え、コードを変更させ、短い学習 run を回し、結果を測定し、改善があればその変更を残してまた繰り返す。狙いは単なる training automation ではなく、強く制約された agent loop が実際に研究の前進を生めるかを見ることにある。

構成要素は意図的に少ない。READMEによると、prepare.py は data preparation と runtime utility、train.py は agent が実際に編集する単一ファイル、program.md は人間が書く高レベルの研究指示書だ。baseline code は nanochat を簡略化した single-GPU 実装で、評価指標には val_bpb を使う。これにより、agent が architecture や vocabulary 周りを変えても run 同士を比較しやすい。

各実験は固定の 5 分 wall-clock budget で実行される。

agent が触るのは基本的に train.py だけで、diff review がしやすい。

標準環境は Python 3.10+、uv、single NVIDIA GPU を前提にしている。

README では macOS、MLX、Windows 向け community fork も案内している。

このプロジェクトの面白さは benchmark そのものより workflow 設計にある。Karpathy は研究プロセス自体をコード化しようとしている。人間は program.md に研究組織のルールを書く一方、agent は optimizer、model structure、batch size などの局所探索を担当する。これは「実験を書いて、待って、ログを読んで、また直す」という従来ループよりずっと短い。

LocalLLaMA が注目した理由もそこにある。autoresearch は、大規模な orchestration や重い MLOps を使わずに autonomous research を試せる最小の足場を提供する。同時に限界もすぐ見える。hardware 制約は残るし、search space に guardrail がなければ agent は簡単に無駄な方向へ進む。さらに、人間が書く instruction の質そのものがシステム性能の一部になる。それでもこの repo は、agent が coding assistant から experiment iteration へ踏み出す様子を観察するうえで非常に良い最小例になっている。

コミュニティ投稿は LocalLLaMA、元プロジェクトは GitHub repository で確認できる。