← أحدث الأبحاث
💬 NLP

Fine-tuned LLM-based Code Migration Framework

تقدم هذه الورقة إطار عمل لنماذج لغوية كبيرة مضبوطة بدقة تعمل بفعالية على أتمتة هجرة الأنظمة القائمة على لغة SQL من Oracle PL/SQL إلى PostgreSQL عبر دمج تقنيات الهندسة التقليدية، وتحليل الأخطاء التكراري، وملاحظات الخبراء لتقليل الأخطاء النحوية بشكل كبير وتحسين منطق قواعد البيانات.

المؤلفون الأصليون: Oleg Grynets, Vasyl Lyashkevych, Dmytro Baran, Maksym Orliansky, Taras Zelenyy, Markiian Leshchyshyn

نُشر 2026-02-06
📖 4 دقيقة قراءة☕ قراءة في استراحة قهوة

المؤلفون الأصليون: Oleg Grynets, Vasyl Lyashkevych, Dmytro Baran, Maksym Orliansky, Taras Zelenyy, Markiian Leshchyshyn

البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل

تخيل أن لديك مكتبة ضخمة من أدلة التعليمات المكتوبة بلغة قديمة ومعقدة (Oracle SQL). تريد شركتك الانتقال إلى لغة جديدة وحديثة (PostgreSQL) لتوفير المال والعمل بشكل أسرع. المشكلة هي أن هذه الأدلة القديمة ضخمة، وتتكون من آلاف الملفات، واللغتان لا تختلفان في الكلمات فحسب، بل تختلفان تماماً في القواعد، والمنطق، والآليات.

يصف هذا البحث نظاماً ذكياً ومؤتمتاً طوره باحثون في شركة EPAM Systems لترجمة هذه الأدلة القديمة إلى اللغة الجديدة دون كسر أي شيء. وإليك كيف فعلوا ذلك، مشروحاً ببساة:

1. المشكلة: الأمر ليس مجرد "بحث واستبدال"

لا يمكنك استخدام قاموس بسيط للترجمة لأن "الجمل" في النظام القديم (Oracle) غالباً ما تعني شيئاً مختلفاً تماماً في النظام الجديد (PostgreSQL). الأدوات التقليدية (مثل تطبيقات الترجمة العادية) تحاول اتباع قواعد صارمة، لكنها غالباً ما تتعثر أمام القصص المعقدة، أو تتجاهل أجزاء ضخمة من الدليل، أو تكتب كلاماً غير مفهوم.

2. الحل: روبوت "المترجم الخارق"

بنى الفريق روبوتاً ذكياً مخصصاً (نموذج لغوي كبير - LLM) وعلمه خصيصاً لهذه المهمة. لم يكتفوا بمطالبته بـ "الترجمة" فحسب، بل دربوه باستخدام طريقة خاصة مكونة من خطوتين:

  • الخطوة 1: تعلم القواعد (الفصل الدراسي): أولاً، علموا الذكاء الاصطناعي فهم قواعد وبنية كلتا اللغتين بشكل منفصل. قدموا له أمثلة حول كيف يبدو أمر معين في Oracle وكيف ينبغي وصفه باللغة الإنجليزية البسيطة. ساعد هذا الذكاء الاصطناعي على فهم "روح" وهيكل الكود قبل محاولة ترجمته.
  • الخطوة 2: تعلم الترجمة (التدريب العملي): بمجرد أن فهم الذكاء الاصطناعي القواعد، أعطوه أزواجاً مباشرة: "هذه جملة من Oracle، وهذه هي جملة PostgreSQL الصحيحة". هنا تعلم عملية التحويل الفعلية.

3. شبكة الأمان "العنصر البشري في الحلقة"

حتى الروبوتات الذكية ترتكب الأخطاء. لذا، يحتوي النظام على فريق مراقبة جودة مدمج:

  • المُدقق الآلي: يقوم النظام تلقائياً بفحص الكود الجديد بحثاً عن أخطاء القواعد (Syntax) والأخطاء المنطقية.
  • المراجعون الخبراء: عندما يجد النظام شيئاً غير متأكد منه (مثل تعليمات نادرة أو معقدة جداً)، فإنه يضع علامة عليه ليراجعه خبير بشري. يقوم الخبير بإصلاح الخطأ، ويتعلم النظام من هذا التصحيح ليصبح أفضل في المرة القادمة. الأمر يشبه طالباً يحصل على درجة وتعليق، ثم يدرس ذلك الموضوع تحديداً قبل الاختبار التالي.

4. "ورقة الغش" (RAG)

في بعض الأحيان، يحتاج الذكاء الاصطناعي إلى البحث عن قواعد محددة أثناء عمله. بنى الباحثون نوعين من "أوراق الغش" (قواعد المعرفة):

  • الاستراتيجية (أ) (الموسوعة): يمكن للذكاء الاصطناعي البحث عن الكود الأصلي، وقواعد اللغة الجديدة الرسمية، وأدلة الترجمة التي كتبها الخبراء، وكل ذلك في آن واحد.
  • الاستراتيجية (ب) (كتاب الأمثلة): ينظر الذكاء الاصطناعي فقط إلى كتاب يحتوي على أمثلة "قبل وبعد" لتخمين أفضل ترجمة.
    وجدوا أن امتلاك "الموسوعة" (الاستراتيجية أ) ساعد الذكاء الاصطناعي على فهم السياق بشكل أفضل، خاصة في الأجزاء الصعبة.

5. "مقياس الفجوة" (معرفة ما يجب دراسته)

من أروع أجزاء نظامهم هو كيف يعرف ما يجب دراسته تالياً. بعد كل جولة ترجمة، يحسب النظام "درجة الفجوة" لأنواع مختلفة من الكود:

  • "نحن بارعون في ترجمة أوامر الرياضيات الأساسية."
  • "لكننا سيئون جداً في ترجمة سكربتات النسخ الاحتياطي."
    يستخدم النظام هذه الدرجة ليخبر الفريق البشري: "لا تضيعوا الوقت في دراسة الرياضيات؛ اذهبوا وابحثوا لنا عن 50 مثالاً إضافياً لسكربتات النسخ الاحتياطي". هذا يضمن أن يصبح الذكاء الاصطناعي أفضل تماماً في النقاط التي يضعف فيها، بدلاً من مجرد التخمين.

6. النتائج: توفير هائل للوقت

عندما اختبروا نظام الذكاء الاصطناعي الجديد مقابل الأدوات القدية القائمة على القواعد:

  • الدقة: ارتكب الذكاء الاصطناعي أخطاء أقل بكثير وترجم جزءاً أكبر من الكود بشكل صحيح.
  • الاكتمال: كانت الأدوات القديمة غالباً ما تستسلم أمام الجمل المعقدة، تاركة إياها فارغة. أما الذكاء الاصطناعي فقد حاول ترجمتها ونجح في معظم الأحيان.
  • المال والوقت: حسب الباحثون أنه بالنسبة لمشروع يحتوي على 100,000 ملف، يمكن لنظام الذكاء الاصطناعي الجديد ترجمة حوالي 27,000 ملف إضافي مقارنة بالأداة القديمة.
    • التشبيه: إذا كان بإمكان الخبير البشري ترجمة 150 ملفاً في اليوم، فإن الأداة القديمة ستترك كومة من العمل تتطلب من الإنسان 9 أشهر لإنهاءها يدوياً. لقد أنجز الذكاء الاصطناعي هذا العمل تلقائياً في جزء بسيط من هذا الوقت.

ملخص

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

غارق في أبحاث مجالك؟

تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.

جرّب Digest →