کیا آپ کوڈیکس انٹیلیجنٹ ایجنٹ کو سمجھنا چاہتے ہیں؟ اس گہرائی سے تجزیے کو مت چھوڑیں!
کیا آپ کوڈیکس انٹیلیجنٹ ایجنٹ کو سمجھنا چاہتے ہیں؟ اس گہرائی سے تجزیے کو مت چھوڑیں!
OpenAI نے ابھی ایک "غیر معمولی" کام کیا ہے۔
عام طور پر، OpenAI مضبوط ماڈلز (جیسے o1) جاری کرتا ہے، لیکن اس بار، انہوں نے ایک گہرائی سے تکنیکی بلاگ شائع کیا "Unrolling the Codex agent loop"، جس میں نہ صرف Codex CLI کے بنیادی منطق کو اوپن سورس کیا گیا، بلکہ ایک پختہ کوڈنگ انٹیلیجنٹ ایجنٹ (Coding Agent) کے چلنے کے طریقے کو بھی مرحلہ وار بیان کیا گیا ہے۔

Claude Code اور Cursor کی جانب سے دیوانہ وار مداحوں کو جمع کرنے کے موجودہ دور میں، OpenAI کا یہ مضمون نہ صرف اپنی طاقت کا مظاہرہ ہے، بلکہ "ایجنٹ آرکیٹیکٹ کے لیے خطرات سے بچنے کی گائیڈ" بھی ہے۔ چاہے آپ AI پروگرامنگ ٹولز کو اچھی طرح استعمال کرنا چاہتے ہیں، یا خود ایک ایجنٹ تیار کرنا چاہتے ہیں، یہ مضمون لفظ بہ لفظ پڑھنے کے قابل ہے۔
مکمل مضمون 8300+ الفاظ پر مشتمل ہے، اور اسے پڑھنے میں تقریباً 20 منٹ لگیں گے۔
سب سے پہلے، کوڈیکس CLI کیا ہے؟
Codex CLI ایک اوپن سورس کوڈنگ ایجنٹ ٹول ہے جو OpenAI نے تیار کیا ہے، اسے مقامی کمپیوٹر پر چلایا جا سکتا ہے، یا کوڈ ایڈیٹر میں انسٹال کیا جا سکتا ہے۔ یہ VS Code، Cursor، Windsurf وغیرہ کو سپورٹ کرتا ہے۔
اوپن سورس ایڈریس: https://github.com/openai/codex

اور ایجنٹ لوپ (Agent Loop) جس کا تعارف کرایا جائے گا وہ Codex CLI کا بنیادی منطق ہے: یہ صارف، ماڈل اور ماڈل کال کو مربوط کرنے کا ذمہ دار ہے، تاکہ قیمتی ٹولز کے درمیان تعامل کو انجام دیا جا سکے۔
ایجنٹ لوپ (انٹیلیجنٹ ایجنٹ سائیکل)
ماڈل صرف اجزاء ہیں، ایجنٹ (انٹیلیجنٹ ایجنٹ) ہی پروڈکٹ تشکیل دے سکتے ہیں۔
ہر AI ایجنٹ کا مرکز نام نہاد "انٹیلیجنٹ ایجنٹ سائیکل (Agent Loop)" ہے۔ انٹیلیجنٹ ایجنٹ سائیکل کی مثال درج ذیل ہے:

ہم عام طور پر یہ سمجھتے ہیں کہ AI پروگرامنگ کا مطلب ہے: "میں پوچھتا ہوں، یہ جواب دیتا ہے"۔ لیکن Codex CLI کے اندر، یہ ایک پیچیدہ لامحدود سائیکل کا عمل ہے...
ایک معیاری Agent Loop میں درج ذیل مراحل شامل ہیں:
- صارف کی ہدایات: صارف کی جانب سے داخل کردہ متنی ہدایات کا ایک مجموعہ (مثال کے طور پر "اس فنکشن کو دوبارہ تشکیل دیں")۔
- ماڈل استدلال: ماڈل یہ فیصلہ کرتا ہے کہ آیا براہ راست جواب دینا ہے، یا ٹول (Tool Call) کو کال کرنا ہے۔
- ٹول کال: اگر ماڈل list files یا run shell کو کال کرنے کا فیصلہ کرتا ہے، تو CLI ان کمانڈز کو مقامی طور پر انجام دے گا۔
- مشاہدہ (Observation): ٹول کے عمل کا نتیجہ (کوڈ، ایرر، فائل کی فہرست) حاصل کیا جاتا ہے۔
- سائیکل: ان نتائج کو ڈائیلاگ کی تاریخ میں شامل کیا جاتا ہے، اور دوبارہ ماڈل کو دیا جاتا ہے۔ نتائج دیکھنے کے بعد، ماڈل اگلے عمل کا فیصلہ کرتا ہے۔
- اختتام: یہاں تک کہ ماڈل یہ سمجھتا ہے کہ کام مکمل ہو گیا ہے، اور حتمی جواب آؤٹ پٹ کرتا ہے۔
"صارف کے ان پٹ" سے لے کر "انٹیلیجنٹ ایجنٹ کے ردعمل" تک کے پورے عمل کو ڈائیلاگ کا ایک راؤنڈ کہا جاتا ہے (Codex میں اسے ایک تھریڈ کہا جاتا ہے)۔

ڈائیلاگ کے جاری رہنے کے ساتھ، ماڈل کے استدلال کے لیے استعمال ہونے والے پرامپٹ (Prompt) کی لمبائی بھی بڑھ جاتی ہے۔ یہ لمبائی اہم ہے، کیونکہ ہر ماڈل کی ایک سیاق و سباق کی ونڈو ہوتی ہے، جو ماڈل کی جانب سے ایک استدلال کال میں استعمال کیے جا سکنے والے زیادہ سے زیادہ ٹوکنز کی نمائندگی کرتی ہے۔
ماڈل استدلال
Codex CLI ماڈل استدلال کے لیے Responses API کو HTTP درخواست بھیجتا ہے۔ Codex ایجنٹ سائیکل کو چلانے کے لیے Responses API کا استعمال کرتا ہے۔
Responses API کیا ہے؟
Responses API OpenAI کی جانب سے مارچ 2025 میں شروع کیا جانے والا اگلی نسل کا انٹیلیجنٹ ایجنٹ ڈیولپمنٹ انٹرفیس ہے، جس کا مقصد ڈائیلاگ، ٹول کال اور ملٹی موڈل پروسیسنگ کی صلاحیتوں کو متحد کرنا ہے، تاکہ ڈیولپرز کو AI ایپلی کیشنز بنانے کا زیادہ لچکدار اور طاقتور تجربہ فراہم کیا جا سکے۔
Codex CLI کی جانب سے استعمال ہونے والا Responses API اینڈ پوائنٹ قابل ترتیب ہے، اور اسے کسی بھی Responses API کو نافذ کرنے والے اینڈ پوائنٹ کے ساتھ استعمال کیا جا سکتا ہے۔

ماڈل کی جانب سے نمونے لینا (جواب تیار کرنا)
Responses API کو شروع کی جانے والی HTTP درخواست Codex ڈائیلاگ میں پہلے "راؤنڈ" کا آغاز کرے گی۔ سرور Server-Sent Events (SSE) کے ذریعے جوابی سلسلہ وار واپس کرے گا۔

خیال رہے کہ پچھلے راؤنڈ کا پرامپٹ نئے پرامپٹ کا عین مطابق سابقہ ہے۔ اس ڈیزائن سے بعد کی درخواستوں کی کارکردگی میں نمایاں اضافہ ہو سکتا ہے - پرامپٹ کیشنگ میکانزم کا فائدہ اٹھایا جا سکتا ہے۔

راؤنڈز میں اضافے کے ساتھ پرامپٹ کی مسلسل توسیع کے اثرات
1. کارکردگی کے لحاظ سے
- ماڈل سیمپلنگ کی لاگت میں اضافہ: پرامپٹ کی مسلسل توسیع ماڈل سیمپلنگ کی لاگت میں اضافہ کرے گی، کیونکہ سیمپلنگ کے عمل کو زیادہ ڈیٹا پر کارروائی کرنے کی ضرورت ہوتی ہے، جس کے نتیجے میں حساب کتاب کی مقدار میں اضافہ ہوتا ہے۔
- کیش کی تاثیر میں کمی: راؤنڈز میں اضافے کے ساتھ پرامپٹ کی مسلسل توسیع کے ساتھ، عین مطابق سابقہ میچنگ کی مشکل بڑھ جاتی ہے، اور کیش کے ہٹ ہونے کا امکان کم ہو جاتا ہے۔
2. سیاق و سباق کی ونڈو کے انتظام کے لحاظ سے
- سیاق و سباق کی ونڈو آسانی سے ختم ہو جاتی ہے: پرامپٹ کی مسلسل توسیع ڈائیلاگ میں مارکروں کی تعداد میں تیزی سے اضافہ کرے گی، اور ایک بار جب یہ سیاق و سباق کی ونڈو کی حد سے تجاوز کر جائے تو، اس کے نتیجے میں سیاق و سباق کی ونڈو ختم ہو سکتی ہے۔
- کمپریشن آپریشن کی ضرورت میں اضافہ: سیاق و سباق کی ونڈو کے ختم ہونے سے بچنے کے لیے، مارکروں کی تعداد حد سے تجاوز کرنے پر ڈائیلاگ کو کمپریس کرنے کی ضرورت ہے۔
3. کیش کے مس ہونے کے خطرے کے لحاظ سے
- متعدد آپریشنز کیش کے مس ہونے کا سبب بن سکتے ہیں: اگر پرامپٹ کی توسیع کی وجہ سے ماڈل کے دستیاب ٹولز، ٹارگٹ ماڈل، سینڈ باکس کنفیگریشن وغیرہ کو تبدیل کرنا شامل ہے، تو اس سے کیش کے مس ہونے کا خطرہ مزید بڑھ جائے گا۔
- MCP ٹولز پیچیدگی میں اضافہ کرتے ہیں: MCP سرور متحرک طور پر فراہم کردہ ٹولز کی فہرست کو تبدیل کر سکتا ہے، اور طویل ڈائیلاگز میں متعلقہ اطلاعات کا جواب دینے سے کیش مس ہو سکتا ہے۔
حوالہ معلومات: "Unrolling the Codex agent loop" ماخذ: OpenAI





