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

پرانا بل: ہیڈ کاؤنٹ (Head Count)

دہائیوں سے، ٹیکنیکل ڈیٹ نے ایک جانا پہچانا 'ڈوم لوپ' (doom loop) پیدا کر دیا تھا۔ کوڈ بیس کمزور ہوتی جاتی تھی۔ وہ فیچرز جن میں کبھی دن لگتے تھے، اب ہفتے لینے لگے۔ ڈیڈ لائنز پھسلتی گئیں، چنانچہ قیادت نے مزید نئی بھرتیوں کے آرڈرز کھول دیے۔ بڑی ٹیموں نے کام کو مزید سست کر دیا۔ کوآرڈینیشن کا بوجھ بڑھتا گیا، اسٹینڈ اپس (stand-ups) کی تعداد بڑھ گئی، اور 'کونوے کا قانون' (Conway’s Law) لاگو ہو گیا: سافٹ ویئر ان لوگوں کی غلط فہمیوں کا عکس بننے لگا جو اسے بنا رہے تھے۔ مزید بگ (bugs) نکلنے لگے۔ ہر پیچ (patch) نے پیچیدگی کی نئی تہیں شامل کر دیں۔ کمپنیوں نے اس خرابی کی قیمت اسی واحد کرنسی میں ادا کی جسے وہ جانتی تھیں: انسانی تنخواہیں ۔ قیمت واضح تھی۔ یہ ہر سہ ماہی کے بجٹ ریویو میں نظر آتی تھی۔

نیا بل: ٹوکنز اور سیاق و سباق (Tokens and Context)

جنریٹیو AI نے اس چکر کو توڑا نہیں ہے۔ اس نے محض ادائیگی کا ایک متبادل منصوبہ متعارف کرایا ہے۔ رکاوٹوں کو دور کرنے کے لیے پانچ انجینئرز کو ہائر کرنے کے بجائے، اب ایک کمپنی مزید کمپیوٹ (compute) کے لیے کریڈٹ کارڈ کا استعمال کرتی ہے۔ علامات مختلف نظر آتی ہیں، لیکن بنیادی بیماری وہی ہے۔

جب کوئی ماڈل ناکام ہونا شروع ہوتا ہے—اندرونی APIs کے بارے میں غلط معلومات دینا (hallucinating)، اہم کیسز کو نظر انداز کرنا، یا غلط وجوہات کی بنا پر پاس ہونے والے ٹیسٹ تیار کرنا—تو اس کا ردعمل شاذ و نادر ہی ریفیکٹر (refactor) کرنا ہوتا ہے۔ ردعمل یہ ہوتا ہے کہ انفرنس (inference) پر پیسہ خرچ کیا جائے۔ ٹیمیں کانٹیکسٹ ونڈو (context-window) اپ گریڈ خریدتی ہیں، ملٹی ایجنٹ ری ٹرائی لوپس (multi-agent retry loops) بناتی ہیں، ورک لوڈز کو بڑے فرنٹیر ماڈلز (frontier models) پر منتقل کرتی ہیں، یا ری جنریٹ (regenerate) بٹن کو تب تک دباتے ہیں جب تک کہ فرق (diff) قابل قبول نہ نظر آ جائے۔ یہ حربے ایک یا دو اسپرنٹ کے لیے ظاہری رفتار کو برقرار رکھتے ہیں۔ جیرا (Jira) بورڈ ہرا رہتا ہے۔ اس دوران، اصل آرکیٹیکچر کو ہاتھ نہیں لگایا جاتا: وہی الجھی ہوئی انحصار (dependencies)، وہی بدلتی ہوئی گلوبل اسٹیٹ (global state)، وہی مونو لیتھ (monolith) جسے موجودہ عملے میں سے کوئی بھی مکمل طور پر نہیں سمجھتا۔

گندا کوڈ ٹوکنز کیوں خرچ کرتا ہے

لارج لینگویج ماڈلز صاف ستھرے ایبسٹریکشنز (abstractions) پر بہترین طریقے سے استدلال کرتے ہیں۔ تاہم، زیادہ تر انٹرپرائز ریپوزٹریز (repositories) آثار قدیمہ کی جگہوں کی طرح ہیں۔ ان میں سرکولر پیکیج ڈیپینڈنسیز، انیشلائزیشن اسکرپٹس میں چھپے ہوئے ضمنی اثرات (side effects)، اور ڈیٹا بیس ٹریگرز، مڈل ویئر لیئرز، اور فرنٹ اینڈ کمپوننٹس میں پھیلی ہوئی بزنس لاجک شامل ہوتی ہے۔ اس ماحول میں، ماڈل اپنی توانائی نئی لاجک لکھنے میں صرف نہیں کرتا۔ بلکہ وہ سمجھنے (comprehension) میں ٹوکنز جلاتا ہے۔

128,000 ٹوکنز کے کانٹیکسٹ ونڈو کا ایک بڑا حصہ صرف سسٹم کی ساخت کو میموری میں برقرار رکھنے میں صرف ہو سکتا ہے۔ باقی بچا ہوا حصہ اصل مسئلہ حل کرنے کے لیے ہوتا ہے۔ یہ ایک اسٹرکچرل انجینئر سے ایسا کرنے کے مترادف ہے کہ اسے ہر کیلکولیشن سے پہلے یادداشت کی بنیاد پر موجود عمارت کے نقشے دوبارہ بنانے پر مجبور کیا جائے جبکہ اسے ایک نیا فلور ڈیزائن کرنا ہو۔ نتیجہ سطحی حل نکلتا ہے۔ ماڈل اس گندگی کی عکاسی کرتا ہے جو وہ دیکھتا ہے کیونکہ اس کے پاس کمرے کو پہلے صاف کرنے کا اختیار یا آرکیٹیکچرل سیاق و سباق (architectural context) نہیں ہوتا۔

تیز آؤٹ پٹ، سست شپنگ

خام پیداواری رفتار کا مطلب تیز شپنگ نہیں ہے۔ اگر آپ کے آرکیٹیکچر میں ماڈیولرٹی (modularity) کی کمی ہے، تو AI سے تیار کردہ ہر تبدیلی کے لیے مکمل انسانی جائزہ اور ریگریشن ٹیسٹنگ (regression testing) کی ضرورت ہوتی ہے۔ ایک ماڈل دوپہر میں دس پل ریکویسٹ (pull requests) تیار کر سکتا ہے، لیکن ان پل ریکویسٹس کو پھر بھی انٹیگریشن انوائرنمنٹس، سیکیورٹی اسکینرز، کمپلائنس چیک لسٹ، اور پروڈکشن کینریز (production canaries) سے گزرنا پڑتا ہے۔ واضح ماڈیول کی حدود کے بغیر، AI مشین کی رفتار سے بگ (bugs) پیدا کرتا ہے۔ یہ ایک شیئرڈ یوٹیلیٹی (shared utility) کو تبدیل کر سکتا ہے، تین دور دراز کال سائٹس (call sites) کو معمولی غلط مفروضوں کے ساتھ اپ ڈیٹ کر سکتا ہے، اور ایسی ریس کنڈیشنز (race conditions) پیدا کر سکتا ہے جنہیں انسان صرف رات کے 3 بجے آنے والے پیج (page) کے دوران پکڑ پاتے ہیں۔ رکاوٹ کی بورڈ سے منتقل ہو کر ویلیڈیشن پائپ لائن (validation pipeline) پر آ جاتی ہے، اور وہ پائپ لائن تبدیلیوں کے حجم میں دس گنا اضافے کو سنبھالنے کے لیے ڈیزائن نہیں کی گئی تھی۔

پوشیدہ حد

AI سے پہلے کے دور میں، اصل حد آپ کا بھرتی کا بجٹ تھا۔ اسے کم از کم اسپریڈ شیٹ پر دیکھنا آسان تھا۔ اب رکاوٹ ان آئٹمز کے اندر چھپی ہوئی ہے جن کا زیادہ تر فنانس ٹیمیں بمشکل ہی حساب رکھتی ہیں: انفرنس کی لاگت، ایمبیڈنگ اسٹوریج (embedding storage)، کانٹیکسٹ ونڈو کی توسیع، اور خودکار ٹیسٹنگ کا وہ جمود جو CI رنرز کو مفلوج کر دیتا ہے۔ پروڈکٹیوٹی ڈیش بورڈز ہرا چمک رہا ہوتا ہے جبکہ ہر نئے فیچر کی اصل قیمت خاموشی سے بڑھتی جاتی ہے۔

آرکیٹیکچرل انٹروپی یہاں اصل ولن ہے۔ LLMs کوڈ کی پیداوار کو بہترین طریقے سے بڑھاتے ہیں، لیکن وہ پیچیدگی کو کم نہیں کرتے۔ وہ مائیکرو سروسز کی الجھنیں نہیں سلجھاتے، ڈیڈ کوڈ کو ختم نہیں کرتے، یا انہیریٹنس ہائیرارکیز کو مختصر نہیں کرتے۔ ایک بار جب کوئی سسٹم اس حد کو عبور کر جاتا ہے جہاں انسانوں کے لیے اس کے بارے میں منطقی طور پر سمجھنا مشکل ہو جاتا ہے، تو AI کو بھی مشکلات کا سامنا کرنا پڑتا ہے۔ اس تبدیلی کے نقطے پر، اخراجات کا گراف اوپر کی طرف جاتا ہے، چاہے آپ