---
title: تكامل Weave
description: تعرّف على كيفية استخدام Weights & Biases (W&B) Weave لتتبع وتجربة وتقييم وتحسين تطبيقات CrewAI.
icon: radar
mode: "wide"
---

# نظرة عامة على Weave

[Weights & Biases (W&B) Weave](https://weave-docs.wandb.ai/) هو إطار عمل لتتبع وتجربة وتقييم ونشر وتحسين التطبيقات المبنية على نماذج اللغة الكبيرة.

![نظرة عامة على استخدام تتبع W&B Weave مع CrewAI](/images/weave-tracing.gif)

يوفر Weave دعماً شاملاً لكل مرحلة من مراحل تطوير تطبيق CrewAI:

- **التتبع والمراقبة**: تتبع تلقائي لاستدعاءات LLM ومنطق التطبيق لتصحيح الأخطاء وتحليل أنظمة الإنتاج
- **التكرار المنهجي**: تحسين والتكرار على الموجهات ومجموعات البيانات والنماذج
- **التقييم**: استخدام مقيّمين مخصصين أو مُعدّين مسبقاً لتقييم أداء الوكلاء وتحسينه بشكل منهجي
- **حواجز الحماية**: حماية وكلائك بحماية مسبقة ولاحقة للإشراف على المحتوى وسلامة الموجهات

يلتقط Weave التتبعات تلقائياً لتطبيقات CrewAI، مما يمكّنك من مراقبة وتحليل أداء وكلائك وتفاعلاتهم وتدفق التنفيذ. يساعدك هذا في بناء مجموعات بيانات تقييم أفضل وتحسين سير عمل وكلائك.

## تعليمات الإعداد

<Steps>
    <Step title="تثبيت الحزم المطلوبة">
      ```shell
      pip install crewai weave
      ```
    </Step>
    <Step title="إعداد حساب W&B">
      سجّل في [حساب Weights & Biases](https://wandb.ai) إذا لم تكن قد فعلت ذلك بالفعل. ستحتاج إليه لعرض التتبعات والمقاييس.
    </Step>
    <Step title="تهيئة Weave في تطبيقك">
      أضف الكود التالي إلى تطبيقك:

      ```python
      import weave

      # Initialize Weave with your project name
      weave.init(project_name="crewai_demo")
      ```

      بعد التهيئة، سيوفر Weave عنوان URL حيث يمكنك عرض التتبعات والمقاييس.
    </Step>
    <Step title="إنشاء طواقمك/تدفقاتك">
      ```python
      from crewai import Agent, Task, Crew, LLM, Process

      # Create an LLM with a temperature of 0 to ensure deterministic outputs
      llm = LLM(model="gpt-4o", temperature=0)

      # Create agents
      researcher = Agent(
          role='Research Analyst',
          goal='Find and analyze the best investment opportunities',
          backstory='Expert in financial analysis and market research',
          llm=llm,
          verbose=True,
          allow_delegation=False,
      )

      writer = Agent(
          role='Report Writer',
          goal='Write clear and concise investment reports',
          backstory='Experienced in creating detailed financial reports',
          llm=llm,
          verbose=True,
          allow_delegation=False,
      )

      # Create tasks
      research_task = Task(
          description='Deep research on the {topic}',
          expected_output='Comprehensive market data including key players, market size, and growth trends.',
          agent=researcher
      )

      writing_task = Task(
          description='Write a detailed report based on the research',
          expected_output='The report should be easy to read and understand. Use bullet points where applicable.',
          agent=writer
      )

      # Create a crew
      crew = Crew(
          agents=[researcher, writer],
          tasks=[research_task, writing_task],
          verbose=True,
          process=Process.sequential,
      )

      # Run the crew
      result = crew.kickoff(inputs={"topic": "AI in material science"})
      print(result)
      ```
    </Step>
    <Step title="عرض التتبعات في Weave">
      بعد تشغيل تطبيق CrewAI، قم بزيارة عنوان URL الذي وفره Weave أثناء التهيئة لعرض:
      - استدعاءات LLM وبياناتها الوصفية
      - تفاعلات الوكلاء وتدفق تنفيذ المهام
      - مقاييس الأداء مثل زمن الاستجابة واستخدام الرموز المميزة
      - أي أخطاء أو مشكلات حدثت أثناء التنفيذ

      <Frame caption="لوحة معلومات تتبع Weave">
        <img src="/images/weave-tracing.png" alt="Weave tracing example with CrewAI" />
      </Frame>
    </Step>
</Steps>

## الميزات

- يلتقط Weave تلقائياً جميع عمليات CrewAI: تفاعلات الوكلاء وتنفيذ المهام؛ استدعاءات LLM مع البيانات الوصفية واستخدام الرموز المميزة؛ استخدام الأدوات ونتائجها.
- يدعم التكامل جميع طرق تنفيذ CrewAI: `kickoff()` و`kickoff_for_each()` و`kickoff_async()` و`kickoff_for_each_async()`.
- تتبع تلقائي لجميع [أدوات crewAI](https://github.com/crewAIInc/crewAI-tools).
- دعم ميزة التدفق مع تصحيح المزخرفات (`@start` و`@listen` و`@router` و`@or_` و`@and_`).
- تتبع حواجز الحماية المخصصة المُمررة لمهام CrewAI `Task` باستخدام `@weave.op()`.

لمعلومات تفصيلية حول ما هو مدعوم، قم بزيارة [وثائق Weave CrewAI](https://weave-docs.wandb.ai/guides/integrations/crewai/#getting-started-with-flow).

## الموارد

- [وثائق Weave](https://weave-docs.wandb.ai)
- [مثال على لوحة معلومات Weave x CrewAI](https://wandb.ai/ayut/crewai_demo/weave/traces?cols=%7B%22wb_run_id%22%3Afalse%2C%22attributes.weave.client_version%22%3Afalse%2C%22attributes.weave.os_name%22%3Afalse%2C%22attributes.weave.os_release%22%3Afalse%2C%22attributes.weave.os_version%22%3Afalse%2C%22attributes.weave.source%22%3Afalse%2C%22attributes.weave.sys_version%22%3Afalse%7D&peekPath=%2Fayut%2Fcrewai_demo%2Fcalls%2F0195c838-38cb-71a2-8a15-651ecddf9d89)
- [X](https://x.com/weave_wb)
