--- title: Arize Phoenix description: تكامل Arize Phoenix مع CrewAI باستخدام OpenTelemetry و OpenInference icon: magnifying-glass-chart mode: "wide" --- # تكامل Arize Phoenix يوضح هذا الدليل كيفية دمج **Arize Phoenix** مع **CrewAI** باستخدام OpenTelemetry عبر حزمة [OpenInference](https://github.com/openinference/openinference) SDK. بنهاية هذا الدليل، ستتمكن من تتبع وكلاء CrewAI وتصحيح سلوك الوكلاء. > **ما هو Arize Phoenix؟** [Arize Phoenix](https://arize.com/phoenix/) هو خيار المراقبة والتقييم مفتوح المصدر من [Arize AI](https://arize.com/?utm_source=crewai-docs&utm_medium=partner&utm_campaign=partner-docs&utm_content=observability-arize-phoenix). استخدم Phoenix عندما تريد التشغيل محلياً أو الاستضافة الذاتية. استخدم [Arize AX](https://arize.com/products/ax/) لمنصة سحابية مُدارة أو ذاتية الاستضافة للمؤسسات لأنظمة الذكاء الاصطناعي في الإنتاج. [![شاهد عرض فيديو لتكاملنا مع Phoenix](https://storage.googleapis.com/arize-assets/fixtures/setup_crewai.png)](https://www.youtube.com/watch?v=Yc5q3l6F7Ww) ## البدء سنمر عبر مثال بسيط لاستخدام CrewAI ودمجه مع Arize Phoenix عبر OpenTelemetry باستخدام OpenInference. يمكنك أيضاً الوصول إلى هذا الدليل على [Google Colab](https://colab.research.google.com/github/Arize-ai/phoenix/blob/main/tutorials/tracing/crewai_tracing_tutorial.ipynb). ### الخطوة 1: تثبيت الاعتماديات ```bash pip install openinference-instrumentation-crewai crewai crewai-tools arize-phoenix-otel ``` ### الخطوة 2: إعداد متغيرات البيئة قم بإعداد مفتاح API الخاص بـ Phoenix ونقطة نهاية OpenTelemetry لإرسال التتبعات إلى Phoenix. يعمل الإعداد نفسه مع نقطة نهاية Phoenix محلية أو ذاتية الاستضافة عن طريق تغيير عنوان المجمع. يمكنك الحصول على مفتاح Serper API المجاني [هنا](https://serper.dev/). ```python import os from getpass import getpass # Get your Phoenix API key PHOENIX_API_KEY = getpass("🔑 Enter your Phoenix API key: ") # Get API keys for services OPENAI_API_KEY = getpass("🔑 Enter your OpenAI API key: ") SERPER_API_KEY = getpass("🔑 Enter your Serper API key: ") # Set environment variables os.environ["PHOENIX_CLIENT_HEADERS"] = f"api_key={PHOENIX_API_KEY}" os.environ["PHOENIX_COLLECTOR_ENDPOINT"] = "https://app.phoenix.arize.com" # Change this to your own endpoint if you are using a self-hosted instance os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY os.environ["SERPER_API_KEY"] = SERPER_API_KEY ``` ### الخطوة 3: تهيئة OpenTelemetry مع Phoenix قم بتهيئة OpenInference OpenTelemetry instrumentation SDK لبدء التقاط التتبعات وإرسالها إلى Phoenix. ```python from phoenix.otel import register tracer_provider = register( project_name="crewai-tracing-demo", auto_instrument=True, ) ``` ### الخطوة 4: إنشاء تطبيق CrewAI سننشئ تطبيق CrewAI حيث يتعاون وكيلان للبحث وكتابة مقال مدونة حول تطورات الذكاء الاصطناعي. ```python from crewai import Agent, Crew, Process, Task from crewai_tools import SerperDevTool from openinference.instrumentation.crewai import CrewAIInstrumentor from phoenix.otel import register # setup monitoring for your crew tracer_provider = register( endpoint="http://localhost:6006/v1/traces") CrewAIInstrumentor().instrument(skip_dep_check=True, tracer_provider=tracer_provider) search_tool = SerperDevTool() # Define your agents with roles and goals researcher = Agent( role="Senior Research Analyst", goal="Uncover cutting-edge developments in AI and data science", backstory="""You work at a leading tech think tank. Your expertise lies in identifying emerging trends. You have a knack for dissecting complex data and presenting actionable insights.""", verbose=True, allow_delegation=False, tools=[search_tool], ) writer = Agent( role="Tech Content Strategist", goal="Craft compelling content on tech advancements", backstory="""You are a renowned Content Strategist, known for your insightful and engaging articles. You transform complex concepts into compelling narratives.""", verbose=True, allow_delegation=True, ) # Create tasks for your agents task1 = Task( description="""Conduct a comprehensive analysis of the latest advancements in AI in 2024. Identify key trends, breakthrough technologies, and potential industry impacts.""", expected_output="Full analysis report in bullet points", agent=researcher, ) task2 = Task( description="""Using the insights provided, develop an engaging blog post that highlights the most significant AI advancements. Your post should be informative yet accessible, catering to a tech-savvy audience. Make it sound cool, avoid complex words so it doesn't sound like AI.""", expected_output="Full blog post of at least 4 paragraphs", agent=writer, ) # Instantiate your crew with a sequential process crew = Crew( agents=[researcher, writer], tasks=[task1, task2], verbose=1, process=Process.sequential ) # Get your crew to work! result = crew.kickoff() print("######################") print(result) ``` ### الخطوة 5: عرض التتبعات في Phoenix بعد تشغيل الوكيل، يمكنك عرض التتبعات المولدة من تطبيق CrewAI في Phoenix. سترى خطوات مفصلة لتفاعلات الوكلاء واستدعاءات LLM، مما يساعدك في التصحيح والتحسين. افتح مشروع Phoenix وانتقل إلى المشروع الذي حددته في معامل `project_name`. سترى عرض زمني للتتبع مع جميع تفاعلات الوكلاء واستخدامات الأدوات واستدعاءات LLM. ![مثال تتبع في Phoenix يوضح تفاعلات الوكلاء](https://storage.googleapis.com/arize-assets/fixtures/crewai_traces.png) ### معلومات التوافق - Python 3.8+ - CrewAI >= 0.86.0 - Arize Phoenix >= 7.0.1 - OpenTelemetry SDK >= 1.31.0 ### المراجع - [وثائق Phoenix](https://docs.arize.com/phoenix/) - نظرة عامة على منصة Phoenix. - [Arize AX](https://arize.com/products/ax/) - مراقبة وتقييم مُداران سحابياً أو ذاتيا الاستضافة للمؤسسات. - [دليل Arize لتقييم الوكلاء](https://arize.com/guides/ai-agent-handbook/agent-evaluation/) - سير عمل إنتاجي لتقييم سلوك الوكلاء من التتبعات. - [دليل Arize لتقييم LLM](https://arize.com/resources/llm-evaluation/) - طرق ومقاييس لتقييم تطبيقات LLM. - [وثائق CrewAI](https://docs.crewai.com/) - نظرة عامة على إطار عمل CrewAI. - [وثائق OpenTelemetry](https://opentelemetry.io/docs/) - دليل OpenTelemetry - [OpenInference GitHub](https://github.com/openinference/openinference) - الكود المصدري لـ OpenInference SDK.