إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يحاول نظام Retrieval-Augmented Generation (RAG) إنشاء الإجابة الأكثر صلة بما يتوافق مع مستندات التأريض استجابة لاستعلام المستخدم. يقوم استعلام المستخدم بتشغيل استرداد بحث في مجموعة من مستندات الأساس لتوفير سياق الأساس لنموذج الذكاء الاصطناعي لإنشاء استجابة.
| Evaluator | أفضل ممارسات | استخدم عندما | الغرض | الإخرَاج |
|---|---|---|---|---|
| استرجاع المستندات | تقييم العملية | تعد جودة الاسترداد ازدحاما ل RAG الخاص بك، ولديك تسميات صلة الاستعلام (الحقيقة الأساسية) لمقاييس جودة البحث الدقيقة لتصحيح الأخطاء وتحسين المعلمة | يقيس مقاييس جودة البحث (الدقة، NDCG، XDCG، Max Relevance، Holes) من خلال مقارنة المستندات المستردة بتسميات الحقيقة الأرضية | مركب: الدقة، NDCG، XDCG، الحد الأقصى للصلة، الثقوب (مع تمرير/فشل) |
| Retrieval | تقييم العملية | تريد تقييم الجودة النصية للسياق المسترد، ولكن ليس لديك حقائق أساسية | يقيس مدى صلة أجزاء السياق المستردة بمعالجة استعلام باستخدام قاض LLM | ثنائي: تمرير/فشل استنادا إلى الحد (مقياس 1-5) |
| الارتباط بالواقع | تقييم النظام | تريد تعريف أساس مقرب جيدا يعمل مع مدخلات الوكيل، وإحضار نماذج GPT الخاصة بك كقاضي LLM | يقيس مدى توافق الاستجابة التي تم إنشاؤها مع السياق المحدد دون تصنيع المحتوى (جانب الدقة) | ثنائي: تمرير/فشل استنادا إلى الحد (مقياس 1-5) |
| Groundedness Pro (معاينة) | تقييم النظام | تريد تعريفا صارما للقاعدة مدعوما أمان محتوى الذكاء الاصطناعي في Azure واستخدام نموذج الخدمة | يكتشف ما إذا كانت الاستجابة متسقة تماما مع السياق باستخدام خدمة أمان محتوى الذكاء الاصطناعي في Azure | ثنائي: صواب/خطأ |
| الصلة | تقييم النظام | تريد تقييم مدى معالجة استجابة RAG للاستعلام ولكن ليس لديها حقائق أساسية | يقيس دقة الاستجابة للاستعلام واكتمالها وملاءمتها المباشرة | ثنائي: تمرير/فشل استنادا إلى الحد (مقياس 1-5) |
| اكتمال الاستجابة (معاينة) | تقييم النظام | تريد التأكد من أن استجابة RAG لا تفوت المعلومات الهامة (استرجاع الجانب) من الحقيقة الأساسية الخاصة بك | يقيس كيف تغطي الاستجابة تماما المعلومات المتوقعة مقارنة بالحقيقة الأساسية | ثنائي: تمرير/فشل استنادا إلى الحد (مقياس 1-5) |
فكر في الأسسواكتمال الاستجابة على النحو التالي:
- تركز الأرضية على الجانب الدقيق للاستجابة. لا يحتوي على محتوى خارج سياق الأساس.
- يركز اكتمال الاستجابة على جانب الاسترجاع للاستجابة. لا تفوت المعلومات الهامة مقارنة بالاستجابة المتوقعة أو الحقيقة الأساسية.
تقييم النظام
يفحص تقييم النظام جودة الاستجابة النهائية في سير عمل RAG. يضمن هؤلاء المقيمون أن المحتوى الذي تم إنشاؤه بواسطة الذكاء الاصطناعي دقيق وملائم وكامل بناء على السياق المقدم واستعلام المستخدم:
- الأرضية - هل الاستجابة قائمة على السياق المقدم دون تلفيق؟
- الأرضية Pro - هل تلتزم الاستجابة بدقة بالسياق (أمان محتوى الذكاء الاصطناعي في Azure)؟
- الصلة - هل تعالج الاستجابة استعلام المستخدم بدقة؟
- اكتمال الاستجابة (معاينة) - هل تغطي الاستجابة جميع المعلومات الهامة من الحقيقة الأساسية؟
أمثلة:
- عينة Groundedness
- عينة Relevance
- عينة اكتمال Response
تقييم العملية
يقيم تقييم العملية جودة خطوة استرداد المستند في أنظمة RAG. خطوة الاسترداد حاسمة لتوفير السياق ذي الصلة لنموذج اللغة:
- Retrieval - ما مدى صلة أجزاء السياق المستردة بالاستعلام؟
- استرداد المستند - ما مدى تطابق الاسترداد مع تسميات الحقيقة الأساسية (يتطلب qrels)؟
لمزيد من الأمثلة، راجع كل عينات مقيم الجودة.
استخدام مقيمي RAG
يقيم مقيمو RAG مدى جودة استرداد أنظمة الذكاء الاصطناعي للسياق واستخدامه لإنشاء استجابات مستندة إلى أسس. يتطلب كل مقيم تعيينات ومعلمات بيانات محددة:
| Evaluator | المدخلات المطلوبة | تتمثل المعلمات المطلوبة في الآتي |
|---|---|---|
| الارتباط بالواقع |
response، context (مستحسن)؛ query اختياري للتسجيل المحسن؛ أو query، response لوضع استجابة العامل |
deployment_name |
| Groundedness Pro (معاينة) |
query، response، context |
(لا يوجد) |
| الصلة |
query، response |
deployment_name |
| اكتمال الاستجابة (معاينة) |
ground_truth، response |
deployment_name |
| Retrieval |
query، context |
deployment_name |
| استرجاع المستندات |
retrieval_ground_truth، retrieved_documents |
(لا يوجد) |
إدخال المثال
يجب أن تحتوي مجموعة بيانات الاختبار على الحقول المشار إليها في تعيينات البيانات:
{"query": "What are the store hours?", "context": "Our store is open Monday-Friday 9am-6pm and Saturday 10am-4pm.", "response": "The store is open weekdays from 9am to 6pm and Saturdays from 10am to 4pm."}
{"query": "What is the return policy?", "context": "Items can be returned within 30 days with original receipt for full refund.", "response": "You can return items within 30 days if you have your receipt."}
تنسيق السياق
context الحقل عبارة عن سلسلة عادية تحتوي على السياق المسترد المقدم إلى النموذج. للاسترداد متعدد المجموعات، قم بتسلسل المجموعات في سلسلة واحدة باستخدام فاصل مثل \n\n بين المجموعات:
{"query": "What is the return policy?", "context": "Items can be returned within 30 days with receipt.\n\nGift items are eligible for store credit only.", "response": "You can return items within 30 days with your receipt."}
ملحوظة
لتقييم العامل باستخدام {{sample.output_items}}، context يكون الحقل اختياريا إذا كانت الاستجابة تحتوي على رسائل استدعاء أداة — يمكن للمقيم استخراج السياق من نتائج استدعاء الأداة.
مثال التكوين
بناء جملة تعيين البيانات:
-
{{item.field_name}}يشير إلى الحقول من مجموعة بيانات الاختبار (على سبيل المثال،{{item.query}}). -
{{sample.output_items}}يشير إلى استجابات العامل التي تم إنشاؤها أو استردادها أثناء التقييم. استخدم هذا عند التقييم مع هدف عامل أو مصدر بيانات استجابة عامل. بالنسبة لتقييم العامل،contextيكون اختياريا إذا كانت الاستجابة تحتوي على استدعاءات أداة - يمكن للمقيم استخراج السياق من نتائج استدعاء الأداة.
نصيحة
للحصول على أفضل نتائج الأرضية، قم بتوفير جميع الحقول الثلاثة — queryو responseو.context
query الحقل اختياري ولكنه يحسن دقة التسجيل عند توفره.
testing_criteria = [
{
"type": "azure_ai_evaluator",
"name": "groundedness",
"evaluator_name": "builtin.groundedness",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {
"context": "{{item.context}}",
"response": "{{item.response}}",
},
},
{
"type": "azure_ai_evaluator",
"name": "relevance",
"evaluator_name": "builtin.relevance",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {"query": "{{item.query}}", "response": "{{item.response}}"},
},
{
"type": "azure_ai_evaluator",
"name": "retrieval",
"evaluator_name": "builtin.retrieval",
"initialization_parameters": {"deployment_name": model_deployment},
"data_mapping": {"query": "{{item.query}}", "context": "{{item.context}}"},
},
]
راجع تشغيل التقييمات من SDK للحصول على تفاصيل حول تشغيل التقييمات وتكوين مصادر البيانات.
مثال على الإخراج
يرجع هؤلاء المقيمون الدرجات من 1 إلى 5، حيث 1 ضعيف جدا و5 ممتازة. عتبة المرور الافتراضية هي 3. تعتبر الدرجات عند العتبة أو فوقها عابرة. حقول الإخراج الرئيسية:
{
"type": "azure_ai_evaluator",
"name": "Groundedness",
"metric": "groundedness",
"score": 4,
"label": "pass",
"reason": "The response is well-grounded in the provided context without fabricating content.",
"threshold": 3,
"passed": true
}
يستخدم Groundedness Pro خدمة أمان محتوى الذكاء الاصطناعي في Azure ويعيد نتيجة منطقية بدلا من درجة رقمية:
{
"type": "azure_ai_evaluator",
"name": "Groundedness Pro",
"metric": "groundedness_pro",
"label": "pass",
"reason": "The response is strictly consistent with the provided context.",
"passed": true
}
استرجاع المستندات
نظرا لدورها في المصدر في RAG، فإن جودة الاسترداد مهمة. إذا كانت جودة الاسترداد ضعيفة وتتطلب الاستجابة معرفة خاصة بالوحدة، فهناك فرصة أقل أن يمنحك نموذج اللغة إجابة مرضية. القياس الأكثر دقة هو استخدام document_retrieval المقيم لتقييم جودة الاسترداد وتحسين معلمات البحث الخاصة بك ل RAG.
يقيس مقيم استرداد المستندات مدى جودة استرداد RAG للمستندات الصحيحة من مخزن المستندات. كمقيم مركب مفيد لسيناريو RAG مع الحقيقة الأساسية، فإنه يحسب قائمة بمقاييس جودة البحث المفيدة لتصحيح أخطاء مسارات RAG الخاصة بك:
مقياس فئة وصف Fidelity دقة البحث مدى تعبير الجزء العلوي n المسترد عن محتوى استعلام معين: عدد المستندات الجيدة التي تم إرجاعها من إجمالي عدد المستندات الجيدة المعروفة في مجموعة بيانات NDCG البحث في NDCG ما مدى جودتها في ترتيب مثالي حيث تكون جميع العناصر ذات الصلة في أعلى القائمة XDCG البحث في XDCG مدى جودتها في مستندات أعلى k بغض النظر عن تسجيل مستندات الفهرس الأخرى Max Relevance N البحث عن الحد الأقصى للصلة أقصى قدر من الصلة في أجزاء أعلى k Holes سلامة تسمية البحث عدد المستندات ذات الأحكام المفقودة لصلة الاستعلام، أو الحقيقة الأساسية لتحسين RAG الخاص بك في سيناريو يسمى مسح المعلمات، يمكنك استخدام هذه المقاييس لمعايرة معلمات البحث للحصول على نتائج RAG المثلى. إنشاء نتائج استرداد مختلفة لمعلمات البحث المختلفة مثل خوارزميات البحث (المتجه والدلالي) top_k وأحجام المجموعات التي تهتم باختبارها. ثم استخدم
document_retrievalللعثور على معلمات البحث التي تنتج أعلى جودة استرداد.
مثال استرداد المستند
testing_criteria = [
{
"type": "azure_ai_evaluator",
"name": "document_retrieval",
"evaluator_name": "builtin.document_retrieval",
"initialization_parameters": {
"ground_truth_label_min": 1, # SDK default: 0
"ground_truth_label_max": 5, # SDK default: 4
},
"data_mapping": {
"retrieval_ground_truth": "{{item.retrieval_ground_truth}}",
"retrieved_documents": "{{item.retrieved_documents}}",
},
},
]
يحتوي retrieval_ground_truth على درجات الصلة المسماة من قبل الإنسان لكل مستند:
retrieval_ground_truth = [
{"document_id": "1", "query_relevance_label": 4},
{"document_id": "2", "query_relevance_label": 2},
]
يحتوي retrieved_documents على درجات من نظام البحث الخاص بك:
retrieved_documents = [
{"document_id": "2", "relevance_score": 45.1},
{"document_id": "6", "relevance_score": 35.8},
]
إخراج استرداد المستند
يقوم document_retrieval المقيم بإرجاع مقاييس متعددة لجودة الاسترداد:
[
{
"type": "azure_ai_evaluator",
"name": "Document Retrieval",
"metric": "ndcg@3",
"score": 0.646,
"label": "pass",
"passed": true
},
{
"type": "azure_ai_evaluator",
"name": "Document Retrieval",
"metric": "fidelity",
"score": 0.019,
"label": "fail",
"passed": false
},
# more metrics...
]
يقوم المقيم أيضا بإرجاع xdcg@3المقاييس top1_relevancetop3_max_relevanceholesو.holes_ratio