OpenAI Codex نے مکمل 16-bit x86 Assembly پر مبنی Asteroids طرز کا ایک DOS گیم تیار کیا، جس میں 18 سورس فائلز اور تقریباً 2,500 لائنوں کا کوڈ شامل ہے، اور اس میں انسان کا لکھا ہوا اسمبلی کا ایک بھی جملہ موجود نہیں ہے۔ یہ تجربہ ظاہر کرتا ہے کہ ایک AI، پروگرامر کی براہ راست مداخلت کے بغیر، منصوبہ بندی سے لے کر ڈیبگنگ تک، سافٹ ویئر کے مکمل لائف سائیکل کی رہنمائی کر سکتا ہے، جو کہ عام "code-completion" ڈیمو سے ایک قدم آگے ہے۔
یہ ٹیسٹ کیوں اہم تھا
زیادہ تر عوامی AI-کوڈنگ نمائشیں چھوٹے کوڈ کے ٹکڑوں یا سادہ یوٹیلیٹیز تک محدود ہوتی ہیں۔ اس کی حد کو جانچنے کے لیے، اس تجربے میں Codex کو ایک انتہائی محدود ماحول میں کام کرنے پر مجبور کیا گیا: DOS پر 16-bit x86 Assembly، جہاں کوئی گیم انجن، گرافکس لائبریری، یا ہائی لیول لینگویج کی سہولت موجود نہیں تھی۔ مقصد یہ دیکھنا تھا کہ آیا ایک AI نہ صرف کوڈ تیار کر سکتا ہے بلکہ اس کے گرد موجود انجینئرنگ کے کاموں کو بھی سنبھال سکتا ہے۔
کرداروں کی تقسیم کیسے کی گئی
انسانی ذمہ داریاں تین کاموں تک محدود تھیں:
- مجموعی پروجیکٹ کا مقصد طے کرنا (ایک Asteroids طرز کا شوٹر گیم)۔
- گیم پلے سے متعلق پیدا ہونے والے کسی بھی سوال کا جواب دینا۔
- ہر بلڈ (build) کی پلے-ٹیسٹنگ کرنا اور سامنے آنے والے بگ (bug) کی رپورٹ کرنا۔
Codex کی ذمہ داریاں باقی تمام کاموں پر محیط تھیں:
- پروجیکٹ کا منصوبہ اور آرکیٹیکچر تیار کرنا۔
- Assembly سورس فائلز لکھنا۔
- کوڈ کو ڈیبگ، ریفیکٹر (refactor) اور ری اسٹرکچر کرنا۔
- Git ریپوزٹری کو برقرار رکھنا، بشمول کمٹس (commits) اور برانچ مینجمنٹ۔
- بائنری بنانا اور اسے DOS ایمولیٹر میں چلانا۔
انسان نے کبھی بھی اسمبلی کا ایک بھی انسٹرکشن ٹائپ نہیں کیا، کبھی کمپائلر استعمال نہیں کیا، اور ڈویلپمنٹ کے دوران گیم بھی نہیں چلائی۔ بات چیت صرف بگ کی علامات بیان کرنے تک محدود تھی؛ AI نے خود ہی اصل وجہ تلاش کی اور اسے ٹھیک کیا۔
تکراری ورک فلو (Iterative workflow)
ہر سائیکل کا آغاز Codex کی جانب سے ایک سنگ میل (milestone) کی تجویز سے ہوتا تھا (مثلاً، "پلیئر شپ کی حرکت کو نافذ کرنا")۔ اس کے بعد یہ متعلقہ سورس فائلز تیار کرتا، انہیں کمٹ کرتا، ایگزیکیوٹیبل فائل بناتا، اور ٹیسٹر کو چلنے کے قابل بلڈ فراہم کرتا۔ Codex نے علامت کا تجزیہ کیا، کوڈ بیس میں اس کا سراغ لگایا، اور مزید انسانی رہنمائی کے بغیر پیچ (patch) جاری کیا۔
حتمی پروڈکٹ میں کیا شامل ہے
- 18 Assembly سورس فائلز، جو ایک روایتی ریپوزٹری ڈھانچے میں ترتیب دی گئی ہیں۔
- تقریباً 2,500 لائنوں کا Assembly کوڈ، جس میں ان پٹ ہینڈلنگ، اسپرائٹ ڈرائنگ، کولیژن ڈیٹیکشن (collision detection)، اور ہائی اسکور سسٹم شامل ہے۔
- ایک قابلِ استعمال DOS ایگزیکیوٹیبل جو معیاری DOS ماحول میں چلتا ہے اور کلاسک Asteroids گیم پلے کی نقل کرتا ہے۔
- انسانی طور پر لکھا گیا زیرو اسمبلی کوڈ، جو اس بات کی تصدیق کرتا ہے کہ AI نے تمام لو-لیول پروگرامنگ کے کام سنبھال لیے۔
خطرات اور اثرات
اگر ایک AI کسی پروجیکٹ کو تصور سے لے کر ایک کام کرنے والی بائنری تک خود مختارانہ طور پر چلا سکتا ہے، تو کوڈ بیس کے بنیادی منتظم کے طور پر پروگرامر کا روایتی کردار بدل جائے گا۔ کمپنیاں بوائلر پلیٹ سیٹ اپ (boilerplate setup)، دستاویزات، اور معمول کی ڈیبگنگ پر لگنے والے وقت کو کم کر سکتی ہیں، جس سے انجینئرز ڈیزائن اور پروڈکٹ کی حکمت عملی پر توجہ مرکوز کرنے کے لیے آزاد ہو جائیں گے۔
یہ تجربہ حدود کو بھی اجاگر کرتا ہے۔ ٹیسٹ کا ماحول جان بوجھ کر محدود رکھا گیا تھا: ایک سنگل پلیئر DOS گیم جس کے میکانکس اچھی طرح سے سمجھا جا چکے تھے۔ بیرونی انحصار (dependencies)، سیکورٹی کی پابندیوں، یا کارکردگی کے لحاظ سے اہم کوڈ کے راستوں والے بڑے، کثیر الجہتی (multi-module) سسٹمز تک اس طریقہ کار کو پھیلانا ابھی ثابت نہیں ہوا ہے۔ مزید برآں، انسانی ٹیسٹر اب بھی معیار کے آخری گیٹ کی حیثیت رکھتا تھا؛ اس نگرانی کے بغیر کوئی غیر دریافت شدہ منطقی غلطی (logic error) نظر انداز ہو سکتی تھی۔
مخالف دلائل اور کھلے سوالات
- قابلِ اعتمادیت (Reliability): اسمبلی پروگرامنگ بہت سخت ہوتی ہے؛ ایک چھوٹی سی غلطی بھی پورے پروگرام کو کریش کر سکتی ہے۔ Codex نے ان بگس کو ٹھیک کیا جو اسے نظر آئے، لیکن ہو سکتا ہے کہ وہ باریک ٹائمنگ کے مسائل کو نظر انداز کر دے جو صرف اسٹریس ٹیسٹنگ کے دوران ظاہر ہوتے ہیں۔
- برقراری (Maintainability): انسانی اسٹائل گائیڈ لائنز کے بغیر تیار کردہ کوڈ کو مستقبل کے ڈویلپرز کے لیے پڑھنا یا وسعت دینا مشکل ہو سکتا ہے، خاص طور پر اگر AI کے نام رکھنے کے طریقے ٹیم کے معیار سے مختلف ہوں۔
- دانشورانہ ملکیت (Intellectual property): جب AI کوڈ لکھتا ہے تو اس کا مالک کون ہوتا ہے؟ موجودہ لائسنسنگ فریم ورک انسانی تخلیق کو فرض کرتے ہیں، جس سے AI کے تیار کردہ مواد کے لیے ایک مبہم صورتحال پیدا ہوتی ہے۔
آگے کیا دیکھنا ہے
- وسیع تر بینچ مارکس: نیٹ ورکڈ ایپلی کیشنز، موبائل ایپس، یا جدید C/C++ پروجیکٹس پر اسی خود مختار ورک فلو کا اطلاق یہ آزمائے گا کہ آیا یہ طریقہ کار ریٹرو طرز کے گیمز سے آگے بڑھ سکتا ہے۔
- ٹول انٹیگریشن: Codex کو CI/CD پائپ لائنز میں شامل کرنے سے نہ صرف کوڈ کی تیاری بلکہ ٹیسٹنگ، سیکورٹی اسکیننگ اور ڈیپلائمنٹ کو بھی خودکار بنایا جا سکتا ہے۔
- پالیسیوں کا ارتقاء: جیسے جیسے AI سے تیار کردہ کوڈ بڑھے گا، قانونی اور کارپوریٹ پالیسیوں کو ملکیت، ذمہ داری اور تعمیل (compliance) کے مسائل کو حل کرنے کی ضرورت ہوگی۔
حاصلِ کلام واضح ہے: AI اب واضح طور پر متعین اور محدود منصوبوں کے لیے ایک تنہا سافٹ ویئر انجینئر کے طور پر کام کر سکتا ہے، جو انسانی ہاتھوں سے کوڈنگ کیے بغیر فعال اور لو-لیول کوڈ فراہم کرتا ہے۔ آیا یہ صلاحیت مرکزی دھارے کی ڈویلپمنٹ کو نئی شکل دے پائے گی، اس کا انحصار اس بات پر ہے کہ ایکوسسٹم کتنی تیزی سے بھروسہ مندی، دیکھ بھال اور قانونی خدشات کو حل کر سکتا ہے۔
