الرئيسية Claude AI مركز التعلم القطاعات تواصل معنا
واتساب اتصل بنا

بناء فريق وكلاء AI (Multi-Agent System) بكلود — الدليل العربي الأول

بناء فريق وكلاء AI بكلود

تخيّل أن لديك فريق عمل كامل يعمل على مدار الساعة بلا كلل: باحث يجمع المعلومات، كاتب يصوغ المحتوى، محلل SEO يُحسّن النص، ومحرر يمرّر كل شيء قبل النشر — كل ذلك يحدث تلقائياً، بتنسيق تام، خلال دقائق. هذا ليس مستقبلاً بعيداً، هذا ما يمكنك بناؤه اليوم باستخدام كلود AI وإطار عمل CrewAI.

الوكلاء المتعددون (Multi-Agent Systems) هم الجيل القادم من أتمتة الذكاء الاصطناعي. بدلاً من وكيل واحد يُحاول فعل كل شيء، تُقسّم المهام المعقدة بين متخصصين رقميين لكل منهم دور محدد وأدوات خاصة ومعرفة متخصصة. النتيجة: أعلى جودة، أسرع تنفيذ، وتكلفة أقل.

ما هو الوكيل AI وكيف يختلف عن الاستدعاء العادي؟

الاستدعاء العادي لكلود هو: سؤال واحد ← إجابة واحدة. الوكيل AI هو كيان يمتلك ثلاثة عناصر محورية:

الهدف (Goal): مهمة محددة يسعى لإنجازها مثل "اكتب مقالاً شاملاً عن الذكاء الاصطناعي في القطاع البنكي".

الأدوات (Tools): قدرات يستطيع استخدامها مثل البحث في الإنترنت، قراءة الملفات، استدعاء APIs، كتابة الأكواد وتشغيلها.

الذاكرة (Memory): قدرة الاحتفاظ بسياق العمل عبر خطوات متعددة — تذكّر ما اكتشفه في الخطوة 1 واستخدامه في الخطوة 5.

وكيل واحد مقابل نظام وكلاء متعددين

الوكيل الواحد يصطدم بحدود: السياق ينتهي قبل إكمال المهمة المعقدة، والنموذج يُحاول التخصص في كل شيء فيكون متوسطاً في كل شيء. نظام الوكلاء المتعددين يحل هذه المشكلة بتقسيم العمل بين متخصصين.

المعياروكيل واحدوكلاء متعددون
المهام البسيطةممتاززيادة تعقيد غير ضرورية
المهام المعقدة متعددة الخطواتضعيفممتاز
الجودةمتوسطةعالية (مراجعة متعددة)
سهولة الصيانةبسيطةتحتاج تخطيطاً
التكلفةأقلأعلى (لكن أفضل ROI)

CrewAI — إطار العمل الأمثل للوكلاء المتعددين

CrewAI هو إطار عمل Python مفتوح المصدر يُبسّط بناء أنظمة وكلاء متعددين بشكل جذري. اسمه مستوحى من "Crew" أي طاقم العمل — مجموعة وكلاء يعملون معاً كفريق متناسق.

pip install crewai crewai-tools anthropic
import os
from crewai import Agent, Task, Crew, Process
from crewai_tools import SerperDevTool, WebsiteSearchTool
from langchain_anthropic import ChatAnthropic

# إعداد نموذج كلود
claude_opus = ChatAnthropic(
    model="claude-opus-4-5",
    anthropic_api_key=os.environ["ANTHROPIC_API_KEY"]
)

claude_haiku = ChatAnthropic(
    model="claude-haiku-4-5",
    anthropic_api_key=os.environ["ANTHROPIC_API_KEY"]
)

تعريف الوكلاء — فريق إنتاج المحتوى

سنبني خط إنتاج محتوى متكامل: باحث يجمع المعلومات، كاتب يصوغ المقال، محلل SEO يُحسّنه، ومحرر يتحقق من الجودة النهائية.

# أداة البحث في الإنترنت
search_tool = SerperDevTool()

# الوكيل الباحث
researcher = Agent(
    role="باحث محتوى متخصص",
    goal="جمع معلومات دقيقة وموثوقة عن الموضوع المطلوب من مصادر متعددة",
    backstory="""أنت باحث خبير في جمع المعلومات وتحليلها. تتقن البحث العميق
    في الإنترنت وتمييز المصادر الموثوقة من غيرها. تنتج ملخصات شاملة ومنظمة.""",
    tools=[search_tool],
    llm=claude_opus,
    verbose=True,
    max_iter=5  # الحد الأقصى لمحاولات إكمال المهمة
)

# الوكيل الكاتب
writer = Agent(
    role="كاتب محتوى احترافي",
    goal="كتابة محتوى جذاب ومقنع يخدم القارئ ويحقق أهداف المنشأة",
    backstory="""أنت كاتب محترف يمتلك أسلوباً سلساً وقادراً على تبسيط المعلومات
    المعقدة. تُراعي القارئ العربي وتكتب بلغة واضحة ومؤثرة.""",
    llm=claude_opus,
    verbose=True
)

# وكيل SEO
seo_optimizer = Agent(
    role="خبير SEO وتحسين محركات البحث",
    goal="تحسين المحتوى لمحركات البحث مع الحفاظ على جودة القراءة",
    backstory="""أنت خبير SEO متخصص في المحتوى العربي. تُتقن تحسين العناوين
    والمقدمات والكلمات المفتاحية وبنية المحتوى لأعلى ترتيب في جوجل.""",
    llm=claude_haiku,  # Haiku يكفي لمهمة التحسين
    verbose=True
)

# وكيل التحرير والجودة
editor = Agent(
    role="محرر أول ومراقب جودة",
    goal="التحقق من دقة المعلومات وجودة الأسلوب واتساق المحتوى",
    backstory="""أنت محرر خبير بعين نقدية حادة. تُراجع المحتوى للتأكد من دقته
    وسلاسته وخلوه من الأخطاء اللغوية والمعلوماتية.""",
    llm=claude_opus,
    verbose=True
)

تعريف المهام وتسلسل التنفيذ

كل وكيل يحتاج مهمة واضحة بمخرجات محددة. هذه المخرجات تنتقل تلقائياً للوكيل التالي:

# مهمة البحث
research_task = Task(
    description="""ابحث عن موضوع: {topic}
    اجمع:
    1. أهم 5 حقائق وإحصائيات حديثة
    2. 3 مصادر موثوقة
    3. أبرز التطورات الأخيرة خلال 6 أشهر الماضية
    4. المخاوف والتحديات المرتبطة بالموضوع
    """,
    expected_output="ملخص منظم بنقاط واضحة مع روابط المصادر",
    agent=researcher
)

# مهمة الكتابة
writing_task = Task(
    description="""استناداً على نتائج البحث، اكتب مقالاً شاملاً عن {topic}:
    - عنوان جذاب
    - مقدمة تُشدّ الانتباه (150-200 كلمة)
    - 4-5 أقسام رئيسية مع عناوين فرعية
    - خاتمة تلخّص النقاط وتحث على الفعل
    - الطول الإجمالي: 800-1200 كلمة
    """,
    expected_output="مقال كامل بتنسيق Markdown",
    agent=writer,
    context=[research_task]  # يستخدم نتائج البحث كسياق
)

# مهمة تحسين SEO
seo_task = Task(
    description="""حسّن المقال لمحركات البحث:
    1. تحسين العنوان الرئيسي ليحتوي الكلمة المفتاحية الأساسية
    2. إضافة كلمات مفتاحية ثانوية بشكل طبيعي
    3. تحسين Meta Description (150-160 حرف)
    4. تحسين العناوين الفرعية H2 وH3
    5. إضافة روابط داخلية وخارجية مقترحة
    """,
    expected_output="المقال المحسّن مع تقرير SEO مختصر",
    agent=seo_optimizer,
    context=[writing_task]
)

# مهمة التحرير النهائي
editing_task = Task(
    description="""راجع المقال النهائي وتأكد من:
    - صحة المعلومات وتطابقها مع البحث الأصلي
    - سلامة اللغة العربية والأسلوب
    - الاتساق في التنسيق والعرض
    - جاهزية المقال للنشر الفوري
    أضف [تمت المراجعة] أو [يحتاج تعديلات] في البداية مع ملاحظاتك
    """,
    expected_output="المقال النهائي جاهز للنشر مع تقرير المراجعة",
    agent=editor,
    context=[research_task, writing_task, seo_task]
)

تشكيل الفريق وتشغيل خط الإنتاج

# تجميع الفريق
content_crew = Crew(
    agents=[researcher, writer, seo_optimizer, editor],
    tasks=[research_task, writing_task, seo_task, editing_task],
    process=Process.sequential,  # تنفيذ متسلسل بالترتيب
    verbose=2,
    memory=True  # تفعيل الذاكرة المشتركة
)

# تشغيل خط الإنتاج
result = content_crew.kickoff(
    inputs={"topic": "تأثير الذكاء الاصطناعي على قطاع العقارات في السعودية"}
)

print("="*50)
print("المقال النهائي:")
print(result)
print("="*50)

# حفظ النتيجة
with open("article_output.md", "w", encoding="utf-8") as f:
    f.write(result)

تنفيذ متوازٍ لتسريع الإنتاج

حين تحتاج إنتاج عشرات المقالات، التنفيذ المتسلسل بطيء. CrewAI يدعم التنفيذ المتوازي للمهام المستقلة:

from crewai import Process

# تنفيذ متوازٍ — الباحث والمحلل التنافسي يعملان معاً
parallel_crew = Crew(
    agents=[researcher, competitive_analyst, writer, editor],
    tasks=[research_task, competitive_task, writing_task, editing_task],
    process=Process.hierarchical,  # مدير يُوزّع المهام
    manager_llm=claude_opus,
    verbose=True
)

# إنتاج 10 مقالات بالتوازي
import asyncio
from concurrent.futures import ThreadPoolExecutor

topics = [
    "الذكاء الاصطناعي في البنوك",
    "الأتمتة في التجزئة",
    "AI في الرعاية الصحية",
    # ... باقي المواضيع
]

def produce_article(topic):
    crew_instance = content_crew.kickoff(inputs={"topic": topic})
    return crew_instance

with ThreadPoolExecutor(max_workers=3) as executor:
    results = list(executor.map(produce_article, topics))

الذاكرة والسياق المشترك بين الوكلاء

أحد أقوى مزايا نظام الوكلاء هو قدرتهم على تشارك المعرفة. يمكن بناء ذاكرة مشتركة تُحوّل تعلّم وكيل واحد إلى ذكاء جماعي:

import json from pathlib import Path class SharedMemory: """ذاكرة مشتركة بسيطة لجميع الوكلاء""" def __init__(self, memory_file="crew_memory.json"): self.memory_file = Path(memory_file) self.data = self._load() def _load(self): if self.memory_file.exists(): return json.loads(self.memory_file.read_text(encoding="utf-8")) return {} def remember(self, key: str, value: any): self.data[key] = value self.memory_file.write_text( json.dumps(self.data, ensure_ascii=False, indent=2), encoding="utf-8" ) def recall(self, key: str): return self.data.get(key) # مثال: الباحث يحفظ ما تعلمه memory = SharedMemory() memory.remember("saudi_ai_market_size", "2.5 مليار دولار في 2026") memory.remember("top_companies", ["STC", "Elm", "Saudi Aramco Digital"]) # الكاتب يسترجع هذه المعلومات market_size = memory.recall("saudi_ai_market_size")

Human-in-the-Loop — الإنسان في الحلقة

للمهام الحساسة، تُضيف نقطة توقف للموافقة البشرية قبل الانتقال للخطوة التالية:

from crewai import Task

# مهمة تحتاج موافقة بشرية قبل النشر
publishing_task = Task(
    description="نشر المقال على منصة WordPress عبر API",
    expected_output="رابط المقال المنشور",
    agent=publisher_agent,
    human_input=True  # توقف وانتظار موافقة بشرية
)

نصائح بناء أنظمة وكلاء احترافية

1
ابدأ بوكيلين فقط

لا تبني فريقاً من 8 وكلاء في أول مشروع. ابدأ بباحث وكاتب، تأكد من عملهما بشكل مثالي، ثم أضف وكلاء إضافيين تدريجياً.

2
اكتب Backstory دقيقاً

قصة الخلفية للوكيل (backstory) تُشكّل شخصيته وأسلوبه. كن محدداً وتفصيلياً — كلما كانت القصة أوضح، كانت نتائج الوكيل أفضل.

3
حدّد Expected Output بدقة

الوكيل الذي لا يعرف ما يُنتج بالضبط يُنتج كل شيء. اكتب expected_output محدداً للغاية: "JSON بمفاتيح محددة" أو "قائمة بـ 5 نقاط بالترتيب".

4
استخدم max_iter لتجنب الحلقات اللانهائية

بدون حد أقصى للتكرارات، قد يدور الوكيل في حلقة إذا واجه مشكلة. دائماً حدّد max_iter بقيمة معقولة (3-10 حسب تعقيد المهمة).

5
وزّع النماذج حسب التكلفة

الوكلاء الذين يُنجزون مهام تحليل بسيطة أو تنسيق يكفيهم Haiku. احتفظ بـ Opus للمهام الإبداعية والتحليل المعمق. هذا يُخفّض التكلفة 80%.

6
سجّل كل خطوة للتشخيص

verbose=True ضروري أثناء التطوير لفهم ما يفعله كل وكيل بالضبط وأين تحدث المشاكل. أوقفه في الإنتاج لتوفير الموارد.

7
اختبر بمهام صغيرة أولاً

قبل تشغيل خط إنتاج كامل، اختبر كل وكيل منفرداً بمهمة صغيرة. هذا يكشف المشاكل في السياق المحدود ويُوفّر كثيراً من تكاليف API.

8
أضف وكيل التحقق دائماً

المقالة التي لم يراجعها وكيل محرر قد تحتوي أخطاء أو معلومات قديمة. وكيل QA في نهاية أي خط إنتاج ليس ترفاً بل ضرورة.

الجواهر الخمسة — أنظمة وكلاء جاهزة للتطبيق

فريق تحليل تنافسي

وكيل يجمع بيانات المنافسين، وكيل يُحلل نقاط القوة والضعف، وكيل يُنتج تقرير مقارنة، ووكيل يقترح استراتيجية التميز. يعمل أسبوعياً تلقائياً ويُرسل التقرير للمدراء.

فريق دعم العملاء الذكي

وكيل يُصنّف التذاكر حسب الأولوية والنوع، وكيل يبحث في قاعدة المعرفة عن الحلول، وكيل يصيغ الرد، ووكيل يتحقق من الجودة — 80% من التذاكر تُحلّ بدون تدخل بشري.

فريق تحليل السوق المالي

وكيل يجمع البيانات من Bloomberg وأخبار السوق، وكيل يُحلل الاتجاهات، وكيل يُنتج توصيات استثمارية، ووكيل يُراجع الامتثال التنظيمي — تقرير يومي جاهز قبل بداية التداول.

فريق أتمتة التوظيف

وكيل يُحلّل السيرة الذاتية، وكيل يُقيّم التطابق مع متطلبات الوظيفة، وكيل يُعدّ أسئلة مقابلة مخصصة، ووكيل يُصدر تقرير التوصية — يُعالج 100 طلب في ساعة بدلاً من أيام.

فريق إنتاج منتج رقمي

وكيل يُحلّل متطلبات المنتج، وكيل يكتب المواصفات التقنية، وكيل يُنشئ User Stories، وكيل يكتب حالات الاختبار — وثائق منتج كاملة في ساعات بدلاً من أسابيع.

الأسئلة الشائعة

ما الفرق بين وكيل AI واحد ونظام وكلاء متعددين؟
الوكيل الواحد يُنجز مهمة واحدة في سياق واحد. نظام الوكلاء المتعددين يُقسّم المهام المعقدة بين متخصصين مختلفين يعملون بالتوازي أو بالتسلسل، ويتشاركون المعلومات. الفائدة تظهر في المهام التي تحتاج مهارات مختلفة وخطوات متسلسلة كخط إنتاج المحتوى أو تحليل السوق.
هل CrewAI يدعم كلود Claude كنموذج لغوي؟
نعم، CrewAI يدعم كلود بشكل كامل عبر Anthropic API. يكفي تمرير نموذج كلود عند تعريف كل وكيل باستخدام المعامل llm. يمكنك أيضاً استخدام نماذج مختلفة لوكلاء مختلفين — مثلاً Claude Opus لمهام التحرير المعقدة وHaiku للمهام الروتينية للتحكم في التكلفة.
كيف يتشارك الوكلاء المعلومات فيما بينهم؟
في CrewAI، كل وكيل ينتج output يصبح تلقائياً input للوكيل التالي. يمكنك تحديد تنسيق الـ output (نص، JSON، قائمة) لضمان توافق البيانات. للذاكرة المشتركة المستمرة، يمكن استخدام ملف مشترك أو قاعدة بيانات يقرأ منها ويكتب فيها جميع الوكلاء.
كيف أتحكم في التكلفة في نظام وكلاء متعددين؟
خصّص نموذج Haiku للوكلاء الذين يؤدون مهام روتينية كالتنسيق والتحقق، واحتفظ بـ Sonnet أو Opus للمهام الإبداعية المعقدة. راقب استهلاك الـ tokens لكل وكيل واضبط max_tokens بعناية. في المتوسط، خط إنتاج محتوى كامل يكلف أقل من 0.10 دولار للمقال الواحد.
ما البديل لـ CrewAI لبناء وكلاء AI متعددين؟
LangGraph هو البديل الأقوى للمشاريع التي تحتاج تحكماً دقيقاً في تدفق العمل وحلقات التكرار والتحقق الشرطي. AutoGen من Microsoft جيد للمحادثات بين الوكلاء. للمشاريع البسيطة، يمكن بناء نظام وكلاء من الصفر باستخدام Anthropic SDK مباشرةً دون أطر عمل.

🧭 اكتشف المزيد

مواضيع مرتبطة من أقسام أخرى تُكمّل ما تعلمته

محتاج مساعدة احترافية؟

فريق A Plan جاهز يساعدك.

تواصل عبر واتساب