سود:
- تعریف معیارهایی که کیفیت حفظ و تولید را به طور جداگانه اندازه گیری می کند
- مجموعه سوالات طلایی را تنظیم کنید و ارزیابی خودکار را با LLM-as-judge اجرا کنید
- حفظ کیفیت از طریق بازخورد، نظارت و تست رگرسیون در تولید
جمله "دستیار را نصب کردم، به نظر می رسد خوب کار می کند" یک جمله مهندسی نیست. سیستمهای RAG بیصدا خراب میشوند: یک نوع سند جدید بازیابی را فریب میدهد، یک تغییر سریع دقت را کاهش میدهد، ایندکس کهنه میشود. تنها راه برای تحقق این امر اندازه گیری است. در این واحد به نحوه اندازه گیری کیفیت RAG (بازیابی و تولید جداگانه)، ارزیابی خودکار (LLM-as-judge) و حفظ کیفیت در تولید (نظارت، رگرسیون) می پردازیم. "شما نمی توانید آنچه را که اندازه گیری نمی کنید بهبود بخشید" شعار این واحد است.
دو چیز مجزا را اندازه گیری کنید
RAG دارای دو پایه است و باید جداگانه اندازه گیری شود زیرا ممکن است مشکل در هر یک از آنها باشد:
- کیفیت بازیابی: آیا قسمت صحیح رسیده است؟
- کیفیت نسل: آیا پاسخ صحیح از قطعه ورودی تولید شد؟
اگر پاسخ بد است، ابتدا باید بدانید کدام پا بد است. اگر قسمت مناسب هرگز وارد نشود، حتی بهترین درخواست نیز نمی تواند ذخیره شود (مشکل بازیابی). اگر قسمت صحیح وارد شود اما مدل آن را اشتباه خوانده باشد، بهبود بازیابی بیهوده است (مشکل نسل).
معیارهای بازیابی
بازیابی یک مشکل مرتب سازی/دسترسی است. با معیارهای کلاسیک بازیابی اطلاعات اندازه گیری می شود. برای این کار باید خوشه طلایی داشته باشید: دانستن اینکه کدام قطعه برای هر سوال "درست" است.
متریک
چه اقداماتی
تعریف ساده
Recall@k
آیا قطعه صحیح در بالای k قرار دارد؟
نرخ ضبط صحیح قطعه
دقت@k
چه تعداد از k قطعه برگشتی مرتبط هستند؟
تمیز کردن آنچه آورده شده است
MRR (میانگین رتبه متقابل)
قطعه صحیح به کدام ترتیب است؟
پاداش قرار گرفتن در رتبه های برتر
نرخ ضربه
آیا حداقل یک قطعه صحیح رسیده است؟
اساسی ترین معیار موفقیت
نظر عملی: اگر Recall@k کم است، استراتژی تکه تکه یا جستجو (هیبرید، k، رتبهبندی مجدد) باید دوباره کار شود. اگر دقت کم اما یادآوری زیاد است، اضافه کردن رتبهبندی مجدد حرکت خوبی است.
سنجه های نسل
وقتی قطعه صحیح رسید، کیفیت پاسخ تولید شده توسط مدل را اندازه گیری می کنیم. سه بعد اساسی:
- وفاداری: آیا هر یک از ادعاهای موجود در پاسخ با زمینه پشتیبانی می شود؟ آیا تناسبی وجود دارد؟ این معیار مستقیم توهم است.
- ارتباط پاسخ: آیا پاسخ واقعاً به سؤال پاسخ می دهد یا خارج از موضوع است؟
- کامل بودن: آیا تمام اطلاعات مرتبط در زمینه مورد استفاده قرار گرفته است یا وجود ندارد؟
اینها اغلب بر اساس درجه بندی شده (مثلاً 1-5)، به جای دودویی مانند "درست/نادرست" نمره گذاری می شوند.
نکته: وفاداری را به عنوان یک معیار جداگانه دنبال کنید. اگر با کاهش دقت، وفاداری کاهش یابد، مشکل نسل است. اگر وفاداری زیاد است اما پاسخ اشتباه است، مشکل قطعه اشتباه (بازیابی) است. این دو معیار با هم یک قطب نما هستند که محل خطا را نشان می دهد.
ایجاد مجموعه سوالات طلایی
هر اندازه گیری به مجموعه طلایی / مجموعه داده ارزیابی نیاز دارد: سؤالات واقع بینانه + پاسخ های صحیح مورد انتظار + قطعات منبع صحیح. شروع با 30-50 سوال خوب انتخاب شده بهتر از 500 سوال تصادفی است. موارد زیر را در این مجموعه بگنجانید: سؤالات متداول واقعی، سؤالات دشوار شناخته شده، سؤالات بدون پاسخ (باید گفت "نمی دانم")، سوالات با منابع متناقض.
# نمونه خوشه طلایی (مفهومی)[ {"سوال": "چند روز مرخصی سالانه؟"، "جواب_انتظاری": "14 روز برای 1-5 سال سابقه"، "correct_part_id": "two-part-3"، "category": "ear"}، {"question": "expected office": "expected the company?" "NO_INFORMATION"، # trap: "correct_part_id": null، "category": "trap"}]
LLM-as-Judge: ارزیابی خودکار
به دست آوردن صدها پاسخ با دست خسته کننده است. مدل LLM-as-judge زمانی است که یک مدل بر اساس معیارهای خاصی پاسخ مدل دیگر را نمره می دهد و توجیه می کند. یک قاضی خوب معیارها را به وضوح تعریف می کند، مثال می آورد و درخواست توجیه می کند.
# LLM-as-judge prompt (مفهومی) شما یک ارزیاب بی طرف هستید. پاسخ زیر را با توجه به زمینه داده شده و پاسخ مورد انتظار ارزیابی کنید. امتیاز (1-5) و توجیه: - وفاداری: آیا هر ادعا در پاسخ در زمینه پشتیبانی می شود؟ - دقت: آیا پاسخ با پاسخ مورد انتظار مطابقت دارد؟ - کامل بودن: آیا اطلاعات مربوطه کامل است؟ به ویژه: اگر پاسخ حاوی اطلاعاتی است که در متن نیست، وفاداری را بیان کنید1 و مشخص کنید که کدام ادعا ساخته شده است.CONTEXT: {context}EXPECTED: {expected}ANSWER: {answer}خروجی: {وفاداری، دقت، کامل بودن، توجیه}
احتیاط: LLM-as-judge کامل نیست. آنها ممکن است تعصبات خاص خود را داشته باشند (پاسخ طولانی، ترجیح دادن سبک خود). همچنین قاضی را تأیید کنید: برخی از پاسخها را هم توسط قاضی و هم توسط انسان نمرهگذاری کنید و توافق بین آنها را بسنجید. اگر قاضی با نمرات انسانی سازگار باشد، می توانید به او اعتماد کنید.
رتبه ضعیف/قوی
ضعیف ("برای من خوب بود"):
من چند سوال پرسیدم و جوابها خوب به نظر می رسید. من آن را به صورت زنده دریافت کردم.# مشکل: بدون اندازه گیری، رگرسیون نامحسوس، بهبود کور.
قدرتمند (خوشه طلا + معیارهای گسسته + قضاوت خودکار + رگرسیون):
خوشه طلایی 40 سوالی. با هر تغییر، recall@5، وفاداری و دقت به طور خودکار اندازه گیری می شود. اگر امتیاز کاهش یابد، تغییر برگشت داده می شود. در تولید، بازخورد کاربران جمع آوری شده و به مجموعه اضافه می شود.
نظارت و رگرسیون در تولید
ارزشیابی یک بار انجام نمی شود و تمام می شود. سه تمرین ثابت:
- تست رگرسیون: اجرای خودکار خوشه طلایی در هر تغییر اعلان/بازیابی/مدل. اگر امتیاز کاهش یابد، تغییر معکوس می شود. این از "شکستن آن در حین تلاش برای بهتر کردن آن" جلوگیری می کند.
- نظارت بر تولید: نرخ "من نتوانستم اطلاعاتی پیدا کنم" در سوالات واقعی، میانگین تاخیر، هزینه، بازخورد کاربر (👍/👎) نظارت می شود. افزایش ناگهانی عبارت «نمیدانم» اغلب اولین نشانه اختلال در عملکرد شاخص یا بازیابی است.
- حلقه بازخورد: سوالات واقعی ارائه شده توسط کاربر 👎 بررسی شده و به توده طلایی اضافه می شود. بدین ترتیب مجموعه با گذشت زمان غنی تر می شود و نقاط کور سیستم بسته می شود.
سه کیف کوچک
مورد 1 - رگرسیون خاموش. یک تیم دستور را برای "بهبود" آن تغییر داد. دقت عمومی افزایش یافت، اما وفاداری 30 درصد در سؤالات دام کاهش یافت (مدل شروع به تناسب بیشتر کرد). اگر سؤالات دام در خوشه طلایی نبود، توجه نمی شد. تست رگرسیون تغییر را برگرداند.
مورد 2 - صاف کردن پای اشتباه. در یکی از دستیاران پاسخ ها بد بود. این تیم هفتهها بر اساس دستور کار کرد. وقتی معیارهای بازیابی را اندازهگیری کردیم، recall@5 تنها 48٪ بود - مشکل در بازیابی بود، نه تولید. هنگامی که رتبه بندی ترکیبی + مجدد اضافه شد، یادآوری به 89٪ افزایش یافت و دقت نیز افزایش یافت.
مورد 3 - هشدار تولید. یک روز، نرخ "من نتوانستم اطلاعات پیدا کنم" برای یک دستیار پشتیبانی از 6٪ به 34٪ افزایش یافت. پد لمسی هشدار داد؛ دلیل آن این بود که کار نمایه سازی که در شب اجرا می شود، بی سر و صدا شکست خورد و مقالات جدید آپلود نشدند. بدون نظارت، اظهارات نادرست "نمی دانم" برای روزها ادامه می یافت.
اشتباهات رایج
- راضی بودن از "برای من خوب کار کرد": بدون اندازه گیری، رگرسیون مورد توجه قرار نمی گیرد.
- عدم تفکیک بازیابی و نسل: شما پای اشتباه را اصلاح خواهید کرد و زمان را تلف خواهید کرد.
- نپرسیدن سوالات دام: تمایل به ساختن چیزها در خوشه طلایی ظاهر نمی شود.
- عدم تأیید قاضی: هیئت منصفه مغرض اعتماد به نفس کاذب می دهد.
- عدم نظارت بر تولید: شکست شاخص، انفجار هزینه بیصدا ادامه دارد.
به طور خلاصه
- در RAG، کیفیت بازیابی و تولید به طور جداگانه اندازه گیری می شود. ابتدا باید مشخص شود که کدام پا آسیب دیده است.
- recall@k، precision@k، MRR برای بازیابی. وفاداری، مناسب بودن، کامل بودن برای نسل استفاده می شود.
- هر اندازه گیری به یک خوشه طلا نیاز دارد. سوالات واقعی، دشوار، دام و متناقض را در آن قرار دهید.
- LLM-as-judge مجموعه های بزرگ نمرات خودکار. اما خود قاضی باید در برابر انسان توجیه شود.
- تست رگرسیون، نظارت بر تولید و یک حلقه بازخورد کیفیت را در طول زمان حفظ می کند.
وظیفه کاربردی
(1) یک مجموعه طلایی از حداقل 15 سوال برای دستیار خود ایجاد کنید: شامل حداقل 3 تله (بدون پاسخ)، 3 سوال مشکل، 2 سوال منبع متناقض. پاسخ مورد انتظار و قسمت صحیح هر سوال را بنویسید. (2) به صورت دستی دو نسخه اعلانات مختلف را با این مجموعه مقایسه کنید. به هر پاسخ 1-5 امتیاز برای وفاداری و دقت بدهید. (3) درخواست LLM-as-judge در بالا را با معیارهای خود تطبیق دهید. (4) 3 معیاری را که در تولید ردیابی خواهید کرد، شناسایی کنید و برای هر کدام بپرسید "در چه آستانه ای زنگ بزنم؟" مقدار را بنویس
چک لیست
- [ ] می توانم کیفیت حفظ و تولید را با معیارهای جداگانه اندازه گیری کنم.
- [ ] می دانم معیارهایی مانند recall@k، وفاداری به چه معناست.
- [ ] من می توانم یک خوشه طلایی بسازم که شامل سوالات واقعی، دشوار، تله و متناقض است.
- [ ] من می توانم ارزیابی خودکار را تنظیم کنم و قاضی را با LLM-as-judge تأیید کنم.
- [ ] من می توانم تست رگرسیون، نظارت بر تولید و حلقه بازخورد را اجرا کنم.