Inspectable Control for Structure-Preserving Software Regeneration
Preskúmateľné riadenie opätovného generovania softvéru so zachovaním štruktúry
Kontrolovateľné čiastočné opätovné generovanie kódu pomocou hierarchických diskrétnych latentných reprezentácií.
Prečítať celý článok vo formáte HTMLPrehľadávateľný text so vzorcami, tabuľkami, obrázkami a bibliografickými odkazmi.
Autorský rukopis pripravený na tlač s konečným zoznamom autorov a DOI. CC BY 4.0 author manuscript; the ACM DOI page remains the version of record. Podmienky zverejnenia a opätovného použitia.
Článok za 30 sekúnd
Výskumná otázkaAko môže generatívny model upraviť vybrané časti programu a pritom zachovať zvolené prvky jeho hrubej štruktúry?
Problém
Pri úprave kódu s podporou AI často treba vykonať jedinú ohraničenú zmenu a pritom zachovať vybrané prvky štruktúry programu. Opätovné vygenerovanie celého programu môže zasiahnuť aj nesúvisiace oblasti a obmedzenia na úrovni tokenov neposkytujú rozhranie na riadenie hrubej štruktúry.
Prístup
Štúdia kóduje 64-tokenové funkcie v jazyku Python pomocou hierarchického VQ-VAE, uzamyká vybrané hrubé diskrétne kódy a na lokálne opätovné generovanie kódu vo zvyšných latentných pozíciách používa maskované diskrétne generovanie.
Hlavný výsledok
Uzamknutie štyroch kódov najvyššej úrovne zvyšuje mieru úspešnej syntaktickej analýzy z 0.453 na 0.591, pričom miera zmien odomknutých pozícií naďalej dosahuje 0.936 a podiel jedinečných podmienených vzoriek zostáva na úrovni 0.998.
Prečo je to dôležité
Výsledky ukazujú merateľný kompromis medzi stabilitou a voľnosťou pri riadenej úprave kódu a čiastočnom opätovnom generovaní programu. Poskytujú prvotné dôkazy o preskúmateľnej vrstve riadenia v latentnom priestore, nie dôkaz sémantickej ekvivalencie ani funkčnej správnosti.
Abstrakt
Postupy softvérového inžinierstva, ako sú opravy s obmedzeniami, etapové zdokonaľovanie a úpravy so zachovaním štruktúry, vyžadujú riadenie toho, čo sa smie zmeniť a čo má zostať nemenné. Generovanie na úrovni tokenov je pri týchto operáciách slabým riadiacim rozhraním, pretože obmedzuje lokálnu povrchovú podobu kódu, nie hrubé štruktúrne invarianty, ktoré sa softvérové inžinierstvo často usiluje zachovať. Hierarchické diskrétne latentné reprezentácie skúmame ako preskúmateľnú medzireprezentáciu softvérových artefaktov: hierarchický VQ-VAE komprimuje 64-tokenovú funkciu v jazyku Python na hrubé a jemné diskrétne kódy a maskované diskrétne generovanie pri čiastočných obmedzeniach opätovne generuje iba vybrané pozície. Na 2,000 predspracovaných funkciách v jazyku Python zvýšilo uzamknutie štyroch kódov najvyššej úrovne mieru úspešnej syntaktickej analýzy z 0.453 na 0.591, pričom sa zachovala výrazná miera zmien v odomknutých pozíciách (voľnosť úprav, 0.936) aj takmer maximálna jedinečnosť vzoriek (rozmanitosť, 0.998). Pri pevnom hrubom kontexte je zdokonaľovanie na nižšej úrovni slabšie, zostáva však monotónne, čo podporuje interpretáciu hierarchie od hrubej k jemnej úrovni. Tieto výsledky celkovo predstavujú prvotné dôkazy o praktickej vrstve riadenia, ktorá nad úrovňou tokenov umožňuje ohraničené opätovné generovanie softvérových artefaktov so zachovaním štruktúry.
Miesto publikovania Zborník 34. medzinárodnej konferencie ACM o základoch softvérového inžinierstva
Typ prínosu Metóda riadenia v latentnom priestore
s. 1406–1407Sprievodný poster
Kľúčové výsledky
| Nastavenie | Úspešnosť syntaktickej analýzy | Kostra | Signatúra | Odomknutá zmena |
|---|---|---|---|---|
| Vstup (skrátený) | 0.994 | 0.994 | 0.994 | — |
| Rekonštrukcia kodeku | 0.857 | 0.848 | 0.493 | 0 |
| Nepodmienené generovanie | 0.453 | 0.08 | 0 | 0.995 |
| Podmienené, prefix k=4 | 0.591 | 0.295 | 0.061 | 0.936 |
| Podmienené, rozsah signatúry | 0.6 | 0.302 | 0.063 | neuvedené |
Kľúčový výsledok. Uzamknutie hrubých latentných reprezentácií zvyšuje syntaktickú stabilitu bez potlačenia zmien v upravovateľnej oblasti; výsledok dokladá riadenie štruktúry, nie zaručenú funkčnú ekvivalenciu.
- Dátová množina
- 2 000 predspracovaných funkcií v jazyku Python z podmnožiny CodeParrot Clean
- Veľkosť vzorky
- 2 000 predspracovaných funkcií v jazyku Python; jedinečnosť podmienených vzoriek je 0,998.
- Metriky
- Úspešnosť syntaktickej analýzy; zástupné ukazovatele zachovania kostry a signatúr; miera zmien v odomknutých pozíciách; jedinečnosť a entropia vzoriek
- Neistota
- Dvojstranová štúdia uvádza bodové odhady bez intervalov spoľahlivosti či štatistickej analýzy s viacerými počiatočnými nastaveniami.
- Podmienky
- 64-tokenové funkcie, dekódovanie argmax, 16 kódov najvyššej a 32 kódov nižšej úrovne; úplné uzamknutie presne obnoví rekonštrukciu kodekom.
Stiahnuť výsledky:CSVJSONMarkdownExterné zrkadlo:Karta dátového súboru Hugging Face
PDF a citácia
Citovať túto prácu Odporúčaným formátom je BibTeX. Všetky nižšie uvedené varianty sa generujú z rovnakého publikačného záznamu.
@inproceedings{Gavrilov2026InspectableControl,
title = {Inspectable Control for Structure-Preserving Software Regeneration},
author = {Gavrilov, Alexey and Gazzaev, Alan-Barsag and Mozikov, Mikhail and Makarov, Ilya and Muravyov, Sergey},
booktitle = {Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering},
publisher = {ACM},
year = {2026},
pages = {1406--1407},
doi = {10.1145/3803437.3807386},
url = {https://doi.org/10.1145/3803437.3807386},
isbn = {979-8-4007-2636-1},
}
Gavrilov, A., Gazzaev, A.-B., Mozikov, M., Makarov, I., and Muravyov, S. (2026). Inspectable Control for Structure-Preserving Software Regeneration. In Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering (pp. 1406–1407). ACM. https://doi.org/10.1145/3803437.3807386A. Gavrilov, A.-B. Gazzaev, M. Mozikov, I. Makarov, and S. Muravyov, “Inspectable Control for Structure-Preserving Software Regeneration,” in Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering, 2026, pp. 1406–1407, doi: 10.1145/3803437.3807386.TY - CPAPER
TI - Inspectable Control for Structure-Preserving Software Regeneration
AU - Gavrilov, Alexey
AU - Gazzaev, Alan-Barsag
AU - Mozikov, Mikhail
AU - Makarov, Ilya
AU - Muravyov, Sergey
PY - 2026
DA - 2026-07-05
T2 - Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering
SP - 1406
EP - 1407
PB - ACM
DO - 10.1145/3803437.3807386
UR - https://doi.org/10.1145/3803437.3807386
SN - 979-8-4007-2636-1
ER -
Citačné súbory:Text podľa APAText podľa normy IEEERISCSL-JSONSchema.org JSON-LDOAI-DC XMLOpenAIRE v4 XMLMODS XMLMetadáta XML podľa JATS 1.4Plný text vo formáte JATS 1.4 XMLRDF TurtleSúbor odkazov (JSON)Súbor odkazov (HTTP)RO-Crate
Úplná príručka
Úplná výskumná príručka
Metóda
Metóda komprimuje krátku funkciu jazyka Python do dvoch úrovní diskrétnych kódov, zafixuje vybrané hrubé pozície a pred spätným dekódovaním na kód opätovne vygeneruje zostávajúce pozície.
Zakódovať
Pomocou hierarchického VQ-VAE skomprimujte funkciu v jazyku Python so 64 tokenmi do 16 kódov vyššej úrovne a 32 kódov nižšej úrovne.
Uzamknúť
Vyberte hrubé pozície kódov reprezentujúce štruktúru, ktorú treba zachovať, napríklad prefix pokrývajúci rozsah signatúry funkcie.
Opätovne generovať
Vykonať maskované diskrétne generovanie iba nad odomknutými pozíciami a dokončenú hierarchiu dekódovať späť do zdrojového kódu.
Skontrolovať
Pred prijatím regenerovaného výstupu zmerajte úspešnosť syntaktickej analýzy, zástupné ukazovatele štruktúry, zmenu v odomknutých pozíciách a jedinečnosť vzoriek.
Kľúčová myšlienka
Kontrola sa uplatňuje na naučenú reprezentáciu nad úrovňou tokenov: hrubé latentné pozície určujú explicitné miesta, na ktorých možno štruktúru zmraziť, zatiaľ čo blízke implementačné detaily zostávajú upravovateľné.
Odlišnosť od príbuzných prístupov
Obmedzenia na úrovni inštrukcie alebo tokenov pôsobia na povrchovú podobu textu. Navrhované rozhranie sprístupňuje hrubé aj jemné diskrétne kontrolné body a meria výsledný kompromis medzi stabilitou a voľnosťou.
Čo je nové
Práca predstavuje a hodnotí kontrolovateľnú vrstvu hierarchického riadenia v latentnom priestore na ohraničenú regeneráciu softvérových artefaktov.
Otázky, na ktoré tento článok pomáha odpovedať
Otvorte otázku a získajte stručnú odpoveď podloženú článkom. Podrobné hranice dôkazov sú uvedené v časti Obmedzenia.
Ako môže AI upravovať kód bez toho, aby všetko prepísala?
Článok skúma čiastočné opätovné generovanie kódu nad úrovňou tokenov. Hierarchický VQ-VAE mapuje krátku funkciu jazyka Python na hrubé a jemné diskrétne kódy; vybrané hrubé pozície sa uzamknú a maskované diskrétne generovanie pred dekódovaním zmení iba zostávajúce latentné pozície. Tým sa namiesto opätovného generovania celej funkcie vytvára explicitná hranica zachovania.
Ktoré metódy zachovávajú štruktúru programu počas generovania kódu?
Táto práca testuje hierarchické diskrétne riadenie v latentnom priestore. Hrubé latentné pozície možno zafixovať, zatiaľ čo odomknuté pozície sa regenerujú; následne sa meria podiel úspešného syntaktického rozboru a zástupné ukazovatele štruktúry. Dôkazy sa týkajú pravdepodobnostnej štruktúrnej stability krátkych funkcií jazyka Python; nepreukazujú presné zachovanie AST, sémantickú ekvivalenciu ani funkčnú správnosť.
Môžu hierarchické diskrétne latentné reprezentácie umožniť lokalizovanú kontrolu nad kódom?
V opísanom experimente s 2 000 funkciami zvýšilo uzamknutie štyroch kódov najvyššej úrovne mieru úspešnej syntaktickej analýzy z 0.453 na 0.591. Zároveň sa zmenilo 0.936 odomknutých pozícií a podiel jedinečných podmienených vzoriek dosiahol 0.998. Tieto výsledky predstavujú predbežný dôkaz, že hrubé latentné obmedzenia môžu zachovať časť štruktúry bez odstránenia voľnosti lokálnych úprav či rozmanitosti vzoriek.
Ako možno pri generovaní kódu vyvážiť stabilitu štruktúry a rozmanitosť?
Článok hodnotí stabilitu a voľnosť spoločne namiesto optimalizácie samotnej platnosti. Uzamknutie hrubých kódov zvyšuje syntaktickú platnosť, zatiaľ čo miera zmien v neuzamknutých pozíciách zostáva vysoká a podmienené vzorky zostávajú takmer úplne jedinečné. Výsledok preukazuje merateľný kompromis medzi stabilitou a voľnosťou v testovanej konfigurácii, nie univerzálne optimum.
Ako táto práca súvisí s úpravou kódu podporovanou veľkými jazykovými modelmi?
Testovaným modelom je hierarchický VQ-VAE s maskovanou diskrétnou difúziou, nie veľký jazykový model. Problém riadenia je napriek tomu relevantný pre úpravy podporované LLM, pretože zbytočné zmeny mimo požadovanej oblasti predstavujú praktický problém. Článok prináša doplnkový mechanizmus v latentnom priestore a rámec hodnotenia, nie referenčný test úprav pomocou LLM.
Porovnanie s príbuznými prístupmi
| Schopnosť | Riadenie na úrovni tokenov | Hierarchická kontrola latentného priestoru |
|---|---|---|
| Zafixujte hrubú štruktúru | Obmedzené | Natívne uzamknutie hrubých kódov |
| Čiastočná regenerácia | Krehké povrchové obmedzenia | Maskované prevzorkovanie vybraných kódov |
| Kontrolné body umožňujúce kontrolu zásahov | Bez explicitnej medzivrstvy | Hrubé a jemné diskrétne pozície |
| Dôkazy v tejto práci | Nehodnotené ako úplná referenčná metóda | Diagnostika syntaktickej stability a voľnosti úprav |
Tabuľka opisuje rozhrania a dôkazy namerané v štúdii; netvrdí funkčnú správnosť ani univerzálnu prevahu.
Relevantnosť a rozsah
Článok je najrelevantnejší pre práce vyžadujúce explicitnú kontrolu nad tým, čo môže transformácia kódu podporovaná umelou inteligenciou zmeniť a ktoré časti programu majú zostať stabilné.
Kontrolovateľné generovanie kódu so zachovaním štruktúry
Lokalizovaná oprava programov a ohraničená refaktorizácia
Hierarchické diskrétne reprezentácie zdrojového kódu
Maskované diskrétne generovanie zdrojového kódu
Latentné riadenie softvérových artefaktov
Obmedzenia
- Štúdia sa obmedzuje na krátke funkcie jazyka Python skrátené na 64 tokenov.
- Hodnotenie používa dekódovanie argmax a syntaktické či štruktúrne zástupné ukazovatele namiesto testov funkčnej ekvivalencie.
- Presné zachovanie signatúry zostáva nedostatočné.
- Riadenie na nižšej úrovni je slabšie než riadenie na najvyššej úrovni.
- Latentné pozície zatiaľ nie sú zosúladené so sémantickými oblasťami, ako sú úseky AST, signatúry alebo štruktúra toku riadenia.
- Výsledky nepreukazujú správnosť pri praktických opravách, refaktorizácii ani zmenách na úrovni repozitára.
Literatúra citovaná v článku
Tieto položky zodpovedajú číslovanému zoznamu literatúry v dokumente PDF.
- Ali Razavi, Aaron van den Oord, Oriol Vinyals. . Generating Diverse High-Fidelity Images with VQ-VAE-2. Advances in Neural Information Processing Systems.
- Jacob Austin, Daniel D. Johnson, Jonathan Ho, Daniel Tarlow, Rianne van den Berg. . Structured Denoising Diffusion Models in Discrete State-Spaces. Advances in Neural Information Processing Systems.
- Subham Sekhar Sahoo, Marianne Arriola, Yair Schiff, Aaron Gokaslan, Edgar Marroquin, Justin T Chiu, Alexander Rush, Volodymyr Kuleshov. . Simple and Effective Masked Diffusion Language Models. Advances in Neural Information Processing Systems.
- Shraddha Barke, Michael B. James, Nadia Polikarpova. . Grounded Copilot: How Programmers Interact with Code-Generating Models. Proceedings of the ACM on Programming Languages.
- Fengji Zhang, Bei Chen, Yue Zhang, Jacky Keung, Jin Liu, Daoguang Zan, Yi Mao, Jian-Guang Lou, Weizhu Chen. . RepoCoder: Repository-Level Code Completion Through Iterative Retrieval and Generation. Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing.
Zdroje a reprodukovateľnosť
- Vydavateľ
- ACM
- Lokálny text vo formáte PDF
- Autorský rukopis pripravený na tlač s konečným zoznamom autorov a DOI
- Zdroje k publikácii
- Verejný rukopis, tabuľky výsledkov, vysvetľujúci obrázok a citačné súbory sú dostupné na tomto mieste. Implementačný kód ani kontrolné body neboli verejne sprístupnené.
Vyhlásenie o údajoch
- Zdroj
- Predspracovaná podmnožina CodeParrot Clean obsahujúca 2 000 funkcií v jazyku Python.
- Licencia
- Táto lokalita ďalej nešíri žiadne súbory dátového súboru; opätovné použitie naďalej podlieha podmienkam pôvodného dátového súboru CodeParrot a licenciám zdrojového kódu.
- Predspracovanie
- Funkcie v jazyku Python sa pred hierarchickým kódovaním tokenizujú a skrátia alebo doplnia na 64 tokenov.
- Rozdelenie
- Poster uvádza hodnotiacu množinu s 2 000 funkciami; verejný článok neobsahuje nemenný manifest rozdelenia na trénovaciu a validačnú množinu.
- Formát
- Zdrojové funkcie v jazyku Python, sekvencie tokenov v štýle GPT, sekvencie kódu najvyššej úrovne s dĺžkou 16 a sekvencie nižšej úrovne s dĺžkou 32.
- Verzia / kontrolný súčet
- Dvojstranový článok neuvádza kontrolný súčet dátového súboru ani nemenný identifikátor snímky.
- Získanie údajov
- Na stránke publikácie nie je zverejnený verejný skript na získanie údajov.
- Obmedzenia použitia
- Vzorka nie je reprezentatívna pre softvér v rozsahu repozitára, viacero programovacích jazykov ani úlohy opráv overované na úrovni správania.
Verzie
- Publikovaná verziaACM FSE Companion, 2026
- Externé zrkadlo plného textuAutorský rukopis s licenciou CC BY 4.0 na Hugging Face
- Otvoriť záznam v repozitáriZáznam Zenodo indexovaný službou OpenAIRE
- Otvoriť plný text v repozitáriAutorský rukopis na Zenodo s licenciou CC BY 4.0; textovo zhodný s lokálnym rukopisom
- Autorské materiályPoster a prezentácia
- Bibliografický záznamDBLP
- Otvoriť odborný záznamOpenAlex
- Záznam citačného grafuSemantic Scholar
- Plný text sprístupnený autoromResearchGate
- Zhrnutie zrozumiteľným jazykomUznanie
Publikované DOI je primárnym bibliografickým identifikátorom. Táto stránka zostáva jedinou kanonickou adresou URL projektu naprieč verziami.