mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-05-01 07:13:00 +00:00
docs: add modern standard arabic translation of all documentation
This commit is contained in:
155
docs/ar/enterprise/features/agent-repositories.mdx
Normal file
155
docs/ar/enterprise/features/agent-repositories.mdx
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
title: 'مستودعات الوكلاء'
|
||||
description: 'تعرّف على كيفية استخدام مستودعات الوكلاء لمشاركة وإعادة استخدام وكلائك عبر الفرق والمشاريع'
|
||||
icon: 'people-group'
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
تتيح مستودعات الوكلاء لمستخدمي المؤسسات تخزين ومشاركة وإعادة استخدام تعريفات الوكلاء عبر الفرق والمشاريع. تُمكّن هذه الميزة المؤسسات من الاحتفاظ بمكتبة مركزية من الوكلاء الموحدين، مما يعزز الاتساق ويقلل من ازدواجية الجهود.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## فوائد مستودعات الوكلاء
|
||||
|
||||
- **التوحيد**: الحفاظ على تعريفات وكلاء متسقة عبر مؤسستك
|
||||
- **إعادة الاستخدام**: إنشاء وكيل مرة واحدة واستخدامه في أطقم ومشاريع متعددة
|
||||
- **الحوكمة**: تطبيق سياسات على مستوى المؤسسة لتهيئات الوكلاء
|
||||
- **التعاون**: تمكين الفرق من المشاركة والبناء على عمل بعضهم البعض
|
||||
|
||||
## إنشاء واستخدام مستودعات الوكلاء
|
||||
|
||||
1. يجب أن يكون لديك حساب في CrewAI، جرّب [الخطة المجانية](https://app.crewai.com).
|
||||
2. أنشئ وكلاء بأدوار وأهداف محددة لسير عملك.
|
||||
3. هيّئ الأدوات والقدرات لكل مساعد متخصص.
|
||||
4. انشر الوكلاء عبر المشاريع من خلال الواجهة المرئية أو تكامل API.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
|
||||
### تحميل الوكلاء من المستودعات
|
||||
|
||||
يمكنك تحميل الوكلاء من المستودعات في الكود باستخدام معامل `from_repository` للتشغيل محليًا:
|
||||
|
||||
```python
|
||||
from crewai import Agent
|
||||
|
||||
# إنشاء وكيل بتحميله من مستودع
|
||||
# يتم تحميل الوكيل بجميع إعداداته المحددة مسبقًا
|
||||
researcher = Agent(
|
||||
from_repository="market-research-agent"
|
||||
)
|
||||
```
|
||||
|
||||
### تجاوز إعدادات المستودع
|
||||
|
||||
يمكنك تجاوز إعدادات محددة من المستودع بتوفيرها في التهيئة:
|
||||
|
||||
```python
|
||||
researcher = Agent(
|
||||
from_repository="market-research-agent",
|
||||
goal="Research the latest trends in AI development", # تجاوز هدف المستودع
|
||||
verbose=True # إضافة إعداد غير موجود في المستودع
|
||||
)
|
||||
```
|
||||
|
||||
### مثال: إنشاء طاقم مع وكلاء المستودع
|
||||
|
||||
```python
|
||||
from crewai import Crew, Agent, Task
|
||||
|
||||
# تحميل الوكلاء من المستودعات
|
||||
researcher = Agent(
|
||||
from_repository="market-research-agent"
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
from_repository="content-writer-agent"
|
||||
)
|
||||
|
||||
# إنشاء المهام
|
||||
research_task = Task(
|
||||
description="Research the latest trends in AI",
|
||||
agent=researcher
|
||||
)
|
||||
|
||||
writing_task = Task(
|
||||
description="Write a comprehensive report based on the research",
|
||||
agent=writer
|
||||
)
|
||||
|
||||
# إنشاء الطاقم
|
||||
crew = Crew(
|
||||
agents=[researcher, writer],
|
||||
tasks=[research_task, writing_task],
|
||||
verbose=True
|
||||
)
|
||||
|
||||
# تشغيل الطاقم
|
||||
result = crew.kickoff()
|
||||
```
|
||||
|
||||
### مثال: استخدام `kickoff()` مع وكلاء المستودع
|
||||
|
||||
يمكنك أيضًا استخدام وكلاء المستودع مباشرة مع طريقة `kickoff()` للتفاعلات الأبسط:
|
||||
|
||||
```python
|
||||
from crewai import Agent
|
||||
from pydantic import BaseModel
|
||||
from typing import List
|
||||
|
||||
# تعريف تنسيق مخرجات منظم
|
||||
class MarketAnalysis(BaseModel):
|
||||
key_trends: List[str]
|
||||
opportunities: List[str]
|
||||
recommendation: str
|
||||
|
||||
# تحميل وكيل من المستودع
|
||||
analyst = Agent(
|
||||
from_repository="market-analyst-agent",
|
||||
verbose=True
|
||||
)
|
||||
|
||||
# الحصول على استجابة حرة
|
||||
result = analyst.kickoff("Analyze the AI market in 2025")
|
||||
print(result.raw) # الوصول إلى الاستجابة الخام
|
||||
|
||||
# الحصول على مخرجات منظمة
|
||||
structured_result = analyst.kickoff(
|
||||
"Provide a structured analysis of the AI market in 2025",
|
||||
response_format=MarketAnalysis
|
||||
)
|
||||
|
||||
# الوصول إلى البيانات المنظمة
|
||||
print(f"Key Trends: {structured_result.pydantic.key_trends}")
|
||||
print(f"Recommendation: {structured_result.pydantic.recommendation}")
|
||||
```
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
1. **اصطلاح التسمية**: استخدم أسماء واضحة ووصفية لوكلاء المستودع
|
||||
2. **التوثيق**: أدرج أوصافًا شاملة لكل وكيل
|
||||
3. **إدارة الأدوات**: تأكد من توفر الأدوات المشار إليها بواسطة وكلاء المستودع في بيئتك
|
||||
4. **التحكم في الوصول**: أدر الصلاحيات لضمان أن أعضاء الفريق المصرّح لهم فقط يمكنهم تعديل وكلاء المستودع
|
||||
|
||||
## إدارة المؤسسة
|
||||
|
||||
للتبديل بين المؤسسات أو عرض مؤسستك الحالية، استخدم واجهة سطر أوامر CrewAI:
|
||||
|
||||
```bash
|
||||
# عرض المؤسسة الحالية
|
||||
crewai org current
|
||||
|
||||
# التبديل إلى مؤسسة مختلفة
|
||||
crewai org switch <org_id>
|
||||
|
||||
# عرض جميع المؤسسات المتاحة
|
||||
crewai org list
|
||||
```
|
||||
|
||||
<Note>
|
||||
عند تحميل الوكلاء من المستودعات، يجب أن تكون مصادقًا ومتحولًا إلى المؤسسة الصحيحة. إذا تلقيت أخطاء، تحقق من حالة المصادقة وإعدادات المؤسسة باستخدام أوامر CLI أعلاه.
|
||||
</Note>
|
||||
104
docs/ar/enterprise/features/automations.mdx
Normal file
104
docs/ar/enterprise/features/automations.mdx
Normal file
@@ -0,0 +1,104 @@
|
||||
---
|
||||
title: الأتمتة
|
||||
description: "إدارة ونشر ومراقبة أطقمك المباشرة (الأتمتة) في مكان واحد."
|
||||
icon: "rocket"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
الأتمتة هي مركز العمليات المباشرة لأطقمك المنشورة. استخدمها للنشر من GitHub أو ملف ZIP، وإدارة متغيرات البيئة، وإعادة النشر عند الحاجة، ومراقبة حالة كل أتمتة.
|
||||
|
||||
<Frame>
|
||||

|
||||
|
||||
</Frame>
|
||||
|
||||
## طرق النشر
|
||||
|
||||
### النشر من GitHub
|
||||
|
||||
استخدم هذا للمشاريع ذات التحكم في الإصدارات والنشر المستمر.
|
||||
|
||||
<Steps>
|
||||
<Step title="ربط GitHub">
|
||||
انقر على <b>Configure GitHub</b> وصرّح بالوصول.
|
||||
</Step>
|
||||
<Step title="اختيار المستودع والفرع">
|
||||
اختر <b>المستودع</b> و<b>الفرع</b> الذي تريد النشر منه.
|
||||
</Step>
|
||||
<Step title="تفعيل النشر التلقائي (اختياري)">
|
||||
فعّل <b>النشر التلقائي للالتزامات الجديدة</b> لإرسال التحديثات مع كل دفع.
|
||||
</Step>
|
||||
<Step title="إضافة متغيرات البيئة">
|
||||
أضف المتغيرات السرية فرديًا أو استخدم <b>العرض الجماعي</b> لمتغيرات متعددة.
|
||||
</Step>
|
||||
<Step title="النشر">
|
||||
انقر على <b>Deploy</b> لإنشاء الأتمتة المباشرة.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
### النشر من ZIP
|
||||
|
||||
انشر بسرعة بدون Git — ارفع حزمة مضغوطة من مشروعك.
|
||||
|
||||
<Steps>
|
||||
<Step title="اختيار الملف">
|
||||
اختر أرشيف ZIP من جهازك.
|
||||
</Step>
|
||||
<Step title="إضافة متغيرات البيئة">
|
||||
وفّر أي متغيرات أو مفاتيح مطلوبة.
|
||||
</Step>
|
||||
<Step title="النشر">
|
||||
انقر على <b>Deploy</b> لإنشاء الأتمتة المباشرة.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## لوحة تحكم الأتمتة
|
||||
|
||||
يعرض الجدول جميع الأتمتة المباشرة مع التفاصيل الرئيسية:
|
||||
|
||||
- **CREW**: اسم الأتمتة
|
||||
- **STATUS**: متصل / فشل / قيد التنفيذ
|
||||
- **URL**: نقطة نهاية التشغيل/الحالة
|
||||
- **TOKEN**: رمز الأتمتة
|
||||
- **ACTIONS**: إعادة النشر، الحذف، والمزيد
|
||||
|
||||
استخدم عناصر التحكم في أعلى اليمين للتصفية والبحث:
|
||||
|
||||
- البحث بالاسم
|
||||
- التصفية حسب <b>الحالة</b>
|
||||
- التصفية حسب <b>المصدر</b> (GitHub / Studio / ZIP)
|
||||
|
||||
بعد النشر، يمكنك عرض تفاصيل الأتمتة واستخدام القائمة المنسدلة **الخيارات** لـ `الدردشة مع هذا الطاقم`، `تصدير مكون React` و`التصدير كـ MCP`.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
- فضّل نشر GitHub للتحكم في الإصدارات وCI/CD
|
||||
- استخدم إعادة النشر للتقدم بعد تحديثات الكود أو التهيئة أو اضبطه على النشر التلقائي مع كل دفع
|
||||
|
||||
## ذات صلة
|
||||
|
||||
<CardGroup cols={3}>
|
||||
<Card title="نشر طاقم" href="/ar/enterprise/guides/deploy-to-amp" icon="rocket">
|
||||
انشر طاقمًا من GitHub أو ملف ZIP.
|
||||
</Card>
|
||||
<Card title="مشغلات الأتمتة" href="/ar/enterprise/guides/automation-triggers" icon="trigger">
|
||||
شغّل الأتمتة عبر webhooks أو API.
|
||||
</Card>
|
||||
<Card title="أتمتة Webhook" href="/ar/enterprise/guides/webhook-automation" icon="webhook">
|
||||
بث الأحداث والتحديثات في الوقت الفعلي إلى أنظمتك.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
88
docs/ar/enterprise/features/crew-studio.mdx
Normal file
88
docs/ar/enterprise/features/crew-studio.mdx
Normal file
@@ -0,0 +1,88 @@
|
||||
---
|
||||
title: استوديو الطاقم
|
||||
description: "إنشاء أتمتة جديدة بمساعدة الذكاء الاصطناعي ومحرر مرئي واختبار متكامل."
|
||||
icon: "pencil"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
استوديو الطاقم هو مساحة عمل تفاعلية بمساعدة الذكاء الاصطناعي لإنشاء أتمتة جديدة من الصفر باستخدام اللغة الطبيعية ومحرر سير عمل مرئي.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## الإنشاء المبني على الأوامر النصية
|
||||
|
||||
- صِف الأتمتة التي تريدها؛ يقوم الذكاء الاصطناعي بإنشاء الوكلاء والمهام والأدوات.
|
||||
- استخدم الإدخال الصوتي عبر أيقونة الميكروفون إذا فضّلت ذلك.
|
||||
- ابدأ من أوامر مدمجة لحالات الاستخدام الشائعة.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## المحرر المرئي
|
||||
|
||||
يعكس اللوح سير العمل كعُقد وأسهم مع ثلاث لوحات داعمة تتيح لك تهيئة سير العمل بسهولة بدون كتابة كود؛ ما يُعرف بـ "**البرمجة الحدسية لوكلاء الذكاء الاصطناعي**".
|
||||
|
||||
يمكنك استخدام وظيفة السحب والإفلات لإضافة الوكلاء والمهام والأدوات إلى اللوح أو استخدام قسم الدردشة لبناء الوكلاء. يتشارك كلا النهجين الحالة ويمكن استخدامهما بالتبادل.
|
||||
|
||||
- **أفكار AI (يسار)**: الاستدلال المتدفق أثناء تصميم سير العمل
|
||||
- **اللوح (المركز)**: الوكلاء والمهام كعقد متصلة
|
||||
- **الموارد (يمين)**: مكونات السحب والإفلات (وكلاء، مهام، أدوات)
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## التنفيذ والتصحيح
|
||||
|
||||
انتقل إلى عرض <b>التنفيذ</b> لتشغيل سير العمل ومراقبته:
|
||||
|
||||
- الجدول الزمني للأحداث
|
||||
- سجلات مفصلة (التفاصيل، الرسائل، البيانات الخام)
|
||||
- اختبارات محلية قبل النشر
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## النشر والتصدير
|
||||
|
||||
- <b>انشر</b> لنشر أتمتة مباشرة
|
||||
- <b>حمّل</b> المصدر كملف ZIP للتطوير المحلي أو التخصيص
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
بعد النشر، يمكنك عرض تفاصيل الأتمتة واستخدام القائمة المنسدلة **الخيارات** لـ `الدردشة مع هذا الطاقم`، `تصدير مكون React` و`التصدير كـ MCP`.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
- كرر بسرعة في الاستوديو؛ انشر فقط عندما يكون مستقرًا
|
||||
- اقصر الأدوات على الحد الأدنى من الصلاحيات المطلوبة
|
||||
- استخدم التتبعات للتحقق من السلوك والأداء
|
||||
|
||||
## ذات صلة
|
||||
|
||||
<CardGroup cols={4}>
|
||||
<Card title="تفعيل استوديو الطاقم" href="/ar/enterprise/guides/enable-crew-studio" icon="palette">
|
||||
تفعيل استوديو الطاقم.
|
||||
</Card>
|
||||
<Card title="بناء طاقم" href="/ar/enterprise/guides/build-crew" icon="paintbrush">
|
||||
بناء طاقم.
|
||||
</Card>
|
||||
<Card title="نشر طاقم" href="/ar/enterprise/guides/deploy-to-amp" icon="rocket">
|
||||
نشر طاقم من GitHub أو ملف ZIP.
|
||||
</Card>
|
||||
<Card title="تصدير مكون React" href="/ar/enterprise/guides/react-component-export" icon="download">
|
||||
تصدير مكون React.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
558
docs/ar/enterprise/features/flow-hitl-management.mdx
Normal file
558
docs/ar/enterprise/features/flow-hitl-management.mdx
Normal file
@@ -0,0 +1,558 @@
|
||||
---
|
||||
title: "إدارة HITL للتدفقات"
|
||||
description: "مراجعة بشرية بمستوى المؤسسات للتدفقات مع إشعارات البريد الإلكتروني أولاً وقواعد التوجيه وإمكانيات الاستجابة التلقائية"
|
||||
icon: "users-gear"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
<Note>
|
||||
تتطلب ميزات إدارة Flow HITL مزيّن `@human_feedback`، المتاح في **CrewAI الإصدار 1.8.0 أو أحدث**. تنطبق هذه الميزات تحديدًا على **التدفقات (Flows)**، وليس الأطقم (Crews).
|
||||
</Note>
|
||||
|
||||
يوفر CrewAI Enterprise نظامًا شاملًا لإدارة الإنسان في الحلقة (HITL) للتدفقات يحوّل سير عمل الذكاء الاصطناعي إلى عمليات تعاونية بين الإنسان والذكاء الاصطناعي. تستخدم المنصة **بنية البريد الإلكتروني أولاً** التي تمكّن أي شخص لديه عنوان بريد إلكتروني من الرد على طلبات المراجعة — بدون الحاجة لحساب على المنصة.
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
<CardGroup cols={3}>
|
||||
<Card title="تصميم البريد الإلكتروني أولاً" icon="envelope">
|
||||
يمكن للمستجيبين الرد مباشرة على رسائل الإشعار لتقديم الملاحظات
|
||||
</Card>
|
||||
<Card title="توجيه مرن" icon="route">
|
||||
توجيه الطلبات إلى بريد إلكتروني محدد بناءً على أنماط الطرق أو حالة التدفق
|
||||
</Card>
|
||||
<Card title="استجابة تلقائية" icon="clock">
|
||||
تهيئة استجابات احتياطية تلقائية عندما لا يرد أي شخص في الوقت المحدد
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
### الفوائد الرئيسية
|
||||
|
||||
- **نموذج ذهني بسيط**: عناوين البريد الإلكتروني عالمية؛ لا حاجة لإدارة مستخدمين أو أدوار المنصة
|
||||
- **مستجيبون خارجيون**: يمكن لأي شخص لديه بريد إلكتروني الرد، حتى غير مستخدمي المنصة
|
||||
- **تعيين ديناميكي**: سحب بريد المعيّن مباشرة من حالة التدفق (مثل `sales_rep_email`)
|
||||
- **تهيئة مخفضة**: إعدادات أقل للتهيئة، وقت أسرع للقيمة
|
||||
- **البريد الإلكتروني كقناة رئيسية**: يفضل معظم المستخدمين الرد عبر البريد الإلكتروني بدلاً من تسجيل الدخول إلى لوحة التحكم
|
||||
|
||||
## إعداد نقاط المراجعة البشرية في التدفقات
|
||||
|
||||
هيّئ نقاط تفتيش المراجعة البشرية داخل تدفقاتك باستخدام مزيّن `@human_feedback`. عندما يصل التنفيذ إلى نقطة مراجعة، يتوقف النظام ويُخطر المعيّن عبر البريد الإلكتروني وينتظر الاستجابة.
|
||||
|
||||
```python
|
||||
from crewai.flow.flow import Flow, start, listen, or_
|
||||
from crewai.flow.human_feedback import human_feedback, HumanFeedbackResult
|
||||
|
||||
class ContentApprovalFlow(Flow):
|
||||
@start()
|
||||
def generate_content(self):
|
||||
return "Generated marketing copy for Q1 campaign..."
|
||||
|
||||
@human_feedback(
|
||||
message="Please review this content for brand compliance:",
|
||||
emit=["approved", "rejected", "needs_revision"],
|
||||
)
|
||||
@listen(or_("generate_content", "needs_revision"))
|
||||
def review_content(self):
|
||||
return "Marketing copy for review..."
|
||||
|
||||
@listen("approved")
|
||||
def publish_content(self, result: HumanFeedbackResult):
|
||||
print(f"Publishing approved content. Reviewer notes: {result.feedback}")
|
||||
|
||||
@listen("rejected")
|
||||
def archive_content(self, result: HumanFeedbackResult):
|
||||
print(f"Content rejected. Reason: {result.feedback}")
|
||||
```
|
||||
|
||||
للحصول على تفاصيل التنفيذ الكاملة، راجع دليل [التغذية الراجعة البشرية في التدفقات](/ar/learn/human-feedback-in-flows).
|
||||
|
||||
### معاملات المزيّن
|
||||
|
||||
| المعامل | النوع | الوصف |
|
||||
|-----------|------|-------------|
|
||||
| `message` | `str` | الرسالة المعروضة للمراجع البشري |
|
||||
| `emit` | `list[str]` | خيارات الاستجابة الصالحة (تُعرض كأزرار في الواجهة) |
|
||||
|
||||
## تهيئة المنصة
|
||||
|
||||
الوصول إلى تهيئة HITL من: **النشر** ← **الإعدادات** ← **تهيئة الإنسان في الحلقة**
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-settings-overview.png" alt="HITL Configuration Settings" />
|
||||
</Frame>
|
||||
|
||||
### إشعارات البريد الإلكتروني
|
||||
|
||||
تبديل لتفعيل أو تعطيل إشعارات البريد الإلكتروني لطلبات HITL.
|
||||
|
||||
| الإعداد | الافتراضي | الوصف |
|
||||
|---------|---------|-------------|
|
||||
| إشعارات البريد الإلكتروني | مفعّل | إرسال رسائل عند طلب الملاحظات |
|
||||
|
||||
<Note>
|
||||
عند التعطيل، يجب على المستجيبين استخدام واجهة لوحة التحكم أو يجب تهيئة webhooks لأنظمة إشعارات مخصصة.
|
||||
</Note>
|
||||
|
||||
### هدف SLA
|
||||
|
||||
تعيين وقت استجابة مستهدف لأغراض التتبع والمقاييس.
|
||||
|
||||
| الإعداد | الوصف |
|
||||
|---------|-------------|
|
||||
| هدف SLA (دقائق) | وقت الاستجابة المستهدف. يُستخدم لمقاييس لوحة التحكم وتتبع SLA |
|
||||
|
||||
اتركه فارغًا لتعطيل تتبع SLA.
|
||||
|
||||
## إشعارات واستجابات البريد الإلكتروني
|
||||
|
||||
يستخدم نظام HITL بنية البريد الإلكتروني أولاً حيث يمكن للمستجيبين الرد مباشرة على رسائل الإشعار.
|
||||
|
||||
### كيف تعمل استجابات البريد الإلكتروني
|
||||
|
||||
<Steps>
|
||||
<Step title="إرسال الإشعار">
|
||||
عند إنشاء طلب HITL، يُرسل بريد إلكتروني إلى المستجيب المعيّن مع محتوى المراجعة والسياق.
|
||||
</Step>
|
||||
<Step title="عنوان الرد">
|
||||
يتضمن البريد عنوان رد خاص مع رمز موقّع للمصادقة.
|
||||
</Step>
|
||||
<Step title="رد المستخدم">
|
||||
يرد المستجيب ببساطة على البريد بملاحظاته — بدون حاجة لتسجيل الدخول.
|
||||
</Step>
|
||||
<Step title="التحقق من الرمز">
|
||||
تستقبل المنصة الرد، وتتحقق من الرمز الموقّع، وتطابق بريد المرسل.
|
||||
</Step>
|
||||
<Step title="استئناف التدفق">
|
||||
تُسجل الملاحظات ويستمر التدفق مع مدخلات الإنسان.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
### تنسيق الاستجابة
|
||||
|
||||
يمكن للمستجيبين الرد بـ:
|
||||
|
||||
- **خيار emit**: إذا تطابق الرد مع خيار `emit` (مثل "approved")، يُستخدم مباشرة
|
||||
- **نص حر**: أي نص استجابة يُمرر إلى التدفق كملاحظات
|
||||
- **نص عادي**: يُستخدم السطر الأول من نص الرد كملاحظات
|
||||
|
||||
### رسائل التأكيد
|
||||
|
||||
بعد معالجة الرد، يستلم المستجيب رسالة تأكيد تشير إلى ما إذا تم إرسال الملاحظات بنجاح أو حدث خطأ.
|
||||
|
||||
### أمان رمز البريد
|
||||
|
||||
- الرموز موقّعة تشفيريًا للأمان
|
||||
- تنتهي صلاحية الرموز بعد 7 أيام
|
||||
- يجب أن يتطابق بريد المرسل مع البريد المصرّح به في الرمز
|
||||
- تُرسل رسائل تأكيد/خطأ بعد المعالجة
|
||||
|
||||
## قواعد التوجيه
|
||||
|
||||
توجيه طلبات HITL إلى عناوين بريد إلكتروني محددة بناءً على أنماط الطرق.
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-settings-routing-rules.png" alt="HITL Routing Rules Configuration" />
|
||||
</Frame>
|
||||
|
||||
### هيكل القاعدة
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "Approvals to Finance",
|
||||
"match": {
|
||||
"method_name": "approve_*"
|
||||
},
|
||||
"assign_to_email": "finance@company.com",
|
||||
"assign_from_input": "manager_email"
|
||||
}
|
||||
```
|
||||
|
||||
### أنماط المطابقة
|
||||
|
||||
| النمط | الوصف | مثال المطابقة |
|
||||
|---------|-------------|---------------|
|
||||
| `approve_*` | حرف بدل (أي أحرف) | `approve_payment`، `approve_vendor` |
|
||||
| `review_?` | حرف واحد | `review_a`، `review_1` |
|
||||
| `validate_payment` | مطابقة تامة | `validate_payment` فقط |
|
||||
|
||||
### أولوية التعيين
|
||||
|
||||
1. **تعيين ديناميكي** (`assign_from_input`): إذا تم تهيئته، يسحب البريد من حالة التدفق
|
||||
2. **بريد ثابت** (`assign_to_email`): يرجع إلى البريد المهيأ
|
||||
3. **منشئ النشر**: إذا لم تتطابق أي قاعدة، يُستخدم بريد منشئ النشر
|
||||
|
||||
### مثال التعيين الديناميكي
|
||||
|
||||
إذا كانت حالة تدفقك تحتوي على `{"sales_rep_email": "alice@company.com"}`، هيّئ:
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "Route to Sales Rep",
|
||||
"match": {
|
||||
"method_name": "review_*"
|
||||
},
|
||||
"assign_from_input": "sales_rep_email"
|
||||
}
|
||||
```
|
||||
|
||||
سيتم تعيين الطلب إلى `alice@company.com` تلقائيًا.
|
||||
|
||||
<Tip>
|
||||
**حالة استخدام**: اسحب المعيّن من CRM أو قاعدة البيانات أو خطوة تدفق سابقة لتوجيه المراجعات ديناميكيًا إلى الشخص المناسب.
|
||||
</Tip>
|
||||
|
||||
## الاستجابة التلقائية
|
||||
|
||||
الاستجابة تلقائيًا لطلبات HITL إذا لم يستجب أي شخص خلال المهلة المحددة. يضمن هذا عدم تعليق التدفقات إلى أجل غير مسمى.
|
||||
|
||||
### التهيئة
|
||||
|
||||
| الإعداد | الوصف |
|
||||
|---------|-------------|
|
||||
| مفعّل | تبديل لتفعيل الاستجابة التلقائية |
|
||||
| المهلة (دقائق) | الوقت المنتظر قبل الاستجابة التلقائية |
|
||||
| النتيجة الافتراضية | قيمة الاستجابة (يجب أن تطابق خيار `emit`) |
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-settings-auto-respond.png" alt="HITL Auto-Response Configuration" />
|
||||
</Frame>
|
||||
|
||||
### حالات الاستخدام
|
||||
|
||||
- **الامتثال لـ SLA**: ضمان عدم تعليق التدفقات إلى أجل غير مسمى
|
||||
- **الموافقة الافتراضية**: الموافقة التلقائية على الطلبات منخفضة المخاطر بعد انتهاء المهلة
|
||||
- **التراجع السلس**: المتابعة بافتراضي آمن عندما يكون المراجعون غير متاحين
|
||||
|
||||
<Warning>
|
||||
استخدم الاستجابة التلقائية بحذر. فعّلها فقط للمراجعات غير الحرجة حيث تكون الاستجابة الافتراضية مقبولة.
|
||||
</Warning>
|
||||
|
||||
## عملية المراجعة
|
||||
|
||||
### واجهة لوحة التحكم
|
||||
|
||||
توفر واجهة مراجعة HITL تجربة نظيفة ومركّزة للمراجعين:
|
||||
|
||||
- **عرض Markdown**: تنسيق غني لمحتوى المراجعة مع تمييز الصيغة
|
||||
- **لوحة السياق**: عرض حالة التدفق وتاريخ التنفيذ والمعلومات ذات الصلة
|
||||
- **إدخال الملاحظات**: تقديم ملاحظات وتعليقات مفصلة مع قرارك
|
||||
- **إجراءات سريعة**: أزرار خيارات emit بنقرة واحدة مع تعليقات اختيارية
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-list-pending-feedbacks.png" alt="HITL Pending Requests List" />
|
||||
</Frame>
|
||||
|
||||
### طرق الاستجابة
|
||||
|
||||
يمكن للمراجعين الاستجابة عبر ثلاث قنوات:
|
||||
|
||||
| الطريقة | الوصف |
|
||||
|--------|-------------|
|
||||
| **الرد عبر البريد** | الرد مباشرة على رسالة الإشعار |
|
||||
| **لوحة التحكم** | استخدام واجهة لوحة تحكم المؤسسة |
|
||||
| **API/Webhook** | استجابة برمجية عبر API |
|
||||
|
||||
### السجل ومسار التدقيق
|
||||
|
||||
يتم تتبع كل تفاعل HITL بجدول زمني كامل:
|
||||
|
||||
- سجل القرارات (موافقة/رفض/مراجعة)
|
||||
- هوية المراجع والطابع الزمني
|
||||
- الملاحظات والتعليقات المقدمة
|
||||
- طريقة الاستجابة (بريد/لوحة تحكم/API)
|
||||
- مقاييس وقت الاستجابة
|
||||
|
||||
## التحليلات والمراقبة
|
||||
|
||||
تتبع أداء HITL مع تحليلات شاملة.
|
||||
|
||||
### لوحة تحكم الأداء
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-metrics.png" alt="HITL Metrics Dashboard" />
|
||||
</Frame>
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="أوقات الاستجابة" icon="stopwatch">
|
||||
مراقبة متوسط وميديان أوقات الاستجابة حسب المراجع أو التدفق.
|
||||
</Card>
|
||||
<Card title="اتجاهات الحجم" icon="chart-bar">
|
||||
تحليل أنماط حجم المراجعة لتحسين قدرة الفريق.
|
||||
</Card>
|
||||
<Card title="توزيع القرارات" icon="chart-pie">
|
||||
عرض معدلات الموافقة/الرفض عبر أنواع المراجعة المختلفة.
|
||||
</Card>
|
||||
<Card title="تتبع SLA" icon="chart-line">
|
||||
تتبع نسبة المراجعات المكتملة ضمن أهداف SLA.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
|
||||
### التدقيق والامتثال
|
||||
|
||||
إمكانيات تدقيق جاهزة للمؤسسات للمتطلبات التنظيمية:
|
||||
|
||||
- سجل قرارات كامل مع الطوابع الزمنية
|
||||
- التحقق من هوية المراجع
|
||||
- سجلات تدقيق غير قابلة للتغيير
|
||||
- إمكانيات التصدير لتقارير الامتثال
|
||||
|
||||
## حالات الاستخدام الشائعة
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="المراجعات الأمنية" icon="shield-halved">
|
||||
**حالة الاستخدام**: أتمتة استبيانات الأمان الداخلية مع التحقق البشري
|
||||
|
||||
- يولّد الذكاء الاصطناعي الردود على الاستبيانات الأمنية
|
||||
- يراجع فريق الأمن ويتحقق من الدقة عبر البريد الإلكتروني
|
||||
- يتم تجميع الردود المعتمدة في التقديم النهائي
|
||||
- مسار تدقيق كامل للامتثال
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="الموافقة على المحتوى" icon="file-lines">
|
||||
**حالة الاستخدام**: محتوى تسويقي يتطلب مراجعة قانونية/العلامة التجارية
|
||||
|
||||
- يولّد الذكاء الاصطناعي نصوص تسويقية أو محتوى وسائل التواصل
|
||||
- التوجيه إلى بريد فريق العلامة التجارية لمراجعة النبرة/الأسلوب
|
||||
- النشر التلقائي عند الموافقة
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="الموافقات المالية" icon="money-bill">
|
||||
**حالة الاستخدام**: تقارير النفقات، شروط العقود، تخصيصات الميزانية
|
||||
|
||||
- يعالج الذكاء الاصطناعي مسبقًا ويصنف الطلبات المالية
|
||||
- التوجيه بناءً على عتبات المبالغ باستخدام التعيين الديناميكي
|
||||
- الحفاظ على مسار تدقيق كامل للامتثال المالي
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="التعيين الديناميكي من CRM" icon="database">
|
||||
**حالة الاستخدام**: توجيه المراجعات إلى مالكي الحسابات من CRM
|
||||
|
||||
- يجلب التدفق بريد مالك الحساب من CRM
|
||||
- تخزين البريد في حالة التدفق (مثل `account_owner_email`)
|
||||
- استخدام `assign_from_input` للتوجيه إلى الشخص المناسب تلقائيًا
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="ضمان الجودة" icon="magnifying-glass">
|
||||
**حالة الاستخدام**: التحقق من مخرجات الذكاء الاصطناعي قبل التسليم للعميل
|
||||
|
||||
- يولّد الذكاء الاصطناعي محتوى أو ردود موجهة للعميل
|
||||
- يراجع فريق ضمان الجودة عبر إشعار البريد الإلكتروني
|
||||
- حلقات الملاحظات تحسّن أداء الذكاء الاصطناعي بمرور الوقت
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## واجهة Webhooks API
|
||||
|
||||
عندما تتوقف تدفقاتك للملاحظات البشرية، يمكنك تهيئة webhooks لإرسال بيانات الطلب إلى تطبيقك. يتيح هذا:
|
||||
|
||||
- بناء واجهات موافقة مخصصة
|
||||
- التكامل مع الأدوات الداخلية (Jira، ServiceNow، لوحات تحكم مخصصة)
|
||||
- توجيه الموافقات إلى أنظمة طرف ثالث
|
||||
- إشعارات تطبيقات الجوال
|
||||
- أنظمة القرار المؤتمتة
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/hitl-settings-webhook.png" alt="HITL Webhook Configuration" />
|
||||
</Frame>
|
||||
|
||||
### تهيئة Webhooks
|
||||
|
||||
<Steps>
|
||||
<Step title="الانتقال إلى الإعدادات">
|
||||
اذهب إلى **النشر** ← **الإعدادات** ← **الإنسان في الحلقة**
|
||||
</Step>
|
||||
<Step title="توسيع قسم Webhooks">
|
||||
انقر لتوسيع تهيئة **Webhooks**
|
||||
</Step>
|
||||
<Step title="إضافة عنوان Webhook">
|
||||
أدخل عنوان webhook الخاص بك (يجب أن يكون HTTPS في الإنتاج)
|
||||
</Step>
|
||||
<Step title="حفظ التهيئة">
|
||||
انقر على **حفظ التهيئة** للتفعيل
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
يمكنك تهيئة webhooks متعددة. يستقبل كل webhook نشط جميع أحداث HITL.
|
||||
|
||||
### أحداث Webhook
|
||||
|
||||
ستستقبل نقطة النهاية طلبات HTTP POST لهذه الأحداث:
|
||||
|
||||
| نوع الحدث | متى يُطلق |
|
||||
|------------|----------------|
|
||||
| `new_request` | يتوقف تدفق ويطلب ملاحظات بشرية |
|
||||
|
||||
### حمولة Webhook
|
||||
|
||||
تستقبل جميع webhooks حمولة JSON بهذا الهيكل:
|
||||
|
||||
```json
|
||||
{
|
||||
"event": "new_request",
|
||||
"request": {
|
||||
"id": "550e8400-e29b-41d4-a716-446655440000",
|
||||
"flow_id": "flow_abc123",
|
||||
"method_name": "review_article",
|
||||
"message": "Please review this article for publication.",
|
||||
"emit_options": ["approved", "rejected", "request_changes"],
|
||||
"state": {
|
||||
"article_id": 12345,
|
||||
"author": "john@example.com",
|
||||
"category": "technology"
|
||||
},
|
||||
"metadata": {},
|
||||
"created_at": "2026-01-14T12:00:00Z"
|
||||
},
|
||||
"deployment": {
|
||||
"id": 456,
|
||||
"name": "Content Review Flow",
|
||||
"organization_id": 789
|
||||
},
|
||||
"callback_url": "https://api.crewai.com/...",
|
||||
"assigned_to_email": "reviewer@company.com"
|
||||
}
|
||||
```
|
||||
|
||||
### الرد على الطلبات
|
||||
|
||||
لإرسال الملاحظات، **أرسل POST إلى `callback_url`** المضمّن في حمولة webhook.
|
||||
|
||||
```http
|
||||
POST {callback_url}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"feedback": "Approved. Great article!",
|
||||
"source": "my_custom_app"
|
||||
}
|
||||
```
|
||||
|
||||
### الأمان
|
||||
|
||||
<Info>
|
||||
جميع طلبات webhook موقّعة تشفيريًا باستخدام HMAC-SHA256 لضمان الأصالة ومنع التلاعب.
|
||||
</Info>
|
||||
|
||||
#### أمان Webhook
|
||||
|
||||
- **توقيعات HMAC-SHA256**: يتضمن كل webhook توقيعًا تشفيريًا
|
||||
- **أسرار لكل webhook**: لكل webhook سر توقيع فريد
|
||||
- **مشفرة أثناء التخزين**: أسرار التوقيع مشفرة في قاعدة البيانات
|
||||
- **التحقق من الطابع الزمني**: يمنع هجمات الإعادة
|
||||
|
||||
#### ترويسات التوقيع
|
||||
|
||||
يتضمن كل طلب webhook هذه الترويسات:
|
||||
|
||||
| الترويسة | الوصف |
|
||||
|--------|-------------|
|
||||
| `X-Signature` | توقيع HMAC-SHA256: `sha256=<hex_digest>` |
|
||||
| `X-Timestamp` | الطابع الزمني Unix عند توقيع الطلب |
|
||||
|
||||
#### التحقق
|
||||
|
||||
تحقق بحساب:
|
||||
|
||||
```python
|
||||
import hmac
|
||||
import hashlib
|
||||
|
||||
expected = hmac.new(
|
||||
signing_secret.encode(),
|
||||
f"{timestamp}.{payload}".encode(),
|
||||
hashlib.sha256
|
||||
).hexdigest()
|
||||
|
||||
if hmac.compare_digest(expected, signature):
|
||||
# توقيع صالح
|
||||
```
|
||||
|
||||
### معالجة الأخطاء
|
||||
|
||||
يجب أن تعيد نقطة نهاية webhook كود حالة 2xx لتأكيد الاستلام:
|
||||
|
||||
| استجابتك | سلوكنا |
|
||||
|---------------|--------------|
|
||||
| 2xx | تم تسليم Webhook بنجاح |
|
||||
| 4xx/5xx | مسجل كفشل، بدون إعادة محاولة |
|
||||
| مهلة (30 ثانية) | مسجل كفشل، بدون إعادة محاولة |
|
||||
|
||||
## الأمان والتحكم في الوصول المبني على الأدوار
|
||||
|
||||
### الوصول إلى لوحة التحكم
|
||||
|
||||
يُتحكم في وصول HITL على مستوى النشر:
|
||||
|
||||
| الصلاحية | القدرة |
|
||||
|------------|------------|
|
||||
| `manage_human_feedback` | تهيئة إعدادات HITL، عرض جميع الطلبات |
|
||||
| `respond_to_human_feedback` | الرد على الطلبات، عرض الطلبات المعيّنة |
|
||||
|
||||
### تصريح استجابة البريد الإلكتروني
|
||||
|
||||
للردود عبر البريد:
|
||||
1. يشفّر رمز الرد البريد المصرّح به
|
||||
2. يجب أن يتطابق بريد المرسل مع بريد الرمز
|
||||
3. يجب ألا يكون الرمز منتهي الصلاحية (7 أيام افتراضيًا)
|
||||
4. يجب أن يكون الطلب لا يزال معلقًا
|
||||
|
||||
### مسار التدقيق
|
||||
|
||||
يتم تسجيل جميع إجراءات HITL:
|
||||
- إنشاء الطلب
|
||||
- تغييرات التعيين
|
||||
- إرسال الاستجابة (مع المصدر: لوحة تحكم/بريد/API)
|
||||
- حالة استئناف التدفق
|
||||
|
||||
## استكشاف الأخطاء وإصلاحها
|
||||
|
||||
### عدم إرسال الرسائل
|
||||
|
||||
1. تحقق من تفعيل "إشعارات البريد الإلكتروني" في التهيئة
|
||||
2. تحقق من مطابقة قواعد التوجيه لاسم الطريقة
|
||||
3. تحقق من صلاحية بريد المعيّن
|
||||
4. تحقق من احتياطي منشئ النشر إذا لم تتطابق أي قواعد توجيه
|
||||
|
||||
### عدم معالجة ردود البريد
|
||||
|
||||
1. تحقق من عدم انتهاء صلاحية الرمز (7 أيام افتراضيًا)
|
||||
2. تحقق من مطابقة بريد المرسل للبريد المعيّن
|
||||
3. تأكد من أن الطلب لا يزال معلقًا (لم يتم الرد عليه بعد)
|
||||
|
||||
### عدم استئناف التدفق
|
||||
|
||||
1. تحقق من حالة الطلب في لوحة التحكم
|
||||
2. تحقق من إمكانية الوصول إلى callback URL
|
||||
3. تأكد من أن النشر لا يزال قيد التشغيل
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
<Tip>
|
||||
**ابدأ ببساطة**: ابدأ بإشعارات البريد الإلكتروني لمنشئ النشر، ثم أضف قواعد التوجيه مع نضوج سير عملك.
|
||||
</Tip>
|
||||
|
||||
1. **استخدم التعيين الديناميكي**: اسحب عناوين بريد المعيّنين من حالة التدفق للتوجيه المرن.
|
||||
|
||||
2. **هيّئ الاستجابة التلقائية**: أعد استجابة احتياطية للمراجعات غير الحرجة لمنع تعليق التدفقات.
|
||||
|
||||
3. **راقب أوقات الاستجابة**: استخدم التحليلات لتحديد الاختناقات وتحسين عملية المراجعة.
|
||||
|
||||
4. **اجعل رسائل المراجعة واضحة**: اكتب رسائل واضحة وقابلة للتنفيذ في مزيّن `@human_feedback`.
|
||||
|
||||
5. **اختبر تدفق البريد**: أرسل طلبات اختبار للتحقق من تسليم البريد قبل الانتقال للإنتاج.
|
||||
|
||||
## الموارد ذات الصلة
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card title="التغذية الراجعة البشرية في التدفقات" icon="code" href="/ar/learn/human-feedback-in-flows">
|
||||
دليل التنفيذ لمزيّن `@human_feedback`
|
||||
</Card>
|
||||
<Card title="دليل سير عمل Flow HITL" icon="route" href="/ar/enterprise/guides/human-in-the-loop">
|
||||
دليل خطوة بخطوة لإعداد سير عمل HITL
|
||||
</Card>
|
||||
<Card title="تهيئة RBAC" icon="shield-check" href="/ar/enterprise/features/rbac">
|
||||
تهيئة التحكم في الوصول المبني على الأدوار لمؤسستك
|
||||
</Card>
|
||||
<Card title="بث Webhook" icon="bolt" href="/ar/enterprise/features/webhook-streaming">
|
||||
إعداد إشعارات الأحداث في الوقت الفعلي
|
||||
</Card>
|
||||
</CardGroup>
|
||||
251
docs/ar/enterprise/features/hallucination-guardrail.mdx
Normal file
251
docs/ar/enterprise/features/hallucination-guardrail.mdx
Normal file
@@ -0,0 +1,251 @@
|
||||
---
|
||||
title: حاجز الهلوسة
|
||||
description: "منع واكتشاف هلوسات الذكاء الاصطناعي في مهام CrewAI"
|
||||
icon: "shield-check"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
حاجز الهلوسة هو ميزة مؤسسية تتحقق من المحتوى المولّد بالذكاء الاصطناعي لضمان أنه مبني على الحقائق ولا يحتوي على هلوسات. يحلل مخرجات المهام مقابل سياق مرجعي ويوفر ملاحظات مفصلة عند اكتشاف محتوى محتمل الهلوسة.
|
||||
|
||||
## ما هي الهلوسات؟
|
||||
|
||||
تحدث هلوسات الذكاء الاصطناعي عندما تولّد نماذج اللغة محتوى يبدو معقولاً لكنه غير صحيح من الناحية الواقعية أو غير مدعوم بالسياق المقدم. يساعد حاجز الهلوسة في منع هذه المشكلات من خلال:
|
||||
|
||||
- مقارنة المخرجات مع السياق المرجعي
|
||||
- تقييم الأمانة للمادة المصدرية
|
||||
- توفير ملاحظات مفصلة حول المحتوى المشكل
|
||||
- دعم عتبات مخصصة لصرامة التحقق
|
||||
|
||||
## الاستخدام الأساسي
|
||||
|
||||
### إعداد الحاجز
|
||||
|
||||
```python
|
||||
from crewai.tasks.hallucination_guardrail import HallucinationGuardrail
|
||||
from crewai import LLM
|
||||
|
||||
# الاستخدام الأساسي - سيستخدم expected_output للمهمة كسياق
|
||||
guardrail = HallucinationGuardrail(
|
||||
llm=LLM(model="gpt-4o-mini")
|
||||
)
|
||||
|
||||
# مع سياق مرجعي صريح
|
||||
context_guardrail = HallucinationGuardrail(
|
||||
context="AI helps with various tasks including analysis and generation.",
|
||||
llm=LLM(model="gpt-4o-mini")
|
||||
)
|
||||
```
|
||||
|
||||
### الإضافة إلى المهام
|
||||
|
||||
```python
|
||||
from crewai import Task
|
||||
|
||||
# إنشاء مهمتك مع الحاجز
|
||||
task = Task(
|
||||
description="Write a summary about AI capabilities",
|
||||
expected_output="A factual summary based on the provided context",
|
||||
agent=my_agent,
|
||||
guardrail=guardrail # إضافة الحاجز للتحقق من المخرجات
|
||||
)
|
||||
```
|
||||
|
||||
## التهيئة المتقدمة
|
||||
|
||||
### التحقق بعتبة مخصصة
|
||||
|
||||
للتحقق الأكثر صرامة، يمكنك تعيين عتبة أمانة مخصصة (مقياس 0-10):
|
||||
|
||||
```python
|
||||
# حاجز صارم يتطلب درجة أمانة عالية
|
||||
strict_guardrail = HallucinationGuardrail(
|
||||
context="Quantum computing uses qubits that exist in superposition states.",
|
||||
llm=LLM(model="gpt-4o-mini"),
|
||||
threshold=8.0 # يتطلب درجة >= 8 لاجتياز التحقق
|
||||
)
|
||||
```
|
||||
|
||||
### تضمين سياق استجابة الأدوات
|
||||
|
||||
عندما تستخدم مهمتك أدوات، يمكنك تضمين استجابات الأدوات لتحقق أكثر دقة:
|
||||
|
||||
```python
|
||||
# حاجز مع سياق استجابة الأدوات
|
||||
weather_guardrail = HallucinationGuardrail(
|
||||
context="Current weather information for the requested location",
|
||||
llm=LLM(model="gpt-4o-mini"),
|
||||
tool_response="Weather API returned: Temperature 22°C, Humidity 65%, Clear skies"
|
||||
)
|
||||
```
|
||||
|
||||
## كيف يعمل
|
||||
|
||||
### عملية التحقق
|
||||
|
||||
1. **تحليل السياق**: يقارن الحاجز مخرجات المهمة مع السياق المرجعي المقدم
|
||||
2. **تسجيل الأمانة**: يستخدم مقيّمًا داخليًا لتعيين درجة أمانة (0-10)
|
||||
3. **تحديد الحكم**: يحدد ما إذا كان المحتوى أمينًا أو يحتوي على هلوسات
|
||||
4. **التحقق من العتبة**: إذا تم تعيين عتبة مخصصة، يتحقق مقابل تلك الدرجة
|
||||
5. **توليد الملاحظات**: يوفر أسبابًا مفصلة عند فشل التحقق
|
||||
|
||||
### منطق التحقق
|
||||
|
||||
- **الوضع الافتراضي**: يستخدم التحقق المبني على الحكم (FAITHFUL مقابل HALLUCINATED)
|
||||
- **وضع العتبة**: يتطلب أن تلبي درجة الأمانة العتبة المحددة أو تتجاوزها
|
||||
- **معالجة الأخطاء**: يتعامل بسلاسة مع أخطاء التقييم ويوفر ملاحظات إعلامية
|
||||
|
||||
## نتائج الحاجز
|
||||
|
||||
يعيد الحاجز نتائج منظمة تشير إلى حالة التحقق:
|
||||
|
||||
```python
|
||||
# مثال على هيكل نتيجة الحاجز
|
||||
{
|
||||
"valid": False,
|
||||
"feedback": "Content appears to be hallucinated (score: 4.2/10, verdict: HALLUCINATED). The output contains information not supported by the provided context."
|
||||
}
|
||||
```
|
||||
|
||||
### خصائص النتيجة
|
||||
|
||||
- **valid**: قيمة منطقية تشير إلى ما إذا اجتازت المخرجات التحقق
|
||||
- **feedback**: شرح مفصل عند فشل التحقق، يتضمن:
|
||||
- درجة الأمانة
|
||||
- تصنيف الحكم
|
||||
- أسباب محددة للفشل
|
||||
|
||||
## التكامل مع نظام المهام
|
||||
|
||||
### التحقق التلقائي
|
||||
|
||||
عند إضافة حاجز إلى مهمة، يتحقق تلقائيًا من المخرجات قبل اعتبار المهمة مكتملة:
|
||||
|
||||
```python
|
||||
# تدفق التحقق من مخرجات المهمة
|
||||
task_output = agent.execute_task(task)
|
||||
validation_result = guardrail(task_output)
|
||||
|
||||
if validation_result.valid:
|
||||
# المهمة تكتمل بنجاح
|
||||
return task_output
|
||||
else:
|
||||
# المهمة تفشل مع ملاحظات التحقق
|
||||
raise ValidationError(validation_result.feedback)
|
||||
```
|
||||
|
||||
### تتبع الأحداث
|
||||
|
||||
يتكامل الحاجز مع نظام أحداث CrewAI لتوفير المراقبة:
|
||||
|
||||
- **بدء التحقق**: عند بدء تقييم الحاجز
|
||||
- **اكتمال التحقق**: عند انتهاء التقييم بالنتائج
|
||||
- **فشل التحقق**: عند حدوث أخطاء تقنية أثناء التقييم
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
### إرشادات السياق
|
||||
|
||||
<Steps>
|
||||
<Step title="توفير سياق شامل">
|
||||
أدرج جميع المعلومات الواقعية ذات الصلة التي يجب أن يبني عليها الذكاء الاصطناعي مخرجاته:
|
||||
|
||||
```python
|
||||
context = """
|
||||
Company XYZ was founded in 2020 and specializes in renewable energy solutions.
|
||||
They have 150 employees and generated $50M revenue in 2023.
|
||||
Their main products include solar panels and wind turbines.
|
||||
"""
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="الحفاظ على صلة السياق">
|
||||
أدرج فقط المعلومات المرتبطة مباشرة بالمهمة لتجنب الارتباك:
|
||||
|
||||
```python
|
||||
# جيد: سياق مركّز
|
||||
context = "The current weather in New York is 18°C with light rain."
|
||||
|
||||
# تجنب: معلومات غير ذات صلة
|
||||
context = "The weather is 18°C. The city has 8 million people. Traffic is heavy."
|
||||
```
|
||||
</Step>
|
||||
|
||||
<Step title="تحديث السياق بانتظام">
|
||||
تأكد من أن السياق المرجعي يعكس معلومات حالية ودقيقة.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
### اختيار العتبة
|
||||
|
||||
<Steps>
|
||||
<Step title="البدء بالتحقق الافتراضي">
|
||||
ابدأ بدون عتبات مخصصة لفهم الأداء الأساسي.
|
||||
</Step>
|
||||
|
||||
<Step title="الضبط بناءً على المتطلبات">
|
||||
- **محتوى عالي الأهمية**: استخدم عتبة 8-10 للدقة القصوى
|
||||
- **محتوى عام**: استخدم عتبة 6-7 للتحقق المتوازن
|
||||
- **محتوى إبداعي**: استخدم عتبة 4-5 أو التحقق الافتراضي المبني على الحكم
|
||||
</Step>
|
||||
|
||||
<Step title="المراقبة والتكرار">
|
||||
تتبع نتائج التحقق واضبط العتبات بناءً على الإيجابيات/السلبيات الكاذبة.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## اعتبارات الأداء
|
||||
|
||||
### التأثير على زمن التنفيذ
|
||||
|
||||
- **عبء التحقق**: يضيف كل حاجز حوالي 1-3 ثوانٍ لكل مهمة
|
||||
- **كفاءة LLM**: اختر نماذج فعالة للتقييم (مثل gpt-4o-mini)
|
||||
|
||||
### تحسين التكلفة
|
||||
|
||||
- **اختيار النموذج**: استخدم نماذج أصغر وفعالة لتقييم الحاجز
|
||||
- **حجم السياق**: اجعل السياق المرجعي موجزًا لكن شاملًا
|
||||
- **التخزين المؤقت**: فكّر في تخزين نتائج التحقق مؤقتًا للمحتوى المتكرر
|
||||
|
||||
## استكشاف الأخطاء وإصلاحها
|
||||
|
||||
<Accordion title="فشل التحقق دائمًا">
|
||||
**الأسباب المحتملة:**
|
||||
- السياق مقيّد جدًا أو غير مرتبط بمخرجات المهمة
|
||||
- العتبة معينة عالية جدًا لنوع المحتوى
|
||||
- السياق المرجعي يحتوي على معلومات قديمة
|
||||
|
||||
**الحلول:**
|
||||
- مراجعة وتحديث السياق ليتطابق مع متطلبات المهمة
|
||||
- خفض العتبة أو استخدام التحقق الافتراضي المبني على الحكم
|
||||
- التأكد من أن السياق حالي ودقيق
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="إيجابيات كاذبة (محتوى صالح يُعلّم كغير صالح)">
|
||||
**الأسباب المحتملة:**
|
||||
- العتبة عالية جدًا للمهام الإبداعية أو التفسيرية
|
||||
- السياق لا يغطي جميع الجوانب الصالحة للمخرجات
|
||||
- نموذج التقييم محافظ بشكل مفرط
|
||||
|
||||
**الحلول:**
|
||||
- خفض العتبة أو استخدام التحقق الافتراضي
|
||||
- توسيع السياق ليشمل محتوى مقبول أوسع
|
||||
- الاختبار مع نماذج تقييم مختلفة
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="أخطاء التقييم">
|
||||
**الأسباب المحتملة:**
|
||||
- مشكلات في الاتصال بالشبكة
|
||||
- نموذج LLM غير متاح أو محدود المعدل
|
||||
- مخرجات مهمة أو سياق غير صالح
|
||||
|
||||
**الحلول:**
|
||||
- التحقق من الاتصال بالشبكة وحالة خدمة LLM
|
||||
- تنفيذ منطق إعادة المحاولة للأعطال المؤقتة
|
||||
- التحقق من تنسيق مخرجات المهمة قبل تقييم الحاجز
|
||||
</Accordion>
|
||||
|
||||
<Card title="هل تحتاج مساعدة؟" icon="headset" href="mailto:support@crewai.com">
|
||||
تواصل مع فريق الدعم للمساعدة في تهيئة حاجز الهلوسة أو استكشاف الأخطاء وإصلاحها.
|
||||
</Card>
|
||||
45
docs/ar/enterprise/features/marketplace.mdx
Normal file
45
docs/ar/enterprise/features/marketplace.mdx
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
title: السوق
|
||||
description: "اكتشف وثبّت وأدِر الأصول القابلة لإعادة الاستخدام لطواقم مؤسستك."
|
||||
icon: "store"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
يوفر السوق واجهة منظمة لاكتشاف عمليات التكامل والأدوات الداخلية والأصول القابلة لإعادة الاستخدام التي تسرّع تطوير الطواقم.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## قابلية الاكتشاف
|
||||
|
||||
- تصفح حسب الفئة والقدرة
|
||||
- ابحث عن الأصول بالاسم أو الكلمة المفتاحية
|
||||
|
||||
## التثبيت والتفعيل
|
||||
|
||||
- تثبيت بنقرة واحدة للأصول المعتمدة
|
||||
- تفعيل أو تعطيل لكل طاقم حسب الحاجة
|
||||
- تهيئة متغيرات البيئة والنطاقات المطلوبة
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
يمكنك أيضاً تنزيل القوالب مباشرة من السوق بالنقر على زر `Download` لاستخدامها محلياً أو تعديلها حسب احتياجاتك.
|
||||
|
||||
## ذو صلة
|
||||
|
||||
<CardGroup cols={3}>
|
||||
<Card title="الأدوات والتكاملات" href="/ar/enterprise/features/tools-and-integrations" icon="wrench">
|
||||
اربط التطبيقات الخارجية وأدِر الأدوات الداخلية التي يمكن لوكلائك استخدامها.
|
||||
</Card>
|
||||
<Card title="مستودع الأدوات" href="/ar/enterprise/guides/tool-repository#tool-repository" icon="toolbox">
|
||||
انشر وثبّت الأدوات لتعزيز قدرات طواقمك.
|
||||
</Card>
|
||||
<Card title="مستودع الوكلاء" href="/ar/enterprise/features/agent-repositories" icon="people-group">
|
||||
خزّن وشارك وأعد استخدام تعريفات الوكلاء عبر الفرق والمشاريع.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
342
docs/ar/enterprise/features/pii-trace-redactions.mdx
Normal file
342
docs/ar/enterprise/features/pii-trace-redactions.mdx
Normal file
@@ -0,0 +1,342 @@
|
||||
---
|
||||
title: إخفاء البيانات الشخصية في التتبعات
|
||||
description: "إخفاء البيانات الحساسة تلقائياً من تتبعات تنفيذ الطواقم والتدفقات"
|
||||
icon: "lock"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
إخفاء البيانات الشخصية (PII Redaction) هو ميزة في CrewAI AMP تكتشف تلقائياً وتُقنّع معلومات التعريف الشخصية (PII) في تتبعات تنفيذ الطواقم والتدفقات. يضمن ذلك عدم كشف البيانات الحساسة مثل أرقام بطاقات الائتمان وأرقام الضمان الاجتماعي وعناوين البريد الإلكتروني والأسماء في تتبعات CrewAI AMP. يمكنك أيضاً إنشاء مُعرّفات مخصصة لحماية البيانات الخاصة بمؤسستك.
|
||||
|
||||
|
||||
<Info>
|
||||
إخفاء البيانات الشخصية متاح في خطة Enterprise.
|
||||
يجب أن يكون إصدار النشر 1.8.0 أو أعلى.
|
||||
</Info>
|
||||
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
|
||||
## أهمية إخفاء البيانات الشخصية
|
||||
|
||||
عند تشغيل وكلاء الذكاء الاصطناعي في بيئة الإنتاج، غالباً ما تمر معلومات حساسة عبر طواقمك:
|
||||
|
||||
- بيانات العملاء من تكاملات CRM
|
||||
- معلومات مالية من معالجات الدفع
|
||||
- تفاصيل شخصية من إرسالات النماذج
|
||||
- بيانات الموظفين الداخلية
|
||||
|
||||
بدون إخفاء مناسب، تظهر هذه البيانات في التتبعات، مما يجعل الامتثال للوائح مثل GDPR وHIPAA وPCI-DSS أمراً صعباً. يحل إخفاء البيانات الشخصية هذه المشكلة عن طريق إقناع البيانات الحساسة تلقائياً قبل تخزينها في التتبعات.
|
||||
|
||||
## كيف يعمل
|
||||
|
||||
1. **الاكتشاف** - مسح بيانات أحداث التتبع بحثاً عن أنماط PII المعروفة
|
||||
2. **التصنيف** - تحديد نوع البيانات الحساسة (بطاقة ائتمان، SSN، بريد إلكتروني، إلخ.)
|
||||
3. **الإقناع/الإخفاء** - استبدال البيانات الحساسة بقيم مُقنّعة بناءً على تهيئتك
|
||||
|
||||
```
|
||||
Original: "Contact john.doe@company.com or call 555-123-4567"
|
||||
Redacted: "Contact <EMAIL_ADDRESS> or call <PHONE_NUMBER>"
|
||||
```
|
||||
|
||||
## تفعيل إخفاء البيانات الشخصية
|
||||
|
||||
<Info>
|
||||
يجب أن تكون على خطة Enterprise وأن يكون إصدار النشر 1.8.0 أو أعلى لاستخدام هذه الميزة.
|
||||
</Info>
|
||||
|
||||
<Steps>
|
||||
<Step title="الانتقال إلى إعدادات الطاقم">
|
||||
في لوحة تحكم CrewAI AMP، اختر طاقمك المنشور وانتقل إلى أحد عمليات النشر/الأتمتة، ثم انتقل إلى **Settings** → **PII Protection**.
|
||||
</Step>
|
||||
|
||||
<Step title="تفعيل حماية البيانات الشخصية">
|
||||
فعّل **PII Redaction for Traces**. سيؤدي ذلك إلى تفعيل المسح والإخفاء التلقائي لبيانات التتبع.
|
||||
|
||||
<Info>
|
||||
تحتاج إلى تفعيل إخفاء البيانات الشخصية يدوياً لكل عملية نشر.
|
||||
</Info>
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
</Step>
|
||||
|
||||
<Step title="تهيئة أنواع الكيانات">
|
||||
اختر أنواع البيانات الشخصية التي تريد اكتشافها وإخفاءها. يمكن تفعيل أو تعطيل كل كيان بشكل فردي.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
</Step>
|
||||
|
||||
<Step title="الحفظ">
|
||||
احفظ تهيئتك. سيكون إخفاء البيانات الشخصية نشطاً في جميع عمليات تنفيذ الطاقم اللاحقة، دون الحاجة لإعادة النشر.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## أنواع الكيانات المدعومة
|
||||
|
||||
يدعم CrewAI أنواع كيانات PII التالية، منظمة حسب الفئة.
|
||||
|
||||
### الكيانات العالمية
|
||||
|
||||
| الكيان | الوصف | مثال |
|
||||
|--------|-------|------|
|
||||
| `CREDIT_CARD` | أرقام بطاقات الائتمان/الخصم | "4111-1111-1111-1111" |
|
||||
| `CRYPTO` | عناوين محافظ العملات الرقمية | "bc1qxy2kgd..." |
|
||||
| `DATE_TIME` | التواريخ والأوقات | "January 15, 2024" |
|
||||
| `EMAIL_ADDRESS` | عناوين البريد الإلكتروني | "john@example.com" |
|
||||
| `IBAN_CODE` | أرقام الحسابات المصرفية الدولية | "DE89 3704 0044 0532 0130 00" |
|
||||
| `IP_ADDRESS` | عناوين IPv4 وIPv6 | "192.168.1.1" |
|
||||
| `LOCATION` | المواقع الجغرافية | "New York City" |
|
||||
| `MEDICAL_LICENSE` | أرقام التراخيص الطبية | "MD12345" |
|
||||
| `NRP` | الجنسيات أو المجموعات الدينية أو السياسية | - |
|
||||
| `PERSON` | الأسماء الشخصية | "John Doe" |
|
||||
| `PHONE_NUMBER` | أرقام الهواتف بتنسيقات مختلفة | "+1 (555) 123-4567" |
|
||||
| `URL` | عناوين URL | "https://example.com" |
|
||||
|
||||
### كيانات خاصة بالولايات المتحدة
|
||||
|
||||
| الكيان | الوصف | مثال |
|
||||
|--------|-------|------|
|
||||
| `US_BANK_NUMBER` | أرقام الحسابات المصرفية الأمريكية | "1234567890" |
|
||||
| `US_DRIVER_LICENSE` | أرقام رخص القيادة الأمريكية | "D1234567" |
|
||||
| `US_ITIN` | رقم تعريف دافع الضرائب الفردي | "900-70-0000" |
|
||||
| `US_PASSPORT` | أرقام جوازات السفر الأمريكية | "123456789" |
|
||||
| `US_SSN` | أرقام الضمان الاجتماعي | "123-45-6789" |
|
||||
|
||||
## إجراءات الإخفاء
|
||||
|
||||
لكل كيان مُفعّل، يمكنك تهيئة كيفية إخفاء البيانات:
|
||||
|
||||
| الإجراء | الوصف | مثال على المخرجات |
|
||||
|---------|-------|-------------------|
|
||||
| `mask` | الاستبدال بتسمية نوع الكيان | `<CREDIT_CARD>` |
|
||||
| `redact` | إزالة النص بالكامل | *(فارغ)* |
|
||||
|
||||
## المُعرّفات المخصصة
|
||||
|
||||
بالإضافة إلى الكيانات المدمجة، يمكنك إنشاء **مُعرّفات مخصصة** لاكتشاف أنماط PII الخاصة بمؤسستك.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
### أنواع المُعرّفات
|
||||
|
||||
لديك خياران للمُعرّفات المخصصة:
|
||||
|
||||
| النوع | الأفضل لـ | مثال على حالة الاستخدام |
|
||||
|-------|-----------|------------------------|
|
||||
| **قائم على النمط (Regex)** | بيانات منظمة بتنسيقات متوقعة | مبالغ الرواتب، معرّفات الموظفين، رموز المشاريع |
|
||||
| **قائمة الحظر (Deny-list)** | مطابقة النصوص بالضبط | أسماء الشركات، الأسماء الرمزية الداخلية، مصطلحات محددة |
|
||||
|
||||
### إنشاء مُعرّف مخصص
|
||||
|
||||
<Steps>
|
||||
<Step title="الانتقال إلى المُعرّفات المخصصة">
|
||||
انتقل إلى **Settings** → **Organization** → **Add Recognizer** في إعدادات مؤسستك.
|
||||
</Step>
|
||||
|
||||
<Step title="تهيئة المُعرّف">
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
هيّئ الحقول التالية:
|
||||
- **Name**: اسم وصفي للمُعرّف
|
||||
- **Entity Type**: تسمية الكيان التي ستظهر في المخرجات المُخفاة (مثل `EMPLOYEE_ID`، `SALARY`)
|
||||
- **Type**: اختر بين Regex Pattern أو Deny List
|
||||
- **Pattern/Values**: نمط Regex أو قائمة نصوص للمطابقة
|
||||
- **Confidence Threshold**: الحد الأدنى للنتيجة (0.0-1.0) المطلوبة لتفعيل الإخفاء عند المطابقة. القيم الأعلى (مثل 0.8) تقلل الإيجابيات الخاطئة لكن قد تفوّت بعض المطابقات. القيم الأقل (مثل 0.5) تلتقط المزيد من المطابقات لكن قد تُفرط في الإخفاء. القيمة الافتراضية هي 0.8.
|
||||
- **Context Words** (اختياري): كلمات تزيد ثقة الاكتشاف عند وجودها بالقرب
|
||||
</Step>
|
||||
|
||||
<Step title="الحفظ">
|
||||
احفظ المُعرّف. سيكون متاحاً للتفعيل في عمليات النشر الخاصة بك.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
### فهم أنواع الكيانات
|
||||
|
||||
يحدد **Entity Type** كيفية ظهور المحتوى المُطابق في التتبعات المُخفاة:
|
||||
|
||||
```
|
||||
Entity Type: SALARY
|
||||
Pattern: salary:\s*\$\s*\d+
|
||||
Input: "Employee salary: $50,000"
|
||||
Output: "Employee <SALARY>"
|
||||
```
|
||||
|
||||
### استخدام كلمات السياق
|
||||
|
||||
تحسّن كلمات السياق الدقة عن طريق زيادة الثقة عند ظهور مصطلحات محددة بالقرب من النمط المُطابق:
|
||||
|
||||
```
|
||||
Context Words: "project", "code", "internal"
|
||||
Entity Type: PROJECT_CODE
|
||||
Pattern: PRJ-\d{4}
|
||||
```
|
||||
|
||||
عندما تظهر كلمة "project" أو "code" بالقرب من "PRJ-1234"، يكون لدى المُعرّف ثقة أعلى بأنها مطابقة حقيقية، مما يقلل الإيجابيات الخاطئة.
|
||||
|
||||
|
||||
## عرض التتبعات المُخفاة
|
||||
|
||||
بمجرد تفعيل إخفاء البيانات الشخصية، ستعرض تتبعاتك قيماً مُخفاة بدلاً من البيانات الحساسة:
|
||||
|
||||
```
|
||||
Task Output: "Customer <PERSON> placed order #12345.
|
||||
Contact email: <EMAIL_ADDRESS>, phone: <PHONE_NUMBER>.
|
||||
Payment processed for card ending in <CREDIT_CARD>."
|
||||
```
|
||||
|
||||
القيم المُخفاة مُعلّمة بوضوح بأقواس زاوية وتسمية نوع الكيان (مثل `<EMAIL_ADDRESS>`)، مما يسهّل فهم البيانات التي تمت حمايتها مع السماح لك بتصحيح الأخطاء ومراقبة سلوك الطاقم.
|
||||
|
||||
|
||||
|
||||
## أفضل الممارسات
|
||||
|
||||
### اعتبارات الأداء
|
||||
|
||||
<Steps>
|
||||
<Step title="فعّل الكيانات المطلوبة فقط">
|
||||
كل كيان مُفعّل يضيف عبء معالجة. فعّل فقط الكيانات ذات الصلة ببياناتك.
|
||||
</Step>
|
||||
|
||||
<Step title="استخدم أنماطاً محددة">
|
||||
للمُعرّفات المخصصة، استخدم أنماطاً محددة لتقليل الإيجابيات الخاطئة وتحسين الأداء. أنماط Regex هي الأفضل عند تحديد أنماط معينة في التتبعات مثل الرواتب ومعرّفات الموظفين ورموز المشاريع وغيرها. مُعرّفات قائمة الحظر هي الأفضل عند تحديد نصوص بعينها في التتبعات مثل أسماء الشركات والأسماء الرمزية الداخلية وغيرها.
|
||||
</Step>
|
||||
|
||||
<Step title="استفد من كلمات السياق">
|
||||
تحسّن كلمات السياق الدقة عن طريق تفعيل الاكتشاف فقط عندما يتطابق النص المحيط.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## استكشاف الأخطاء وإصلاحها
|
||||
|
||||
<Accordion title="البيانات الشخصية لا تُخفى">
|
||||
**الأسباب المحتملة:**
|
||||
- نوع الكيان غير مُفعّل في التهيئة
|
||||
- النمط لا يتطابق مع تنسيق البيانات
|
||||
- المُعرّف المخصص يحتوي على أخطاء في الصياغة
|
||||
|
||||
**الحلول:**
|
||||
- تحقق من أن الكيان مُفعّل في Settings → Security
|
||||
- اختبر أنماط Regex مع بيانات نموذجية
|
||||
- تحقق من السجلات بحثاً عن أخطاء التهيئة
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="إخفاء بيانات أكثر من اللازم">
|
||||
**الأسباب المحتملة:**
|
||||
- أنواع كيانات واسعة جداً مُفعّلة (مثل `DATE_TIME` تلتقط التواريخ في كل مكان)
|
||||
- أنماط المُعرّف المخصص عامة جداً
|
||||
|
||||
**الحلول:**
|
||||
- عطّل الكيانات التي تسبب إيجابيات خاطئة
|
||||
- اجعل الأنماط المخصصة أكثر تحديداً
|
||||
- أضف كلمات سياق لتحسين الدقة
|
||||
</Accordion>
|
||||
|
||||
<Accordion title="مشاكل الأداء">
|
||||
**الأسباب المحتملة:**
|
||||
- عدد كبير جداً من الكيانات المُفعّلة
|
||||
- الكيانات القائمة على NLP (مثل `PERSON` و`LOCATION` و`NRP`) مكلفة حسابياً لأنها تستخدم نماذج تعلم الآلة
|
||||
|
||||
**الحلول:**
|
||||
- فعّل فقط الكيانات التي تحتاجها فعلاً
|
||||
- فكّر في استخدام بدائل قائمة على الأنماط حيثما أمكن
|
||||
- راقب أوقات معالجة التتبعات في لوحة التحكم
|
||||
</Accordion>
|
||||
|
||||
---
|
||||
|
||||
## مثال عملي: مطابقة نمط الراتب
|
||||
|
||||
يوضح هذا المثال كيفية إنشاء مُعرّف مخصص لاكتشاف وإقناع معلومات الرواتب في تتبعاتك.
|
||||
|
||||
### حالة الاستخدام
|
||||
|
||||
يعالج طاقمك بيانات موظفين أو بيانات مالية تتضمن معلومات رواتب بتنسيقات مثل:
|
||||
- `salary: $50,000`
|
||||
- `salary: $125,000.00`
|
||||
- `salary:$1,500.50`
|
||||
|
||||
تريد إقناع هذه القيم تلقائياً لحماية بيانات التعويضات الحساسة.
|
||||
|
||||
### التهيئة
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
| الحقل | القيمة |
|
||||
|-------|--------|
|
||||
| **Name** | `SALARY` |
|
||||
| **Entity Type** | `SALARY` |
|
||||
| **Type** | Regex Pattern |
|
||||
| **Regex Pattern** | `salary:\s*\$\s*\d{1,3}(,\d{3})*(\.\d{2})?` |
|
||||
| **Action** | Mask |
|
||||
| **Confidence Threshold** | `0.8` |
|
||||
| **Context Words** | `salary, compensation, pay, wage, income` |
|
||||
|
||||
### تحليل نمط Regex
|
||||
|
||||
| مكون النمط | المعنى |
|
||||
|------------|--------|
|
||||
| `salary:` | يطابق النص الحرفي "salary:" |
|
||||
| `\s*` | يطابق صفر أو أكثر من أحرف المسافات البيضاء |
|
||||
| `\$` | يطابق علامة الدولار (مُهرّبة) |
|
||||
| `\s*` | يطابق صفر أو أكثر من أحرف المسافات البيضاء بعد $ |
|
||||
| `\d{1,3}` | يطابق 1-3 أرقام (مثل "1"، "50"، "125") |
|
||||
| `(,\d{3})*` | يطابق الآلاف المفصولة بفواصل (مثل ",000"، ",500,000") |
|
||||
| `(\.\d{2})?` | يطابق اختيارياً السنتات (مثل ".00"، ".50") |
|
||||
|
||||
### أمثلة على النتائج
|
||||
|
||||
```
|
||||
Original: "Employee record shows salary: $125,000.00 annually"
|
||||
Redacted: "Employee record shows <SALARY> annually"
|
||||
|
||||
Original: "Base salary:$50,000 with bonus potential"
|
||||
Redacted: "Base <SALARY> with bonus potential"
|
||||
```
|
||||
|
||||
<Tip>
|
||||
إضافة كلمات سياق مثل "salary" و"compensation" و"pay" و"wage" و"income" تساعد في زيادة ثقة الاكتشاف عند ظهور هذه المصطلحات بالقرب من النمط المُطابق، مما يقلل الإيجابيات الخاطئة.
|
||||
</Tip>
|
||||
|
||||
### تفعيل المُعرّف لعمليات النشر
|
||||
|
||||
<Warning>
|
||||
إنشاء مُعرّف مخصص على مستوى المؤسسة لا يفعّله تلقائياً لعمليات النشر. يجب عليك تفعيل كل مُعرّف يدوياً لكل عملية نشر تريد تطبيقه عليها.
|
||||
</Warning>
|
||||
|
||||
بعد إنشاء المُعرّف المخصص، فعّله لكل عملية نشر:
|
||||
|
||||
<Steps>
|
||||
<Step title="الانتقال إلى عملية النشر">
|
||||
انتقل إلى عملية النشر/الأتمتة وافتح **Settings** → **PII Protection**.
|
||||
</Step>
|
||||
|
||||
<Step title="اختيار المُعرّفات المخصصة">
|
||||
تحت **Mask Recognizers**، سترى المُعرّفات المحددة على مستوى مؤسستك. حدد المربع بجانب المُعرّفات التي تريد تفعيلها.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
</Step>
|
||||
|
||||
<Step title="حفظ التهيئة">
|
||||
احفظ تغييراتك. سيكون المُعرّف نشطاً في جميع عمليات التنفيذ اللاحقة لعملية النشر هذه.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
<Info>
|
||||
كرر هذه العملية لكل عملية نشر تحتاج فيها إلى المُعرّف المخصص. يمنحك ذلك تحكماً دقيقاً في المُعرّفات النشطة في البيئات المختلفة (مثل بيئة التطوير مقابل بيئة الإنتاج).
|
||||
</Info>
|
||||
107
docs/ar/enterprise/features/rbac.mdx
Normal file
107
docs/ar/enterprise/features/rbac.mdx
Normal file
@@ -0,0 +1,107 @@
|
||||
---
|
||||
title: "التحكم في الوصول القائم على الأدوار (RBAC)"
|
||||
description: "تحكم في الوصول إلى الطواقم والأدوات والبيانات باستخدام الأدوار والنطاقات والصلاحيات الدقيقة."
|
||||
icon: "shield"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
يتيح RBAC في CrewAI AMP إدارة وصول آمنة وقابلة للتوسع من خلال مزيج من الأدوار على مستوى المؤسسة وعناصر التحكم في الرؤية على مستوى الأتمتة.
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/users_and_roles.png" alt="نظرة عامة على RBAC في CrewAI AMP" />
|
||||
|
||||
</Frame>
|
||||
|
||||
## المستخدمون والأدوار
|
||||
|
||||
يُعيَّن لكل عضو في مساحة عمل CrewAI دور يحدد صلاحيات الوصول عبر الميزات المختلفة.
|
||||
|
||||
يمكنك:
|
||||
|
||||
- استخدام الأدوار المحددة مسبقاً (Owner، Member)
|
||||
- إنشاء أدوار مخصصة مصممة لصلاحيات محددة
|
||||
- تعيين الأدوار في أي وقت عبر لوحة الإعدادات
|
||||
|
||||
يمكنك تهيئة المستخدمين والأدوار في Settings → Roles.
|
||||
|
||||
<Steps>
|
||||
<Step title="فتح إعدادات الأدوار">
|
||||
انتقل إلى <b>Settings → Roles</b> في CrewAI AMP.
|
||||
</Step>
|
||||
<Step title="اختيار نوع الدور">
|
||||
استخدم دوراً محدداً مسبقاً (<b>Owner</b>، <b>Member</b>) أو انقر على{" "}
|
||||
<b>Create role</b> لتحديد دور مخصص.
|
||||
</Step>
|
||||
<Step title="التعيين للأعضاء">
|
||||
اختر المستخدمين وعيّن لهم الدور. يمكنك تغيير ذلك في أي وقت.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
### ملخص التهيئة
|
||||
|
||||
| المجال | مكان التهيئة | الخيارات |
|
||||
| :-------------------- | :--------------------------------- | :-------------------------------------- |
|
||||
| المستخدمون والأدوار | Settings → Roles | محددة مسبقاً: Owner، Member؛ أدوار مخصصة |
|
||||
| رؤية الأتمتة | Automation → Settings → Visibility | خاص؛ قائمة بيضاء للمستخدمين/الأدوار |
|
||||
|
||||
## التحكم في الوصول على مستوى الأتمتة
|
||||
|
||||
بالإضافة إلى الأدوار على مستوى المؤسسة، تدعم أتمتات CrewAI إعدادات رؤية دقيقة تتيح لك تقييد الوصول إلى أتمتات محددة حسب المستخدم أو الدور.
|
||||
|
||||
هذا مفيد لـ:
|
||||
|
||||
- الحفاظ على خصوصية الأتمتات الحساسة أو التجريبية
|
||||
- إدارة الرؤية عبر الفرق الكبيرة أو المتعاونين الخارجيين
|
||||
- اختبار الأتمتات في سياقات معزولة
|
||||
|
||||
يمكن تهيئة عمليات النشر كخاصة، مما يعني أن المستخدمين والأدوار المدرجين في القائمة البيضاء فقط سيتمكنون من:
|
||||
|
||||
- عرض عملية النشر
|
||||
- تشغيلها أو التفاعل مع API الخاص بها
|
||||
- الوصول إلى سجلاتها ومقاييسها وإعداداتها
|
||||
|
||||
يتمتع مالك المؤسسة دائماً بالوصول، بغض النظر عن إعدادات الرؤية.
|
||||
|
||||
يمكنك تهيئة التحكم في الوصول على مستوى الأتمتة في Automation → Settings → علامة تبويب Visibility.
|
||||
|
||||
<Steps>
|
||||
<Step title="فتح علامة تبويب الرؤية">
|
||||
انتقل إلى <b>Automation → Settings → Visibility</b>.
|
||||
</Step>
|
||||
<Step title="ضبط الرؤية">
|
||||
اختر <b>Private</b> لتقييد الوصول. يحتفظ مالك المؤسسة دائماً
|
||||
بالوصول.
|
||||
</Step>
|
||||
<Step title="القائمة البيضاء للوصول">
|
||||
أضف مستخدمين وأدواراً محددة مسموح لهم بالعرض والتشغيل والوصول
|
||||
إلى السجلات/المقاييس/الإعدادات.
|
||||
</Step>
|
||||
<Step title="الحفظ والتحقق">
|
||||
احفظ التغييرات، ثم تأكد من أن المستخدمين غير المدرجين في القائمة البيضاء لا يمكنهم عرض أو تشغيل
|
||||
الأتمتة.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
### الرؤية الخاصة: نتائج الوصول
|
||||
|
||||
| الإجراء | المالك | مستخدم/دور في القائمة البيضاء | غير مدرج في القائمة البيضاء |
|
||||
| :--------------------------- | :---- | :---------------------------- | :-------------------------- |
|
||||
| عرض الأتمتة | ✓ | ✓ | ✗ |
|
||||
| تشغيل الأتمتة/API | ✓ | ✓ | ✗ |
|
||||
| الوصول إلى السجلات/المقاييس/الإعدادات | ✓ | ✓ | ✗ |
|
||||
|
||||
<Tip>
|
||||
يتمتع مالك المؤسسة دائماً بالوصول. في الوضع الخاص، يمكن فقط للمستخدمين
|
||||
والأدوار المدرجين في القائمة البيضاء العرض والتشغيل والوصول إلى السجلات/المقاييس/الإعدادات.
|
||||
</Tip>
|
||||
|
||||
<Frame>
|
||||
<img src="/images/enterprise/visibility.png" alt="إعدادات رؤية الأتمتة في CrewAI AMP" />
|
||||
|
||||
</Frame>
|
||||
|
||||
<Card title="تحتاج مساعدة؟" icon="headset" href="mailto:support@crewai.com">
|
||||
تواصل مع فريق الدعم للمساعدة في أسئلة RBAC.
|
||||
</Card>
|
||||
261
docs/ar/enterprise/features/tools-and-integrations.mdx
Normal file
261
docs/ar/enterprise/features/tools-and-integrations.mdx
Normal file
@@ -0,0 +1,261 @@
|
||||
---
|
||||
title: الأدوات والتكاملات
|
||||
description: "اربط التطبيقات الخارجية وأدِر الأدوات الداخلية التي يمكن لوكلائك استخدامها."
|
||||
icon: "wrench"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
الأدوات والتكاملات هي المركز الرئيسي لربط تطبيقات الجهات الخارجية وإدارة الأدوات الداخلية التي يمكن لوكلائك استخدامها أثناء التشغيل.
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
## استكشاف
|
||||
|
||||
<Tabs>
|
||||
<Tab title="التكاملات" icon="plug">
|
||||
|
||||
## تطبيقات الوكلاء (التكاملات)
|
||||
|
||||
اربط تطبيقات المؤسسات (مثل Gmail وGoogle Drive وHubSpot وSlack) عبر OAuth لتمكين إجراءات الوكلاء.
|
||||
|
||||
{" "}
|
||||
<Steps>
|
||||
<Step title="الاتصال">
|
||||
انقر على <b>Connect</b> في أحد التطبيقات وأكمل عملية OAuth.
|
||||
</Step>
|
||||
<Step title="التهيئة">
|
||||
عدّل اختيارياً النطاقات والمشغلات وتوفر الإجراءات.
|
||||
</Step>
|
||||
<Step title="الاستخدام في الوكلاء">
|
||||
تصبح الخدمات المتصلة متاحة كأدوات لوكلائك.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
{" "}
|
||||
<Frame></Frame>
|
||||
|
||||
### ربط حسابك
|
||||
|
||||
1. انتقل إلى <Link href="https://app.crewai.com/crewai_plus/connectors">Integrations</Link>
|
||||
2. انقر على <b>Connect</b> في الخدمة المطلوبة
|
||||
3. أكمل تدفق OAuth وامنح النطاقات
|
||||
4. انسخ رمز Enterprise من <Link href="https://app.crewai.com/crewai_plus/settings/integrations">Integration Settings</Link>
|
||||
|
||||
{" "}
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
### تثبيت أدوات التكامل
|
||||
|
||||
لاستخدام التكاملات محلياً، تحتاج إلى تثبيت أحدث حزمة `crewai-tools`.
|
||||
|
||||
```bash
|
||||
uv add crewai-tools
|
||||
```
|
||||
|
||||
### إعداد متغيرات البيئة
|
||||
|
||||
{" "}
|
||||
<Note>
|
||||
لاستخدام التكاملات مع `Agent(apps=[])` يجب تعيين متغير البيئة
|
||||
`CREWAI_PLATFORM_INTEGRATION_TOKEN` برمز Enterprise الخاص بك.
|
||||
</Note>
|
||||
|
||||
```bash
|
||||
export CREWAI_PLATFORM_INTEGRATION_TOKEN="your_enterprise_token"
|
||||
```
|
||||
|
||||
أو أضفه إلى ملف `.env`:
|
||||
|
||||
```
|
||||
CREWAI_PLATFORM_INTEGRATION_TOKEN=your_enterprise_token
|
||||
```
|
||||
|
||||
### مثال على الاستخدام
|
||||
|
||||
{" "}
|
||||
<Tip>
|
||||
استخدم النهج المبسط الجديد لدمج تطبيقات المؤسسات. ما عليك سوى تحديد
|
||||
التطبيق وإجراءاته مباشرة في تهيئة Agent.
|
||||
</Tip>
|
||||
|
||||
```python
|
||||
from crewai import Agent, Task, Crew
|
||||
|
||||
# Create an agent with Gmail capabilities
|
||||
email_agent = Agent(
|
||||
role="Email Manager",
|
||||
goal="Manage and organize email communications",
|
||||
backstory="An AI assistant specialized in email management and communication.",
|
||||
apps=['gmail', 'gmail/send_email'] # Using canonical name 'gmail'
|
||||
)
|
||||
|
||||
# Task to send an email
|
||||
email_task = Task(
|
||||
description="Draft and send a follow-up email to john@example.com about the project update",
|
||||
agent=email_agent,
|
||||
expected_output="Confirmation that email was sent successfully"
|
||||
)
|
||||
|
||||
# Run the task
|
||||
crew = Crew(
|
||||
agents=[email_agent],
|
||||
tasks=[email_task]
|
||||
)
|
||||
|
||||
# Run the crew
|
||||
crew.kickoff()
|
||||
```
|
||||
|
||||
### تصفية الأدوات
|
||||
|
||||
```python
|
||||
from crewai import Agent, Task, Crew
|
||||
|
||||
# Create agent with specific Gmail actions only
|
||||
gmail_agent = Agent(
|
||||
role="Gmail Manager",
|
||||
goal="Manage gmail communications and notifications",
|
||||
backstory="An AI assistant that helps coordinate gmail communications.",
|
||||
apps=['gmail/fetch_emails'] # Using canonical name with specific action
|
||||
)
|
||||
|
||||
notification_task = Task(
|
||||
description="Find the email from john@example.com",
|
||||
agent=gmail_agent,
|
||||
expected_output="Email found from john@example.com"
|
||||
)
|
||||
|
||||
crew = Crew(
|
||||
agents=[gmail_agent],
|
||||
tasks=[notification_task]
|
||||
)
|
||||
```
|
||||
|
||||
في الطاقم المنشور، يمكنك تحديد الإجراءات المتاحة لكل تكامل من صفحة إعدادات الخدمة.
|
||||
|
||||
{" "}
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
### عمليات النشر المحددة النطاق (مؤسسات متعددة المستخدمين)
|
||||
|
||||
يمكنك تحديد نطاق كل تكامل لمستخدم معين. على سبيل المثال، طاقم يتصل بـ Google يمكنه استخدام حساب Gmail لمستخدم محدد.
|
||||
|
||||
{" "}
|
||||
<Tip>مفيد عندما تحتاج فرق/مستخدمون مختلفون للحفاظ على فصل الوصول إلى البيانات.</Tip>
|
||||
|
||||
استخدم `user_bearer_token` لتحديد نطاق المصادقة للمستخدم الطالب. إذا لم يكن المستخدم مسجل الدخول، فلن يستخدم الطاقم التكاملات المتصلة. وإلا فسيعود إلى رمز الحامل الافتراضي المهيأ لعملية النشر.
|
||||
|
||||
{" "}
|
||||
<Frame></Frame>
|
||||
|
||||
{" "}
|
||||
<div id="catalog"></div>
|
||||
### الكتالوج
|
||||
|
||||
#### الاتصالات والتعاون
|
||||
|
||||
- Gmail — إدارة الرسائل الإلكترونية والمسودات
|
||||
- Slack — إشعارات وتنبيهات مساحة العمل
|
||||
- Microsoft — تكامل Office 365 وTeams
|
||||
|
||||
#### إدارة المشاريع
|
||||
|
||||
- Jira — تتبع المشكلات وإدارة المشاريع
|
||||
- ClickUp — إدارة المهام والإنتاجية
|
||||
- Asana — تنسيق مهام ومشاريع الفريق
|
||||
- Notion — إدارة الصفحات وقواعد البيانات
|
||||
- Linear — تتبع مشاريع البرمجيات والأخطاء
|
||||
- GitHub — إدارة المستودعات والمشكلات
|
||||
|
||||
#### إدارة علاقات العملاء
|
||||
|
||||
- Salesforce — إدارة حسابات وفرص CRM
|
||||
- HubSpot — إدارة خط أنابيب المبيعات وجهات الاتصال
|
||||
- Zendesk — إدارة تذاكر دعم العملاء
|
||||
|
||||
#### الأعمال والمالية
|
||||
|
||||
- Stripe — معالجة المدفوعات وإدارة العملاء
|
||||
- Shopify — إدارة متجر ومنتجات التجارة الإلكترونية
|
||||
|
||||
#### الإنتاجية والتخزين
|
||||
|
||||
- Google Sheets — مزامنة بيانات جداول البيانات
|
||||
- Google Calendar — إدارة الأحداث والجداول
|
||||
- Box — تخزين الملفات وإدارة المستندات
|
||||
|
||||
...والمزيد قادم!
|
||||
|
||||
</Tab>
|
||||
<Tab title="الأدوات الداخلية" icon="toolbox">
|
||||
|
||||
## الأدوات الداخلية
|
||||
|
||||
أنشئ أدوات مخصصة محلياً، وانشرها في مستودع أدوات CrewAI AMP واستخدمها في وكلائك.
|
||||
|
||||
{" "}
|
||||
<Tip>
|
||||
قبل تشغيل الأوامر أدناه، تأكد من تسجيل الدخول إلى حساب CrewAI AMP
|
||||
بتشغيل هذا الأمر: ```bash crewai login ```
|
||||
</Tip>
|
||||
|
||||
{" "}
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
{" "}
|
||||
<Steps>
|
||||
<Step title="الإنشاء">
|
||||
أنشئ أداة جديدة محلياً. ```bash crewai tool create your-tool ```
|
||||
</Step>
|
||||
<Step title="النشر">
|
||||
انشر الأداة في مستودع أدوات CrewAI AMP. ```bash crewai tool
|
||||
publish ```
|
||||
</Step>
|
||||
<Step title="التثبيت">
|
||||
ثبّت الأداة من مستودع أدوات CrewAI AMP. ```bash crewai tool
|
||||
install your-tool ```
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
الإدارة:
|
||||
|
||||
- الاسم والوصف
|
||||
- الرؤية (خاص / عام)
|
||||
- متغيرات البيئة المطلوبة
|
||||
- سجل الإصدارات والتنزيلات
|
||||
- وصول الفرق والأدوار
|
||||
|
||||
{" "}
|
||||
<Frame></Frame>
|
||||
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
## ذو صلة
|
||||
|
||||
<CardGroup cols={2}>
|
||||
<Card
|
||||
title="مستودع الأدوات"
|
||||
href="/ar/enterprise/guides/tool-repository#tool-repository"
|
||||
icon="toolbox"
|
||||
>
|
||||
أنشئ وانشر وأدِر إصدارات الأدوات المخصصة لمؤسستك.
|
||||
</Card>
|
||||
<Card
|
||||
title="أتمتة Webhook"
|
||||
href="/ar/enterprise/guides/webhook-automation"
|
||||
icon="bolt"
|
||||
>
|
||||
أتمت سير العمل وتكامل مع المنصات والخدمات الخارجية.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
148
docs/ar/enterprise/features/traces.mdx
Normal file
148
docs/ar/enterprise/features/traces.mdx
Normal file
@@ -0,0 +1,148 @@
|
||||
---
|
||||
title: التتبعات
|
||||
description: "استخدام التتبعات لمراقبة طواقمك"
|
||||
icon: "timeline"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
توفر التتبعات رؤية شاملة لعمليات تنفيذ طواقمك، مما يساعدك على مراقبة الأداء وتصحيح الأخطاء وتحسين سير عمل وكلاء الذكاء الاصطناعي.
|
||||
|
||||
## ما هي التتبعات؟
|
||||
|
||||
التتبعات في CrewAI AMP هي سجلات تنفيذ مفصلة تلتقط كل جانب من جوانب عمل طاقمك، من المدخلات الأولية إلى المخرجات النهائية. تسجل:
|
||||
|
||||
- أفكار الوكلاء واستدلالاتهم
|
||||
- تفاصيل تنفيذ المهام
|
||||
- استخدام الأدوات ومخرجاتها
|
||||
- مقاييس استهلاك الرموز
|
||||
- أوقات التنفيذ
|
||||
- تقديرات التكلفة
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
## الوصول إلى التتبعات
|
||||
|
||||
<Steps>
|
||||
<Step title="الانتقال إلى علامة تبويب التتبعات">
|
||||
في لوحة تحكم CrewAI AMP، انقر على **Traces** لعرض جميع سجلات التنفيذ.
|
||||
</Step>
|
||||
|
||||
<Step title="اختيار عملية تنفيذ">
|
||||
سترى قائمة بجميع عمليات تنفيذ الطاقم، مرتبة حسب التاريخ. انقر على أي عملية تنفيذ لعرض تتبعها المفصل.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## فهم واجهة التتبع
|
||||
|
||||
تنقسم واجهة التتبع إلى عدة أقسام، يقدم كل منها رؤى مختلفة حول تنفيذ طاقمك:
|
||||
|
||||
### 1. ملخص التنفيذ
|
||||
|
||||
يعرض القسم العلوي مقاييس عالية المستوى حول التنفيذ:
|
||||
|
||||
- **إجمالي الرموز**: عدد الرموز المستهلكة عبر جميع المهام
|
||||
- **رموز الطلب**: الرموز المستخدمة في الطلبات إلى LLM
|
||||
- **رموز الإكمال**: الرموز المُنشأة في استجابات LLM
|
||||
- **الطلبات**: عدد استدعاءات API المُجراة
|
||||
- **وقت التنفيذ**: المدة الإجمالية لتشغيل الطاقم
|
||||
- **التكلفة المقدرة**: التكلفة التقريبية بناءً على استخدام الرموز
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
### 2. المهام والوكلاء
|
||||
|
||||
يعرض هذا القسم جميع المهام والوكلاء الذين كانوا جزءاً من تنفيذ الطاقم:
|
||||
|
||||
- اسم المهمة وتعيين الوكيل
|
||||
- الوكلاء ونماذج LLM المستخدمة لكل مهمة
|
||||
- الحالة (مكتملة/فاشلة)
|
||||
- وقت التنفيذ الفردي للمهمة
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
### 3. المخرجات النهائية
|
||||
|
||||
يعرض النتيجة النهائية التي أنتجها الطاقم بعد اكتمال جميع المهام.
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
### 4. الجدول الزمني للتنفيذ
|
||||
|
||||
تمثيل مرئي لوقت بدء وانتهاء كل مهمة، يساعدك على تحديد نقاط الاختناق أو أنماط التنفيذ المتوازي.
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
### 5. عرض المهمة المفصل
|
||||
|
||||
عند النقر على مهمة محددة في الجدول الزمني أو قائمة المهام، سترى:
|
||||
|
||||
<Frame></Frame>
|
||||
|
||||
- **مفتاح المهمة**: معرّف فريد للمهمة
|
||||
- **معرّف المهمة**: معرّف تقني في النظام
|
||||
- **الحالة**: الحالة الحالية (مكتملة/قيد التشغيل/فاشلة)
|
||||
- **الوكيل**: الوكيل الذي نفّذ المهمة
|
||||
- **LLM**: نموذج اللغة المستخدم لهذه المهمة
|
||||
- **وقت البدء/الانتهاء**: متى بدأت المهمة واكتملت
|
||||
- **وقت التنفيذ**: مدة هذه المهمة المحددة
|
||||
- **وصف المهمة**: ما طُلب من الوكيل تنفيذه
|
||||
- **المخرجات المتوقعة**: تنسيق المخرجات المطلوب
|
||||
- **المدخلات**: أي مدخلات مقدمة لهذه المهمة من مهام سابقة
|
||||
- **المخرجات**: النتيجة الفعلية التي أنتجها الوكيل
|
||||
|
||||
## استخدام التتبعات لتصحيح الأخطاء
|
||||
|
||||
التتبعات لا تقدر بثمن لاستكشاف المشكلات في طواقمك:
|
||||
|
||||
<Steps>
|
||||
<Step title="تحديد نقاط الفشل">
|
||||
عندما لا ينتج تنفيذ الطاقم النتائج المتوقعة، افحص التتبع لمعرفة أين حدث الخطأ. ابحث عن:
|
||||
|
||||
- المهام الفاشلة
|
||||
- قرارات الوكيل غير المتوقعة
|
||||
- أخطاء استخدام الأدوات
|
||||
- التعليمات المُساء فهمها
|
||||
|
||||
<Frame>
|
||||

|
||||
</Frame>
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="تحسين الأداء">
|
||||
استخدم مقاييس التنفيذ لتحديد نقاط اختناق الأداء:
|
||||
|
||||
- المهام التي استغرقت وقتاً أطول من المتوقع
|
||||
- الاستخدام المفرط للرموز
|
||||
- عمليات الأدوات المكررة
|
||||
- استدعاءات API غير الضرورية
|
||||
|
||||
</Step>
|
||||
|
||||
<Step title="تحسين كفاءة التكلفة">
|
||||
حلل استخدام الرموز وتقديرات التكلفة لتحسين كفاءة طاقمك:
|
||||
|
||||
- فكّر في استخدام نماذج أصغر للمهام الأبسط
|
||||
- صقل الطلبات لتكون أكثر إيجازاً
|
||||
- خزّن المعلومات المُوصول إليها بشكل متكرر مؤقتاً
|
||||
- نظّم المهام لتقليل العمليات المكررة
|
||||
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
## الأداء والتجميع
|
||||
|
||||
يجمّع CrewAI تحميلات التتبع لتقليل العبء في عمليات التشغيل ذات الحجم الكبير:
|
||||
|
||||
- يقوم TraceBatchManager بتخزين الأحداث مؤقتاً وإرسالها في دفعات عبر عميل Plus API
|
||||
- يقلل حركة الشبكة ويحسّن الموثوقية في الاتصالات غير المستقرة
|
||||
- يُفعّل تلقائياً في مستمع التتبع الافتراضي؛ لا حاجة لتهيئة
|
||||
|
||||
يوفر ذلك تتبعاً أكثر استقراراً تحت الحمل مع الحفاظ على بيانات القياس المفصلة للمهام/الوكلاء.
|
||||
|
||||
<Card title="تحتاج مساعدة؟" icon="headset" href="mailto:support@crewai.com">
|
||||
تواصل مع فريق الدعم للمساعدة في تحليل التتبعات أو أي ميزات أخرى في
|
||||
CrewAI AMP.
|
||||
</Card>
|
||||
172
docs/ar/enterprise/features/webhook-streaming.mdx
Normal file
172
docs/ar/enterprise/features/webhook-streaming.mdx
Normal file
@@ -0,0 +1,172 @@
|
||||
---
|
||||
title: بث Webhook
|
||||
description: "استخدام بث Webhook لإرسال الأحداث إلى webhook الخاص بك"
|
||||
icon: "webhook"
|
||||
mode: "wide"
|
||||
---
|
||||
|
||||
## نظرة عامة
|
||||
|
||||
يتيح لك بث أحداث Enterprise تلقي تحديثات webhook في الوقت الفعلي حول طواقمك وتدفقاتك المنشورة على CrewAI AMP، مثل استدعاءات النماذج واستخدام الأدوات وخطوات التدفق.
|
||||
|
||||
## الاستخدام
|
||||
|
||||
عند استخدام Kickoff API، أضف كائن `webhooks` إلى طلبك، على سبيل المثال:
|
||||
|
||||
```json
|
||||
{
|
||||
"inputs": { "foo": "bar" },
|
||||
"webhooks": {
|
||||
"events": ["crew_kickoff_started", "llm_call_started"],
|
||||
"url": "https://your.endpoint/webhook",
|
||||
"realtime": false,
|
||||
"authentication": {
|
||||
"strategy": "bearer",
|
||||
"token": "my-secret-token"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
إذا تم تعيين `realtime` إلى `true`، يتم تسليم كل حدث بشكل فردي وفوري، على حساب أداء الطاقم/التدفق.
|
||||
|
||||
## تنسيق Webhook
|
||||
|
||||
يرسل كل webhook قائمة بالأحداث:
|
||||
|
||||
```json
|
||||
{
|
||||
"events": [
|
||||
{
|
||||
"id": "event-id",
|
||||
"execution_id": "crew-run-id",
|
||||
"timestamp": "2025-02-16T10:58:44.965Z",
|
||||
"type": "llm_call_started",
|
||||
"data": {
|
||||
"model": "gpt-4",
|
||||
"messages": [
|
||||
{ "role": "system", "content": "You are an assistant." },
|
||||
{ "role": "user", "content": "Summarize this article." }
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
يختلف هيكل كائن `data` حسب نوع الحدث. راجع [قائمة الأحداث](https://github.com/crewAIInc/crewAI/tree/main/lib/crewai/src/crewai/events/types) على GitHub.
|
||||
|
||||
نظراً لأن الطلبات تُرسل عبر HTTP، لا يمكن ضمان ترتيب الأحداث. إذا كنت تحتاج الترتيب، استخدم حقل `timestamp`.
|
||||
|
||||
## الأحداث المدعومة
|
||||
|
||||
يدعم CrewAI كلاً من أحداث النظام والأحداث المخصصة في بث أحداث Enterprise. تُرسل هذه الأحداث إلى نقطة نهاية webhook المُهيأة أثناء تنفيذ الطاقم والتدفق.
|
||||
|
||||
### أحداث التدفق:
|
||||
|
||||
- `flow_created`
|
||||
- `flow_started`
|
||||
- `flow_finished`
|
||||
- `flow_plot`
|
||||
- `method_execution_started`
|
||||
- `method_execution_finished`
|
||||
- `method_execution_failed`
|
||||
|
||||
### أحداث الوكيل:
|
||||
|
||||
- `agent_execution_started`
|
||||
- `agent_execution_completed`
|
||||
- `agent_execution_error`
|
||||
- `lite_agent_execution_started`
|
||||
- `lite_agent_execution_completed`
|
||||
- `lite_agent_execution_error`
|
||||
- `agent_logs_started`
|
||||
- `agent_logs_execution`
|
||||
- `agent_evaluation_started`
|
||||
- `agent_evaluation_completed`
|
||||
- `agent_evaluation_failed`
|
||||
|
||||
### أحداث الطاقم:
|
||||
|
||||
- `crew_kickoff_started`
|
||||
- `crew_kickoff_completed`
|
||||
- `crew_kickoff_failed`
|
||||
- `crew_train_started`
|
||||
- `crew_train_completed`
|
||||
- `crew_train_failed`
|
||||
- `crew_test_started`
|
||||
- `crew_test_completed`
|
||||
- `crew_test_failed`
|
||||
- `crew_test_result`
|
||||
|
||||
### أحداث المهام:
|
||||
|
||||
- `task_started`
|
||||
- `task_completed`
|
||||
- `task_failed`
|
||||
- `task_evaluation`
|
||||
|
||||
### أحداث استخدام الأدوات:
|
||||
|
||||
- `tool_usage_started`
|
||||
- `tool_usage_finished`
|
||||
- `tool_usage_error`
|
||||
- `tool_validate_input_error`
|
||||
- `tool_selection_error`
|
||||
- `tool_execution_error`
|
||||
|
||||
### أحداث LLM:
|
||||
|
||||
- `llm_call_started`
|
||||
- `llm_call_completed`
|
||||
- `llm_call_failed`
|
||||
- `llm_stream_chunk`
|
||||
|
||||
### أحداث حواجز LLM:
|
||||
|
||||
- `llm_guardrail_started`
|
||||
- `llm_guardrail_completed`
|
||||
|
||||
### أحداث الذاكرة:
|
||||
|
||||
- `memory_query_started`
|
||||
- `memory_query_completed`
|
||||
- `memory_query_failed`
|
||||
- `memory_save_started`
|
||||
- `memory_save_completed`
|
||||
- `memory_save_failed`
|
||||
- `memory_retrieval_started`
|
||||
- `memory_retrieval_completed`
|
||||
|
||||
### أحداث المعرفة:
|
||||
|
||||
- `knowledge_search_query_started`
|
||||
- `knowledge_search_query_completed`
|
||||
- `knowledge_search_query_failed`
|
||||
- `knowledge_query_started`
|
||||
- `knowledge_query_completed`
|
||||
- `knowledge_query_failed`
|
||||
|
||||
### أحداث الاستدلال:
|
||||
|
||||
- `agent_reasoning_started`
|
||||
- `agent_reasoning_completed`
|
||||
- `agent_reasoning_failed`
|
||||
|
||||
تتطابق أسماء الأحداث مع ناقل الأحداث الداخلي. راجع GitHub للقائمة الكاملة للأحداث.
|
||||
|
||||
يمكنك إصدار أحداثك المخصصة الخاصة، وسيتم تسليمها عبر تدفق webhook جنباً إلى جنب مع أحداث النظام.
|
||||
|
||||
<CardGroup>
|
||||
<Card
|
||||
title="GitHub"
|
||||
icon="github"
|
||||
href="https://github.com/crewAIInc/crewAI/tree/main/src/crewai/utilities/events"
|
||||
>
|
||||
القائمة الكاملة للأحداث
|
||||
</Card>
|
||||
<Card title="تحتاج مساعدة؟" icon="headset" href="mailto:support@crewai.com">
|
||||
تواصل مع فريق الدعم للمساعدة في تكامل webhook أو
|
||||
استكشاف الأخطاء.
|
||||
</Card>
|
||||
</CardGroup>
|
||||
Reference in New Issue
Block a user