Konfigurasi konteks dan perintah

AlphaEvolve memandu operasinya dengan memanfaatkan baseline kode yang disediakan serta konteks spesifik yang diberikan oleh pengguna.

Konteks pengguna

Konteks yang diberikan pengguna dimasukkan ke dalam setiap perintah pembuatan. Konteks ini menyeimbangkan ruang penelusuran dengan memberikan pengetahuan domain, formulasi matematika, dan batasan sistem kepada LLM.

  • Anggaran token: Hingga 200.000 token berfungsi dengan baik. Di luar batas 200 ribu token, jendela konteks menjadi penuh, perhatian LLM berkurang, dan kualitas mutasi berkurang. Jika konteks gabungan Anda (deskripsi masalah, kode, dan program sebelumnya) melebihi 200 ribu token, Anda harus menguranginya.

Yang harus disertakan

  • Formulasi matematika yang tepat untuk masalah pengoptimalan.

  • Batasan utama dan alasan yang jelas.

  • Terminologi dan definisi khusus domain.

  • Pendekatan yang diketahui baik atau pengetahuan sebelumnya untuk memandu arah penelusuran LLM.

  • Petunjuk spesifik dan eksplisit yang menjelaskan hal yang TIDAK boleh dilakukan.

Yang TIDAK boleh disertakan

  • Tutorial pemrograman umum.

  • Dokumentasi library standar (LLM sudah mengetahui numpy, sklearn, dll.). Namun, SERTAKAN dokumentasi untuk library khusus atau khusus domain yang mungkin tidak diketahui LLM (API kernel kustom, SDK eksklusif, atau DSL khusus).

  • Data mentah arbitrer, spreadsheet, atau dump data besar. Data berada di harness evaluator, bukan dalam konteks perintah.

  • Konteks yang tidak terkait yang menggunakan token tanpa menambahkan sinyal penelusuran.

Setiap bagian konteks yang Anda sertakan harus memberikan nilai yang jelas dengan secara aktif membantu LLM menghasilkan mutasi yang lebih baik dan secara struktural baik.

Masukan evaluasi (Insight)

Setelah setiap loop eksekusi, evaluator dapat menampilkan teks masukan diagnostik bersama dengan skor numerik. Masukan ini otomatis ditambahkan ke struktur perintah mendatang.

  • Baseline kualitas: Masukan yang kuat bersifat spesifik, dapat ditindaklanjuti, dan ringkas. Masukan yang buruk bersifat umum (seperti "evaluasi gagal") atau terlalu panjang.

  • Tujuan operasional: Insight ini ditampilkan ke LLM dalam pembuatan berikutnya, sehingga LLM dapat belajar secara eksplisit dari kegagalan eksekusi dan menghindari bug berulang.

Diversifikasi perintah bawaan

AlphaEvolve otomatis mendiversifikasi perintah yang dikirimkan ke ansambel LLM backend. Operasi ini ditangani secara internal dan tidak memerlukan konfigurasi pengguna manual.

Sistem ini memvariasikan petunjuk intinya di seluruh generasi berturut-turut untuk mendorong mutasi yang beragam dan mencegah LLM jatuh ke dalam pola coding berulang. Perilaku ini berfungsi sebagai salah satu mekanisme utama yang membantu AlphaEvolve menjelajahi lanskap yang luas, bukan terjebak dalam optima lokal yang sempit.

Keterbacaan kode

Kompleksitas kode bertindak sebagai metrik tambahan yang efektif. Jika keterbacaan kode akhir adalah faktor untuk kasus penggunaan produksi Anda, pertimbangkan untuk menambahkan panjang kode atau kompleksitas kognitif sebagai metrik target sekunder.

AlphaEvolve dapat mencapai kompresi file hingga 50% tanpa menurunkan performa fungsional. Namun, LLM akan memanfaatkan metrik kesederhanaan yang naif (seperti menghapus semua komentar inline untuk mengurangi jumlah karakter mentah). Untuk mencegah hal ini, terapkan metrik yang menangkap kompleksitas struktural yang bermakna, seperti kompleksitas siklomatik atau jumlah node Abstract Syntax Tree (AST), bukan mengevaluasi panjang string mentah.