ایک ڈویلپر کے حالیہ بلاگ میں خبردار کیا گیا ہے کہ جب AI ایجنٹس ٹول کے نتائج خود سے گھڑ لیتے ہیں (fabricate)، تو وہ "خاموش کریش" (silent crashes) کا شکار ہو سکتے ہیں، یہ ایک ایسا نقص ہے جو خودکار ورک فلو کے ہر اگلے مرحلے کو خراب کر سکتا ہے۔ یہ مسئلہ تین طریقوں سے ظاہر ہوتا ہے، اور چھپا ہوا خطرہ یہ ہے کہ ایجنٹ ایک غلط مفروضے پر کام جاری رکھتا ہے، جس سے آپریٹرز اس ناکامی سے بے خبر رہ جاتے ہیں۔
AI ایجنٹس کیوں لڑکھڑاتے ہیں
وہ AI ایجنٹس جو بیرونی ٹولز (external tools) کو منظم کرتے ہیں، کالز کی ایک زنجیر پر عمل کرتے ہیں: وہ ایک ٹول کا نام لیتے ہیں، آرگومنٹ (arguments) پاس کرتے ہیں، اور جواب حاصل کرتے ہیں۔ یہ زنجیر تین طریقوں سے ٹوٹ سکتی ہے۔
- غیر موجود ٹول کالز – ایجنٹ ایک ایسے ٹول کا نام خود سے بنا لیتا ہے جو رجسٹرڈ نہیں ہوتا۔ نام کی تصدیق کرنے والے کسی حفاظتی نظام (guard) کے بغیر، پائپ لائن ایرر دیتی ہے اور رک جاتی ہے۔
- غلط آرگومنٹ (Mismatched arguments) – ٹول موجود ہوتا ہے، لیکن ایجنٹ غلط فارمیٹ میں ڈیٹا فراہم کرتا ہے۔ ٹول کوئی ایرر، بگڑا ہوا آؤٹ پٹ دے سکتا ہے، یا غیر متوقع طریقے سے کام کر سکتا ہے، جس سے اگلے مراحل کی منطق (downstream logic) متاثر ہوتی ہے۔
- گھڑے ہوئے نتائج (Fabricated results) – یہ سب سے خطرناک صورتحال ہے۔ کنکشن ٹوٹنے، ٹائم آؤٹ، یا اندرونی خرابی کی وجہ سے ٹول کال ناکام ہو جاتی ہے، پھر بھی ایجنٹ ایک کامیاب آؤٹ پٹ کی رپورٹ کرتا ہے جو حقیقت میں کبھی ہوا ہی نہیں تھا۔ سسٹم اس طرح آگے بڑھتا ہے جیسے کام کامیاب رہا ہو، اور بعد کے تمام فیصلے ایک جھوٹ پر مبنی ہوتے ہیں۔
تیسرا طریقہ کار بلاگ کا "خاموش کریش" (silent crash) ہے۔ چونکہ ایجنٹ پر اعتماد ظاہر کرتا ہے، اس لیے غلطی نظر انداز ہو جاتی ہے، اور ورک فلو خراب ڈیٹا پیدا کر سکتا ہے، غلط الرٹس دے سکتا ہے، یا مہنگے نقصانات کا باعث بننے والے اقدامات کر سکتا ہے۔
ان چھپی ہوئی ناکامیوں کی وجوہات کیا ہیں؟
- خاموش ناکامی کے راستے (Silent failure paths) – بہت سے ٹولز درخواست کے منقطع ہونے پر کوئی واضح ایرر فلیگ (error flag) واپس نہیں کرتے۔ واضح منفی سگنل نہ ہونے کی وجہ سے، ماڈل یہ اندازہ لگا لیتا ہے کہ کال کامیاب رہی۔
- مکمل کرنے کا دباؤ – لینگویج ماڈلز کو ہر مرحلے پر نتیجہ فراہم کرنے کے لیے تربیت دی جاتی ہے۔ جب کوئی مرحلہ رک جاتا ہے، تو وہ اس خلا کو ایک معقول نظر آنے والے جواب سے بھر دیتے ہیں۔
- تصدیقی مراحل کی کمی – طویل یا کثیر مراحل والے کاموں میں اکثر اس چیک پوائنٹ کو چھوڑ دیا جاتا ہے جو اس بات کی تصدیق کرتا ہے کہ آیا پچھلا عمل واقعی مکمل ہوا تھا۔
- ٹولز کا پھیلاؤ (Tool sprawl) – جیسے جیسے ادارے مزید APIs اور یوٹیلیٹیز شامل کرتے ہیں، دستیاب ٹولز کا ماڈل کا اندرونی انڈیکس بڑھتا جاتا ہے، جس سے غلط ٹول منتخب کرنے یا آرگومنٹ میں غلطی کرنے کا امکان بڑھ جاتا ہے۔
خاموش کریشز کے خلاف حفاظتی اقدامات بنانا
بلاگ میں عملی دفاعی اقدامات کی فہرست دی گئی ہے جنہیں کسی بھی AI-agent آرکیٹیکچر میں شامل کیا جا سکتا ہے۔
- آزادانہ تصدیق (Independent verification) – ٹول کال کے بعد، ایجنٹ کے خلاصے پر بھروسہ کرنے کے بجائے براہ راست سسٹم کی حالت (system state) کے بارے میں دریافت کریں۔ مثال کے طور پر، ایجنٹ کے اس دعوے پر یقین کرنے کے بجائے کہ فائل لکھ دی گئی ہے، ڈیٹا بیس ریکارڈ یا فائل کی موجودگی کو چیک کریں۔
- واضح ناکامی کے سگنلز (Loud failure signals) – ہر ٹول کے لیے ضروری بنائیں کہ وہ ایک واضح اسٹیٹس کوڈ یا ایرر میسج واپس کرے۔ اگر کوئی ٹول اس کی ضمانت نہیں دے سکتا، تو اسے ایک
shimمیں لپیٹ دیں جو واضح کامیابی/ناکامی کے فیلڈز شامل کرے۔ - سخت تصدیق (Strict validation) – ماڈل تک پہنچنے سے پہلے ہی API گیٹ وے پر نامعلوم ٹول کے ناموں اور غلط آرگومنٹ کو مسترد کر دیں۔ Schema validation فارمیٹ کی غلطیوں کو جلد پکڑ لیتی ہے۔
- حقیقی نتائج (Grounded results) – ایجنٹ کو مجبور کریں کہ وہ اپنے آؤٹ پٹ میں ٹول کا اصل (raw) جواب شامل کرے، نہ کہ اس کا خلاصہ یا پیرفریز۔ اس سے اصل ڈیٹا (payload) کے ساتھ موازنہ کرنا آسان ہو جاتا ہے۔
- طویل کاموں میں چیک پوائنٹس – وقتاً فوقتاً "اسٹیٹ آڈٹ" (state-audit) کے مراحل شامل کریں جو ایجنٹ کے اندرونی نظریہ کا بیرونی حقیقت سے موازنہ کریں۔ اگر کوئی فرق نظر آئے، تو ورک فلو کو روک دیں یا واپس (roll back) کر لیں۔
خلاصہ
جب ایک AI ایجنٹ یہ ظاہر کرتا ہے کہ ایک ٹول کامیاب رہا جبکہ وہ حقیقت میں ناکام ہو گیا تھا، تو اس کے بعد کے عمل میں وہ غلطی منتقل ہو جاتی ہے۔ ہر بیرونی کال کو ناقابلِ بھروسہ سمجھیں: ناموں کی تصدیق کریں، سخت آرگومنٹ اسکیما نافذ کریں، واضح کامیابی کے فلیگز کا مطالبہ کریں، اور نتائج کا حقیقی سسٹم اسٹیٹ کے ساتھ موازنہ کریں۔ یہ حفاظتی اقدامات ایک خاموش کریش کو ایک ایسی واضح غلطی میں بدل دیتے ہیں جسے پھیلنے سے پہلے ہی سنبھالا جا سکتا ہے۔
