# كيف يمكن للذكاء الاصطناعي تحرير الشيفرة من دون إعادة توليد البرنامج بأكمله؟

Canonical HTML: https://aogavrilov.com/ar/projects/discrete-latent-generation/

Document language: ar

دليل بحثي عملي لتعديل الشيفرة موضعيًا بالنماذج التوليدية: ما الذي ينبغي أن يظل ثابتًا، وما الذي يجوز تغييره، وما الأدلة المطلوبة قبل وصف التحويل بأنه يحافظ على البنية.

منشور 25 يوليو 2026 حُدِّث 30 يوليو 2026 [Alexey Gavrilov](https://aogavrilov.com/about/)

## ما طبيعة المشكلة فعليًا؟

ليس تحرير الشفرة مجرد توليد للشفرة بموجّه أقصر. فالمحرّر يتلقى نتاجًا برمجيًا قائمًا، وتغييرًا مقصودًا، وعقد حفظ ضمنيًا. ومن ثمّ، فإن السؤال المحوري ذو شقين: **أي منطقة يجوز تغييرها، وأي خصائص في البقية يجب أن تظل مستقرة؟**

يستهدف هذا الدليل القرّاء ذوي الإلمام التقني الذين يبدؤون العمل في تحرير البرمجيات بمساعدة الذكاء الاصطناعي. وهو يميّز بين الفكرة الحدسية للتعديل الموضعي والادعاءات الأقوى المتعلقة بالحفظ الصياغي والبنيوي والدلالي والوظيفي.

## الفكرة الجوهرية

يحتاج المحرر المقيّد إلى حدّ حفظ صريح، لا إلى هدف توليد فحسب.

### ما الذي يجب أن يظل ثابتًا؟

قد تكون هذه الخاصية مقطعًا نصيًا، أو قواعد صياغة، أو توقيع API، أو منطقة في AST، أو سلوك اختبار، أو عقد تبعية، أو تمثيلًا خشنًا متعلَّمًا. ويحمي كل اختيار مفهومًا مختلفًا للاستقرار.

### ما الذي يجوز تغييره؟

تحتاج المنطقة القابلة للتحرير إلى قدر كافٍ من الحرية لحل المهمة المطلوبة. فطريقة التحكم التي تنسخ كل شيء مستقرة لكنها عديمة الجدوى؛ أما التي تعيد كتابة كل شيء فتتيح الحرية من دون موضعية.

## تصور حدسي: جدّد غرفة واحدة وحافظ على المبنى

تخيّل تجديد غرفة واحدة مع إبقاء الهيكل الحامل ووصلات السباكة والغرف المجاورة سليمة. تشبه إعادة التوليد الكامل إعادة بناء المنزل انطلاقًا من وصف لفظي. أما التحرير الموضعي فيحدّد البنية المحمية، ويفتح نطاق عمل محدودًا، وينفّذ التغيير، ثم يفحص النتيجة قبل قبولها.

**موضع قصور القياس.** الترميز الكامن المتعلَّم ليس مخططًا معماريًا معتمدًا. وقد يزيد تثبيت ترميز خشن الاستقرار البنيوي المقيس، لكنه لا يضمن بقاء عقدة بعينها في AST أو سلوك بعينه أو واجهة بعينها من دون تغيير.

## تصور أدق لإعادة التوليد الجزئية

ليكن هناك مُرمِّز يمثّل برنامجًا `x` إلى تمثيل كامن منظَّم `z` . يحدّد قناع الحفظ المواضع `L` لإبقائها ثابتة. ولا يأخذ المولّد عينات إلا من المواضع المكمّلة، مع فرض `z'l = zl` لكل موضع مقفل. ثم يحوّل مفكك الترميز التمثيل المكتمل `z'` إلى الشيفرة المصدرية.

تنشئ هذه الآلية واجهة تحكم قابلة للفحص فوق مستوى الرموز. لكن دلالتها لا تزال بحاجة إلى إثبات تجريبي: إذ يتعين على الباحثين اختبار ما تحفظه المواضع المثبّتة بعد فك الترميز، وما إذا كانت المواضع القابلة للتحرير تحتفظ بحرية كافية.

## سير عمل تحريري من أربع مراحل

1. حدّد الحدود حدّد المناطق أو الخصائص المحمية، وعرّف التغيير المقصود.
2. تمثيل المُنتَج البرمجي استخدم النص أو البنية النحوية أو سياق الاسترجاع أو الشفرات الخشنة والدقيقة المتعلَّمة.
3. إعادة التوليد انتقائيًا خذ عينات من المواضع القابلة للتحرير وحدها مع الإبقاء على القيود المحددة.
4. تحقق قبل القبول قياس الموضعية، والصياغة النحوية، والبنية، والسلوك، والآثار الجانبية غير المقصودة.

## تحرير الشفرة وإصلاح البرامج والتوليد المقيّد ليست مهمة واحدة

| المنهج | الهدف الأساسي | آلية الحفظ المعتادة | ما الذي لا يزال بحاجة إلى التحقق؟ |
| --- | --- | --- | --- |
| توليد الشيفرة كاملة | إنتاج مُنتَج برمجي كامل | الموجِّه والسياق | كل ما يقع خارج التغيير المطلوب |
| الإصلاح الآلي للبرامج | إزالة عطل مُشخَّص | تحديد موضع العطل، أو الاختبارات، أو القوالب، أو الرقع | الصحة خارج نطاق الاختبارات المتاحة والحد الأدنى من الرقعة |
| نماذج ملء الفراغات أو التحرير | تعديل مناطق نصية مختارة | بادئة أو لاحقة أو فرق أو سياق تحرير ظاهر | التغييرات البنيوية والسلوكية غير المقصودة |
| فك ترميز مقيّد بالقواعد النحوية | أبقِ المخرجات ضمن لغة شكلية | حالات فك ترميز صحيحة نحويًا | دلالة البرنامج، وصحة المهمة، وموضعية التعديل |
| تحكم كامن هرمي | إعادة توليد المواضع المتعلَّمة المحددة | شيفرات كامنة خشنة أو دقيقة مثبّتة | ما الذي تحفظه تلك الشفرات بعد فك الترميز؟ |

## كيفية قياس الموضعية والحفاظ على البنية

## أي واجهة تحكم تلائم مهمة التحرير؟

«لا تُعِد كتابة الدالة بأكملها» مطلب، لا منهج مكتمل. ابدأ بالنتيجة التي يجب أن تكون قابلة للتنبؤ، ثم اختر واجهة التحكم والأدلة الملائمة لها.

| الضمان المطلوب | واجهة التحكم الأنسب | الأدلة الواجب طلبها |
| --- | --- | --- |
| إعادة هيكلة بمساعدة الذكاء الاصطناعي مع الحفاظ على السلوك | دع نموذجًا لغويًا كبيرًا يحدّد تحويلًا أو يقترحه، ثم نفّذه بمحرك موثوق لإعادة الهيكلة حيثما أمكن. انظر [RefactoringMirror](https://arxiv.org/abs/2411.04444) . | التصريف والاختبارات والفحوص الساكنة واكتشاف إعادة الهيكلة. [SWE-Refactor](https://arxiv.org/abs/2602.03712) يجعل هذه الفحوص صريحة على مستوى المستودع. |
| تعديل الشيفرة موضعيًا من دون إعادة كتابة الدالة كاملةً | أعِد استخدام مقاطع المصدر غير المتغيرة، ولا تولّد سوى مناطق التعديل المرشحة، كما في [EfficientEdit](https://arxiv.org/abs/2506.02780) . | الفرق خارج المنطقة، ونجاح المهمة، وإعادة استخدام الوحدات الرمزية المقبولة، وما إذا كان حذف السياق يؤدي إلى إغفال تغييرات عابرة للملفات. |
| توليد الشفرة المقيّد لهندسة البرمجيات | افرِض خاصية صورية أثناء فك الترميز، كما في [انتشار مقيّد بالقواعد النحوية](https://arxiv.org/abs/2508.10111) ، أو إنشاء نقاط تحقق للبادئات الصالحة والتراجع إلى المنطقة المسؤولة وحدها، كما في [Hydra](https://arxiv.org/abs/2605.15238) . | نجاح القواعد النحوية أو المصرّف أو مدقق الأنواع، إلى جانب الاختبارات الوظيفية، والموضعية، وزمن تأخر الإصلاح، ومقدار الشيفرة الصحيحة المعاد توليدها. |
| إعادة توليد انتقائية لدوال Python مع موازنة بين الموضعية والتنوع | ثبّت مواضع كامنة مختارة، خشنة أو دقيقة، وخذ العينات من سائر المواضع فقط. | الموضعية بعد فك الترميز، والنحو، والثوابت البنيوية، وحرية التحرير، والتنوع، وعدم اليقين. ولا يكفل تثبيت المتغيرات الكامنة وحده إعادة الهيكلة. |
| توليد شفرة قابل للتنبؤ بموجب عقد صريح للحفاظ | حدّد قبل التوليد خصائص محمية قابلة للرصد وفحوص نجاح أو إخفاق، ثم اختر أضيق آلية تستطيع إنفاذها أو إظهارها. | قياس تلك الخصائص ذاتها بعد فك الترميز، والإبلاغ عن معدلات القبول والرفض والإخفاق عبر التشغيلات المتكررة. ولا يشكّل أخذ العينات الحتمي وحده ضمانًا للحفاظ. |

## الأسئلة البحثية التي يجيب عنها هذا الدليل

تحدّد هذه الإجابات الموجزة حدود الادعاءات والأدلة المعتمدة في هذا الدليل كله.

1. كيف يستطيع نموذج توليدي تعديل الشيفرة من دون إعادة كتابة الدالة بأكملها؟ حدّد حدّ التحرير قبل التوليد، وحافظ على المصدر الواقع خارجه أو أعد استخدامه، وولّد التغييرات المرشحة وحدها، وارفض المخرجات التي تُخفق في المهمة أو تغيّر المناطق المحمية. ويُعد تثبيت المتغيرات الكامنة الهرمية إحدى واجهات التحكم التجريبية، لكنه لا يضمن تطابق نطاقات المصدر. [قارن واجهات التحكم في التحرير الموضعي](https://aogavrilov.com/ar/projects/discrete-latent-generation/#control-surface) .
2. ما الدليل على أن تعديل الشفرة موضعي، لا مجرد صحيح صياغيًا؟ قياس الفرق خارج المنطقة المطلوبة بالتزامن مع نجاح المهمة، والتغير في المنطقة القابلة للتحرير، والثوابت البنيوية، والاختبارات أو الفحوص الساكنة، والتباين بين التشغيلات المتكررة. لا يثبت معدل التحليل النحوي وحده سوى السلامة النحوية. [مراجعة قائمة التحقق من أدلة موضعية التعديل](https://aogavrilov.com/ar/projects/discrete-latent-generation/#measurement) .
3. كيف ينبغي الموازنة بين موضعية تحرير الشيفرة وتنوع التوليد؟ أبلغ عن ثبات المنطقة المحمية إلى جانب الحرية في المنطقة القابلة للتحرير وتفرّد البدائل. فقد يحقق نسخ المُدخل أقصى ثبات من دون إحراز أي تقدم في المهمة، بينما قد تحقق إعادة الكتابة غير المقيَّدة أقصى تغيير على حساب موضعية التعديل. [اطّلع على الأدلة المحدودة بشأن الاستقرار وحرية التعديل](https://aogavrilov.com/ar/projects/discrete-latent-generation/#evidence) .
4. ما أوجه الاختلاف بين تحرير الشيفرة الموضعي، والتوليد المقيّد، وإصلاح البرامج؟ يركّز التحرير الموضعي على ما يجب أن يظل دون تغيير، ويفرض التوليد المقيّد خاصية شكلية للمخرجات، مثل الانتماء إلى نحوٍ معيّن، فيما يتطلب إصلاح البرامج أن يستوفي التغيير مواصفات عيب أو مهمة. ولا يثبت التركيب النحوي وحده التكافؤ الدلالي أو الصحة الوظيفية أو نجاح المهمة أو الموضعية. [قارن الأهداف الثلاثة](https://aogavrilov.com/ar/projects/discrete-latent-generation/#comparison) .
5. كيف يمكن إعادة توليد أجزاء مختارة من دالة Python مع إبقاء سائرها مستقرًا؟ حدّد المناطق المحمية والقابلة للتحرير قبل التوليد، وعدّل التمثيل القابل للتحرير وحده، ثم فك الترميز وارفض الحلول المرشحة التي تغيّر الشفرة المحمية أو تُخفق في النحو أو الاختبارات أو الفحوص الساكنة أو الثوابت الخاصة بالمهمة. تقيس تجربة المتغيرات الكامنة الهرمية الواردة استقرارًا احتماليًا على دوال من 64 رمزًا؛ ولا تضمن بقاء النطاقات أو السلوك بلا تغيير. [افحص سير عمل إعادة التوليد الانتقائي](https://aogavrilov.com/ar/projects/discrete-latent-generation/#workflow) .
6. أي استراتيجية تحكم تلائم إعادة الهيكلة الحافظة للسلوك بمساعدة الذكاء الاصطناعي؟ استخدم النموذج لتحديد تحويل أو اقتراحه، ثم نفّذه، حيثما أمكن، بمحرك موثوق لإعادة الهيكلة، وتحقق من التصريف والاختبارات والفحوص الساكنة وإعادة الهيكلة المقصودة. فالرقعة المولّدة المعقولة ظاهريًا لا تُعد دليلًا كافيًا. [فتح صف قرار إعادة الهيكلة](https://aogavrilov.com/ar/projects/discrete-latent-generation/#control-surface) .
7. ما الذي يجعل توليد الشفرة قابلًا للتنبؤ، لا مجرد قابل للتحكم؟ ضع عقدًا قابلًا للملاحظة للحفاظ، وحدّد فحوص القبول قبل اختيار المولِّد. فإمكانية التنبؤ تتوقف على ما يظل ثابتًا بعد فك الترميز والتحقق، لا على مجرد تثبيت موجّه أو قناع أو نحو أو شفرة كامنة. [حدّد عقد الحفظ](https://aogavrilov.com/ar/projects/discrete-latent-generation/#core-idea) .

## ما الذي تُظهره التجربة الحالية — وما الذي لا تُظهره

في [*التحكم القابل للفحص لإعادة توليد البرمجيات مع الحفاظ على البنية*](https://aogavrilov.com/ar/publications/inspectable-control/) ، يحوّل VQ-VAE هرمي دوال Python المكوّنة من 64 رمزًا إلى 16 موضعًا متقطعًا في المستوى الأعلى و32 موضعًا في المستوى الأدنى. ويؤدي تثبيت أربع شفرات من المستوى الأعلى إلى رفع معدل نجاح التحليل النحوي من **0.453 إلى 0.591** ، بينما تظل المواضع غير المثبّتة تتغيّر بمعدل **0.936** وتظل العينات الشرطية **فريدة بنسبة 0.998** .

هذا دليل على مقايضة مقيسة بين الاستقرار والحرية في إعداد محدود واحد. وليس ضمانًا للحفظ الدقيق لـ AST، أو التكافؤ الدلالي، أو الصحة الوظيفية، أو نجاح الإصلاح، أو السلوك على نطاق المستودع.

الدراسة المصاحبة [*أين تتدهور الجودة في توليد النصوص القصيرة المضغوطة*](https://aogavrilov.com/ar/publications/where-quality-breaks/) تضيف درسًا مهمًا في التقييم: فتحسّن المؤشرات البديلة في الفضاء الكامن لا يستلزم تحسّن المخرجات بعد فك الترميز. وينبغي فحص التمثيل والتوليد والسلوك بعد فك الترميز بوصفها مراحل منفصلة.

للاطلاع على إجراء قرار قابل لإعادة الاستخدام، راجع الدليل المصاحب حول [فصل خسارة المُرمِّز-فكّ المُرمِّز عن خسارة المولِّد](https://aogavrilov.com/ar/projects/codec-bottleneck-diagnosis/) .

## أوجه سوء الفهم الشائعة

### «نجح تحليلُه نحويًا، إذن هو صحيح.»

لا يثبت التحليل النحوي سوى السلامة النحوية. وقد يظل البرنامج مخالفًا للاختبارات أو العقود أو القصد.

### «الترميز الخشن هو عقدة في AST.»

لا، ما لم تثبت مواءمة صريحة. فقد تمزج الرموز المتعلّمة عدة عوامل سطحية وبنيوية.

### «تثبيت المتغيرات الكامنة يعني بقاء النص المصدري بلا تغيير.»

فك الترميز عملية شاملة ومتعلَّمة. ويمكن للمواضع الكامنة المثبتة أن تزيد الاستقرار من دون أن تضمن تطابق نطاق النص.

### «التغيير الأقل أفضل دائمًا.»

يحقق المحرر الذي ينسخ المدخلات استقرارًا كاملًا ولا يحرز أي تقدم في المهمة. لذا يجب قياس موضعية التغيير ونجاح التحرير معًا.

## ما الذي تقرؤه لاحقًا؟

تستخدم الأعمال القريبة واجهات تحكم مختلفة؛ ولا ينبغي اعتبار أي منها خط أساس قابلًا للاستبدال بغيره من دون مواءمة المهمة.

1. [Self-Edit: Fault-Aware Code Editor for Code Generation](https://arxiv.org/abs/2305.04087) يتعامل مع التوليد بوصفه عملية قابلة للتحرير، ويستخدم العيوب المكتشفة لتوجيه التصحيح.
2. [Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing](https://arxiv.org/abs/2305.18584) ينمذج تغييرات الشفرة السياقية عبر جولات التحرير بدلًا من إعادة التوليد من الصفر.
3. [PAFT: الضبط الدقيق المراعي للحفاظ لإصلاح البرامج بأدنى قدر من التعديل](https://arxiv.org/abs/2604.03113) يجعل الحفاظ والتغيير الأدنى صريحين في تدريب إصلاح البرامج.
4. [Constrained Decoding of Diffusion LLMs with Context-Free Grammars](https://arxiv.org/abs/2508.10111) يوضح كيف يمكن للقيود الصورية أن توفر ضمانات نحوية أثناء فك الترميز بالانتشار.
5. [تعلم التمثيلات العصبية المتقطعة](https://arxiv.org/abs/1711.00937) يقدّم VQ-VAE، الآلية التأسيسية للتمثيلات الكامنة المتقطعة المتعلَّمة.
6. [Simple and Effective Masked Diffusion Language Models](https://arxiv.org/abs/2406.07524) يقدّم إطار التوليد الانتشاري المتقطع المقنّع المستخدم مولِّدًا كامنًا في الدراسة التشخيصية المصاحبة.
7. [An Empirical Study on the Potential of LLMs in Automated Software Refactoring](https://arxiv.org/abs/2411.04444) يكتشف عمليات إعادة الهيكلة غير الآمنة التي يقترحها LLM، ويقيّم إعادة تطبيق التحويلات المكتشفة عبر محركات موثوقة لإعادة الهيكلة.
8. [SWE-Refactor: A Repository-Level Benchmark for Real-World LLM-Based Code Refactoring](https://arxiv.org/abs/2602.03712) يقيّم إعادة الهيكلة على مستوى المستودع مع الحفاظ على السلوك، بالاستعانة بالتصريف والاختبارات واكتشاف إعادة الهيكلة.
9. [EfficientEdit: تسريع تحرير الشيفرة بفك الترميز التخميني الموجّه للتحرير](https://arxiv.org/abs/2506.02780) يعيد استخدام مقاطع المصدر غير المتغيرة ويتنبأ بمواضع التحرير بدلًا من معاملة التعديل بوصفه إعادة توليد انحدارية ذاتية كاملة.
10. [Hydra: Efficient, Correct Code Generation via Checkpoint-and-Rollback Support](https://arxiv.org/abs/2605.15238) يستخدم الفحص الساكن ونقاط التحقق والتراجع الموجّه لتجنب إعادة توليد البادئات الصحيحة أصلًا بعد وقوع خطأ.

## خلاصة موجزة

إعادة توليد الشيفرة موضعيًا عقد بين **التغيير** و **الحفاظ** . وتوفّر المتغيرات الكامنة المتقطعة الهرمية وسيلة قابلة للفحص للتعبير عن ذلك العقد، غير أن التمثيل لا يكون مفيدًا إلا إذا قُيِّمت البرامج المفكوك ترميزها من حيث موضعية التغيير، والصياغة، والبنية، والسلوك، والتنوع، وعدم اليقين.

## المنشورات في هذا الاتجاه البحثي

### [Where Quality Breaks in Compressed Short-Text Generation: Staged Bottleneck Localization](https://aogavrilov.com/ar/publications/where-quality-breaks/)

مواضع تدهور الجودة في توليد النصوص القصيرة المضغوطة: تحديد مرحلي لموضع الاختناق

منهجية التشخيص FRUCT 39 2026 المؤتمر الرئيس

### [Inspectable Control for Structure-Preserving Software Regeneration](https://aogavrilov.com/ar/publications/inspectable-control/)

تحكم قابل للفحص في إعادة توليد البرمجيات مع الحفاظ على البنية

طريقة للتحكم في الفضاء الكامن FSE Companion '26 2026 الملصق المصاحب
