# Penjanaan kod yang boleh diramal memerlukan kontrak pengekalan

Canonical HTML: https://aogavrilov.com/ms/research-notes/predictable-code-generation-preservation-contract/

Document language: ms

CATATAN PENYELIDIKAN

Mengapa pensampelan berketentuan tidak mencukupi, serta bagaimana sifat terlindung yang boleh diperhatikan dan semakan penerimaan menjadikan tingkah laku penjanaan kod boleh diuji.

Diterbitkan 30 Julai 2026 [Alexey Gavrilov](https://aogavrilov.com/about/)

JAWAPAN LANGSUNG

## Apakah yang menjadikan penjanaan kod boleh diramal, bukan sekadar boleh dikawal?

Kebolehramalan memerlukan kontrak yang dapat diperhatikan dan dinyatakan sebelum penjanaan: perkara yang boleh berubah, perkara yang mesti kekal stabil, cara setiap sifat akan diukur dan keadaan yang menyebabkan sesuatu output ditolak. Gesaan, benih, topeng, tatabahasa atau kod pendam yang ditetapkan hanyalah suatu mekanisme.

## Mengapa perbezaan ini penting

Kaedah dan jaminan yang didakwa memerlukan sempadan boleh diperhatikan yang sama.

Penjanaan berketentuan mengulangi sesuatu keluaran dalam keadaan tetap. Penjanaan yang boleh diramal menjadikan sifat yang dinyatakan boleh diuji: contohnya, tandatangan API kekal tidak berubah, suntingan terbatas dalam sesuatu kawasan, sintaks kekal sah, atau set ujian terus berjaya.

Perbezaan ini penting kerana input kawalan tidak mentakrifkan kesannya. Mengunci kedudukan pendam, menetapkan benih atau mengekang tatabahasa boleh menjadikan penjanaan lebih mudah diperiksa, tetapi sifat terlindung masih perlu diukur selepas penyahkodan.

## Prosedur praktikal

1. Nyatakan sifat yang dilindungi Nyatakan rantau sumber, struktur, antara muka, tingkah laku atau taburan yang mesti kekal dalam toleransi yang ditetapkan.
2. Pilih mekanisme kawalan yang sepadan Gunakan penggunaan semula sumber, topeng suntingan, kekangan formal, penguncian pendam, atau cadangan berserta pengesahan mengikut sifat yang hendak dilindungi.
3. Takrifkan penerimaan sebelum pensampelan Tetapkan kriteria penghuraian, pengkompilan, ujian, semakan struktur, ambang kesetempatan dan kejayaan tugas sebelum meneliti output.
4. Ukur tingkah laku berulang Laporkan penerimaan, penolakan, kestabilan, kepelbagaian dan ketidakpastian merentas pelaksanaan berulang, bukannya bergantung pada satu hasil ilustratif.

## Bukti yang diperlukan

Kekuatan sesuatu dakwaan terbatas pada sifat yang diukur selepas penjanaan atau penyahkodan.

- Sifat yang dilindungi dan yang boleh disunting dinyatakan secara berasingan.
- Setiap jaminan yang didakwa mempunyai ujian atau metrik yang boleh diperhatikan.
- Kejayaan tugas dinilai bersama-sama kestabilan.
- Kebolehubahan pelaksanaan berulang dan kadar penolakan dapat dilihat.
- Sifat yang tidak diukur dikecualikan secara jelas daripada dakwaan.

### Dapatan kajian yang dipautkan

- Eksperimen terpaut mendedahkan kedudukan diskret berhierarki sebagai satu permukaan kawalan boleh diperiksa bagi fungsi Python pendek.
- Penguncian empat kedudukan peringkat teratas meningkatkan kadar penghuraian sambil mengekalkan kadar perubahan yang tinggi pada kedudukan tidak dikunci dan keunikan sampel yang tinggi.
- Makalah ini melaporkannya sebagai bukti probabilistik awal; makalah tersebut tidak mendakwa pengekalan AST secara tepat, kesetaraan semantik, ketepatan fungsian atau kebolehramalan pada skala repositori.

[Baca gambaran keseluruhan penerbitan](https://aogavrilov.com/ms/publications/inspectable-control/) [Cari dalam teks penuh makalah](https://aogavrilov.com/publications/inspectable-control/full-text/)

## Sempadan skop

- Kebolehramalan bergantung pada sifat tertentu: sesuatu sistem boleh diramal dari segi sintaks, tetapi tidak dapat diramal dari segi tingkah laku.
- Penyahkodan berketentuan boleh mengulangi suntingan salah atau terlalu luas yang sama.
- Eksperimen laman yang tersedia tidak memberikan jaminan melampaui tetapan fungsi pendek yang diukur.

## Sumber utama dan berkaitan

Rujuk makalah yang dipautkan untuk kaedah asal, ukuran, dan batasan yang dinyatakan.

1. [Inspectable Control for Structure-Preserving Software Regeneration](https://aogavrilov.com/ms/publications/inspectable-control/) Eksperimen terbatas utama dan batas bukti yang dinyatakan.
2. [EfficientEdit: Accelerating Code Editing via Edit-Oriented Speculative Decoding](https://arxiv.org/abs/2506.02780) Mekanisme berorientasikan suntingan yang menggunakan semula segmen sumber yang tidak berubah.
3. [Constrained Decoding of Diffusion LLMs with Context-Free Grammars](https://arxiv.org/abs/2508.10111) Contoh mekanisme dengan kekangan formal yang jelas.

Diselenggara oleh Alexey Gavrilov . Halaman ini merumuskan bukti sedia ada dan tidak menambah hasil eksperimen selain yang terdapat dalam sumber yang dipetik.
