بُراق
الأدلةبناء وكيل AI
يلا نبدأ
دليل المستخدم · ٤ خطوات · ١٠ دقائق

ابني وكيل AI يعرف عملك — ويقدر يشتغل عليه.

وكيل الـ AI في بُراق مكوّن من ٤ قطع موصولة ببعض: قاعدة معرفة (اللي يعرفها)، دوال (اللي يقدر يسويها)، إعداد Prompt Builder (طريقة تصرّفه)، وأخيراً أداة AI Agent داخل بوت واتساب. هذا الدليل يمشي معك في الأربع كلها — من إنشاء قاعدة المعرفة لين نشر البوت مباشر.

💡 قبل ما تبدأ: AI Studio يطلع لك من أيقونة العصا السحرية في الشريط الجانبي. منشئ البوت يطلع من أيقونة الشبكة.

القطع الأربع اللي تكوّن وكيل AI

ما لازم تستخدم الأربع كلها — وكيل بقاعدة معرفة فقط يشتغل تمام للأسئلة. الدوال محتاجها بس لو الوكيل لازم يسوي أشياء (يبحث عن طلب، ينادي API). إعداد Prompt Builder هو اللي يربط كل شيء.

١ · قاعدة المعرفة

روابط، نصوص، وملفات — تتقسّم وتتحوّل لـ embeddings عشان الوكيل يرتكز عليها في رده.

٢ · الدوال (اختياري)

JavaScript أو طلبات HTTP يقدر الوكيل يشغّلها لما يحتاج يسوي إجراء.

٣ · إعداد Prompt Builder

الشخصية + النموذج + درجة الحرارة + المسارات + الدوال اللي يقدر الوكيل يستخدمها.

٤ · أداة وكيل AI

تعيش في منشئ البوت. تختار إعداد Prompt Builder واحد + قاعدة معرفة وحدة.

١
الخطوة ١

أنشئ قاعدة معرفة

قاعدة المعرفة هي اللي يعرفها وكيلك. هي مجموعة من مصادر البيانات — صفحات ويب، نصوص خام، أو ملفات — تتقسّم وتتحفظ كـ embeddings في فهرس متجهي. وقت الرد، الوكيل يجيب أكثر القطع علاقة بالسؤال ويبني رده عليها.

١.١ افتح قاعدة المعرفة وأنشئ وحدة

Dashboard ← AI Studio ← Knowledge Base

من الشريط الجانبي، مرّر على أيقونة AI Studio (العصا السحرية) عشان تطلع لك القائمة الفرعية، بعدها اضغط Knowledge Base. راح تنتقل لقائمة فيها قواعد المعرفة الموجودة.

اضغط زر + Knowledge base في أعلى الزاوية — بُراق فوراً ينشئ قاعدة جديدة باسم "Untitled" ويفتح صفحتها. القاعدة تبدأ فاضية؛ اضغط + Add data source (في الوسط أو أعلى الزاوية) عشان تبدأ تغذيها بالمحتوى.

!
صور هذي الخطوة بانتظار إعادة الرفع. ملفّات 01-kb-list.jpg و 02-empty-kb.jpg نزلت بأيقونات بدل ما تنزل بشاشات قائمة قاعدة المعرفة وصفحة القاعدة الفاضية — أعد رفعها وأنا أركّبها لك.
١.٢ أضف مصدر بيانات

ثلاث أنواع — رابط، نص، أو ملف

نافذة Add data source تفتح فيها ثلاث بطاقات. اختر اللي يطابق اللي عندك:

  • URL — يسحب المحتوى من نطاق كامل أو قائمة روابط محددة
  • Text — تلصق النص مباشرة
  • File — ترفع ملف txt / pdf / docx (لين ٥ ميجا)
Add data source · modal
نافذة إضافة مصدر البيانات فيها خيارات URL وText وFile
١.٢أ رابط — Domain

رابط جذر واحد، يسحب كل صفحات الموقع تلقائي

اعطِ بُراق رابط الجذر — راح يزحف وياخذ كل صفحات النطاق. تقدر تضيف قائمة Exclude URL's لاستبعاد صفحات معينة، وتضبط Refresh frequency عشان يحدّد كم مرة يعيد الزحف (افتراضي: Never).

Import URL(s) · Domain
نافذة استيراد الروابط وعليها تبويب Domain
١.٢ب رابط — Webpages

الصق قائمة روابط محددة

روح على تبويب Webpages عشان تلصق قائمة روابط (رابط لكل سطر). استخدمها لما تبي فقط أجزاء معينة من النطاق، أو روابط من نطاقات متعددة.

Import URL(s) · Webpages
نافذة استيراد الروابط وعليها تبويب Webpages مع مربع نص لكتابة الروابط
١.٢ج نص

سياسات قصيرة، أسئلة شائعة، أي شيء تلصقه

Import text · modal
نافذة استيراد نص مع مربع محتوى
١.٢د ملف

اسحب ملف .txt / .pdf / .docx

اسحب الملف على منطقة الإفلات أو اضغط لتختار. الأنواع المدعومة: .txt، .pdf، .docx. الحجم الأقصى ٥ ميجا.

Import file(s) · modal
نافذة استيراد الملفات فيها منطقة سحب وإفلات
١.٣ — ١.٤ Train وإعادة التسمية

اضغط train، بعدها اعطِ القاعدة اسم وصفي

اضغط train عشان يستوعب المصدر. بُراق يزحف ويحلّل ويقسّم المحتوى، يولّد embeddings، ويخزّنها. تقدر تضيف أكثر من مصدر لنفس القاعدة.

اضغط على عنوان "Untitled" في صفحة القاعدة عشان تغيّر الاسم. اختر شي وصفي ("سياسات إرجاع متجر نور"، "ساعات عمل فرع الرياض") عشان تقدر تختاره بسهولة من القائمة لاحقاً.

i
التدريب يشتغل بالخلفية. النطاقات الكبيرة تاخذ شوي دقائق لين تخلص الزحف. صف القاعدة في القائمة يعرض التقدم وعداد "feedback %" أول ما تصير جاهزة.
٢
الخطوة ٢ · اختيارية

أنشئ دالة

تخطّى هذي الخطوة لو وكيلك يحتاج فقط يرد من قاعدة المعرفة.

الدوال تخلي الوكيل يسوي أشياء — يبحث عن طلب برقمه، يجيب الطقس، يرسل إشعار لسلاك، ينادي أي API. الوكيل يقرّر لحظياً إذا يستخدم دالة، حسب اللي يسأل عنه العميل.

٢.١ افتح Function Call

Dashboard ← AI Studio ← Function Call

شاشة الدوال تعرض كل الدوال في مساحة عملك، مع حقل بحث وزر + Create function في أعلى الزاوية.

app.buraq.ai/ai-studio/functions
قائمة الدوال فيها عدة دوال موجودة وزر Create function
٢.٢ ابني الدالة

قسمان: Prompt Instructions و Function Handler

محرر الدوال فيه قسمين رئيسيين:

  • Prompt Instructions — وصف قصير بلغة طبيعية يشرح وش تسوي الدالة. مثال: "Get the current weather in a given location." هذا اللي يعتمد عليه الوكيل عشان يقرّر متى يستخدم الدالة.
  • Function Handler — التطبيق الفعلي. تبويبان: JavaScript (تكتب جسم دالة يرجّع قيمة، إما sync أو من خلال fetch؛ المعطيات تجي كـ args.<الاسم>) و HTTP Request (نموذج بصري لـ METHOD + URL + Headers + Body).

أعلى اليسار فيه Beautify و Test Code، وفوقهم Save & Run function. غيّر اسم الدالة (أعلى اليمين "Untitled") لشيء واضح يفهمه الوكيل — get_weather، get_order_status، إلخ.

Function editor · JavaScript handler
محرر الدوال فيه تعليمات Prompt وكود JavaScript

مثال — جلب الطقس بـ JavaScript:

const API_KEY = "<YOUR API KEY HERE>";
const url = `https://api.openweathermap.org/data/2.5/weather?q=${args.location}&appid=${API_KEY}`;

return fetch(url)
  .then((response) => response.json())
  .then((data) => {
    const kelvinTemp  = data.main.temp;
    const celsiusTemp = kelvinTemp - 273.15;
    return {
      location:    args.location,
      temperature: celsiusTemp.toFixed(2),
    };
  })
  .catch((error) => {
    // لا تسقط لين الوكيل يقدر يرد
    console.error("Error fetching weather data:", error);
    return {};
  });
٣
الخطوة ٣

أنشئ إعداد Prompt Builder

هنا تتحدّد شخصية الوكيل ومهاراته. إعداد Prompt Builder يجمع الـ System Prompt، النموذج، درجة الحرارة، المسارات، والدوال اللي يقدر يستخدمها الوكيل — كلها في ملف واحد قابل لإعادة الاستخدام.

٣.١ افتح Prompt Builder

Dashboard ← AI Studio ← Prompt Builder

الشاشة مقسومة لثلاث لوحات:

  • Saved Configs (يسار) — كل إعدادات الوكيل في مساحة عملك.
  • AI Prompt Builder (وسط) — مصمم محادثاتي. اكتب وصف طبيعي في حقل الإدخال السفلي ("بوت دعم عملاء لمتجر إلكتروني، يتعامل مع الإرجاع وتتبع الطلبات")، وبُراق يولّد لك System Prompt والمسارات والدوال المقترحة.
  • Config Preview (يمين) — الحقول القابلة للتعديل اللي تكوّن الإعداد.
app.buraq.ai/ai-studio/prompt-builder
Prompt Builder بحالته الفاضية مع تخطيط ثلاث لوحات
٣.٢ إعداد مكتمل

مثال — Elixir Store Assistant

كذا يكون شكل الإعداد بعد ما يكتمل — اسم، وصف، نموذج، درجة حرارة، System Prompt، ومسار واحد:

Prompt Builder · Elixir Store Assistant
Prompt Builder مع إعداد Elixir Store Assistant مختار
الحقلوش يسوي
Nameاسم مألوف — هذا اللي يطلع في قائمة أداة AI Agent.
Descriptionسطر واحد يظهر في المنتقي.
Modelنموذج الـ LLM — مثل openai/gpt-4o.
Temperature٠ = حاسم، ١ = مبدع. ٠.٢–٠.٥ غالباً يناسب وكلاء الدعم.
System Promptشخصية الوكيل + التعليمات العامة.
Developer Promptملاحظات مخفية، قواعد التنسيق، استثناءات.
Paths"نوايا" مسمّاة — الوكيل يختار أي مسار ينطبق على كل رسالة.
Functionsاربط الدوال اللي تسمح للوكيل يستخدمها.
٣.٣ احفظ

اضغط Save Config في أسفل اليمين

الإعداد راح يظهر في القائمة الجانبية Saved Configs، وراح يكون جاهز تختاره من قائمة أداة AI Agent في الخطوة الرابعة.

٤
الخطوة ٤

وصّلها في البوت من خلال أداة AI Agent

آخر خطوة: افتح منشئ البوت وضع أداة AI Agent داخل التدفق.

٤.١ أضف أداة AI Agent

Dashboard ← Bot Builder ← افتح أو أنشئ بوت وارد

في لوحة التدفق، اضغط زر + على أي أداة موجودة عشان يفتح منتقي الأدوات. ابحث عن AI Agent (تحت فئة AI — الأيقونة الحمراء). اضغط عشان تضيفها.

Bot Builder · canvas with AI Agent node
تدفق البوت مع أدوات Collect Input و GoogleSheets و AI_agent موصولة
٤.٢ اضبط الأداة

اختر الإعداد + اختر قاعدة المعرفة

اضغط على الأداة الجديدة — بانل الإعدادات يفتح من اليمين. ستة حقول تضبطها:

AI Agent · config panel
بانل إعدادات أداة AI Agent فيه كل الحقول
الحقلوش تختار
Ai Agentإعداد Prompt Builder اللي حفظته في الخطوة ٣.
Knowledge baseقاعدة المعرفة من الخطوة ١. مطلوبة — حتى لو تستخدم الدوال فقط.
Chunksكم قطعة من قاعدة المعرفة يجيبها لكل سؤال (١–١٠). أكثر = سياق أكبر، tokens أكثر.
Answer sourceفعّلها عشان يضيف رابط المصدر أو اسم الملف في الرد.
Execute agent only onceفعّلها للوكلاء اللي يردون مرة وحدة — بدون متابعة.
Collect feedbackمفعّلة افتراضياً — تضيف أزرار 👍 / 👎، وتشغّل عداد feedback % في قائمة قواعد المعرفة.
٤.٣ — ٤.٤ وصّل وانشر

اربط الحواف، بعدها انشر

اربط الحافة الواردة من الأداة اللي تسبق الوكيل — عادةً Collect Input عشان رسالة العميل تكون هي اللي يجاوب عليها الوكيل. واربط الحافة الصادرة باللي يجي بعدين (تحويل لموظف، رسالة تأكيد، أو نهاية التدفق).

اضغط زر Deploy في أعلى الزاوية عشان تنشر التدفق مباشر.

معاينة

وش يشوف العميل في واتساب

بعد ما تنشر، كذا تكون المحادثة لما يسأل العميل سؤال يلامس قاعدة معرفتك:

i
لو Answer source مفعّلة، الرد يختم برابط المصدر أو اسم الملف. ولو Collect feedback مفعّلة (افتراضياً)، تظهر أزرار 👍 / 👎 المعروضة فوق — وهذي اللي تغذّي عداد feedback %.
الختام

قائمة مراجعة سريعة وحل المشاكل

مشاكل شائعة

المشكلةالسبب / الحل
الأداة تعرض "This field cannot be empty" أحمرقاعدة المعرفة ما اخترتها — مطلوبة حتى لو تستخدم الدوال بس.
الوكيل يرد "ما أعرف" على كل شيءمصادر القاعدة لسه قيد الفهرسة، أو slider الـ chunks قليل. ارفعه لـ ٣–٥ وجرّب.
الدالة ما تنطلق أبداًوصف الدالة (Prompt Instructions) فضفاض — أعد كتابته بشكل واضح متى ينادي الدالة.
رد بنبرة غلط / خارج الموضوعالـ System Prompt قصير. أضف قواعد افعل/لا تفعل في الـ Developer Prompt.
الردود تحس فيها عموميةقلّل Temperature لـ ٠.٢ للردود الواقعية، وارفعه لـ ٠.٨ للإبداعية.
إعادة تدريب مصدر Domain ما لقطت الصفحات الجديدةRefresh frequency على "Never". غيّرها لـ Daily / Weekly، أو شغّل إعادة تدريب يدوية.

الوكيل شغّال؟ خلّيه أذكى.

راقب المحادثات في البريد الموحّد. وين تتعثّر الردود، أضف مسار جديد أو حسّن الـ System Prompt. ووين يعلّق، اربط له دالة عشان يقدر فعلاً يسوي اللي يطلبه العميل.