28 poin oleh ragingwind 4 hari lalu | 2 komentar | Bagikan ke WhatsApp

Ringkasan satu kalimat

Mencoba ide → mengukur → jika membaik dipertahankan, jika tidak dibuang → lalu diulang selamanya.

pi-autoresearch adalah ekstensi untuk agen coding AI terminal pi, yang menggeneralisasi konsep autoresearch dari Karpathy agar bisa diterapkan ke masalah optimasi apa pun.

Pertama, apa itu pi?

pi adalah agen coding AI yang berjalan di terminal. Berbeda dari alat berbasis IDE seperti Cursor atau Windsurf, pi dirancang native untuk terminal sehingga bisa digunakan apa adanya di lingkungan akses SSH atau server headless.

Fitur inti pi adalah sistem Extension dan Skill:

  • Extension — menambahkan tool baru ke agen. Selain tool dasar seperti baca/tulis file dan menjalankan perintah, tool kustom juga bisa dipasang seperti plugin.
  • Skill — mengajarkan pola kerja tertentu. Skill mendefinisikan workflow seperti, "dalam situasi ini gunakan tool-tool ini dengan urutan seperti ini."

Dengan satu baris pi install <github-url>, pengguna bisa memasang Extension dan Skill buatan komunitas, sehingga kemampuan agen dapat diperluas dengan leluasa. pi-autoresearch dibangun tepat di atas sistem ini sebagai paket Extension+Skill.

Latar belakang: autoresearch dari Karpathy

Pada Maret 2026, ide autoresearch yang dipublikasikan Karpathy cukup sederhana:

  • memberi agen AI satu kode pelatihan LLM (train.py)
  • membiarkannya memodifikasi kode dan melatih selama 5 menit
  • jika validation loss membaik maka keep, jika tidak maka discard
  • mengulang semalaman → pagi hari ada log eksperimen + model yang lebih baik

Dengan desain yang sangat minimal (3 file, 1 GPU, 1 metrik), proyek ini berfokus membuktikan konsep bahwa "agen dapat secara otonom berperan sebagai peneliti". Namun, sejak awal ada keterbatasan bawaan: khusus NVIDIA GPU dan hanya berlaku untuk pelatihan LLM.

Apa yang berbeda dari pi-autoresearch

1. Tidak dibatasi domain

Bukan hanya loss pelatihan LLM, tetapi apa pun yang bisa diukur dapat dijadikan target optimasi, seperti kecepatan eksekusi test, ukuran bundle, build time, atau skor Lighthouse. Ini dimungkinkan berkat struktur pemisahan pi antara "infrastruktur (Extension)" dan "pengetahuan domain (Skill)".

  • Kecepatan test — detik ↓ — pnpm test
  • Ukuran bundle — KB ↓ — pnpm build && du -sb dist
  • Pelatihan LLM — val_bpb ↓ — uv run train.py
  • Lighthouse — skor perf ↑ — lighthouse --output=json

2. Tidak kehilangan ingatan meski di-restart

Agen AI punya keterbatasan context window, jadi dalam eksperimen jangka panjang konteks bisa reset atau proses bisa mati. pi-autoresearch menyimpan seluruh status sesi secara lengkap dalam dua file:

  • autoresearch.jsonl — log append-only untuk semua eksperimen
  • autoresearch.md — ringkasan tujuan, hal yang sudah dicoba, jalan buntu, dan hasil penting

Bahkan jika agen baru tanpa memori sama sekali dimasukkan, cukup membaca dua file ini untuk melanjutkan sesi sebelumnya secara akurat. Praktis ini adalah pola "memori eksternal untuk agen".

3. Membedakan peningkatan nyata dari noise

Benchmark bisa memberi hasil berbeda setiap kali meski menjalankan kode yang sama. Setelah 3 kali atau lebih percobaan, sistem otomatis menghitung confidence score berbasis MAD (Median Absolute Deviation) untuk menunjukkan secara visual apakah peningkatan itu nyata atau hanya noise.

  • 🟢 ≥ 2.0× — kemungkinan besar peningkatan itu nyata
  • 🟡 1.0–2.0× — lebih dari noise, tetapi kecil
  • 🔴 < 1.0× — masih dalam rentang noise, disarankan menjalankan ulang

Namun, eksperimen tidak dibuang secara otomatis; keputusan akhir tetap diserahkan ke agen.

4. Mencegah optimasi merusak konsistensi

Jika autoresearch.checks.sh tersedia, setelah benchmark lolos maka validasi konsistensi seperti test, type check, dan lint akan dijalankan otomatis. Jebakan klasik seperti "dibuat lebih cepat tapi test jadi rusak" diblokir di level sistem.

5. Merapikan hasil eksperimen menjadi PR yang bersih

Saat eksperimen selesai, skill autoresearch-finalize akan mengelompokkan eksperimen yang di-keep menjadi changeset yang logis lalu memisahkannya ke git branch yang independen. Karena dijamin tidak saling tumpang tindih di level file, tiap branch bisa direview dan di-merge secara mandiri.

Workflow

1. /autoresearch optimize unit test runtime  
   → set tujuan, perintah, dan metrik → ukur baseline → mulai loop  
  
2. Loop otonom (berulang tanpa batas)  
   → modifikasi kode → git commit → benchmark → validasi konsistensi  
   → membaik? keep / memburuk? revert → catat ke .jsonl → ulangi  
  
3. /skill:autoresearch-finalize  
   → rapikan eksperimen yang di-keep ke branch terpisah → review·merge  

Kontrol biaya

Karena loop otonom terus menghabiskan token, tersedia dua guardrail: pengaturan batas API key dan maxIterations (jumlah eksperimen maksimum per sesi).

Mengapa ini layak diperhatikan

Jika autoresearch dari Karpathy adalah pembuktian konsep menarik bahwa "AI melakukan eksperimen sendiri", maka pi-autoresearch adalah upaya mengubahnya menjadi alat umum yang bisa dipakai di lingkungan pengembangan nyata. Karena dibangun di atas arsitektur Extension/Skill milik pi, cukup satu baris instalasi untuk langsung menempelkannya ke workflow pi yang sudah ada, sehingga hambatan masuknya lebih rendah.

Yang mengesankan adalah bagaimana proyek ini menangani masalah praktis secara sistematis: penyimpanan status sesi, verifikasi kepercayaan statistik, perlindungan konsistensi, dan workflow yang native dengan Git. Menjalankan eksperimen pada malam hari lalu meninjau PR di pagi hari terasa seperti workflow yang makin realistis.

2 komentar

 
tensun 3 hari lalu

Memang pi

 
unqocn 3 hari lalu

Saya sangat suka pi