- Published on
آنتھروپک ایجنٹ ڈویلپمنٹ: سادگی پیچیدگی پر حاوی
مصنوعی ذہانت (AI) ایجنٹس کی ترقی کے بارے میں اینتھروپک کا نقطہ نظر: سادگی پیچیدگی پر حاوی ہے
ایجنٹس کی تعریف ایجنٹس کے تصورات مختلف ہیں۔ کچھ لوگ انھیں 'آل راؤنڈ بٹلر' کے طور پر دیکھتے ہیں جو آزادانہ طور پر سوچنے، خود مختار فیصلے کرنے اور پیچیدہ کاموں کو انجام دینے کے لیے ٹولز استعمال کرنے کی صلاحیت رکھتے ہیں۔ دیگر اسے 'ضابطہ ورکر' کے طور پر دیکھتے ہیں جو پہلے سے طے شدہ ورک فلوز پر عمل کرتے ہیں۔ اینتھروپک ان دونوں کو انٹیلیجنٹ سسٹمز کے طور پر درجہ بندی کرتا ہے، ورک فلوز اور ایجنٹس میں فرق کرتا ہے۔
- ورک فلو: یہ ایک ایسا نظام ہے جو بڑے لسانی ماڈلز (LLMs) اور ٹولز کو پہلے سے طے شدہ کوڈ پاتھ کے ذریعے ترتیب دیتا ہے۔
- ایجنٹ: یہ ایک ایسا نظام ہے جہاں LLM متحرک طور پر اپنے عمل اور ٹول کے استعمال کی رہنمائی کرتا ہے، اور اس کام کو مکمل کرنے کے طریقے پر خود مختارانہ کنٹرول رکھتا ہے۔
ایجنٹس کا انتخاب کب کریں
اینتھروپک AI ایپلیکیشنز تیار کرتے وقت 'سادہ رکھیں' کے اصول پر عمل کرنے کا مشورہ دیتا ہے۔ ہر منظر نامے کے لیے پیچیدہ ذہین نظام کی تعمیر کی ضرورت نہیں ہے۔ ذہین نظام طاقتور ہیں، لیکن وہ سست ردعمل اور زیادہ لاگت کا باعث بن سکتے ہیں۔ ڈویلپرز کو فعالیت اور کارکردگی کے درمیان توازن قائم کرنے کی ضرورت ہے۔
- ورک فلو: واضح کاموں کے لیے موزوں ہے جن میں پیش گوئی اور مستقل مزاجی کی ضرورت ہو۔
- ایجنٹ: بڑے پیمانے پر منظرناموں کے لیے زیادہ موزوں ہے جن میں لچک اور ماڈل سے چلنے والے فیصلے کی ضرورت ہو۔
بہت سی ایپلیکیشنز کے لیے، اچھے اشارے، بازیافت اور سیاق و سباق کی مثالوں کا استعمال کرتے ہوئے براہ راست بڑے ماڈل سے پوچھنا اکثر کافی ہوتا ہے۔
فریم ورکس کا استعمال
فی الحال، مارکیٹ میں مختلف فریم ورکس موجود ہیں جو ڈویلپرز کو AI ایجنٹس بنانے میں مدد کرتے ہیں، جیسے:
- LangChain's LangGraph
- Amazon Bedrock's AI Agent Framework
- ڈریگ اینڈ ڈراپ بڑے ماڈل ورک فلو بلڈنگ ٹول Rivet
- پیچیدہ ورک فلوز کی تعمیر اور جانچ کے لیے GUI ٹول Vellum
یہ فریم ورکس ترقی کے عمل کو آسان بناتے ہیں، لیکن یہ کوڈ کی تجریدی پرتوں کو بھی بڑھاتے ہیں، بنیادی منطق کو کم شفاف بناتے ہیں، ڈیبگنگ میں دشواری میں اضافہ کرتے ہیں، اور سادہ منظرناموں میں ضرورت سے زیادہ پیچیدہ حل متعارف کروا سکتے ہیں۔
اینتھروپک ڈویلپرز کو بڑے ماڈلز کے API کو براہ راست استعمال کرنے سے شروعات کرنے کا مشورہ دیتا ہے۔ بہت سے پیٹرن صرف چند لائنوں کے کوڈ سے حاصل کیے جا سکتے ہیں۔ اگر فریم ورک استعمال کرنے کا انتخاب کرتے ہیں، تو ان کے بنیادی اصولوں کو سمجھنا ضروری ہے۔ فریم ورک کے بنیادی میکانزم کی ناکافی سمجھ ترقیاتی مسائل کی بنیادی وجہ ہے۔
اینتھروپک کی کک بک مخصوص مثالیں فراہم کرتی ہے۔
بلڈنگ بلاکس، ورک فلوز، اور ایجنٹس
بنیادی بلڈنگ بلاکس: بہتر LLMs ذہین نظاموں کا بنیادی بلڈنگ بلاک بہتر LLMs ہیں، جن میں بازیافت اور یادداشت جیسی خصوصیات ہیں۔ اینتھروپک کے ماڈلز فعال طور پر ان صلاحیتوں کو استعمال کر سکتے ہیں، جیسے کہ تلاش کی استفسارات پیدا کرنا، ٹولز کا انتخاب کرنا اور یہ فیصلہ کرنا کہ کون سی معلومات کو برقرار رکھنا ہے۔
فعالیت کو بڑھاتے وقت، اس پر توجہ مرکوز کی جانی چاہیے:
- مخصوص ایپلیکیشن منظرناموں کے مطابق فعالیت کو حسب ضرورت بنانا
- اس بات کو یقینی بنانا کہ ماڈل کے لیے آسان اور اچھی طرح سے دستاویزی انٹرفیس فراہم کیا جائے۔
اینتھروپک کے حالیہ ماڈل سیاق و سباق پروٹوکول نے AI ماڈلز کو تھرڈ پارٹی ٹول ایکو سسٹم کے ساتھ ضم کرنے کو آسان بنایا ہے۔
ورک فلو: پرامپٹ چین
پرامپٹ چین پیچیدہ کاموں کو متعدد مراحل میں تقسیم کرتا ہے، ہر مرحلہ ایک بار بڑے ماڈل کو کال کرتا ہے، اور اس کے بعد کے مراحل پچھلے مرحلے کے نتائج پر مبنی ہوتے ہیں۔ ڈویلپرز درمیانی مراحل میں چیک پوائنٹس شامل کر سکتے ہیں تاکہ یہ یقینی بنایا جا سکے کہ عمل توقع کے مطابق آگے بڑھ رہا ہے۔
پرامپٹ چین ان منظرناموں کے لیے موزوں ہے جہاں پیچیدہ کاموں کو واضح طور پر ذیلی کاموں کی ایک سیریز میں تقسیم کیا جا سکتا ہے۔ ہر ماڈل ایک سادہ کام کو مکمل کرنے پر توجہ مرکوز کرتا ہے، اور اگرچہ مجموعی ردعمل کا وقت قدرے زیادہ ہو سکتا ہے، لیکن درستگی میں نمایاں اضافہ ہوتا ہے۔
عام ایپلیکیشن کیسز:
- پہلے مارکیٹنگ کا متن تیار کریں، پھر اسے دوسری زبانوں میں ترجمہ کریں۔
- پہلے دستاویز کا خاکہ لکھیں اور تعمیل کی جانچ کریں، پھر خاکہ کی بنیاد پر ایک مکمل دستاویز لکھیں۔
ورک فلو: ذہین تقسیم
تقسیم کی تکنیک ان پٹ ٹاسک کی قسم کا تعین کرتی ہے اور اسے متعلقہ ماڈیول کو تفویض کرتی ہے۔ یہ ڈیزائن ہر ماڈیول کو مخصوص کام کے لیے بہتر بنانے کی اجازت دیتا ہے، مختلف کاموں کے درمیان مداخلت سے گریز کرتا ہے۔ ذہین تقسیم ان منظرناموں کے لیے موزوں ہے جہاں کاموں میں واضح درجہ بندی کی خصوصیات ہوں۔ AI سسٹم بڑے لسانی ماڈل یا روایتی الگورتھم کا استعمال کرکے کام کی قسم کو درست طریقے سے شناخت اور تقسیم کر سکتا ہے۔
عام ایپلیکیشن کیسز:
- کسٹمر سروس سسٹم میں، عام پوچھ گچھ، رقم کی واپسی کی درخواستوں اور تکنیکی مدد کے مسائل کو متعلقہ عملوں کی طرف لے جانا۔
- سادہ، عام مسائل کو چھوٹے ماڈلز کو تفویض کرنا اور مشکل، غیر معمولی مسائل کو زیادہ طاقتور ماڈلز کو تفویض کرنا، لاگت اور رفتار کو بہتر بنانا۔
ورک فلو: متوازی
بڑے لسانی ماڈلز بیک وقت کاموں کو سنبھال سکتے ہیں اور پروگرام کے لحاظ سے آؤٹ پٹس کو جمع کر سکتے ہیں۔ متوازی ورک فلوز کی خصوصیات:
- ٹاسک سیگمنٹیشن: کاموں کو متوازی طور پر چلنے والے ذیلی کاموں میں تقسیم کرنا، اور آخر میں نتائج کو ضم کرنا۔
- ووٹنگ میکانزم: ایک ہی کام کو کئی بار چلانا، بہترین نتیجہ کا انتخاب کرنا یا متعدد جوابات کو یکجا کرنا۔
جب ذیلی کاموں کو رفتار بڑھانے کے لیے متوازی طور پر انجام دیا جا سکتا ہے، یا اعلیٰ سطح کے اعتماد کے ساتھ نتائج حاصل کرنے کے لیے متعدد نقطہ نظر سے کوشش کرنے کی ضرورت ہو، تو متوازی طریقہ بہت موثر ہے۔ پیچیدہ کاموں کے لیے، ہر کال کو کسی خاص پہلو سے نمٹنے پر توجہ مرکوز کرنے سے بہتر نتائج ملیں گے۔
عام ایپلیکیشن کیسز:
- ٹاسک سیگمنٹیشن:
- حفاظتی تحفظ: ایک ماڈل صارف کی درخواستوں کو سنبھالتا ہے، اور دوسرا مواد کا جائزہ لیتا ہے۔
- کارکردگی کی تشخیص: مختلف ماڈل سسٹم کی کارکردگی کے میٹرکس کا جائزہ لیتے ہیں۔
- ووٹنگ میکانزم:
- کوڈ کی حفاظتی جانچ: متعدد پتہ لگانے والے ماڈل مشترکہ طور پر کوڈ کی کمزوریاں تلاش کرتے ہیں۔
- مواد کا جائزہ: متعدد ماڈل مختلف نقطہ نظر سے مواد کی حفاظت کا جائزہ لیتے ہیں۔
ورک فلو: لیڈر - ایگزیکیوٹر
ایک مرکزی بڑا لسانی ماڈل متحرک طور پر کاموں کو تقسیم کرتا ہے، انھیں ایگزیکیوٹر ماڈلز کو تفویض کرتا ہے، اور نتائج کا خلاصہ کرتا ہے۔
یہ ورک فلو پیچیدہ کاموں کے لیے موزوں ہے جہاں مخصوص اقدامات کا پہلے سے تعین کرنا مشکل ہے۔ کاموں کی تقسیم طے شدہ نہیں ہے، بلکہ AI سسٹم کے ذریعے حالات کے مطابق متحرک طور پر طے کی جاتی ہے۔
عام ایپلیکیشن کیسز:
- پروگرامنگ ایپلیکیشنز جن میں متعدد فائلوں میں پیچیدہ ترامیم کی ضرورت ہوتی ہے۔
- تلاش کے کام جن میں متعدد ذرائع سے متعلقہ معلومات جمع کرنے اور تجزیہ کرنے کی ضرورت ہوتی ہے۔
ورک فلو: تشخیص - اصلاح
ایک LLM کال ایک رسپانس تیار کرتی ہے، اور دوسرا تشخیص اور رائے فراہم کرتا ہے، ایک سائیکل بناتا ہے۔
یہ ورک فلو خاص طور پر اس وقت موثر ہے جب تشخیص کے واضح معیار موجود ہوں، اور تکراری تطہیر کے ذریعے نمایاں قدر لائی جا سکتی ہو۔ LLM رائے دینے کے قابل ہے، بالکل انسانی مصنف کے بار بار نظر ثانی کرنے کے عمل کی طرح۔
عام ایپلیکیشن کیسز:
- ادبی ترجمہ: تشخیص ماڈل ترجمہ میں رہ جانے والے لسانی فرق کو تلاش کرتا ہے اور ترمیم کی تجاویز فراہم کرتا ہے۔
- پیچیدہ تلاش: تشخیص ماڈل یہ طے کرتا ہے کہ گہری تلاش جاری رکھنے کی ضرورت ہے یا نہیں۔
ایجنٹ
ایجنٹس LLMs کی پیچیدہ ان پٹ کو سمجھنے، استدلال کی منصوبہ بندی کرنے، ٹولز استعمال کرنے اور غلطی کی بحالی جیسی اہم صلاحیتوں میں پختگی کے ساتھ ابھرتے ہیں۔
ایجنٹ کا کام انسانی صارفین کے حکم یا بات چیت کے ساتھ شروع ہوتا ہے۔ ایک بار کام واضح ہو جانے کے بعد، ایجنٹ آزادانہ طور پر منصوبہ بندی اور کام کرتا ہے، اور اسے انسانی معلومات یا فیصلوں کی ضرورت پڑ سکتی ہے۔
عمل درآمد کے ہر مرحلے پر، ماحول سے 'حقیقی صورتحال' حاصل کرنا ضروری ہے۔ ایجنٹ چیک پوائنٹس پر یا رکاوٹوں کا سامنا کرنے پر انسانی رائے لینے کے لیے رک سکتا ہے۔ کام عام طور پر مکمل ہونے پر ختم ہو جاتا ہے، لیکن اس میں عام طور پر سٹاپ کنڈیشن بھی شامل ہوتی ہیں۔
ایجنٹس پیچیدہ کاموں کو سنبھالنے کے قابل ہیں، لیکن ان کا نفاذ عام طور پر آسان ہے، عام طور پر صرف ایک لوپ میں بڑے لسانی ماڈل کا استعمال کرنا ہے جو ماحولیاتی رائے کے مطابق ٹولز استعمال کرتا ہے۔ لہذا، ٹول سیٹ اور ان کی دستاویزات کو واضح اور سوچے سمجھے انداز میں ڈیزائن کرنا ضروری ہے۔
ایجنٹس کھلے مسائل کے لیے موزوں ہیں، ان مسائل کے لیے جن میں درکار اقدامات کی تعداد کا اندازہ لگانا مشکل ہے، اور جنھیں طے شدہ راستوں پر ہارڈ کوڈ نہیں کیا جا سکتا۔ ایجنٹس کی خود مختاری انھیں قابل اعتماد ماحول میں کاموں کو بڑھانے کے لیے ایک مثالی انتخاب بناتی ہے۔ ایجنٹس کی خود مختاری کا مطلب ہے زیادہ لاگت اور غلطیوں کے جمع ہونے کا خطرہ۔ ریت کے ڈبے والے ماحول میں وسیع پیمانے پر جانچ کرنے اور مناسب حفاظتی اقدامات کرنے کا مشورہ دیا جاتا ہے۔
ایجنٹس کی درخواست کی مثالیں:
- ایک کوڈ ایجنٹ، جو SWE-bench ٹاسک کو حل کرنے کے لیے استعمال ہوتا ہے جس میں ٹاسک کی تفصیل کی بنیاد پر متعدد فائلوں میں ترمیم کرنا شامل ہے۔
- اینتھروپک کا 'کمپیوٹر استعمال' فیچر، جہاں کلاڈ کمپیوٹر استعمال کر کے کام مکمل کرتا ہے۔
مجموعہ اور حسب ضرورت
یہ بلڈنگ بلاکس لازمی نہیں ہیں، اور ڈویلپرز انھیں استعمال کے مطابق تشکیل اور جوڑ سکتے ہیں۔ کامیابی کی کلید کارکردگی کی پیمائش اور بار بار نفاذ میں ہے۔ صرف اس صورت میں جب آسان حل قابل عمل نہ ہوں، تو پیچیدگی کو بڑھانے پر غور کیا جانا چاہیے۔ LLM کے میدان میں کامیابی سب سے پیچیدہ نظام کی تعمیر میں نہیں ہے، بلکہ ان نظاموں کی تعمیر میں ہے جو ضروریات کے مطابق ہوں۔ سادہ اشارے سے شروع کریں، انھیں جامع تشخیص کے ساتھ بہتر بنائیں، اور صرف اس صورت میں ملٹی اسٹیپ ایجنٹ سسٹم شامل کریں جب آسان حل ممکن نہ ہوں۔
ایجنٹس کو تعینات کرتے وقت، مندرجہ ذیل اصولوں پر عمل کرنے کی ضرورت ہے:
- ایجنٹ کے ڈیزائن کو سادہ رکھیں۔
- ایجنٹ کی شفافیت کو ترجیح دیں، ہر منصوبہ بند قدم کو واضح طور پر دکھائیں۔
- جامع ٹول کی دستاویزات اور جانچ کے ذریعے، ایجنٹ-کمپیوٹر انٹرفیس (ACI) کو احتیاط سے تیار کریں۔