ہر کوئی AI ایجنٹس کی ایک ٹیم بنانا چاہتا ہے۔ ڈیمو دیکھنے میں ناقابلِ مزاحمت لگتے ہیں۔ ایک ایجنٹ تحقیق کرتا ہے، دوسرا کوڈ لکھتا ہے، اور تیسرا ٹیسٹ چلاتا ہے۔ لیکن ان میں سے زیادہ تر سسٹمز کا ایک گہرا راز ہے: وہ نازک ہیں۔ وہ پانچ منٹ کے ڈیمو کے دوران تو شاندار کام کرتے ہیں لیکن حقیقی تحقیق کے دوران بکھر جاتے ہیں۔ ناکامی کا نقطہ شاذ و نادر ہی لینگویج ماڈل کی استدلال کی صلاحیت یا جھنڈ (swarm) میں ایجنٹس کی تعداد ہوتی ہے۔ یہ ان کے درمیان کا خلا ہے۔ ملٹی ایجنٹ سسٹمز تعاون کی سطح (collaboration plane) پر ٹوٹ جاتے ہیں۔
سپروائزر کا جال (The Supervisor Trap)
ڈیفالٹ آرکیٹیکچر پرکشش حد تک سادہ ہے۔ ایک سپروائزر ایجنٹ مقصد وصول کرتا ہے، اسے ذیلی کاموں (subtasks) میں تقسیم کرتا ہے، اور ورکر ایجنٹس کو سونپ دیتا ہے۔ ورکرز کام انجام دیتے ہیں، نتائج واپس کرتے ہیں، اور سپروائزر سب کو ملا کر ایک حتمی جواب تیار کرتا ہے۔ یہ پیٹرن تب ٹھیک ہے اگر آپ دس مضامین کا خلاصہ کر رہے ہوں، آڈیو فائلوں کو ٹرانسکرائب کر رہے ہوں، یا سو یکساں ویب صفحات سے ڈیٹا نکال رہے ہوں۔ یہ کام آزادانہ ہوتے ہیں۔ وہ آپس میں بات چیت نہیں کرتے۔
پیچیدہ تحقیقات مختلف ہوتی ہیں۔ جب کوئی ایجنٹ کوئی حیران کن دریافت کرتا ہے، تو کام کی پوری سمت بدلنے کی ضرورت پڑ سکتی ہے۔ اگر سسٹم کے پاس اس تبدیلی کو سب تک پہنچانے کا کوئی منظم طریقہ نہیں ہے، تو دوسرے ایجنٹس غلط سمت میں چلتے رہتے ہیں۔ نتیجہ ایک مکالمے کے بجائے متوازی یکطرفہ گفتگو (monologues) کا مجموعہ بن جاتا ہے۔ سپروائزر ایک کوآرڈینیٹر کے بجائے رکاوٹ (bottleneck) بن جاتا ہے۔
جب کوآرڈینیشن ناکام ہو جائے تو کیا غائب ہو جاتا ہے
جب تحقیق گہری ہوتی ہے، تو آپ کو حتمی جواب سے کہیں زیادہ جاننے کی ضرورت ہوتی ہے۔ آپ کو معلوم ہونا چاہیے کہ کسے کیا معلوم تھا اور کب۔ آپ کو یہ ٹریس کرنے کی ضرورت ہے کہ کس دریافت نے کام کی سمت متعین کی۔ آپ کو یہ سمجھنے کی ضرورت ہے کہ ایجنٹ نے دو گھنٹے پہلے اپنا منصوبہ کیوں بدلا۔ تعاون کی سطح (collaboration plane) کے بغیر، یہ سب کچھ نظر نہیں آتا۔ آپ کے پاس لاگز (logs) ہوتے ہیں۔ لاگز محض زمانی شور (chronological noise) ہیں۔ وہ یہ ریکارڈ کرتے ہیں کہ ایجنٹ C نے اچانک API کالز کے بجائے ڈیٹا بیس ٹرانزیکشنز کا تجزیہ کرنا شروع کر دیا، لیکن وہ یہ نہیں بتاتے کہ کیوں۔ آپ اسے ہوتے ہوئے دیکھ سکتے ہیں اور اندازہ لگا سکتے ہیں۔
ایک سیکیورٹی انسیڈنٹ رسپانس کا تصور کریں۔ ایجنٹ A سرور لاگز کا باریک بینی سے جائزہ لیتا ہے اور نتیجہ نکالتا ہے کہ خلاف ورزی وہاں سے شروع نہیں ہوئی تھی۔ وہ اپنا آؤٹ پٹ سپروائزر کو واپس بھیج دیتا ہے۔ ایجنٹ B، جسے نیٹ ورک ٹریفک کا تجزیہ کرنے کا کام سونپا گیا ہے، اس نتیجے کو ایک مسترد شدہ مفروضے (rejected hypothesis) کے طور پر کبھی نہیں دیکھ پاتا۔ چونکہ اس کی اصل ٹاسک ڈسکرپشن اب بھی سرور کو بنیادی مشتبہ سمجھتی ہے، اس لیے ایجنٹ B انہی لاگز میں انگلیوں کے نشانات تلاش کرنے میں ایک اور سائیکل ضائع کر دیتا ہے۔ سسٹم ایک ہی کام کے لیے دو بار ادائیگی کرتا ہے اور پہلی بار سے کچھ نہیں سیکھتا۔
تعاون کی سطح (Collaboration Plane) میموری نہیں ہے
تعاون کی سطح محض حقائق کے لیے میموری کا ایک ڈبہ نہیں ہے۔ میموری معلومات کو محفوظ کرتی ہے۔ تعاون کی حالت (collaboration state) جاری کام (work in progress) کو محفوظ کرتی ہے۔ دستاویزات سے بھرا ہوا ایک ویکٹر ڈیٹا بیس ایجنٹ کو حوالہ جاتی مواد فراہم کرتا ہے۔ یہ ایجنٹ کو یہ نہیں بتاتا کہ ایجنٹ X اس وقت ایک ایسے مفروضے کی جانچ کر رہا ہے جو ایجنٹ Y کے موجودہ کام کو غیر ضروری بنا دے گا۔ میموری ایک جامد سیاق و سباق (static context) ہے۔ تعاون کی حالت آپریشن کا لائیو نقشہ ہے۔
اگر آپ ان دونوں میں الجھ جائیں، تو آپ ایسے سسٹمز بناتے ہیں جو آپ کی کمپنی ہینڈ بک کا ہر پیراگراف تو نکال سکتے ہیں لیکن آپ کو یہ نہیں بتا سکتے کہ آیا کسی دوسرے ایجنٹ نے ابھی آپ کے موجودہ کام کو غیر متعلقہ ثابت کر دیا ہے۔
مشترکہ حالت (Shared State) کے پانچ حصے
ایک حقیقی تعاون کی سطح کے لیے پانچ مخصوص حصوں کی ضرورت ہوتی ہے۔
دعویٰ (Claims)۔ یہ وہ فعال مفروضے ہیں جن کی ایک ایجنٹ جانچ کر رہا ہے۔ فراڈ کی تحقیقات میں، ایک دعویٰ یہ ہو سکتا ہے کہ "غیر معمولی صورتحال ویک اینڈ کے بیچ جابز (batch jobs) سے مطابقت رکھتی ہے۔" ہر ایجنٹ یہ دیکھنے کے قابل ہونا چاہیے کہ کون سے دعوے کھلے ہیں، کن کی جانچ ہو رہی ہے، اور ان کا مالک کون ہے۔ کے بغیر
