ما القاسم المشترك بين مصلحة الضرائب الأمريكية والبنوك وشركات الطيران والبنية التحتية الحكومية حول العالم؟ جميعها تعمل بأنظمة مدعومة بشيفرة حاسوبية عتيقة لا يجرؤ أحد على لمسها، خشية أن ينهار كل شيء.
تعتقد OpenAI أنها قد تمتلك حلاً. في 19 أكتوبر، أعلنت الشركة بأن هناك "تحسينات جوهرية" في قدرة أحدث نماذج الذكاء الاصطناعي لديها على ترحيل البرمجيات المتقادمة المكتوبة بلغات برمجة قديمة إلى شيفرة حديثة، وهو ما تدّعي أنه قد يساعد المؤسسات في "صيانة الأنظمة القديمة وتحديثها".
هذا أمر قد يكون بالغ الأهمية. فـ COBOL، وهي إحدى اللغات التي أبرزتها OpenAI، لا تزال راسخة بإصرار في أجزاء واسعة من البنية التحتية الحرجة في العالم. ورغم عقود من الجهود لطرد اللغة إلى صفحة التاريخ، فقد واصلت الانخطاط، رافضةً ببساطة أن تموت.
"لن يستخدم أي شخص رشيد لغة COBOL في مشروع تطوير جديد.".
يصعب المبالغة في وصف انتشار COBOL الواسع. فالكلمة اختصار لـ "لغة الأعمال المشتركة الموجّهة" (common business-oriented language)، وقد وُلدت لغة COBOL عام 1959. وبعد ما يقارب سبعة عقود، لا تزال موجودة في كل مكان. وفقاً لشركة IBM، فإن COBOL تشكّل الأساس لأكثر من 40 بالمائة من أنظمة الخدمات المصرفية عبر الإنترنت، وتدعم 80 بالمائة من معاملات بطاقات الائتمان الشخصية، وتتعامل مع 95 بالمائة من معاملات أجهزة الصراف الآلي. كما أنها تدعم العديد من الأنظمة الحكومية، من الضمان الاجتماعي إلى مصلحة الضرائب الأمريكية إلى الخدمات التي تديرها معظم الولايات. ويقدّر تقدير تقريبي التكلفة السنوية لأوجه القصور في COBOL على الناتج المحلي الإجمالي الأمريكي بنحو 105 مليار دولار.
لكن استبدال COBOL أمر صعب للغاية. وينطبق الأمر نفسه على لغات البرمجة القديمة الأخرى، مثل Fortran، التي لا تزال مستخدمة حتى اليوم في كل شيء من الحوسبة العلمية والتنبؤ بالطقس إلى الدراسات الجوية والمحيطية و الشيفرات الحرجة للأمن النووي. فهذه الأنظمة غالباً ما تكون بالغة الأهمية لدرجة يُخشى معها تعطيلها، وكثير من المبرمجين الذين يفهمونها تقاعدوا أو توفوا منذ زمن طويل.
ورغم كل التقدم المثير للإعجاب الذي تحقق في الحديثة البرمجيات تطوير، كانت أدوات البرمجة بالذكاء الاصطناعي تكافح لإحراز تقدم يُذكر مع هذه الأنظمة القديمة. لكن التطورات الأخيرة تشير إلى أن ذلك قد يتغير.
في أحدث تدوينة على مدونتها، أفادت OpenAI بنتائج واعدة في نقل شيفرات COBOL إلى لغات برمجة أكثر حداثة، تشمل C++ وJava وKotlin وPython وRust، دون تغيير ما يقوم به البرنامج الأصلي. وهذه النقطة الأخيرة حاسمة للمؤسسات التي تسعى للتخلص من شيفرات مثل COBOL، وتعترف OpenAI بأنه "لا تُعتبر عملية النقل ناجحة إلا إذا نجحت جميع الاختبارات".
ذات صلة
- شيكات البطالة معطّلة بسبب لغة برمجة لا يعرفها أحد تقريبًا
- مشكلة COBOL
- PHP: الحروف الثلاثة التي أوقفت مواقع في أنحاء الإنترنت اليوم
في اختبارات OpenAI نفسها، حقق GPT-6.1 Sol دقة حفاظ على السلوك بنسبة 87 بالمئة عند مستوى تفكير منخفض — أي عدد الخطوات الحسابية التي ينفقها النموذج في تحليل المشكلة قبل تقديم إجابة — وارتفعت إلى 98 بالمئة عند مستوى تفكير أعلى. وبالمقارنة، عند مستوى التفكير المنخفض، سجّل GPT-6 Astra نحو 86 بالمئة، بينما سجّل GPT-6 Sol 21 بالمئة فقط، وسجّل GPT-5.6 Sol 5 بالمئة فحسب.
"إعادة كتابة الشيفرة ليست الشيء ذاته باستبدال نظام."
كتبت OpenAI: "تُظهر نتائج التقييم هذه تقدماً نحو ترحيل أكواد أكثر دقة وبتكلفة معقولة للفرق التي تُحدّث البرمجيات التي تعتمد عليها أعمالها".
كما أبلغت الشركة عن تحسّنات في قدرة نماذجها على بناء برمجيات قواعد بيانات بلغات برمجة متنوعة، بما في ذلك COBOL.
وترى Anthropic أيضاً فرصة في الأنظمة القديمة. وفي فبراير، نشرت دليلاً تدريجياً بعنوان "خطة عمل لتحديث الأكواد" و قدّمت وكيل البرمجة لديها، Claude Code، كوسيلة لـ ترحيل أكواد COBOL إلى لغات حديثة مثل Java أو Python. ولم تقدم أي معايير أداء تُظهر مدى جودة أداء Claude Code لمثل هذه الترحيلات، لكنها أعلنت أن "اقتصاديات تحديث COBOL قد تحوّلت". وانهارت أسهم IBM، التي تستمد جزءاً من إيراداتها من مساعدة الشركات في صيانة الأنظمة القديمة، بشكل حاد بعد إعلان Anthropic.
اتفق الخبراء الذين تحدثوا إلى The Verge على أن أدوات الذكاء الاصطناعي حققت خطوات كبيرة في التعامل مع الأكواد القديمة في السنوات الأخيرة. لكنهم حذروا من أن التقدم الذي تروّج له OpenAI هذا الأسبوع لا يزال بعيداً جداً عن جعل الاستبدال الآمن للأنظمة القديمة الحرجة المبنية حوله ممكناً.
أقرّ المتحدث باسم OpenAI أوسكار هاينز في بريد إلكتروني إلى The Verge بأن الأكواد القديمة "لا تزال بعيدة عن كونها مشكلة محلولة"، وقال إن الشركة تستمع إلى ملاحظات المطورين والمؤسسات وتستكشف طرقاً لبناء اختبارات أفضل ومواصلة تحسين فهم نماذجها للغات البرمجة. ولم تقدم Anthropic تعليقاً في الوقت المناسب قبل النشر.
"التقييمات التي عرضتها OpenAI لا تعالج الصعوبة الرئيسية: تقسيم نظام قديم معقد إلى وحدات أصغر يمكن استبدالها بشكل فردي."
قال فاديم زايتسيف، الأستاذ المشارك في تطور البرمجيات بجامعة تفينته في هولندا: "إعادة كتابة الكود ليست مثل استبدال نظام". الأنظمة تحتوي بالفعل على الكثير من الأكواد — قال زايتسيف إن أكبر نظام رآه كان يتكون من 250 مليون سطر من COBOL، "وهو بالتأكيد ليس الأكبر في العالم" — لكن ذلك يمثل جزءاً فقط من المشكلة. قد يكون الكود مكتوباً بعدة لغات وهناك بيانات، مخزنة محتملاً بصيغ متنوعة، يجب أخذها في الاعتبار، كما قال. هناك أيضاً تكاملات تقنية مع أنظمة أخرى وتوقعات الأشخاص والمؤسسات يجب مراعاتها.
كل هذا التعقيد يعني أن "الذكاء الاصطناعي لا يلعب دوراً رئيسياً في الوقت الحالي في استبدال أو ترحيل أنظمة COBOL القديمة"، كما قال زايتسيف.
قال آري فان ديوursen، أستاذ هندسة البرمجيات بجامعة دلفت التقنية في هولندا، إلى The Vergeإن تقييمات OpenAI لا تستوعب هذه الحقيقة المعقدة أيضاً. وصف مدونة الشركة بأنها "سطحية"، مشيراً إلى أنها قدمت تفاصيل قليلة عن مهمة الترحيل، في حين أن معيار اللغة الخاص بها اختبر النماذج على مهمة بسيطة نسبياً ومحددة جيداً تتضمن أنظمة مشابهة لتلك التي كانت ستواجهها أثناء التدريب. وشدد أيضاً على الفجوة الهائلة بين صيانة نظام متقادم وتحديثه. قال فان ديوursen: "الصيانة بالطبع أسهل بكثير من التحديث"، واصفاً المهام التي استخدمتها OpenAI لتقييم نماذجها بأنها تبعد "سنوات ضوئية" عن التحديث الفعلي. "التقييمات التي عرضتها OpenAI لا تعالج الصعوبة الرئيسية: تقسيم نظام قديم معقد إلى وحدات أصغر يمكن استبدالها بشكل فردي."
التحدي الأكبر ليس بالضرورة إعادة كتابة الكود. قال ألاستير دونالدسون، أستاذ لغات البرمجة في كلية إمبريال كوليدج لندن: "التحدي الرئيسي هو بالفعل عدم فهم كيفية عمل النظام". مثل هذا الغياب في الفهم مشكلة "شائعة جداً" في الأنظمة القديمة التي تستخدم لغات مثل COBOL، كما قال، مضيفاً أن عدداً قليلاً جداً من الناس يعرفون كيفية البرمجة بها اليوم. وعلى الرغم من انتشارها في كل مكان، قال دونالدسون إن "لا أحد في صوابه سيستخدم COBOL في مشروع تطوير جديد".
"في حالات كثيرة، حتى الاختلافات الطفيفة في سلوك النظام قبل الترحيل وبعده غير مقبولة."
هذا يجعل الاختبار المتين أمراً حاسماً، كما قال دونالدسون. يمكن أن يكون أحد الأساليب هو تشغيل نفس سير العمل عبر النظامين القديم والجديد للتحقق من أنهما يتصرفان بشكل متطابق. يمكن للذكاء الاصطناعي أيضاً توثيق ترجمة الكود، بما يسمح بشكل مثالي للبشر الملمين باللغة القديمة بمراجعة العمل. والتحقق الصوري، الذي يستخدم تقنيات رياضية للتحقق حسابياً من أن الكود يتصرف بشكل صحيح، خيار آخر، كما قال جاكوبو ماورو، أستاذ الرياضيات وعلوم الحاسب بجامعة جنوب الدنمارك.
تُستخدم مثل هذه الأساليب بالفعل من أجل التحقق من النتائج الرياضية المولّدة بالذكاء الاصطناعي، لكن تطبيقها على الأكواد القديمة سيتطلب "قدراً هائلاً من العمل"، كما قال ماورو. استخدام تلك الأساليب يعني إمكانية فحص الكود تلقائياً، كما قال ماورو، مضيفاً أن "امتلاك هذا سيكون أفضل من وجود إنسان يتحقق من صحة الترجمة". وحتى ذلك الحين، قال إن "التحقق البشري يبقى أساسياً".
وحين تكون الأنظمة المعنية حرجة بدرجة الأنظمة العاملة على COBOL، يقول الخبراء إنه يجب أن تكون متأكداً تماماً من أن البديل يعمل. قال Zaytsev: "في كثير من الحالات حتى الاختلافات الطفيفة في سلوك النظام قبل الترحيل وبعده غير مقبولة". وبينما يمكن للذكاء الاصطناعي بلا شك تحقيق وفورات وتسريع الأمور، فإن تعقيد الأنظمة القديمة يعني أن الأتمتة الجزئية ليست كافية.
قال Zaytsev: "لنفترض أن لديك عصا سحرية من الذكاء الاصطناعي تتعامل مع 99 في المئة من الكود الخاص بك. ماذا ستفعل بالنسبة الـ 1 المتبقية؟ تلك الـ 1 في المئة قد تكون مليون سطر من الكود، موزعة في كل مكان وتفشل بطرق خفية أكثر مما يمكنك تخيله خلال حياتك".
تابع المواضيع والمؤلفين من هذه القصة لرؤية المزيد من المحتوى المشابه في صفحتك الرئيسية المخصصة وللتلقي تحديثات عبر البريد الإلكتروني.