Panduan AutoResearch Andrej Karpathy: Mengotomatiskan ML dengan Agen AI
Pelajari bagaimana AutoResearch milik Karpathy menjalankan 100+ eksperimen ML semalaman pada satu GPU. Mencakup arsitektur tiga berkas, ratchet loop, hasil, dan keterbatasan.
AutoResearch karya Andrej Karpathy adalah sebuah alat open-source yang menjalankan eksperimen ML dalam sebuah loop, hanya menyimpan perubahan yang mengalahkan hasil terbaik saat ini. Anda mendeskripsikan arah riset dalam berkas markdown, mengarahkan agen pengodean AI ke repo, lalu tinggalkan. Pagi harinya, Anda memiliki riwayat git berisi peningkatan yang tervalidasi dan log semua yang dicoba agen.
Dirilis pada 7 Maret 2026, proyek ini meraih 21.000+ bintang GitHub dan 8,6 juta tontonan pada pengumuman Karpathy dalam hitungan hari. Artikel ini membahas cara kerja arsitektur tiga berkas, apa yang dilakukan ratchet loop selama menjalankan eksperimen semalaman, hasil yang telah dihasilkan AutoResearch sejauh ini, dan di mana pendekatan ini mencapai batasnya.
Apa itu AutoResearch?
AutoResearch adalah alat Python open-source yang memungkinkan agen AI menjalankan eksperimen ML pada satu GPU tanpa intervensi manusia. Alat ini berulang melalui siklus usul-latih-evaluasi, hanya menyimpan perubahan yang meningkatkan validation loss. Proyek ini dirilis dengan lisensi MIT.
Ini bukan penyelarasan hiperparameter. Alat seperti Optuna atau Ray Tune mencari ruang parameter yang telah ditentukan. AutoResearch memberi kebebasan kepada agen untuk memodifikasi kode apa pun. Ruang pencariannya adalah apa pun yang bisa dipikirkan LLM, dan itu menjadikannya kategori alat yang berbeda dari apa pun yang tersedia saat ini.
AlphaEvolve (Google DeepMind) melangkah lebih jauh dengan pendekatan evolusioner dan model Gemini untuk penemuan algoritme, namun bersifat tertutup dan tidak dapat diakses sebagian besar tim. Agen pengodean serbaguna seperti SWE-Agent, OpenHands, dan Aider bisa menulis kode apa pun, tetapi tidak dibangun untuk siklus eksperimen-evaluasi-simpan/revert yang sebenarnya dibutuhkan riset ML.
AutoResearch bertaruh pada pengetahuan umum LLM untuk mengusulkan eksperimen yang baik, alih-alih membatasi ruang pencarian demi jaminan matematis.
Dari vibe coding ke penasihat riset
Karpathy membingkai ini sebagai progresi alami cara insinyur bekerja dengan AI. Pada Februari 2026, ia mencetuskan istilah "agentic engineering": "Anda tidak menulis kode secara langsung 99% dari waktu. Anda mengorkestrasi agen yang melakukannya dan bertindak sebagai pengawas." AutoResearch melangkah ke tahap berikutnya. Manusia bahkan tidak mengorkestrasi. Mereka mendeskripsikan seperti apa riset yang baik dalam berkas markdown dan pergi.
Progresinya: vibe coding (manusia memandu, AI menulis kode, manusia meninjau) ke agentic engineering (manusia mengorkestrasi agen secara realtime) ke riset yang sepenuhnya mandiri (manusia menetapkan arah, agen berjalan sendiri).
Setiap langkah mengurangi peran manusia dari penulis menjadi sutradara dan, dalam kerangka Karpathy, menjadi penasihat riset.
Dalam unggahan lanjutan, ia menggambarkan langkah berikutnya: "Tujuannya bukan meniru satu mahasiswa PhD, melainkan meniru komunitas riset mereka", merujuk pada kolaborasi agen terdistribusi ala SETI@home.
Bagaimana sistem mewujudkan visi itu bergantung pada tiga berkas.
Arsitektur Tiga Berkas AutoResearch
Desain AutoResearch bermuara pada kontrak antara tiga berkas, masing-masing dengan aturan ketat tentang siapa yang boleh menyentuhnya.
prepare.py
prepare.py menangani persiapan data dan evaluasi. Berkas ini membangun tokenizer BPE (Byte Pair Encoding) dengan kosakata 8.192 token, memproses korpus pelatihan, dan mendefinisikan metrik validasi: val_bpb (validation bits-per-byte).
Berkas ini tidak dapat diubah: baik manusia maupun agen tidak memodifikasinya, yang menjamin setiap eksperimen diukur dengan tolok ukur yang sama.
train.py
train.py adalah sandbox milik agen: 630 baris yang memuat arsitektur model GPT, optimizer Muon+AdamW, dan loop pelatihan lengkap. Agen boleh menulis ulang apa pun di sini (menukar fungsi aktivasi, merestrukturisasi attention head, mengubah jadwal learning rate, memodifikasi inisialisasi bobot) selama kode yang diubah tetap dapat dilatih dan menghasilkan skor val_bpb.
program.md
program.md ditulis dalam markdown biasa dan menjadi satu-satunya berkas yang disentuh penulis manusia. Berkas ini memberi tahu agen arah riset yang harus ditempuh, apa yang dihindari, dan bagaimana mendekati eksperimen.
Apa yang dikendalikan oleh program.md
Berkas ini lebih spesifik daripada yang kebanyakan orang kira. Ia menuliskan metrik baseline agar agen tahu apa yang harus dikalahkan (val_bpb: 0,997900, puncak VRAM (video memory): 45 GB).
Berkas ini menentukan perintah yang persis untuk menjalankan eksperimen dan mengekstrak hasil. Ia memberi tahu agen cara menangani kegagalan: perbaiki salah ketik dan jalankan ulang, lewati ide yang rusak dari akarnya, hentikan apa pun yang berjalan lebih dari 10 menit.
Dan berkas ini memuat arahan yang membuat seluruh sistem bekerja: "JANGAN PERNAH BERHENTI. Setelah loop eksperimen dimulai, JANGAN jeda untuk menanyakan kepada manusia apakah Anda harus melanjutkan."
Ada juga batasan desain yang membentuk setiap eksperimen: "Dengan semua hal lain setara, yang lebih sederhana lebih baik. Peningkatan kecil yang menambah kompleksitas jelek tidak sebanding." Ini mengarahkan agen menjauh dari solusi yang terlalu direkayasa dan menuju perubahan bersih yang akan disetujui peninjau manusia.
Pembagian kerja jelas. Manusia menetapkan arah riset melalui program.md, agen mengeksekusi dengan memodifikasi train.py, dan prepare.py bertindak sebagai hakim netral yang tidak boleh disentuh kedua pihak. Dengan kontrak itu, agen menjalankan loop eksperimen secara terus-menerus tanpa berhenti.
Ratchet Loop AutoResearch
Inti AutoResearch adalah siklus eksperimen yang berjalan tanpa input manusia. Begini cara satu iterasi bekerja, mengikuti loop 9 langkah yang didefinisikan dalam program.md:
Agen membaca program.md untuk memahami prioritas dan batasan riset saat ini.
Agen memeriksa train.py saat ini dan hasil terbaru di results.tsv.
Agen mengusulkan sebuah hipotesis: perubahan arsitektur, penyesuaian optimizer, atau modifikasi pelatihan.
Agen memodifikasi train.py untuk menerapkan perubahan yang diusulkan.
Agen melakukan commit perubahan ke sebuah cabang git.
Agen menjalankan pelatihan tepat selama 5 menit (anggaran wall-clock tetap).
Jika pelatihan crash, agen mencatat kegagalan, membalikkan commit, dan mencoba lagi.
Agen mengevaluasi hasil menggunakan val_bpb dan merekam hasilnya di results.tsv.
Jika val_bpb membaik: commit tetap disimpan. Jika tidak: git reset HEAD~1 mengembalikan ke versi sebelumnya.
Lalu mulai lagi dari langkah 1.
Setiap eksperimen mendapatkan anggaran wall-clock 5 menit yang sama, membuat hasilnya langsung dapat dibandingkan. Perubahan yang melatih lebih cepat dan perubahan yang konvergensinya lebih rendah dievaluasi secara setara.
Dengan 5 menit per eksperimen, sistem menjalankan sekitar 12 eksperimen per jam.
Nama "ratchet" berasal dari riwayat git. Setiap eksperimen yang berhasil menambah commit; setiap kegagalan dibalikkan. Basis kode hanya bisa bergerak maju, tidak pernah mundur, menumpuk peningkatan yang tervalidasi satu per satu.
Git sebagai memori riset
Strukturnya mirip algoritme evolusioner, tetapi AutoResearch mempertahankan satu garis keturunan, bukan populasi. Alih-alih crossover dan mutasi lintas kandidat, LLM bertindak sebagai operator mutasi (mengusulkan perubahan) sekaligus tekanan seleksi (memilih apa yang dicoba berdasarkan hasil sebelumnya).
Ia membaca riwayat git dan results.tsv miliknya sendiri untuk membangun di atas apa pun yang menjanjikan.
Berkas results.tsv melacak setiap eksperimen: hash commit, skor val_bpb, penggunaan memori GPU, status lolos/gagal, dan deskripsi tentang apa yang dicoba agen.
Anda mendapatkan jejak audit yang jelas untuk ditinjau di pagi hari, dan agen menggunakan log yang sama untuk mengkalibrasi apa yang akan dicoba selanjutnya. Eksperimen awal cenderung luas (menguji konfigurasi optimizer berbeda), sementara yang belakangan mempersempit pada arah mana pun yang divalidasi data.
Memulai dengan AutoResearch
Menjalankan AutoResearch memerlukan mesin dengan GPU NVIDIA (konfigurasi default menargetkan GPU modern dengan VRAM 20+ GB), Python 3.10+, uv, dan agen pengodean (Claude Code, Cursor, atau sejenisnya).
Kloning repo, pasang dependensi, dan siapkan dataset:
git clone https://github.com/karpathy/autoresearch.git
cd autoresearch
uv sync
uv run prepare.pyDidukung oleh
Tidak ada skrip orkestrasi. Tidak ada run.py, tidak ada pipeline, tidak ada framework.
README mengatakan untuk "cukup jalankan Claude/Codex atau apa pun yang Anda inginkan dalam repo ini."
Anda membuka agen pengodean di direktori proyek, memintanya membaca program.md, dan agen menjalankan loop eksperimen sendiri.
LLM adalah lapisan automasi. Pantau progres dengan men-tail results.tsv atau memeriksa log git untuk commit baru.
Konfigurasi default melatih model GPT pada dataset FineWeb-Edu, yang membutuhkan GPU mumpuni dan beberapa jam untuk menampakkan hasil. Untuk uji pertama pada perangkat keras yang lebih kecil, Karpathy merekomendasikan beralih ke dataset TinyStories dan menurunkan skala model dengan mengurangi ukuran kosakata menjadi 256 dan kedalaman menjadi 4.
Perubahan ini menurunkan kebutuhan VRAM dan mempersingkat setiap eksperimen sehingga Anda bisa melihat ratchet beraksi dalam beberapa jam.
Mengonfigurasi run pertama Anda
Baca program.md default sebelum Anda memulai run semalaman. Berkas ini mendefinisikan agenda riset yang diikuti agen, dan mengeditnya adalah cara Anda mengarahkan eksperimen.
Jika Anda ingin agen berfokus pada mekanisme attention, nyatakan dalam program.md.
Jika Anda ingin agen menghindari menyentuh optimizer, tambahkan batasan itu. Agen tidak akan menyimpang dari apa yang tertulis di sana.
Untuk run semalaman pertama, harapkan 80–100 eksperimen dengan mungkin 15–20 peningkatan yang disimpan. Beberapa hal praktis yang perlu diketahui:
Biaya API skala dengan jumlah eksperimen. Satu run semalaman masih terjangkau bagi peneliti individual, tetapi run multi-hari membutuhkan penganggaran.
Beberapa eksperimen akan crash. Loop akan pulih secara otomatis, jadi tidak akan mengganggu run semalaman.
Periksa results.tsv di pagi hari alih-alih menonton terminal. Pola tangga dari skor val_bpb yang membaik menceritakan kisahnya lebih baik daripada log individual.
Hasil AutoResearch dan Batas Kreativitas
AutoResearch telah diuji di berbagai run, dari eksperimen Karpathy sendiri hingga reproduksi komunitas dan adopsi produksi.
Run
Eksperimen
Peningkatan Disimpan
Hasil
Semalam awal (satu GPU)
83
15
val_bpb: 1.000 → 0.975
Run 2 hari diperpanjang (depth-12)
~700
~20
Semua aditif; ditransfer ke model depth-24
Dampak produksi
-
-
Waktu-ke-patokan GPT-2: 2,02j → 1,80j (11% lebih cepat)
Sesi komunitas
126
-
val_bpb: 0,9979 → 0,9697
Agen menemukan hal-hal yang pada akhirnya akan ditemukan manusia yang metodis. QKnorm kehilangan pengali skala untuk mempertajam attention, Value Embeddings mendapat manfaat dari regularisasi, dan ada peningkatan pada penyetelan banded attention, parameter beta AdamW, dan penjadwalan weight decay.
Ini adalah perubahan kode struktural, bukan sapuan hiperparameter acak, dan menguji masing-masing secara manual akan memakan waktu berhari-hari.
CEO Shopify Tobi Lutke mengadaptasi AutoResearch untuk model perluasan kueri internal dan memperoleh peningkatan skor validasi 19% dari 37 eksperimen pada model 0,8B parameter, melaporkan hasil sehari setelah ia memulai.
Grafik tangga itu nyata, tetapi setiap langkah kecil. Agen menemukan peningkatan nyata—menyetel parameter beta di sini, menambahkan regularisasi di sana. Belum ada yang melaporkan agen ini menciptakan mekanisme attention baru atau mengusulkan ide arsitektural yang tidak akan dicapai peneliti manusia pada akhirnya.
Batas kreativitas
GitHub Issue #22 menangkap masalah strukturalnya. Seorang pengguna mengamati bahwa agen berputar melalui variasi minor dari apa pun yang terakhir berhasil, terjebak dalam pola pencarian lokal.
Ratchet hanya menerima perubahan yang segera meningkatkan val_bpb, sehingga agen tidak pernah bisa mengambil satu langkah mundur untuk menyiapkan keuntungan yang lebih besar.
Peneliti manusia secara rutin menalar, "ini akan memburuk sebelum menjadi lebih baik." Ratchet tidak memberi ruang untuk itu.
Karpathy mengakui masalah terkait di Hacker News: agen terasa "licik dan takut" pada masalah terbuka.
Ia mengaitkannya dengan pelatihan RLHF (Reinforcement Learning from Human Feedback), yang memberi penghargaan pada keluaran yang aman dan konservatif ketimbang eksperimen berani. Agen mampu mengusulkan perubahan kreatif, tetapi dibangun untuk bermain aman.
Jendela pelatihan tetap 5 menit menambah batasan lain.
Perubahan yang menunjukkan nilainya dengan cepat akan ditemukan; perubahan yang baru terbukti dalam run lebih lama tetap tak terlihat. Dan menjalankan 100 eksperimen terhadap set validasi yang sama membawa risiko overfitting: beberapa peningkatan mungkin spesifik untuk evaluasi itu alih-alih kenaikan yang sejati. Ketidakberubahan prepare.py, jaminan keadilan sistem, juga merupakan titik butanya.
Komunitas memperdebatkan apakah plafon itu berasal dari kerangka atau dari model yang mendasarinya. Usulan mencakup optimasi meta-prompt (agen kedua menulis ulang program.md berdasarkan hasil), arahan keragaman yang memberi penghargaan pada kebaruan bersamaan dengan peningkatan, dan eksperimen "reset" berkala yang dimulai dari checkpoint lebih awal untuk keluar dari optimum lokal.
Saat ini, AutoResearch adalah alat yang mengotomatiskan bagian metodis dari riset ML: menjalankan dan mengevaluasi ratusan eksperimen kecil. Alat ini tidak menggantikan bagian kreatif—merumuskan arah riset baru—yang masih merupakan tugas manusia. Pembagian kerja itu juga menjadi sinyal paling jelas apakah alat ini cocok untuk alur kerja Anda.
Kapan Menggunakan AutoResearch
Kontrak tiga berkas (evaluator yang tidak dapat diubah, implementasi yang dapat dimodifikasi agen, arahan yang ditulis manusia) berlaku melampaui pelatihan LLM ke domain apa pun tempat Anda dapat mendefinisikan fungsi penskoran otomatis.
Optimasi peringkat pencarian, kategorisasi produk, pengenalan entitas bernama klinis, penilaian penipuan, klasifikasi intent: tugas-tugas ini memiliki sifat yang tepat. Model kecil yang dilatih dalam hitungan menit, fungsi penskoran yang jelas, dan peningkatan yang dapat ditransfer saat Anda melakukan skala.
Ketika eksperimen berjalan 100x lebih cepat daripada yang dapat dikelola manusia, pipeline evaluasi menjadi kendala. Tolok ukur statis cepat jenuh. Tim yang mengadopsi pola ini memerlukan set evaluasi yang berkembang seiring data produksi dan kasus tepi yang lebih sulit.
Karpathy sendiri menjalankan "sepupu yang lebih besar" dari AutoResearch pada 8x GPU H100 dengan kerangka produksi nanochat miliknya, yang menunjukkan polanya dapat diskalakan melampaui eksperimen mainan. Komunitas telah mem-fork untuk macOS/Apple Silicon dan mengusulkan integrasi untuk GPU yang lebih lama. Panduan CPU vs GPU membahas mengapa perangkat keras GPU tidak bisa ditawar untuk jenis pelatihan iteratif ini.
Jika tujuan Anda adalah memeras peningkatan bertahap dari pipeline pelatihan yang sudah dipahami dengan baik, AutoResearch adalah pilihan yang tepat. Batas kreativitas berarti Anda masih memerlukan peneliti manusia untuk masalah yang memerlukan kebaruan sejati, dan alat ini bekerja paling baik pada mayoritas riset yang berupa iterasi metodis.
Kesimpulan
Menulis program.md yang baik memerlukan Anda telah melakukan riset sendiri. Anda perlu mengetahui arah mana yang layak dicoba, apa arti "lebih baik" untuk masalah Anda, dan kapan keuntungan bertahap telah habis. Agen menangani eksekusi, tetapi penilaian di balik agenda riset tetaplah manusia. Jika generasi insinyur berikutnya melewatkan pekerjaan formatif itu karena sekarang ditangani agen, bidang ini akan memiliki banyak komputasi dan tidak ada yang berpengalaman untuk mengarahkannya ke arah yang benar.
FAQ AutoResearch
Apa itu AutoResearch?⌄
AutoResearch adalah alat Python open-source oleh Andrej Karpathy yang memungkinkan agen pengodean AI menjalankan eksperimen ML pada satu GPU tanpa intervensi manusia. Alat ini berulang melalui siklus usul-latih-evaluasi, hanya menyimpan perubahan yang meningkatkan validation loss, dan membuang yang lain melalui git revert.
Bagaimana cara kerja ratchet loop AutoResearch?⌄
Agen membaca berkas program.md untuk arah riset, memodifikasi train.py dengan perubahan yang diusulkan, melakukan commit, menjalankan pelatihan tepat 5 menit, dan mengevaluasi hasil menggunakan val_bpb. Jika skor membaik, commit tetap disimpan. Jika tidak, git reset mengembalikannya. Lalu siklus berulang secara otomatis. skills override managed ones, which override bundled skills with the same name.
Apa itu arsitektur tiga berkas di AutoResearch?⌄
AutoResearch menggunakan tiga berkas dengan aturan kepemilikan ketat. prepare.py tidak dapat diubah dan menangani evaluasi. train.py adalah sandbox agen tempat ia dapat memodifikasi kode apa pun. program.md ditulis oleh manusia dan mendefinisikan arah riset, batasan, dan aturan eksperimen. Kedua pihak tidak boleh menyentuh berkas pihak lain.
Apa saja keterbatasan AutoResearch?⌄
Keterbatasan utama adalah batas kreativitas. Karena ratchet hanya menyimpan perubahan yang segera meningkatkan val_bpb, agen tidak bisa mengambil langkah mundur untuk menyiapkan keuntungan yang lebih besar. Agen cenderung berputar pada variasi kecil dari apa pun yang terakhir berhasil, menemukan peningkatan bertahap alih-alih penemuan arsitektural.
Bagaimana perbandingan AutoResearch dengan AutoML dan AlphaEvolve?⌄
Kerangka AutoML dan NAS mencari ruang parameter yang telah ditentukan dengan algoritme terstruktur. AlphaEvolve menggunakan pendekatan evolusioner dengan model Gemini tetapi bersifat tertutup. AutoResearch memberi kebebasan kepada LLM untuk memodifikasi kode apa pun, bertaruh pada pengetahuan umum alih-alih ruang pencarian terbatas, dan sepenuhnya open-source di bawah lisensi MIT.
Saya adalah kreator konten data science dengan pengalaman lebih dari 2 tahun dan salah satu dengan jumlah pengikut terbesar di Medium. Saya suka menulis artikel mendalam tentang AI dan ML dengan sedikit gaya sarkastik—karena harus ada sesuatu untuk membuatnya tidak terlalu membosankan. Saya telah menghasilkan lebih dari 130 artikel dan satu kursus di DataCamp, dengan satu lagi sedang dalam proses. Konten saya telah dilihat oleh lebih dari 5 juta pasang mata, dan 20 ribu di antaranya menjadi pengikut di Medium dan LinkedIn.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
AutoResearch karya Andrej Karpathy adalah sebuah alat open-source yang menjalankan eksperimen ML dalam sebuah loop, hanya menyimpan perubahan yang mengalahkan hasil terbaik saat ini. Anda mendeskripsikan arah riset dalam berkas markdown, mengarahkan agen pengodean AI ke repo, lalu tinggalkan. Pagi harinya, Anda memiliki riwayat git berisi peningkatan yang tervalidasi dan log semua yang dicoba agen.
Dirilis pada 7 Maret 2026, proyek ini meraih 21.000+ bintang GitHub dan 8,6 juta tontonan pada pengumuman Karpathy dalam hitungan hari. Artikel ini membahas cara kerja arsitektur tiga berkas, apa yang dilakukan ratchet loop selama menjalankan eksperimen semalaman, hasil yang telah dihasilkan AutoResearch sejauh ini, dan di mana pendekatan ini mencapai batasnya.
Apa itu AutoResearch?
AutoResearch adalah alat Python open-source yang memungkinkan agen AI menjalankan eksperimen ML pada satu GPU tanpa intervensi manusia. Alat ini berulang melalui siklus usul-latih-evaluasi, hanya menyimpan perubahan yang meningkatkan validation loss. Proyek ini dirilis dengan lisensi MIT.
Ini bukan penyelarasan hiperparameter. Alat seperti Optuna atau Ray Tune mencari ruang parameter yang telah ditentukan. AutoResearch memberi kebebasan kepada agen untuk memodifikasi kode apa pun. Ruang pencariannya adalah apa pun yang bisa dipikirkan LLM, dan itu menjadikannya kategori alat yang berbeda dari apa pun yang tersedia saat ini.
Kerangka AutoML dan NAS (Neural Architecture Search) mencari arsitektur atau hiperparameter menggunakan algoritme terstruktur—presisi namun terbatas pada ruang pencarian yang didefinisikan.
AlphaEvolve (Google DeepMind) melangkah lebih jauh dengan pendekatan evolusioner dan model Gemini untuk penemuan algoritme, namun bersifat tertutup dan tidak dapat diakses sebagian besar tim. Agen pengodean serbaguna seperti SWE-Agent, OpenHands, dan Aider bisa menulis kode apa pun, tetapi tidak dibangun untuk siklus eksperimen-evaluasi-simpan/revert yang sebenarnya dibutuhkan riset ML.
AutoResearch bertaruh pada pengetahuan umum LLM untuk mengusulkan eksperimen yang baik, alih-alih membatasi ruang pencarian demi jaminan matematis.
Dari vibe coding ke penasihat riset
Karpathy membingkai ini sebagai progresi alami cara insinyur bekerja dengan AI. Pada Februari 2026, ia mencetuskan istilah "agentic engineering": "Anda tidak menulis kode secara langsung 99% dari waktu. Anda mengorkestrasi agen yang melakukannya dan bertindak sebagai pengawas." AutoResearch melangkah ke tahap berikutnya. Manusia bahkan tidak mengorkestrasi. Mereka mendeskripsikan seperti apa riset yang baik dalam berkas markdown dan pergi.
Progresinya: vibe coding (manusia memandu, AI menulis kode, manusia meninjau) ke agentic engineering (manusia mengorkestrasi agen secara realtime) ke riset yang sepenuhnya mandiri (manusia menetapkan arah, agen berjalan sendiri).
Setiap langkah mengurangi peran manusia dari penulis menjadi sutradara dan, dalam kerangka Karpathy, menjadi penasihat riset.
Dalam unggahan lanjutan, ia menggambarkan langkah berikutnya: "Tujuannya bukan meniru satu mahasiswa PhD, melainkan meniru komunitas riset mereka", merujuk pada kolaborasi agen terdistribusi ala SETI@home.
Bagaimana sistem mewujudkan visi itu bergantung pada tiga berkas.
Arsitektur Tiga Berkas AutoResearch
Desain AutoResearch bermuara pada kontrak antara tiga berkas, masing-masing dengan aturan ketat tentang siapa yang boleh menyentuhnya.
prepare.py
prepare.pymenangani persiapan data dan evaluasi. Berkas ini membangun tokenizer BPE (Byte Pair Encoding) dengan kosakata 8.192 token, memproses korpus pelatihan, dan mendefinisikan metrik validasi:val_bpb(validation bits-per-byte).Berkas ini tidak dapat diubah: baik manusia maupun agen tidak memodifikasinya, yang menjamin setiap eksperimen diukur dengan tolok ukur yang sama.
train.py
train.pyadalah sandbox milik agen: 630 baris yang memuat arsitektur model GPT, optimizerMuon+AdamW, dan loop pelatihan lengkap. Agen boleh menulis ulang apa pun di sini (menukar fungsi aktivasi, merestrukturisasi attention head, mengubah jadwal learning rate, memodifikasi inisialisasi bobot) selama kode yang diubah tetap dapat dilatih dan menghasilkan skorval_bpb.program.md
program.mdditulis dalam markdown biasa dan menjadi satu-satunya berkas yang disentuh penulis manusia. Berkas ini memberi tahu agen arah riset yang harus ditempuh, apa yang dihindari, dan bagaimana mendekati eksperimen.Apa yang dikendalikan oleh
program.mdBerkas ini lebih spesifik daripada yang kebanyakan orang kira. Ia menuliskan metrik baseline agar agen tahu apa yang harus dikalahkan (
val_bpb: 0,997900, puncak VRAM (video memory): 45 GB).Berkas ini menentukan perintah yang persis untuk menjalankan eksperimen dan mengekstrak hasil. Ia memberi tahu agen cara menangani kegagalan: perbaiki salah ketik dan jalankan ulang, lewati ide yang rusak dari akarnya, hentikan apa pun yang berjalan lebih dari 10 menit.
Dan berkas ini memuat arahan yang membuat seluruh sistem bekerja: "JANGAN PERNAH BERHENTI. Setelah loop eksperimen dimulai, JANGAN jeda untuk menanyakan kepada manusia apakah Anda harus melanjutkan."
Ada juga batasan desain yang membentuk setiap eksperimen: "Dengan semua hal lain setara, yang lebih sederhana lebih baik. Peningkatan kecil yang menambah kompleksitas jelek tidak sebanding." Ini mengarahkan agen menjauh dari solusi yang terlalu direkayasa dan menuju perubahan bersih yang akan disetujui peninjau manusia.
Pembagian kerja jelas. Manusia menetapkan arah riset melalui
program.md, agen mengeksekusi dengan memodifikasitrain.py, danprepare.pybertindak sebagai hakim netral yang tidak boleh disentuh kedua pihak. Dengan kontrak itu, agen menjalankan loop eksperimen secara terus-menerus tanpa berhenti.Ratchet Loop AutoResearch
Inti AutoResearch adalah siklus eksperimen yang berjalan tanpa input manusia. Begini cara satu iterasi bekerja, mengikuti loop 9 langkah yang didefinisikan dalam
program.md:program.mduntuk memahami prioritas dan batasan riset saat ini.train.pysaat ini dan hasil terbaru diresults.tsv.train.pyuntuk menerapkan perubahan yang diusulkan.val_bpbdan merekam hasilnya diresults.tsv.val_bpbmembaik: commit tetap disimpan. Jika tidak:git reset HEAD~1mengembalikan ke versi sebelumnya.Lalu mulai lagi dari langkah 1.
Setiap eksperimen mendapatkan anggaran wall-clock 5 menit yang sama, membuat hasilnya langsung dapat dibandingkan. Perubahan yang melatih lebih cepat dan perubahan yang konvergensinya lebih rendah dievaluasi secara setara.
Dengan 5 menit per eksperimen, sistem menjalankan sekitar 12 eksperimen per jam.
Nama "ratchet" berasal dari riwayat git. Setiap eksperimen yang berhasil menambah commit; setiap kegagalan dibalikkan. Basis kode hanya bisa bergerak maju, tidak pernah mundur, menumpuk peningkatan yang tervalidasi satu per satu.
Git sebagai memori riset
Strukturnya mirip algoritme evolusioner, tetapi AutoResearch mempertahankan satu garis keturunan, bukan populasi. Alih-alih crossover dan mutasi lintas kandidat, LLM bertindak sebagai operator mutasi (mengusulkan perubahan) sekaligus tekanan seleksi (memilih apa yang dicoba berdasarkan hasil sebelumnya).
Ia membaca riwayat git dan
results.tsvmiliknya sendiri untuk membangun di atas apa pun yang menjanjikan.Berkas
results.tsvmelacak setiap eksperimen: hash commit, skorval_bpb, penggunaan memori GPU, status lolos/gagal, dan deskripsi tentang apa yang dicoba agen.Anda mendapatkan jejak audit yang jelas untuk ditinjau di pagi hari, dan agen menggunakan log yang sama untuk mengkalibrasi apa yang akan dicoba selanjutnya. Eksperimen awal cenderung luas (menguji konfigurasi optimizer berbeda), sementara yang belakangan mempersempit pada arah mana pun yang divalidasi data.
Memulai dengan AutoResearch
Menjalankan AutoResearch memerlukan mesin dengan GPU NVIDIA (konfigurasi default menargetkan GPU modern dengan VRAM 20+ GB), Python 3.10+,
uv, dan agen pengodean (Claude Code, Cursor, atau sejenisnya).Kloning repo, pasang dependensi, dan siapkan dataset:
Tidak ada skrip orkestrasi. Tidak ada
run.py, tidak ada pipeline, tidak ada framework.README mengatakan untuk "cukup jalankan Claude/Codex atau apa pun yang Anda inginkan dalam repo ini."
Anda membuka agen pengodean di direktori proyek, memintanya membaca
program.md, dan agen menjalankan loop eksperimen sendiri.LLM adalah lapisan automasi. Pantau progres dengan men-tail
results.tsvatau memeriksa log git untuk commit baru.Konfigurasi default melatih model GPT pada dataset FineWeb-Edu, yang membutuhkan GPU mumpuni dan beberapa jam untuk menampakkan hasil. Untuk uji pertama pada perangkat keras yang lebih kecil, Karpathy merekomendasikan beralih ke dataset TinyStories dan menurunkan skala model dengan mengurangi ukuran kosakata menjadi 256 dan kedalaman menjadi 4.
Perubahan ini menurunkan kebutuhan VRAM dan mempersingkat setiap eksperimen sehingga Anda bisa melihat ratchet beraksi dalam beberapa jam.
Mengonfigurasi run pertama Anda
Baca
program.mddefault sebelum Anda memulai run semalaman. Berkas ini mendefinisikan agenda riset yang diikuti agen, dan mengeditnya adalah cara Anda mengarahkan eksperimen.Jika Anda ingin agen berfokus pada mekanisme attention, nyatakan dalam
program.md.Jika Anda ingin agen menghindari menyentuh optimizer, tambahkan batasan itu. Agen tidak akan menyimpang dari apa yang tertulis di sana.
Untuk run semalaman pertama, harapkan 80–100 eksperimen dengan mungkin 15–20 peningkatan yang disimpan. Beberapa hal praktis yang perlu diketahui:
results.tsvdi pagi hari alih-alih menonton terminal. Pola tangga dari skorval_bpbyang membaik menceritakan kisahnya lebih baik daripada log individual.Hasil AutoResearch dan Batas Kreativitas
AutoResearch telah diuji di berbagai run, dari eksperimen Karpathy sendiri hingga reproduksi komunitas dan adopsi produksi.
Run
Eksperimen
Peningkatan Disimpan
Hasil
Semalam awal (satu GPU)
83
15
val_bpb: 1.000 → 0.975
Run 2 hari diperpanjang (depth-12)
~700
~20
Semua aditif; ditransfer ke model depth-24
Dampak produksi
-
-
Waktu-ke-patokan GPT-2: 2,02j → 1,80j (11% lebih cepat)
Sesi komunitas
126
-
val_bpb: 0,9979 → 0,9697
Agen menemukan hal-hal yang pada akhirnya akan ditemukan manusia yang metodis.
QKnormkehilangan pengali skala untuk mempertajam attention, Value Embeddings mendapat manfaat dari regularisasi, dan ada peningkatan pada penyetelan banded attention, parameter betaAdamW, dan penjadwalan weight decay.Ini adalah perubahan kode struktural, bukan sapuan hiperparameter acak, dan menguji masing-masing secara manual akan memakan waktu berhari-hari.
CEO Shopify Tobi Lutke mengadaptasi AutoResearch untuk model perluasan kueri internal dan memperoleh peningkatan skor validasi 19% dari 37 eksperimen pada model 0,8B parameter, melaporkan hasil sehari setelah ia memulai.
Grafik tangga itu nyata, tetapi setiap langkah kecil. Agen menemukan peningkatan nyata—menyetel parameter beta di sini, menambahkan regularisasi di sana. Belum ada yang melaporkan agen ini menciptakan mekanisme attention baru atau mengusulkan ide arsitektural yang tidak akan dicapai peneliti manusia pada akhirnya.
Batas kreativitas
GitHub Issue #22 menangkap masalah strukturalnya. Seorang pengguna mengamati bahwa agen berputar melalui variasi minor dari apa pun yang terakhir berhasil, terjebak dalam pola pencarian lokal.
Ratchet hanya menerima perubahan yang segera meningkatkan
val_bpb, sehingga agen tidak pernah bisa mengambil satu langkah mundur untuk menyiapkan keuntungan yang lebih besar.Peneliti manusia secara rutin menalar, "ini akan memburuk sebelum menjadi lebih baik." Ratchet tidak memberi ruang untuk itu.
Karpathy mengakui masalah terkait di Hacker News: agen terasa "licik dan takut" pada masalah terbuka.
Ia mengaitkannya dengan pelatihan RLHF (Reinforcement Learning from Human Feedback), yang memberi penghargaan pada keluaran yang aman dan konservatif ketimbang eksperimen berani. Agen mampu mengusulkan perubahan kreatif, tetapi dibangun untuk bermain aman.
Jendela pelatihan tetap 5 menit menambah batasan lain.
Perubahan yang menunjukkan nilainya dengan cepat akan ditemukan; perubahan yang baru terbukti dalam run lebih lama tetap tak terlihat. Dan menjalankan 100 eksperimen terhadap set validasi yang sama membawa risiko overfitting: beberapa peningkatan mungkin spesifik untuk evaluasi itu alih-alih kenaikan yang sejati. Ketidakberubahan
prepare.py, jaminan keadilan sistem, juga merupakan titik butanya.Komunitas memperdebatkan apakah plafon itu berasal dari kerangka atau dari model yang mendasarinya. Usulan mencakup optimasi meta-prompt (agen kedua menulis ulang
program.mdberdasarkan hasil), arahan keragaman yang memberi penghargaan pada kebaruan bersamaan dengan peningkatan, dan eksperimen "reset" berkala yang dimulai dari checkpoint lebih awal untuk keluar dari optimum lokal.Saat ini, AutoResearch adalah alat yang mengotomatiskan bagian metodis dari riset ML: menjalankan dan mengevaluasi ratusan eksperimen kecil. Alat ini tidak menggantikan bagian kreatif—merumuskan arah riset baru—yang masih merupakan tugas manusia. Pembagian kerja itu juga menjadi sinyal paling jelas apakah alat ini cocok untuk alur kerja Anda.
Kapan Menggunakan AutoResearch
Kontrak tiga berkas (evaluator yang tidak dapat diubah, implementasi yang dapat dimodifikasi agen, arahan yang ditulis manusia) berlaku melampaui pelatihan LLM ke domain apa pun tempat Anda dapat mendefinisikan fungsi penskoran otomatis.
Optimasi peringkat pencarian, kategorisasi produk, pengenalan entitas bernama klinis, penilaian penipuan, klasifikasi intent: tugas-tugas ini memiliki sifat yang tepat. Model kecil yang dilatih dalam hitungan menit, fungsi penskoran yang jelas, dan peningkatan yang dapat ditransfer saat Anda melakukan skala.
Ketika eksperimen berjalan 100x lebih cepat daripada yang dapat dikelola manusia, pipeline evaluasi menjadi kendala. Tolok ukur statis cepat jenuh. Tim yang mengadopsi pola ini memerlukan set evaluasi yang berkembang seiring data produksi dan kasus tepi yang lebih sulit.
Karpathy sendiri menjalankan "sepupu yang lebih besar" dari AutoResearch pada 8x GPU H100 dengan kerangka produksi
nanochatmiliknya, yang menunjukkan polanya dapat diskalakan melampaui eksperimen mainan. Komunitas telah mem-fork untuk macOS/Apple Silicon dan mengusulkan integrasi untuk GPU yang lebih lama. Panduan CPU vs GPU membahas mengapa perangkat keras GPU tidak bisa ditawar untuk jenis pelatihan iteratif ini.Jika tujuan Anda adalah memeras peningkatan bertahap dari pipeline pelatihan yang sudah dipahami dengan baik, AutoResearch adalah pilihan yang tepat. Batas kreativitas berarti Anda masih memerlukan peneliti manusia untuk masalah yang memerlukan kebaruan sejati, dan alat ini bekerja paling baik pada mayoritas riset yang berupa iterasi metodis.
Kesimpulan
Menulis
program.mdyang baik memerlukan Anda telah melakukan riset sendiri. Anda perlu mengetahui arah mana yang layak dicoba, apa arti "lebih baik" untuk masalah Anda, dan kapan keuntungan bertahap telah habis. Agen menangani eksekusi, tetapi penilaian di balik agenda riset tetaplah manusia. Jika generasi insinyur berikutnya melewatkan pekerjaan formatif itu karena sekarang ditangani agen, bidang ini akan memiliki banyak komputasi dan tidak ada yang berpengalaman untuk mengarahkannya ke arah yang benar.