Summary

A Chinese-language deep-dive into Karpathy’s autoresearch project, which reached 60,000 GitHub stars within days of release. The article explains the project’s architecture (three files: prepare.py, train.py, program.md), its ratchet-style optimization loop (keep improvements, revert regressions), and how it differs fundamentally from hyperparameter tuners. The author frames autoresearch as the beginning of “Agentic Engineering” — where engineers shift from writing code to orchestrating agents and acting as strategists.

Karpathy 的 autoresearch 專案深度解析。核心:AI 代理接管迭代實驗的執行環節,睡一覺跑完 100 個實驗,以「棘輪式」優化(只保留進步、回滾退步)自主推進模型改進。這不是超參數調優工具,而是開放式代碼修改——搜索空間由 LLM 的想象力決定。

Key Points

  • 三文件極簡架構prepare.py(資料基礎設施,運行一次)、train.py(代理唯一可修改的實驗沙盒)、program.md(人類與代理的自然語言介面,定義研究目標與工作流程)
  • 棘輪式優化循環:提出假設 → 修改 train.py → git commit → 5 分鐘訓練 → 評估 val_bpb → 改進則保留/退步則 git revert → 循環。速度約每小時 12 次實驗,一夜 ~100 次迭代
  • Git 作為記憶系統:每次實驗是一個 commit,代理從分支歷史學習哪些策略有效、哪些已失敗,避免重複嘗試
  • 本質區別於超參數調優:傳統工具(Optuna、Ray Tune)搜索空間由人類預先定義;autoresearch 代理可修改任意程式碼,搜索空間只受 LLM 想象力限制。可重新設計注意力機制、實驗不同優化器、修改歸一化位置等
  • 社區 fork 生態:autoresearch-mlx(移植到 Apple MLX,M1 Pro 可運行)、autoresearch-at-home(SETI@home 式多代理協作)、autoresearch-anything(泛化到任何可度量指標:提示詞優化、SQL 調優、A/B 測試)
  • Agentic Engineering 新範式:工程師角色從執行者(寫 99% 的代碼)轉變為戰略制定者(定義目標、編排代理、監督結果)

Insights

「約束帶來聚焦」是 autoresearch 設計的核心哲學:代理只能修改 train.py,但 train.py 本身足夠完整——這個設計避免了代理在無關緊要的地方浪費 token,同時保留了足夠的自由度。這個原則對任何代理系統的設計都有參考價值:清晰的邊界比廣泛的許可權更能提升代理效率。

val_bpb(validation bits per byte)作為評估指標的選擇也值得注意:它與詞彙表大小無關,讓不同模型架構(包括代理可能發明的新架構)的實驗結果可以直接比較。好的評估指標是自動化研究的前提——這也是為什麼 Claudini(白盒紅隊測試)成功而許多其他領域的 autoresearch 嘗試更困難。

Connections

Raw Excerpt

“AI 代理接管了迭代實驗的執行環節,持續自主優化模型。你負責提出問題和定義目標,代理負責執行和迭代。”