OpenAI کا چیٹ جی پی ٹی کوڈیکس اپ گریڈ

اوپن اے آئی (OpenAI) کی جانب سے پیش کردہ جدید ترین اختراع، کوڈیکس اے آئی ایجنٹ (Codex AI agent)، کوڈنگ کے لیے ایک نیا طریقہ کار متعارف کراتا ہے – ایک “وائب-کوڈنگ” ماحول جو چیٹ جی پی ٹی (ChatGPT) جیسے انٹرفیس سے چلایا جاتا ہے۔ اگرچہ یہ تصور بادی النظر میں سطحی نظر آ سکتا ہے، لیکن نئے کوڈیکس ایجنٹ کی صلاحیتیں حیرت انگیز طور پر متاثر کن ہیں۔

اوپن اے آئی (OpenAI) نے کوڈیکس کو ایک تحقیقی پیش نظارہ (research preview) قرار دیا ہے، جو اس بات کی نشاندہی کرتا ہے کہ یہ ابھی تک فعال ترقی کے مراحل میں ہے۔ فی الحال، یہ چیٹ جی پی ٹی پرو (ChatGPT Pro)، انٹرپرائز (Enterprise) اور ٹیم-ٹائر (Team-tier) سبسکرائبرز کے لیے دستیاب ہے، اور مستقبل قریب میں اس کی دستیابی کو پلس (Plus) اور ایجو (Edu) صارفین تک بڑھانے کے منصوبے ہیں۔

اوپن اے آئی (OpenAI) کے اعلان کے مطابق، کوڈیکس کا نام 2021 سے ایک ارتقائی کوڈنگ ٹول کے ساتھ منسلک ہے۔ اس گفتگو میں، “کوڈیکس” سے مراد نیا اعلان کردہ ورژن ہے۔

کوڈیکس اوپن اے آئی (OpenAI) کے سرورز پر رہتا ہے اور گٹ ہب ریپوزٹریز (GitHub repositories) کے ساتھ مربوط ہے۔ مظاہروں سے پتہ چلتا ہے کہ کوڈیکس ایک ٹیم کے اندر ایک اضافی پروگرامر کے طور پر کام کرتا ہے۔

اسے کیڑے (bugs) کی ایک سیریز کو حل کرنے اور اس کے مطابق کام کرنے کی ہدایت کی جا سکتی ہے۔ یہ کوڈ میں ترمیم کے لیے منظوری بھی حاصل کرتا ہے، حالانکہ یہ خود مختار طور پر کوڈ میں ترمیم کرنے کی صلاحیت رکھتا ہے۔

کوڈیکس کوڈ کا تجزیہ اور ترمیم کر سکتا ہے، مخصوص مسائل کی نشاندہی کر سکتا ہے، بہتری کے لیے علاقوں کی نشاندہی کر سکتا ہے، اور دیگر کوڈنگ اور دیکھ بھال کے کام انجام دے سکتا ہے۔ ہر کام ایک نیا ورچوئل ماحول شروع کرتا ہے، جو اے آئی (AI) کو تصور اور ڈیزائن سے لے کر یونٹ ٹیسٹنگ (unit testing) تک ہر چیز کو سنبھالنے کے قابل بناتا ہے۔

کوڈنگ میں ایک مثالی تبدیلی

یہ کوڈنگ پیراڈائم (coding paradigm) میں ایک حقیقی تبدیلی کی علامت ہے۔ پہلے اے آئی (AI) کوڈنگ کی مدد میں بنیادی طور پر آٹوکمپلیٹ (autocomplete) خصوصیات شامل تھیں، جو موجودہ کوڈ کی بنیاد پر خود بخود کوڈ کی لائنیں یا بلاکس تیار کرتی تھیں۔

ٹیکنالوجی اس مقام پر پہنچ گئی ہے جہاں اے آئی (AI) کوڈ کے چھوٹے حصوں کو لکھ یا ڈیبگ (debug) کر سکتا ہے۔ یہ وہ پہلو ہے جس میں مجھے خاص طور پر زیڈ ڈی نیٹ (ZDNET) کے پروگرامنگ ٹیسٹوں کے بارے میں دلچسپی رہی ہے۔

اے آئی (AI) کا ایک اور کردار مجموعی نظام کا تجزیہ ہے۔ حال ہی میں، میں نے ایک نیا ڈیپ ریسرچ (Deep Research) ٹول دریافت کیا جو پورے کوڈبیسز (codebases) کو ختم کر سکتا ہے اور کوڈ کے جائزے اور سفارشات فراہم کر سکتا ہے۔

کوڈیکس اب اس مقام پر پہنچ گیا ہے جہاں پورے پروگرامنگ کے کاموں کو کلاؤڈ (cloud) میں اے آئی (AI) کے سپرد کیا جا سکتا ہے، بالکل اسی طرح جیسے کسی ٹیم کے دیگر پروگرامرز یا جونیئر پروگرامرز کو کوڈ کی دیکھ بھال سیکھنے کے لیے کام سونپے جاتے ہیں۔

اوپن اے آئی (OpenAI) اس کو “ایجنٹ-نیٹیو سافٹ ویئر ڈویلپمنٹ (Agent-native software development) کے طور پر بیان کرتا ہے، جہاں اے آئی (AI) نہ صرف آپ کے کام کرنے میں مدد کرتا ہے بلکہ آزادانہ طور پر کام بھی کرتا ہے۔”

لانچ ویڈیو میں کوڈیکس کی ایک ہی وقت میں متعدد کاموں کو سنبھالنے کی صلاحیت کا مظاہرہ کیا گیا، جن میں سے ہر ایک الگ، الگ تھلگ ورچوئل ماحول میں کام کر رہا تھا۔

پروگرامرز نے ایجنٹ کو کام سونپے، جس نے پھر آزادانہ طور پر کام کیا۔ مکمل ہونے پر، ایجنٹ نے ٹیسٹ کے نتائج فراہم کیے اور کوڈ میں تبدیلیوں کی تجویز پیش کی۔

ڈیمو میں کوڈیکس کو بگ فکسس (bug fixes) انجام دیتے ہوئے، ٹائپوز (typos) کے لیے اسکین کرتے ہوئے، کام کی تجاویز پیش کرتے ہوئے، اور پروجیکٹ بھر میں ریفیکٹرنگ (refactoring) (رویے کو تبدیل کیے بغیر ساخت کو بہتر بنانے کے لیے کوڈ میں ترمیم) انجام دیتے ہوئے دکھایا گیا۔

سینئر ڈویلپرز (senior developers) اور ڈیزائنرز (designers) ضروریات کو واضح کرنے اور دوسروں کے کام کا جائزہ لینے سے واقف ہیں۔ کوڈیکس کا استعمال ان کے لیے اہم تبدیلیاں متعارف نہیں کرائے گا۔ تاہم، جن ڈویلپرز میں ضروریات کو واضح کرنے اور جائزے کی مضبوط مہارت کی کمی ہے انہیں کوڈیکس کو منظم کرنے میں تھوڑی مشکل پیش آ سکتی ہے۔

اس کے باوجود، اگر ٹول جیسا کہ مظاہرہ کیا گیا ہے، تو کوڈیکس چھوٹی ٹیموں اور انفرادی ڈویلپرز (individual developers) کو زیادہ حاصل کرنے، بار بار چلنے والے کاموں کو کم کرنے اور مسائل کی اطلاعات کا زیادہ موثر طریقے سے جواب دینے کے قابل بنائے گا۔

ممکنہ نقصانات اور تخفیف کی حکمت عملی

چیٹ جی پی ٹی (ChatGPT) کی کوڈنگ کی صلاحیتوں کے ساتھ ابتدائی تجربات سے پتہ چلا کہ اس کا ارتکاز کھونے یا مطلوبہ سمت سے ہٹنے کا رجحان ہے۔ اگرچہ یہ انفرادی کوڈ بلاکس کے لیے تباہ کن نہیں ہے، لیکن اگر کوڈنگ ایجنٹ کو محدود نگرانی کے ساتھ کام کرنے کی اجازت دی جائے تو اس کے غیر ارادی اور پریشان کن نتائج نکل سکتے ہیں۔

اس مسئلے کو حل کرنے کے لیے، اوپن اے آئی (OpenAI) نے کوڈیکس کو AGENTS.md فائل میں بیان کردہ ہدایات پر عمل کرنے کی تربیت دی ہے۔ یہ فائل، جو ریپوزٹری (repository) میں موجود ہے، پروگرامرز اور ٹیموں کو کوڈیکس کے طرز عمل کی رہنمائی کرنے کے قابل بناتی ہے۔ اس میں نام رکھنے کے کنونشنز (conventions)، فارمیٹنگ کے اصول، اور کوڈنگ کے پورے عمل میں مطلوبہ کوئی بھی مستقل رہنما اصول شامل ہو سکتے ہیں۔ یہ بنیادی طور پر چیٹ جی پی ٹی (ChatGPT) کی персонализация (personalization) ترتیبات کو ریپوزٹری (repository)-مرکز ٹیم ماحول تک بڑھاتا ہے۔

اس کے علاوہ، اوپن اے آئی (OpenAI) نے کوڈیکس کا ایک ورژن متعارف کرایا ہے جسے کوڈیکس سی ایل آئی (Codex CLI) کہا جاتا ہے جو ڈویلپر (developer) کی مشین پر مقامی طور پر چلتا ہے۔ کلاؤڈ پر مبنی کوڈیکس کے برعکس، جو غیر مطابقت پذیر طور پر کام کرتا ہے اور مکمل ہونے پر رپورٹس فراہم کرتا ہے، مقامی ورژن پروگرامر (programmer) کی کمانڈ لائن کے ذریعے کام کرتا ہے اور مطابقت پذیر طور پر کام کرتا ہے۔

جوہر میں، پروگرامر (programmer) ایک ہدایت داخل کرتا ہے اور کوڈیکس سی ایل آئی (Codex CLI) کے عمل کے نتیجے میں واپس آنے کا انتظار کرتا ہے۔ یہ پروگرامرز کو آف لائن کام کرنے کے قابل بناتا ہے، اپنی فعال ترقیاتی مشین کے مقامی تناظر سے فائدہ اٹھاتے ہوئے۔

امید افزا صلاحیتوں کے ساتھ تحقیقی پروٹوٹائپ

ڈیمو متاثر کن تھا، لیکن ڈویلپرز (developers) نے اس بات پر زور دیا کہ وہ جو کچھ دکھا رہے ہیں اور جاری کر رہے ہیں وہ ایک تحقیقی پروٹوٹائپ (research prototype) ہے۔ اگرچہ یہ “جادوئی لمحات” پیش کرتا ہے، لیکن اس کے لیے ابھی بھی اہم ترقی کی ضرورت ہے۔

میں یہ سمجھنے کی کوشش کر رہا ہوں کہ اس ٹیکنالوجی کے ترقی کے مستقبل اور میرے اپنے ترقیاتی عمل کے لیے خاص طور پر کیا مضمرات ہیں۔ میری بنیادی پروڈکٹ ایک اوپن سورس ورڈپریس پلگ ان (open-source WordPress plugin) ہے، جس میں ملکیتی ایڈ-آن پلگ انز (add-on plugins) ہیں۔ کوڈیکس اوپن سورس کور پلگ ان (open-source core plugin) کے لیے عوامی ریپوزٹری (public repository) کا تجزیہ کر سکتا ہے۔

تاہم، کیا کوڈیکس ایک واحد مجموعی پروجیکٹ کے حصے کے طور پر ایک عوامی ریپوزٹری (public repository) اور متعدد نجی ریپوزٹریز (private repositories) کے درمیان تعلق کا انتظام کر سکتا ہے؟ اور جب ٹیسٹنگ (testing) میں نہ صرف میرا کوڈ بلکہ ایک پورا اضافی ایکو سسٹم (ecosystem) – ورڈپریس (WordPress) – بھی شامل ہوتا ہے تو یہ کارکردگی کا جائزہ لینے کے لیے کیسا کارکردگی کا مظاہرہ کرے گا؟

بطور سولو پروگرامر (solo programmer)، میں کوڈیکس جیسے ٹول کے ممکنہ فوائد کو تسلیم کرتا ہوں۔ یہاں تک کہ $200-فی مہینہ پرو (Pro) سبسکرپشن (subscription) بھی قابل قدر ہو سکتی ہے۔ ایک انسانی پروگرامر (human programmer) کی خدمات حاصل کرنے میں کافی زیادہ لاگت آئے گی، بشرطیکہ میں اس سے ٹھوس، مالیاتی قدر حاصل کر سکوں۔

بطور ایک تجربہ کار ٹیم مینیجر (team manager) اور کمیونیکیٹر (communicator)، میں کوڈیکس جیسی چیز کو کام سپرد کرنے میں راحت محسوس کرتا ہوں۔ یہ کسی ٹیم کے رکن کے ساتھ سلیک (Slack) پر بات چیت کرنے سے خاص طور پر مختلف نہیں ہے۔

حقیقت یہ ہے کہ کوڈیکس سفارشات فراہم کرتا ہے، مسودے تیار کرتا ہے، اور میری منظوری کا انتظار کرتا ہے یہ میرے کوڈ میں آزادانہ طور پر کام کرنے کی اجازت دینے کے مقابلے میں تحفظ کا احساس فراہم کرتا ہے۔ یہ ایک نئے ترقیاتی لائف سائیکل (development lifecycle) کے لیے دلچسپ امکانات کھولتا ہے، جہاں انسان اہداف کی وضاحت کرتے ہیں، اے آئی (AI) ممکنہ نفاذ کا مسودہ تیار کرتا ہے، اور پھر انسان یا تو منظور کرتے ہیں یا اے آئی (AI) کو ایک اور تکرار کے لیے ری ڈائریکٹ (redirect) کرتے ہیں۔

جواب طلب سوالات اور مستقبل کے مضمرات

کوڈنگ کے لیے اے آئی (AI) استعمال کرنے کے میرے پچھلے تجربات کی بنیاد پر، کوڈیکس دیکھ بھال کا وقت کم کر سکتا ہے اور صارفین کو فکسس (fixes) کی فراہمی کو تیز کر سکتا ہے۔ تاہم، ایک تفصیلات دستاویز کی بنیاد پر نئی خصوصیات شامل کرنے میں اس کی تاثیر ابھی تک واضح نہیں ہے۔ اسی طرح، کوڈیکس کے نفاذ کے بعد فعالیت اور کارکردگی میں ترمیم کرنے کی مشکل کا تعین ہونا باقی ہے۔

یہ بات قابل ذکر ہے कि اے آئی (AI) کوڈنگ ایک جیسی رفتار سے متعدد کمپنیوں میں تیار ہو رہی ہے۔ میں جلد ہی گٹ ہب کوپائلٹ کے کوڈنگ ایجنٹ (GitHub Copilot’s Coding Agent) پر ایک اور مضمون شائع کروں گا، جو کوڈیکس کے ساتھ کچھ افعال مشترک کرتا ہے۔

اس مضمون میں، میں نے خدشات کا اظہار کیا کہ یہ کوڈنگ ایجنٹ جونیئر (junior) اور انٹری-لیول (entry-level) پروگرامرز کو بے گھر کر سکتے ہیں۔ انسانی ملازمتوں پر پڑنے والے اثرات سے آگے، ان اہم تربیتی مواقع کا بھی سوال ہے جو ضائع ہو سکتے ہیں اگر ہم ڈویلپر (developer) کے کیریئر کے درمیانی مرحلے کو اے آئی (AI) کو सौंप दें।

سافٹ ویئر انڈسٹری کا “نامعلوم میں”

ڈزنی کی فروزن II (Disney’s Frozen II) میں ایک گانا ہے جس کا نام “انٹو دا اننون (Into the Unknown)” ہے، جسے آئیڈینا مینزیل (Idina Menzel) نے پیش کیا ہے۔ گانا مرکزی کردار کے صورتحال کو برقرار رکھنے اور “نامعلوم میں” جانے کے درمیان اندرونی تنازعہ کی عکاسی کرتا ہے۔

ایجنٹک سافٹ ویئر ڈویلپمنٹ (agentic software development) کے ساتھ، صرف اے آئی (AI) کوڈنگ سے آگے، پوری سافٹ ویئر انڈسٹری “نامعلوم میں” ایک سفر کا آغاز کر رہی ہے۔ جیسے جیسے ہم اپنے سافٹ ویئر کو تیار کرنے کے لیے زیادہ سے زیادہ اے آئی (AI)-بیسڈ (based) सिस्टम्स (systems) پر انحصار کرتے ہیں، कुशल رکھوالوں کی تعداد کم ہونے کا امکان ہے۔ یہ اس وقت تک قابل قبول ہے جب तक اے آئی (AI) مؤثر طریقے سے کام کرتے رہیں और पहुंच योग्य रहें। تاہم، کیا ہم ضروری مہارتوں کو اتروفی (atrophy) کرنے اور ایک ابھی تک ہوشنامند، کلاؤڈ پر مبنی انفراسٹرکچر (cloud-based infrastructure) کو ڈेलگیٹ (delegate) کرنے کی سہولت کے لیے اچھی تنخواہ والی نوکریوں کو قربán کر رہے ہیں؟

وقت جوابات کو ظاهر کرے گا، اور امید ہے کہ یہ انکشاف اس وقت ਨਹੀਂ होगा جب ہم وقت سے باہر ہوں۔

کیا آپ اس طرح के ٹول को वास्तविक ترقیاتی کام सौपनے पर विचार करेंगे? आपके विचार میں سافٹ ویئر ٹیम्स (software teams) یا انفرادی ڈویلپرز پر طویل مدتی اثر کیا ہوگا؟ اور آپ کو اس بارے میں ਚਿੰਤਾ ہے ਕਿ શું વધુ कोड زندگی চক্র اے آئی (AI) کو सौंपा ਜਾता ਹੈ تو اہم مہارتਾਂ یا භූਮિકਾਵਾਂ ਖਤਮ ਹੋ ਜਾਣਗੀਆਂ?