#react-loop — الذكاء الاصطناعي الوكيلي
حلقة ReAct لدى الوكيل: فكرة ← فعل ← ملاحظة، مباشرةً.
ما ستُجرّبه
- مرحبًا بك في #react-loop. الوكيل ليس نموذج LLM يُجيب — بل هو نموذج LLM تُشغّله في حلقة: فكرة ← فعل (استدعاء أداة) ← ملاحظة (نتيجة الأداة) ← فكرة جديدة، حتى يتمكّن من الإجابة. تلك هي حلقة ReAct. في المنتصف، النموذج LLM (فقاعة كبيرة)؛ حوله، ستّ أدوات يمكنه استدعاؤها (file، calc، web، shell، db، search). ستُشغّل الحلقة ببطء، خطوةً خطوة.
- حدّد هدفًا للوكيل. السيناريو الافتراضي: قراءة
config.jsonوإرجاع محتواه. اكتب/goal Read config.json and return its contents— أو أبقِ الافتراضي وانتقل إلى الخطوة التالية. - خطوة واحدة. اكتب
/step: سيقوم النموذج LLM بالتفكير (يتحوّل الشريط إلى الوردي)، دون فعل بعدُ. هذه المرحلة الصريحة من التفكير هي ما يجعل الوكيل متينًا — بدونها، يُسلسِل الأفعال بشكل أعمى. /stepمرّة أخرى. هذه المرّة يفعل الوكيل: ينطلق شعاع من النموذج LLM نحو أداة file، تُضيء الأداة، ويطبع المعلّم الاستدعاء الدقيق (اسم الأداة + الوسائط)./stepمجدّدًا. تُعيد الأداة نتيجتها: هذه هي الملاحظة. يعود شعاع من الأداة إلى النموذج LLM، تستوعب الفقاعة المركزيّة المعلومة، ويطبع المعلّم الـJSON المُستلَم.- بدل التنفيذ خطوة بخطوة، شغّل الحلقة إلى نهايتها:
/run. سترى الوكيل يتناوب بين الأفكار والأفعال حتى يُنتج جوابًا نهائيًّا (شريط أخضر). - سيناريو أثرى:
/scenario multi. على الوكيل قراءة ملفّ، وعدّ الكلمات، والبحث عن كلمة مفتاحيّة على الإنترنت. لاحظ كيف يُسلسِل ثلاث أدوات مختلفة. - ابدأ التنفيذ:
/run. عُدّ التكرارات، لاحظ أيّ الأدوات تُضيء، وأيّ الملاحظات تعود. - دورك الآن. جرّب
/scenario calcثمّ/run(حساب من خطوتين)، أو/max 3ثمّ/scenario multiو/runلرؤية فشل ناتج عن سقف التكرارات. بعد ذلك، تُفكّك #tool-calling (function calling وMCP — مجانيّة) آليّة الاستدعاء؛ أمّا القنوات البريميوم #slash-commands (Claude Code / Cursor) و#planning-reflection و#multi-agents فترتقي كلّ واحدة درجةً أعلى.
أوامر القناة
/goal <text>— يُحدّد الهدف الذي يجب أن يبلغه الوكيل./scenario <search|calc|multi>— يُحمّل سيناريو جاهزًا (أثر تنفيذيّ حتميّ)./step— يتقدّم بحدث واحد (فكرة أو فعل أو ملاحظة)./run— يُدير الوكيل في حلقة حتى الجواب (أو الفشل)./max <n=3..15>— يضبط سقف التكرارات (حماية من الحلقة اللانهائيّة)./reset— يُعيد ضبط الحلقة (يبقى السيناريو الحاليّ كما هو).
المسرد
- حلقة ReAct
- نمط تنسيق يتناوب فيه النموذج LLM بين الأفكار (تفكير بلغة طبيعيّة) والأفعال (استدعاءات أدوات)؛ كلّ فعل يُرجع ملاحظة تُغذّي الفكرة التالية. أساس مشترك لـClaude Code وCursor وLangChain وAutoGen — الورقة المرجعيّة هي ReAct: Synergizing Reasoning and Acting in Language Models (Yao et al., 2023).
- استدعاء الأداة
- يُصدر النموذج LLM بنية JSON تُسمّي أداة (دالّة) ووسائطها. يقوم زمن التشغيل فعليًّا بتنفيذ الدالّة ويُرجع النتيجة إلى النموذج بوصفها ملاحظة. مُعياريّ عبر OpenAI (tools) وAnthropic (tool use) وبروتوكول MCP المفتوح.
- ملاحظة
- القيمة المُعادة من أداة (نصّ أو JSON أو خطأ) يُعيد النموذج LLM قراءتها في التكرار التالي. غالبًا ما تُقتطع لتناسب نافذة السياق — هنا تُصبح قناة مثل #context-memory (بريميوم) ثمينة.
- تكرار
- مرور واحد فكرة ← فعل ← ملاحظة. الوكيل المفيد يُشغَّل من 3 إلى 20 تكرار حسب المهمّة. سقف
maxأساسيّ لتفادي الحلقات اللانهائيّة (وكيل يُكرّر الفعل نفسه أو يضيع في الأفكار). - MCP
- بروتوكول مفتوح (Anthropic، 2024) يُوحّد كيف يستدعي نموذج LLM الأدوات التي يعرضها خادوم — ملفّات، git، قاعدة بيانات، ويب… Cursor وClaude Code وClaude Desktop تستهلك جميعها خواديم MCP. مُفصّل في #tool-calling (مجانيّة) و#slash-commands (بريميوم).
- أمر شرطة مائلة
- اختصار مثل
/planو/reviewو/testيُطلق موجّهًا مكتوبًا مسبقًا أو تدفّق عمل صغيرًا لوكيل. يوفّر Claude Code وCursor أوامر أصليّة ويُتيحان للمستخدمين تعريف أوامرهم الخاصّة. تُظهر قناة #slash-commands (بريميوم) كيفيّة تصميمها وتسلسلها. - سقف التكرارات
- أقصى عدد من الأدوار المسموح به قبل إيقاف الوكيل. إنّه الحدّ الأدنى من الحماية في الإنتاج: وكيل يدور في حلقة مُكلف (كلّ دور = استدعاء LLM واحد) ويحبس مستخدمًا في الانتظار. اكتب
/max 3ثمّ/scenario multiلرؤيته يعمل. - أثر
- التاريخ الكامل للأفكار + الأفعال + الملاحظات لتشغيل واحد. أساسيّ للتصحيح (فهم لماذا سلك الوكيل مسارًا بعينه) ولقابليّة الملاحظة في الإنتاج (LangSmith وBraintrust وArize…).
قنوات أخرى في الذكاء الاصطناعي الوكيلي
- #react-loop — حلقة ReAct لدى الوكيل: فكرة ← فعل ← ملاحظة، مباشرةً.
- #tool-calling — استدعاء الأدوات (function calling / MCP): الـJSON الذي يجعل النموذج LLM يفعل.
- #slash-commands — أوامر الشرطة المائلة، على غرار Claude Code / Cursor: قوالب، وسائط، تسلسل.
- #context-memory — نافذة السياق وذاكرة العميل: عدّ الرموز، الاقتطاع، التلخيص، الفهرسة.
- #planning-reflection — التخطيط والتأمّل والتصحيح الذاتي: من 60% إلى 90% نجاحًا.
- #multi-agents — العملاء المتعدّدون: planner وworkers وverifier. رسم بياني (DAG) يتفوّق على العميل الأحادي.