Inspectable Control for Structure-Preserving Software Regeneration
تحكم قابل للفحص في إعادة توليد البرمجيات مع الحفاظ على البنية
إعادة توليد جزئي للشفرة على نحو قابل للتحكم باستخدام تمثيلات كامنة متقطعة هرمية.
قراءة البحث كاملًا بصيغة HTMLنص قابل للبحث، يتضمن المعادلات والجداول والأشكال والمراجع.
مخطوطة المؤلف الجاهزة للنشر متضمنة القائمة النهائية للمؤلفين وDOI. CC BY 4.0 author manuscript; the ACM DOI page remains the version of record. شروط النشر وإعادة الاستخدام.
الورقة في 30 ثانية
سؤال البحثكيف يستطيع نموذج توليدي تعديل أجزاء منتقاة من برنامج مع الحفاظ على عناصر مختارة من بنيته الخشنة؟
المشكلة
غالبًا ما يتطلب تعديل الشيفرة بمساعدة الذكاء الاصطناعي تغييرًا واحدًا محدود النطاق، مع إبقاء أجزاء مختارة من بنية البرنامج ثابتة. وقد تُحدث إعادة توليد البرنامج بأكمله تغييرات في مناطق غير ذات صلة، كما أن القيود على مستوى الرموز لا تتيح واجهة تحكم خشنة.
المنهج
تُرمَّز في الدراسة دوال Python بطول 64 رمزًا باستخدام VQ-VAE هرمي، وتُثبَّت شفرات متقطعة خشنة مختارة، ويُستخدم التوليد المتقطع المقنّع لإعادة توليد الشيفرة موضعيًا في المواضع الكامنة المتبقية.
النتيجة الرئيسة
يرفع تثبيت أربع شفرات عليا معدل نجاح التحليل النحوي من 0.453 إلى 0.591، مع استمرار تغيّر المواضع غير المثبّتة بمعدل 0.936 وبقاء العينات الشرطية فريدة بنسبة 0.998.
لماذا يهم ذلك؟
تُظهر النتائج مقايضة قابلة للقياس بين الاستقرار والحرية في تحرير الشفرة القابل للتحكم وإعادة التوليد الجزئي للبرامج. وهي تقدم دليلًا أوليًا على طبقة تحكم كامنة قابلة للفحص، لا برهانًا على التكافؤ الدلالي أو الصحة الوظيفية.
الملخص
تتطلب مسارات عمل هندسة البرمجيات، مثل الإصلاح المقيّد والتحسين المرحلي والتعديل الحافظ للبنية، التحكم فيما يتغير وما يظل ثابتًا. ويُعد التوليد على مستوى الرموز واجهة تحكم محدودة الفاعلية لهذه العمليات، لأنه يقيّد النص الظاهر محليًا بدلًا من الثوابت البنيوية الخشنة التي تسعى هندسة البرمجيات غالبًا إلى الحفاظ عليها. ندرس التمثيلات الكامنة المتقطعة الهرمية بوصفها تمثيلًا وسيطًا قابلًا للفحص للمصنوعات البرمجية: يضغط VQ-VAE هرمي دالة Python من 64 رمزًا إلى شفرات متقطعة خشنة ودقيقة، ولا يعيد التوليد المتقطع المقنّع سوى المواضع المختارة في ظل قيود جزئية. وعلى 2,000 دالة Python خضعت للمعالجة المسبقة، أدى تثبيت أربع شفرات من المستوى الأعلى إلى رفع معدل نجاح التحليل النحوي من 0.453 إلى 0.591، مع الإبقاء على تغيّر كبير في المواضع غير المثبّتة (حرية التعديل، 0.936) وعلى تفرّد للعينات يكاد يبلغ الحد الأقصى (التنوع، 0.998). وفي ظل سياق خشن ثابت، يكون التحسين في المستوى الأدنى أضعف، لكنه يظل رتيبًا، مما يدعم فهم التدرج الهرمي من الخشن إلى الدقيق. وإجمالًا، تقدم هذه النتائج أدلة أولية على طبقة تحكم عملية تتيح إعادة توليد محدودة النطاق وحافظة للبنية للمصنوعات البرمجية فوق مستوى الرموز.
منشور في وقائع المؤتمر الدولي الرابع والثلاثين لـ ACM حول أسس هندسة البرمجيات
نوع الإسهام طريقة للتحكم في الفضاء الكامن
ص 1406–1407الملصق المصاحب
النتائج الرئيسة
| الإعداد | معدل نجاح التحليل النحوي | الهيكل العام | التوقيع | التغيير غير المثبّت |
|---|---|---|---|---|
| المدخل (مقتطع) | 0.994 | 0.994 | 0.994 | — |
| إعادة بناء المُرمِّز–مُفكِّك الترميز | 0.857 | 0.848 | 0.493 | 0 |
| التوليد غير المشروط | 0.453 | 0.08 | 0 | 0.995 |
| شرطي، البادئة k=4 | 0.591 | 0.295 | 0.061 | 0.936 |
| شرطي، نطاق التوقيع | 0.6 | 0.302 | 0.063 | غير مُبلّغ عنه |
النتيجة الرئيسة. يحسّن تثبيت التمثيلات الكامنة الخشنة الاستقرار النحوي من دون إلغاء التغيير في المنطقة القابلة للتحرير؛ وتُظهر النتيجة تحكمًا بنيويًا، لا تكافؤًا وظيفيًا مضمونًا.
- مجموعة البيانات
- 2,000 دالة Python معالجة مسبقًا من مجموعة فرعية من CodeParrot Clean
- حجم العينة
- 2,000 دالة Python معالجة مسبقًا؛ ودرجة تفرّد العينات الشرطية 0.998.
- المقاييس
- معدل التحليل النحوي؛ مؤشرات بديلة للحفاظ على الهيكل والتواقيع؛ معدل التغير في المواضع غير المقفلة؛ تفرّد العينات وإنتروبيتها
- عدم اليقين
- تعرض الدراسة المؤلفة من صفحتين تقديرات نقطية بلا فواصل ثقة أو تحليل إحصائي متعدد البذور.
- الشروط
- دوال من 64 رمزًا، وفك ترميز argmax، و16 ترميزًا عالي المستوى و32 ترميزًا منخفض المستوى؛ ويستعيد التثبيت الكامل ناتج إعادة بناء المُرمِّز–مُفكِّك الترميز استعادةً مطابقة.
تنزيل النتائج:CSVJSONMarkdownالمرآة الخارجية:بطاقة مجموعة بيانات Hugging Face
ملف PDF والاستشهاد المرجعي
استشهد بهذه الورقة صيغة BibTeX هي الموصى بها. وتُنشأ جميع الصيغ أدناه من سجل المنشور نفسه.
@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 -
ملفات الاستشهاد:نص وفق APAنص IEEERISCSL-JSONSchema.org JSON-LDOAI-DC XMLOpenAIRE v4 XMLMODS XMLبيانات JATS 1.4 الوصفية بصيغة XMLالنص الكامل بصيغة JATS 1.4 XMLRDF Turtleمجموعة الروابط (JSON)مجموعة الروابط (HTTP)RO-Crate
الدليل الكامل
الدليل البحثي الكامل
المنهج
تضغط الطريقة دالة Python قصيرة إلى مستويين من الشفرات المتقطعة، وتجمّد مواضع خشنة مختارة، ثم تعيد توليد المواضع المتبقية قبل فك ترميزها مجددًا إلى شفرة برمجية.
ترميز
اضغط دالة Python مؤلفة من 64 رمزًا إلى 16 شفرة في المستوى الأعلى و32 شفرة في المستوى الأدنى باستخدام VQ-VAE هرمي.
ثبّت
اختر مواضع الشفرات الخشنة التي تمثل البنية المراد الحفاظ عليها، مثل بادئة تغطي نطاق توقيع الدالة.
إعادة التوليد
نفّذ التوليد المتقطع المقنّع على المواضع غير المثبّتة وحدها، ثم فك ترميز البنية الهرمية المكتملة إلى شيفرة مصدرية.
افحص
قياس معدل التحليل النحوي، والمؤشرات البديلة للبنية، والتغير في المواضع غير المقفلة، وتفرّد العينة قبل قبول إعادة التوليد.
الفكرة الرئيسة
يُطبّق التحكم على تمثيل متعلَّم فوق مستوى الرموز: تحدد المواضع الكامنة الخشنة مواقع صريحة يمكن تثبيت البنية فيها، مع إبقاء تفاصيل التنفيذ المجاورة قابلة للتحرير.
الاختلاف عن المقاربات ذات الصلة
تعمل القيود على مستوى الموجِّه أو الرمز في النص الظاهري. وتتيح الواجهة المقترحة نقاط تحكم متقطعة خشنة ودقيقة، وتقيس الموازنة الناتجة بين الثبات والحرية.
ما الجديد؟
يقدّم العمل طبقة تحكم هرمي كامن قابلة للفحص ويقيّمها، بغرض إعادة التوليد المقيّد للمصنوعات البرمجية.
أسئلة يساعد هذا البحث في الإجابة عنها
افتح سؤالًا للحصول على إجابة موجزة مستندة إلى الورقة. وترد حدود الأدلة المفصلة في قسم القيود.
كيف يمكن للذكاء الاصطناعي تحرير الشيفرة من دون إعادة كتابة كل شيء؟
تدرس الورقة إعادة التوليد الجزئي للشفرة فوق مستوى الرموز. يحوّل VQ-VAE هرمي دالة Python قصيرة إلى شفرات متقطعة خشنة ودقيقة؛ وتُثبّت مواضع خشنة مختارة، ولا يغيّر التوليد المتقطع المقنّع سوى المواضع الكامنة المتبقية قبل فك الترميز. ويوفر ذلك حدود حفاظ صريحة بدلًا من إعادة توليد الدالة بأكملها.
ما الأساليب التي تحفظ بنية البرنامج أثناء توليد الشفرة؟
يختبر هذا العمل التحكم الهرمي المتقطع في الفضاء الكامن. ويمكن تثبيت المواضع الكامنة الخشنة وإعادة توليد المواضع غير المثبّتة، ثم قياس معدل التحليل النحوي والمؤشرات البنيوية البديلة. وتتعلق الأدلة باستقرار بنيوي احتمالي في دوال Python قصيرة؛ ولا تثبت الحفظ الدقيق لـ AST، أو التكافؤ الدلالي، أو الصحة الوظيفية.
هل تتيح المتغيرات الكامنة المتقطعة الهرمية تحكمًا موضعيًا في الشفرة؟
في التجربة المُبلّغ عنها، التي شملت 2,000 دالة، رفع تثبيت أربع شيفرات عليا معدل التحليل من 0.453 إلى 0.591. وفي الوقت نفسه، تغيّر 0.936 من المواضع غير المثبّتة، وكانت العينات الشرطية فريدة بنسبة 0.998. تمثّل هذه النتائج دليلًا أوليًا على أن القيود الكامنة الخشنة قد تحافظ على قدر من البنية من دون إلغاء حرية التحرير الموضعي أو تنوع العينات.
كيف يمكن لتوليد الشيفرة أن يوازن بين الاستقرار البنيوي والتنوع؟
تقيّم الورقة الاستقرار والحرية معًا بدلًا من تحسين الصحة وحدها. يرفع تثبيت الشفرات الخشنة الصحة النحوية، بينما يظل التغير في المواضع غير المثبتة مرتفعًا، وتبقى العينات الشرطية متفردة بالكامل تقريبًا. وتبرهن النتيجة على مقايضة قابلة للقياس بين الاستقرار والحرية ضمن الإعداد المختبَر، لا على أمثلية عامة.
ما صلة هذا العمل بتحرير الشيفرة بمساعدة النماذج اللغوية الكبيرة؟
النموذج المختبَر هو VQ-VAE هرمي مزوّد بتوليد متقطع مقنّع، وليس نموذجًا لغويًا كبيرًا. ومع ذلك، تظل مسألة التحكم وثيقة الصلة بالتحرير بمساعدة LLM، لأن التغييرات غير الضرورية خارج المنطقة المطلوبة تمثل مشكلة عملية. وتقدّم الورقة آلية مكمّلة في الفضاء الكامن وإطارًا للتقييم، لا معيارًا مرجعيًا لتحرير LLM.
مقارنة بالمقاربات ذات الصلة
| القدرة | التحكم على مستوى الرموز | تحكم كامن هرمي |
|---|---|---|
| ثبّت البنية الخشنة | محدود | القفل الأصلي للرموز الخشنة |
| إعادة التوليد الجزئي | قيود سطحية هشّة | إعادة أخذ عينات مقنّعة للرموز المختارة |
| نقاط تحكم قابلة للفحص | لا توجد طبقة وسيطة صريحة | مواضع متقطعة خشنة ودقيقة |
| الأدلة الواردة في هذه الورقة | لم يُقيّم بوصفه خط أساس مكتملًا | تشخيصات الاستقرار النحوي وحرية التعديل |
يصف الجدول الواجهات والأدلة التي قاستها الدراسة؛ ولا يدّعي الصحة الوظيفية أو التفوق العام.
الصلة والنطاق
تكتسب الورقة أكبر صلة بالأعمال التي تتطلب تحكمًا صريحًا فيما يجوز لتحويل الشفرة المدعوم بالذكاء الاصطناعي تغييره، وفي أجزاء البرنامج التي ينبغي أن تظل مستقرة.
توليد شفرة قابل للتحكم ويحافظ على البنية
إصلاح البرامج موضعيًا وإعادة الهيكلة المحدودة
تمثيلات متقطعة هرمية للشيفرة المصدرية
التوليد المتقطع المقنّع للشفرة المصدرية
التحكم الكامن في المصنوعات البرمجية
القيود
- تقتصر الدراسة على دوال Python قصيرة مقطوعة عند 64 رمزًا.
- يستخدم التقييم فك الترميز وفق argmax ومقاييس بديلة نحوية أو بنيوية، بدلًا من اختبارات التكافؤ الوظيفي.
- لا يزال الحفاظ الدقيق على التوقيع ضعيفًا.
- التحكم في المستوى الأدنى أضعف من التحكم في المستوى الأعلى.
- لم تُحاذَ المواضع الكامنة بعدُ مع مناطق دلالية مثل نطاقات AST أو التواقيع أو بنية تدفق التحكم.
- لا تثبت النتائج صحة الإصلاح العملي أو إعادة الهيكلة أو التغييرات على مستوى المستودع.
المراجع التي استشهد بها البحث
تقابل هذه المدخلات قسم المراجع المرقّم في ملف 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.
الموارد وقابلية إعادة الإنتاج
- الناشر
- ACM
- ملف PDF محلي للنص
- مخطوطة المؤلف الجاهزة للنشر متضمنة القائمة النهائية للمؤلفين وDOI
- موارد المنشور
- تتوفر هنا المخطوطة العامة وجداول النتائج والشكل التوضيحي وملفات الاستشهاد. أما شفرة التنفيذ ونقاط التحقق فلم تُنشر علنًا.
بيان البيانات
- المصدر
- مجموعة فرعية معالجة مسبقًا من CodeParrot Clean تضم 2,000 دالة Python.
- الترخيص
- لا يعيد هذا الموقع توزيع أي ملفات من مجموعة البيانات؛ وتظل إعادة الاستخدام خاضعة لمجموعة بيانات CodeParrot الأصلية وتراخيص الشفرة المصدرية.
- المعالجة المسبقة
- تُجزّأ دوال Python إلى رموز، ثم تُقتطع أو تُستكمل بالحشو إلى 64 رمزًا قبل الترميز الهرمي.
- التقسيم
- يعرض الملصق مجموعة تقييم تضم 2,000 دالة؛ ولا تتضمن الورقة المنشورة بيانًا ثابتًا لتقسيم التدريب/التحقق.
- التنسيق
- دوال مصدرية بلغة Python، ومتواليات رموز على نمط GPT، ومتواليات شيفرة من المستوى الأعلى بطول 16، وأخرى من المستوى الأدنى بطول 32.
- الإصدار / المجموع الاختباري
- لا تورد الورقة ذات الصفحتين قيمة تحقق لمجموعة البيانات ولا معرّف لقطة ثابتة غير قابلة للتغيير.
- الحصول على البيانات
- لم يُنشر نص برمجي عام لجلب البيانات مع صفحة المنشور.
- حدود الاستخدام
- لا تمثل العينة برمجيات بحجم المستودعات، ولا لغات برمجة متعددة، ولا مهام إصلاح متحققًا منها سلوكيًا.
الإصدارات
- النسخة المنشورةACM FSE Companion, 2026
- مرآة خارجية للنص الكاملمخطوطة المؤلف بترخيص CC BY 4.0 على Hugging Face
- فتح سجل المستودعسجل Zenodo مفهرس في OpenAIRE
- فتح النص الكامل في المستودعمخطوطة المؤلف على Zenodo بترخيص CC BY 4.0؛ مكافئة نصيًا للمخطوطة المحلية
- موارد المؤلفالملصق العلمي ومجموعة الشرائح
- السجل الببليوغرافيDBLP
- فتح السجل العلميOpenAlex
- سجل مخطط الاستشهاداتSemantic Scholar
- النص الكامل الذي أتاحه المؤلفResearchGate
- ملخص بلغة مبسطةKudos
يمثل DOI المنشور المعرّف الببليوغرافي الرئيس. وتظل هذه الصفحة عنوان URL المرجعي الوحيد للمشروع عبر الإصدارات.