بوت الذكاء الاصطناعي - الوكلاء

:bookmark: يشرح هذا الدليل كيفية إعداد وإدارة الوكلاء (Agents) لـ Discourse AI - روبوت الذكاء الاصطناعي.

:person_raising_hand: مستوى المستخدم المطلوب: مسؤول (Administrator)

يتضمن روبوت الذكاء الاصطناعي في ديسكورس نظامًا مرنًا لإدارة الوكلاء. يغطي هذا الدليل ما يلي:

  • طرق التفاعل مع وكلاء الذكاء الاصطناعي
  • خيارات الإعداد
  • الإعدادات المتقدمة
  • الأدوات المدعومة
  • إمكانيات التخصيص

:link: تعرف على روبوت الذكاء الاصطناعي وكيفية تمكينه في هذا الدليل.

ما هي الوكلاء؟

الوكلاء (Agents) هي ميزة قوية تتيح لك تخصيص سلوك محرك الذكاء الاصطناعي في منتدى Discourse الخاص بك. إنهم يعملون بمثابة “رسالة نظام” توجه استجابات وتفاعلات الذكاء الاصطناعي، مما يساعد في إنشاء تجربة مستخدم أكثر تخصيصًا وجاذبية.

لماذا تستخدم الوكلاء؟

باستخدام الوكلاء، يمكنك تكييف سلوك الذكاء الاصطناعي ليناسب سياق ونبرة منتدىك بشكل أفضل. سواء كنت تريد أن يكون الذكاء الاصطناعي أكثر رسمية لإعداد احترافي، أو أكثر ودية لمنتدى مجتمعي، أو حتى يجسد شخصية معينة للعبة تقمص أدوار، فإن الوكلاء يمنحونك المرونة للقيام بذلك.

الوصول الخاص بالمجموعات إلى الوكلاء

علاوة على ذلك، يمكنك إعداد الأمر بحيث تتمتع مجموعات مستخدمين معينة بالوصول إلى وكلاء محددين. هذا يعني أنه يمكنك الحصول على سلوكيات مختلفة للذكاء الاصطناعي لأقسام مختلفة من منتدىك، مما يزيد من تنوع وثراء تفاعلات مجتمعك.

التفاعل مع الوكلاء

يمكن التفاعل مع الوكلاء بعدة طرق:

  1. رسالة خاصة (PM)
  2. رسالة مباشرة في الدردشة (DM)
  3. إشارات في قناة الدردشة
  4. الإشارة في موضوع عام عبر @اسم_المستخدم_للروبوت_الافتراضي

يمكن للمسؤولين التحكم في طرق التفاعل المسموح بها لكل وكيل عبر أربعة أزرار تبديل منفصلة:

  • السماح بالرسائل الشخصية: السماح للمستخدمين ببدء رسائل خاصة مع هذا الوكيل (ممكّن بشكل افتراضي)
  • السماح بالإشارات في المواضيع: السماح بـ @mention في المواضيع لتشغيل استجابة
  • السماح بالرسائل المباشرة في الدردشة: السماح بالرسائل المباشرة في الدردشة مع هذا الوكيل (يتطلب إضافة الدردشة)
  • السماح بالإشارات في قنوات الدردشة: السماح بـ @mention في قنوات الدردشة (يتطلب إضافة الدردشة)

الإعداد (Configuration)

لتكوين الوكلاء، انتقل إلى discourse.example.com/admin/plugins/discourse-ai/ai-agents.

تشمل خيارات التكوين الرئيسية ما يلي:

  • رسالة النظام (System prompt): توجه المحادثة
  • دعم الرؤية (Vision support): تمكين لنماذج اللغة الكبيرة التي تعمل بالرؤية، مثل GPT-4 Turbo، Claude 3
  • النموذج الافتراضي (Default model): مطلوب للوكلاء الذين يمكن الإشارة إليهم والوكلاء الذين تم تمكين نموذج اللغة الكبير الافتراضي القسري لهم
  • المجموعات المسموح بها (Allowed groups): تحديد الأذونات باستخدام أمان مجموعات Discourse
  • التحميلات (Uploads): فهرسة الملفات النصية للمعرفة الإضافية (باستخدام RAG - التوليد المعزز بالاسترجاع)
  • الأدوات الممكنة (Enabled tools): التحكم في الوصول إلى أدوات محددة
  • وضع التنفيذ (Execution mode): الاختيار بين الوضع “الافتراضي” (default) والوضع “الوكيل” (agentic) (وضع الوكيل يتيح استخدام الأدوات متعدد الأدوار مع حدود رموز قابلة للتكوين وضغط)

إليك نظرة على شاشة تكوين وكيل ذكاء اصطناعي كاملة:

خيارات التكوين المتقدمة

يوفر محرر الوكيل العديد من الخيارات المتقدمة:

  • درجة الحرارة (Temperature) و top_p (أخذ العينات النووية): للتحكم في الإبداع مقابل القدرة على التنبؤ
  • الحد الأقصى لمنشورات السياق (Max context posts): تقييد عدد المنشورات المقدمة لنموذج اللغة الكبير كسجل - عدد أقل من المنشورات سيقلل التكاليف، ولكنه سيجعل الذكاء الاصطناعي “ينسى” المحتوى الأقدم (غير متاح في الوضع الوكيلي)
  • وضع التنفيذ (Execution mode): “افتراضي” للاستجابات ذات المرور الواحد، و"وكيل" (Agentic) لاستخدام الأدوات متعددة الخطوات مع:
    • الحد الأقصى لرموز الدور (Max turn tokens): ميزانية الرموز للتنفيذ الوكيلي
    • عتبة الضغط (Compression threshold): نسبة العتبة لضغط السياق (20-99٪)
  • إظهار التفكير (Show thinking): عرض عملية تفكير الذكاء الاصطناعي للمستخدمين (ممكّن بشكل افتراضي)
  • الموافقة المطلوبة (Require approval): طلب موافقة بشرية قبل تنفيذ إجراءات معينة
  • فرض نموذج اللغة الكبير الافتراضي (Force default LLM): منع المستخدمين من تبديل نماذج اللغة الكبيرة لهذا الوكيل
  • تنسيق الاستجابة (Response format): تكوين تنسيق الإخراج المهيكل
  • الأمثلة (Examples): أمثلة قليلة اللقطات لتوجيه سلوك الذكاء الاصطناعي (أزواج من رسائل المستخدم/المساعد)
  • خيارات التحميل (Upload options):
    • رموز الكتل (Chunk tokens): التحكم في تقسيم المستندات
    • رموز تداخل الكتل (Chunk overlap tokens): تعيين التداخل بين الكتل
    • استعلامات كتل المحادثة (Search conversation chunks): عدد أجزاء المستند المضافة إلى استعلامات المستخدم
    • نموذج اللغة الكبير لتوحيد الأسئلة (Question consolidator LLM): اختيار نموذج اللغة الكبير لتحديد أسئلة المستخدم
    • نموذج اللغة الكبير لـ RAG (RAG LLM model): اختيار نموذج لغة كبير محدد لمعالجة RAG

المتطلبات الأساسية لدعم التحميل

لاستخدام دعم التحميل:

  1. تمكين الإعداد ai_embeddings_enabled
  2. تكوين نموذج تضمين عبر ai_embeddings_selected_model

يدعم Discourse AI نماذج تضمين مختلفة. يحصل العملاء المستضافون على وصول مجاني إلى نموذج bge-large-en.

:information_source: يمكن للمستضيفين ذاتيًا أو الأشخاص الذين يريدون المزيد من الخيارات استضافة نموذج تضمين خاص بهم أو استخدام نماذج من OpenAI أو Google (Gemini) والمزيد.

تقسيم النص في Discourse AI

يستخدم Discourse مُقسّم نصوص حرفي متكرر (Recursive Character Text Splitter) للاحتفاظ بالفقرات والأسطر والكلمات معًا عند تقسيم النص. يمكنك التحكم في تقسيم النص باستخدام الفاصل [[metadata YOUR METADATA HERE]]:

[[metadata about cats]]
a long story about cats
[[metadata about dogs]]
a long story about dogs

تمنع هذه الطريقة “تلوث الكتلة” من خلال ضمان تضمين البيانات ذات الصلة فقط في كل كتلة.

تصحيح أخطاء وكلاء الذكاء الاصطناعي

لتصحيح أخطاء الوكيل الخاص بك:

  1. أضف مستخدمين إلى المجموعة المحددة في الإعداد ai_bot_debugging_allowed_groups
  2. سيشاهد المستخدمون في هذه المجموعة زر تصحيح أخطاء الذكاء الاصطناعي في أسفل منشورات الذكاء الاصطناعي
  3. انقر على الزر للوصول إلى نافذة واجهة مستخدم تصحيح الأخطاء المنبثقة

:warning: تذكر: إذا قدمت معلومات غامضة أو غير مفيدة لنموذج اللغة الكبير، فسيكون لديه صعوبة كبيرة في تحويلها إلى معلومات مفيدة.

الأدوات المدعومة

يدعم Discourse AI أدوات مختلفة، منها:

متاحة دائمًا

  • الفئات (Categories)
  • الوقت (Time)
  • البحث (Search)
  • القراءة (Read)
  • مخطط قاعدة البيانات (Database Schema)
  • إعدادات البحث (Search Settings)
  • سياق الإعداد (Setting Context)
  • مُحدد الاختيار العشوائي (Random Picker)
  • متصفح الويب (Web Browser)
  • البحث في Meta Discourse
  • مُقيّم جافاسكريبت (JavaScript Evaluator)
  • الباحث (Researcher)
  • الإبلاغ عن منشور (Flag Post)
  • إغلاق الموضوع (Close Topic)
  • إلغاء إدراج الموضوع (Unlist Topic)
  • قفل المنشور (Lock Post)
  • حذف الموضوع (Delete Topic)
  • تعديل المنشور (Edit Post)
  • تعديل الفئة (Edit Category)
  • تعيين مؤقت الموضوع (Set Topic Timer)
  • تعيين الوضع البطيء (Set Slow Mode)
  • نقل المشاركات (Move Posts)
  • منح شارة (Grant Badge)

تكامل GitHub

  • محتوى ملف GitHub (GitHub File Content)
  • فرق طلب سحب GitHub (GitHub Pull Request Diff)
  • البحث عن ملفات GitHub (GitHub Search Files)

هذه الأدوات الثلاثة متاحة دائمًا. بالإضافة إلى ذلك:

  • البحث في كود GitHub (GitHub Search Code) يتطلب ملء الإعداد ai_bot_github_access_token

أدوات مشروطة

  • العلامات (Tags) و تعديل العلامات (Edit Tags): متاحة عند تمكين وضع العلامات على موقعك
  • توليد الصور (Image generation) (صورة، إنشاء صورة، تعديل صورة): يتطلب تكوين أداة توليد صور مخصصة عبر واجهة مسؤول الإعدادات
  • بحث جوجل (Google search): يتطلب ملء الإعدادين ai_google_custom_search_api_key و ai_google_custom_search_cx
  • القطع الأثرية (Artifacts) (إنشاء قطعة أثرية، تحديث قطعة أثرية، قراءة قطعة أثرية): متاح عندما يتم تعيين ai_artifact_security على lax أو hybrid أو strict
  • التكليف (Assign): متاح عند تثبيت إضافة التكليف (Assign plugin)
  • الوسم كـ تم الحل (Mark as Solved): متاح عند تثبيت إضافة تم الحل (Solved plugin)

تتطلب بعض الأدوات تكويناً إضافياً أو مفاتيح API.

دعم الأدوات المخصصة

يمكنك إنشاء أدواتك الخاصة باستخدام دعم الأدوات المخصصة.

تخصيص وكلاء النظام

  1. إنشاء وكيل جديد
  2. انسخ والصق رسالة النظام من الوكيل الذي ترغب في تخصيصه
  3. عدّل حسب الحاجة
  4. اختياري: تعطيل وكيل النظام الأصلي لتجنب التكرار

تخصيص البحث

لتخصيص البحث لوكيل جديد:

  1. إنشاء وكيل جديد
  2. أضف أداة “البحث”
  3. قم بتكوين خيارات البحث، بما في ذلك:

يتيح لك هذا تفويض أذونات البحث، أو زيادة عدد النتائج، أو تقييد البحث على أقسام معينة من موقعك.

7 إعجابات

تم تقسيم منشور إلى موضوع جديد: هل يمكنني توفير دالة مولد صور لـ Discourse AI

ماذا تفعل أداة القراءة بالضبط؟

أيضًا، الإشارات في المنشورات معطلة حاليًا وفقًا لتقرير الخلل هذا.

باختصار، يتيح هذا لنموذج اللغة الكبير القدرة على قراءة المواضيع والمنشورات في منتداك.

إعجاب واحد (1)

بشكل أساسي، يقرأ موضوعًا/منشورًا عند إعطاء عنوان URL أو الاسم أو المعرف، وبخلاف ذلك، أو لا يزال، فإنه يستخدم التضمينات وماذا ومتى ولماذا وكيف يعتمد على النموذج نفسه، والتحفيز، وما إلى ذلك؟

إعجابَين (2)

عذرًا، كنت أرد على منشور مختلف :slight_smile:

يستخدم معرف الموضوع أو معرف الموضوع + رقم المشاركة للعثور على علامة Markdown الخام لموضوع/مشاركة مع بعض الضمانات للطول الأقصى.

لا يعتمد على التضمين.

5 إعجابات

بعيدًا قليلاً عن الموضوع، ولكن نظرًا لعدم وجود شيء لأطرحه وسيقوم هؤلاء الأشخاص بتنظيف هذه المواضيع بين الحين والآخر، فلا يهمني.

العناوين التلقائية في الرسائل الخاصة مع الذكاء الاصطناعي أصبحت الآن باللغة الصحيحة. ليس بالأمر الكبير، لكن قيمته النفسية كبيرة. شكرًا!

4 إعجابات

هل هناك أي طريقة لإضافة مستخدمي الروبوت إلى مجموعة؟ أريد بشكل أساسي إضافة تمييز صورة رمزية لهؤلاء المستخدمين، ولكن عند إضافتهم إلى مجموعة، فإنهم لا يظهرون.

لا يظهرون، لكنهم لا يزالون موجودين. يمكنك التأكد من ذلك عن طريق محاولة إضافة شخصية ذكاء اصطناعي مرة أخرى. أو ترى المجموعة المطلوبة في إعدادات هؤلاء المستخدمين الزائفين.

إعجاب واحد (1)

ما هو الجزء من مستودع Discourse AI الذي يجب أن ألقي نظرة عليه إذا كنت أرغب في معرفة كيفية عمل أدوات روبوت الذكاء الاصطناعي بدقة؟

الأداة (Tool) وساحة اللعب (Playground) والروبوت (Bot) كلها مجالات جيدة للبدء بها.

انظر هذا كمثال: Understanding Tools in Discourse AI System - AI Conversation - Discourse Meta

3 إعجابات

بالضبط الإجابة التي كنت أبحث عنها - شكراً لك أيها السيد الكريم! لكل من قد يهمه الأمر: أوصي بقراءة الكود الموجود في هذا المستودع لتتمكن من توجيه مطالباتك بشكل أفضل لأدوات شخصيتك.

إعجاب واحد (1)

تم تقسيم منشور إلى موضوع جديد: هندسة شخصية للاعتماد على محفوظات الدردشة

أحاول حاليًا جلب جميع المشاركات من موضوع عبر “أداة القراءة”، لكنها توفر 100 مشاركة كحد أقصى لنموذج LLM. لقد قمت بالفعل بتعيين “الحد الأقصى للمشاركات” إلى 999 في إعدادات الشخصية، لكن المشكلة لا تزال قائمة.

هل يمكن أن يكون هناك أي قيود على طلب واجهة برمجة التطبيقات من جانب الخادم تسبب المشكلة؟

@sam أي فكرة عن هذا، ما الذي يمكن أن يكون السبب؟

لم أتحقق من قاعدة الكود، لكنني أشك في أنها قد تكون حدًا صارمًا تم تعيينه في الكود نفسه. هل لي أن أسأل ما الذي تحاول تحقيقه بهذا؟ هذا عامل رئيسي هنا.

وربما يكون من الأفضل استخدام شخصية باحث المنتدى؟

لدينا فئة “يوميات/سجل” تحتوي غالبًا على مئات المشاركات حيث يقوم مالك الموضوع بالإبلاغ عن تقدم مشروعه على مدار 4-5 أشهر.
هدفي هو جلب جميع المشاركات ضمن هذا الموضوع، وتصفيتها حسب المؤلف = مالك الموضوع وإنشاء ملخص.

إعجاب واحد (1)

عليك استخدام باحث المنتدى لهذا الغرض، فهو يمثل حالة الاستخدام الدقيقة للشخصية

إعجابَين (2)

@sam أود ذلك، لكنه لا يدعم الصور حاليًا. هل هذا مدرج في خارطة الطريق أم أنه ليس أولوية في الوقت الحالي؟

3 إعجابات

بالتأكيد يمكنني إضافة ذلك، ليس تغييراً كبيراً للغاية

3 إعجابات