قام OpenAI Codex بتأليف لعبة DOS كاملة بنمط Asteroids بلغة Assembly x86 بمعمارية 16-bit، حيث قدم 18 ملف مصدر وحوالي 2,500 سطر من الكود دون سطر واحد من لغة Assembly مكتوب بواسطة البشر. تُظهر هذه التجربة أن الذكاء الاصطناعي يمكنه قيادة دورة حياة البرمجيات الكاملة — من التخطيط إلى تصحيح الأخطاء — في خطوة تتجاوز عروض "إكمال الكود" المعتادة.

لماذا كانت التجربة مهمة

تتوقف معظم عروض البرمجة بالذكاء الاصطناعي العامة عند مقتطفات صغيرة أو أدوات بسيطة. ولاختبار الحدود القصوى، أجبرت التجربة Codex على العمل في أكثر البيئات تقييداً التي يمكن تخيلها: لغة Assembly x86 بمعمارية 16-bit على نظام DOS، دون محركات ألعاب، أو مكتبات رسومية، أو وسائل الراحة التي توفرها اللغات عالية المستوى. كان الهدف هو معرفة ما إذا كان بإمكان الذكاء الاصطناعي ليس فقط توليد الكود، بل أيضاً إدارة المهام الهندسية المحيطة به.

كيف تم تقسيم الأدوار

مسؤوليات البشر اقتصرت على ثلاثة إجراءات:

  • تحديد الهدف العام للمشروع (لعبة إطلاق نار بنمط Asteroids).
  • الإجابة على أي أسئلة تتعلق بأسلوب اللعب.
  • اختبار كل نسخة (build) والإبلاغ عن الأخطاء المكتشفة.

مسؤوليات Codex شملت كل شيء آخر:

  • وضع مسودة لخطة المشروع وهندسته.
  • كتابة ملفات مصدر Assembly.
  • تصحيح الأخطاء (Debug)، وإعادة صياغة الكود (Refactor)، وإعادة هيكلته.
  • إدارة مستودع Git، بما في ذلك عمليات الـ commits وإدارة الفروع (branches).
  • بناء الملف الثنائي (binary) وتشغيله في محاكي DOS.

لم يكتب الإنسان سطراً واحداً من تعليمات Assembly، ولم يستدعِ مترجماً (compiler)، ولم يقم بتشغيل اللعبة أثناء عملية التطوير. توقف التفاعل عند وصف أعراض الخطأ؛ حيث قام الذكاء الاصطناعي بتحديد السبب الجذري وإصلاحه بمفرده.

سير العمل التكراري

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

ماذا يحتوي المنتج النهائي

  • 18 ملف مصدر Assembly، منظمة في هيكل مستودع تقليدي.
  • ≈2,500 سطر من Assembly، تغطي معالجة المدخلات، ورسم الرسومات (sprites)، وكشف التصادم، ونظام تسجيل أعلى النقاط.
  • ملف تنفيذي قابل للتشغيل على DOS يعمل في بيئة DOS قياسية ويحاكي أسلوب لعب Asteroids الكلاسيكي.
  • صفر أسطر Assembly مكتوبة بشرياً، مما يؤكد أن الذكاء الاصطناعي تولى جميع مهام البرمجة منخفضة المستوى.

المخاطر والتبعات

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

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

الحجج المضادة والأسئلة المفتوحة

  • الموثوقية: برمجة Assembly لا تغفر الأخطاء؛ فخطأ واحد في العد (off-by-one error) يمكن أن يؤدي إلى تعطل البرنامج بأكمله. قام Codex بإصلاح الأخطاء التي رآها، لكنه قد يغفل عن مشكلات التوقيت الدقيقة التي لا تظهر إلا أثناء اختبار الضغط.
  • قابلية الصيانة: قد يكون الكود الذي يتم توليده دون إرشادات أسلوب بشرية أصعب في القراءة أو التوسيع من قبل المطورين المستقبليين، خاصة إذا اختلفت اصطلاحات التسمية الخاصة بالذكاء الاصطناعي عن معايير الفريق.
  • الملكية الفكرية: من يملك الكود عندما يكتبه الذكاء الاصطناعي؟ تفترض أطر الترخيص الحالية التأليف البشري، مما يترك منطقة رمادية للمخرجات التي ينتجها الذكاء الاصطناعي.

ما يجب مراقبته لاحقاً

  • مقاييس أداء أوسع: تطبيق نفس سير العمل المستقل على التطبيقات الشبكية، أو تطبيقات الهاتف المحمول، أو مشاريع C/C++ الحديثة سيختبر ما إذا كان النهج قابل للتوسع لما هو أبعد من الألعاب الكلاسيكية.
  • تكامل الأدوات: دمج Codex في خطوط أنابيب CI/CD قد يؤتمت ليس فقط توليد الكود، بل أيضاً الاختبار، وفحص الأمان، والنشر.
  • تطور السياسات: مع انتشار الكود المولد بواسطة الذكاء الاصطناعي، ستحتاج السياسات القانونية والمؤسسية إلى معالجة الملكية، والمسؤولية، والامتثال.

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