Inspectable Control for Structure-Preserving Software Regeneration

Проверљиво управљање регенерисањем софтвера уз очување структуре

Управљиво делимично поновно генерисање кода помоћу хијерархијских дискретних латентних репрезентација.

Alexey Gavrilov1Alan-Barsag Gazzaev1Mikhail Mozikov2Ilya Makarov2Sergey Muravyov1

  1. ITMO University, Saint Petersburg, Russian Federation
  2. AXXX, Moscow, Russian Federation

Прочитајте цео рад у HTML форматуПретражив текст с формулама, табелама, сликама и референцама.

Коначни рукопис аутора са завршним списком аутора и DOI-јем. CC BY 4.0 author manuscript; the ACM DOI page remains the version of record. Услови објављивања и поновне употребе.

Рад за 30 секунди

Истраживачко питањеКако генеративни модел може да измени изабране делове програма, а да притом очува одабране елементе његове грубе структуре?

Проблем

Измена кода уз помоћ вештачке интелигенције често мора бити ограниченог обима, док одабрани делови структуре програма остају непромењени. Поновно генерисање целог програма може нарушити неповезане области, а ограничења на нивоу токена не пружају механизам за управљање грубом структуром.

Приступ

Студија хијерархијским моделом VQ-VAE кодира Python функције од 64 токена, закључава изабране грубе дискретне кодове и користи маскирано дискретно генерисање за локализовано поновно генерисање кода на преосталим латентним позицијама.

Главни резултат

Закључавање четири кода највишег нивоа повећава стопу успешног рашчлањивања са 0.453 на 0.591, док се откључане позиције и даље мењају по стопи од 0.936, а удео јединствених условних узорака остаје 0.998.

Зашто је то важно

Резултати показују мерљив компромис између стабилности и слободе при управљивом уређивању кода и делимичном поновном генерисању програма. Они пружају прелиминарне доказе за проверљив латентни управљачки слој, а не доказ семантичке еквивалентности или функционалне исправности.

Сажетак

Токови рада у софтверском инжењерству, попут поправке уз ограничења, етапног усавршавања и измена уз очување структуре, захтевају управљање оним што се мења и оним што остаје непромењено. Генерисање на нивоу токена пружа слаб механизам управљања за те операције јер ограничава локални текст на површинском нивоу, а не грубе структурне инваријанте које се у софтверском инжењерству често настоје очувати. Хијерархијске дискретне латентне репрезентације проучавамо као проверљиву посредну репрезентацију софтверских артефаката: хијерархијски VQ-VAE компримује Python функцију од 64 токена у грубе и фине дискретне кодове, а маскирано дискретно генерисање поново генерише само одабране позиције под делимичним ограничењима. На 2,000 претходно обрађених Python функција, закључавање четири кода највишег нивоа повећава стопу успешног рашчлањивања са 0.453 на 0.591, уз знатне промене на откључаним позицијама (слобода измене, 0.936) и готово потпуну јединственост узорака (разноврсност, 0.998). При непромењеном грубом контексту, усавршавање на нижем нивоу јесте слабије, али остаје монотоно, што подржава тумачење хијерархије од грубог ка фином. У целини, ови резултати пружају прелиминарне доказе о практичном управљачком слоју који омогућава ограничено регенерисање софтверских артефаката уз очување структуре, изнад нивоа токена.

Објављено у Зборник радова 34th ACM International Conference on the Foundations of Software Engineering

Врста доприноса Метод управљања у латентном простору

стр. 1406–1407Пратећи постер

DOI https://doi.org/10.1145/3803437.3807386

Поделите овај радПодели

Кључни резултати

Кључни резултати рада „Проверљиво управљање регенерисањем софтвера уз очување структуре“
ПоставкаСтопа успешног рашчлањивањаСкелетПотписОткључана измена
Улаз (скраћен)0.9940.9940.994
Реконструкција кодеком0.8570.8480.4930
Безусловно генерисање0.4530.0800.995
Условно, префикс k=40.5910.2950.0610.936
Условно, распон потписа0.60.3020.063није наведено

Кључни резултат. Закључавање грубих латентних репрезентација побољшава синтаксичку стабилност без потискивања измена у области која се може уређивати; резултат показује управљање структуром, а не гарантовану функционалну еквивалентност.

Скуп података
2,000 претходно обрађених Python функција из подскупа CodeParrot Clean
Величина узорка
2,000 претходно обрађених Python функција; јединственост условних узорака износи 0.998.
Метрике
Стопа успешног рашчлањивања; посредни показатељи очувања костура и потписа; стопа промене откључаних позиција; јединственост и ентропија узорака
Неизвесност
Студија на две странице наводи тачкасте оцене без интервала поверења или статистичке анализе са више почетних вредности.
Услови
Функције од 64 токена, argmax декодирање, 16 кодова највишег и 32 кода нижег нивоа; потпуно закључавање тачно обнавља реконструкцију кодеком.

PDF и библиографски навод

Како цитирати овај рад BibTeX је препоручени формат. Свака варијанта у наставку генерисана је из истог записа о публикацији.

Отвори PDF
@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},
}
Преузмите .bib

Датотеке библиографских навода:Текст у формату APAТекст у формату IEEERISCSL-JSONSchema.org JSON-LDOAI-DC XMLOpenAIRE v4 XMLMODS XMLXML метаподаци према стандарду JATS 1.4Цео текст у формату JATS 1.4 XMLRDF TurtleСкуп веза (JSON)Скуп веза (HTTP)RO-Crate

DOI:https://doi.org/10.1145/3803437.3807386

Цео водич

Цео истраживачки водич

Метод

Метод компримује кратку Python функцију у два нивоа дискретних кодова, замрзава изабране грубе позиције и поново генерише преостале позиције пре декодирања назад у код.

  1. Кодирајте

    Компримујте Python функцију од 64 токена у 16 кодова вишег нивоа и 32 кода нижег нивоа помоћу хијерархијског VQ-VAE модела.

  2. Закључајте

    Изаберите грубе позиције кодова које представљају структуру коју треба очувати, попут префикса који обухвата распон потписа функције.

  3. Поново генеришите

    Спровести маскирано дискретно генерисање само над откључаним позицијама и декодирати довршену хијерархију назад у изворни код.

  4. Проверите

    Пре прихватања регенерисаног резултата измерити стопу успешног рашчлањивања, структурне посредне показатеље, промену на откључаним позицијама и јединственост узорака.

Одабрани груби кодови програма остају непромењени, док се маскирани фини дискретни кодови поново генеришу и декодирају у измењену Python функцију.
Уређивањем хијерархијских дискретних латентних кодова очувава се одабрана груба структура програма, док се фини кодови у области предвиђеној за уређивање поново генеришу.Извор: Објашњавајући дијаграм који је израдио аутор на основу објављеног метода и резултата..Услови поновне употребе: CC BY 4.0.Предложено навођење: Gavrilov et al. (2026), Inspectable Control for Structure-Preserving Software Regeneration. Преузмите SVG.

Кључна идеја

Управљање се примењује на научену репрезентацију изнад нивоа токена: грубе латентне позиције одређују експлицитна места на којима се структура може замрзнути, док оближњи детаљи имплементације остају подложни уређивању.

Разлика у односу на сродне приступе

Ограничења на нивоу упита или токена делују на текст на површинском нивоу. Предложени интерфејс пружа грубе и фине дискретне тачке управљања и мери проистекли компромис између стабилности и слободе.

Шта је ново

У раду се уводи и оцењује проверљив хијерархијски слој латентног управљања за ограничено поновно генерисање софтверских артефаката.

Питања на која овај рад помаже да се одговори

Отворите питање да бисте добили сажет одговор заснован на раду. Детаљне границе расположивих доказа наведене су у одељку Ограничења.

  1. Како вештачка интелигенција може да измени код а да не препише све?

    Рад проучава делимично поновно генерисање кода изнад нивоа токена. Хијерархијски VQ-VAE пресликава кратку Python функцију у грубе и фине дискретне кодове; изабране грубе позиције се закључавају, а маскирано дискретно генерисање пре декодирања мења само преостале латентне позиције. Тиме се, уместо поновног генерисања целе функције, успоставља изричита граница очувања.

  2. Који методи очувавају структуру програма током генерисања кода?

    Овај рад испитује хијерархијско дискретно латентно управљање. Грубе латентне позиције могу се фиксирати док се откључане позиције поново генеришу, након чега се мере стопа успешног рашчлањивања и структурни посредни показатељи. Докази се односе на вероватносну структурну стабилност кратких Python функција; њима се не утврђују тачно очување AST-а, семантичка еквивалентност ни функционална исправност.

  3. Могу ли хијерархијске дискретне латентне репрезентације омогућити локализовано управљање кодом?

    У приказаном експерименту са 2,000 функција, закључавање четири кода највишег нивоа повећало је стопу успешног рашчлањивања са 0.453 на 0.591. Истовремено се променило 0.936 откључаних позиција, а удео јединствених условних узорака износио је 0.998. Ови резултати представљају прелиминарни показатељ да груба ограничења у латентном простору могу очувати део структуре без укидања слободе локалног уређивања или разноврсности узорака.

  4. Како се при генерисању кода могу уравнотежити структурна стабилност и разноврсност?

    Рад заједнички вреднује стабилност и слободу, уместо да оптимизује само ваљаност. Закључавање грубих кодова повећава синтаксичку ваљаност, док промена на откључаним позицијама остаје велика, а условни узорци готово потпуно јединствени. Резултат показује мерљив компромис између стабилности и слободе у испитаној конфигурацији, а не универзални оптимум.

  5. Како је овај рад повезан са уређивањем кода уз подршку великих језичких модела?

    Испитани модел је хијерархијски VQ-VAE са маскираним дискретним генерисањем, а не велики језички модел. Проблем управљања ипак је значајан за уређивање уз помоћ LLM-а, јер непотребне измене изван захтеване области представљају практичан проблем. Допринос рада је комплементарни механизам у латентном простору и оквир за евалуацију, а не референтно мерило за уређивање помоћу LLM-а.

Поређење са сродним приступима

Чињенично поређење рада „Проверљиво управљање регенерисањем софтвера уз очување структуре“ са сродним приступима
МогућностУправљање на нивоу токенаХијерархијско латентно управљање
Замрзните грубу структуруОграниченоИзворно закључавање грубих кодова
Делимично регенерисањеКрхка површинска ограничењаМаскирано поновно узорковање изабраних кодова
Контролне тачке подложне провериБез експлицитног међуслојаГрубе и фине дискретне позиције
Докази у овом радуНије оцењено као потпуна полазна основаДијагностика синтаксичке стабилности и слободе измена

Табела описује интерфејсе и измерене доказе из студије; њоме се не тврди функционална исправност нити универзална надмоћ.

Релевантност и обухват

Рад је најрелевантнији за истраживања којима је потребно изричито управљање тиме шта трансформација кода потпомогнута вештачком интелигенцијом сме да промени, а који делови програма треба да остану стабилни.

  1. Управљиво генерисање кода уз очување структуре

  2. Локализована поправка програма и ограничено рефакторисање

  3. Хијерархијске дискретне репрезентације изворног кода

  4. Маскирано дискретно генерисање изворног кода

  5. Управљање софтверским артефактима у латентном простору

Погледајте ограничења и границе важења доказа

Ограничења

  • Студија је ограничена на кратке Python функције скраћене на 64 токена.
  • Евалуација користи argmax декодирање и синтаксичке или структурне посредне мере уместо тестова функционалне еквивалентности.
  • Тачно очување потписа и даље је слабо.
  • Управљање на нижем нивоу слабије је од управљања на највишем нивоу.
  • Латентне позиције још нису поравнате са семантичким областима као што су распони AST-а, сигнатуре или структура тока управљања.
  • Резултати не утврђују исправност за практичне поправке, рефакторисање или измене на нивоу репозиторијума.

Референце цитиране у раду

Ове ставке одговарају нумерисаном одељку References у PDF верзији рада.

  1. Ali Razavi, Aaron van den Oord, Oriol Vinyals. . Generating Diverse High-Fidelity Images with VQ-VAE-2. Advances in Neural Information Processing Systems.
  2. 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.
  3. 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.
  4. Shraddha Barke, Michael B. James, Nadia Polikarpova. . Grounded Copilot: How Programmers Interact with Code-Generating Models. Proceedings of the ACM on Programming Languages.
  5. 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.

Ресурси и репродуктивност

Издавач
ACM
Ресурси публикације
Овде су доступни јавни рукопис, табеле резултата, илустративна слика и датотеке за цитирање. Имплементациони код и контролне тачке нису јавно објављени.

Изјава о подацима

Извор
Претходно обрађен подскуп CodeParrot Clean који садржи 2,000 Python функција.
Лиценца
Овај сајт не дистрибуира датотеке скупа података; поновна употреба и даље подлеже условима изворног скупа CodeParrot и лиценцама изворног кода.
Претходна обрада
Python функције се токенизују, а затим скраћују или допуњавају на 64 токена пре хијерархијског кодирања.
Подела
Постер наводи скуп за вредновање од 2,000 функција; непроменљиви манифест поделе на скуп за обучавање и валидацију није приложен јавном раду.
Формат
Изворне Python функције, секвенце токена у стилу GPT-а, секвенце кода вишег нивоа дужине 16 и секвенце нижег нивоа дужине 32.
Верзија / контролни збир
У раду на две странице нису наведени контролни збир скупа података нити идентификатор непроменљивог снимка.
Прибављање
Уз страницу публикације није објављена јавна скрипта за прибављање података.
Ограничења употребе
Узорак није репрезентативан за софтвер на нивоу репозиторијума, више програмских језика нити задатке поправке чије је понашање проверено.

Верзије

  1. Објављена верзијаACM FSE Companion, 2026
  2. Отвори запис у репозиторијумуЗапис на Zenodo-у индексиран у OpenAIRE-у
  3. Ресурси аутораПостер и слајдови
  4. Библиографски записDBLP
  5. Отвори научни записOpenAlex
  6. Запис у графу цитатаSemantic Scholar
  7. Пун текст који је аутор поделиоResearchGate
  8. Сажетак разумљив широј публициПохвале

Објављени DOI је примарни библиографски идентификатор. Ова страница остаје једини канонски URL пројекта у свим верзијама.