پرش به محتوای اصلی
هوش مصنوعی مولد

ارزیابی و بهبود سامانه‌های RAG

چگونه کیفیت یک سامانه RAG را اندازه بگیریم؛ معیارهای بازیابی و تولید، تشخیص توهم، چارچوب‌های ارزیابی خودکار و چرخه‌ی بهبود مستمر.

دکتر سارا کاظمی۲۷ تیر ۱۴۰۴۱۲ دقیقه مطالعه

ساختن یک سامانه‌ی RAG آسان است؛ ساختن سامانه‌ای که واقعاً پاسخ‌های دقیق و قابل‌اعتماد بدهد دشوار است. تفاوت میان این دو، ارزیابی است. بدون اندازه‌گیری منظم و چندبُعدی، هر تغییری در پایپلاین یک حدس کور است و نمی‌دانید کیفیت بهتر شده یا بدتر. این مقاله نشان می‌دهد چگونه کیفیت RAG را به‌صورت سیستماتیک بسنجید و بهبود دهید.

نکته‌ی کلیدی این است که RAG دو زیرسامانه دارد: بازیابی و تولید. خطا در هر کدام نتیجه‌ی نهایی را خراب می‌کند، اما درمانشان متفاوت است. بنابراین باید این دو را جداگانه نیز ارزیابی کرد، نه فقط خروجی نهایی را.

ارزیابی کیفیت بازیابی

اگر اسناد درست بازیابی نشوند، حتی بهترین مدل زبانی هم نمی‌تواند پاسخ درست بسازد. کیفیت بازیابی با معیارهایی مانند context recall یعنی نسبت اطلاعات لازمی که واقعاً بازیابی شده، و context precision یعنی نسبت اسناد بازیابی‌شده‌ای که واقعاً مرتبط‌اند، سنجیده می‌شود. تعادل میان این دو اهمیت دارد؛ بازیابی بیش از حد، بافت را با نویز پر می‌کند.

  • recall@k و precision@k برای سنجش اینکه اسناد مرتبط در k نتیجه‌ی برتر حضور دارند.
  • MRR و NDCG برای سنجش کیفیت رتبه‌بندی و اینکه نتایج مرتبط چقدر بالا قرار گرفته‌اند.
  • نرخ پوشش پاسخ: آیا اطلاعات لازم برای پاسخ اصلاً در میان قطعات بازیابی‌شده هست؟

ارزیابی کیفیت تولید

حتی با بازیابی درست، مدل ممکن است به بافت وفادار نماند. مهم‌ترین معیار در اینجا وفاداری یا faithfulness است: آیا هر ادعای پاسخ از بافت بازیابی‌شده پشتیبانی می‌شود؟ معیار دوم، مرتبط بودن پاسخ با پرسش است؛ پاسخ ممکن است درست اما بی‌ربط به سؤال واقعی کاربر باشد. این دو بُعد مکمل یکدیگرند.

در RAG، توهم اغلب نشانه‌ی شکست بازیابی است، نه ضعف ذاتی مدل؛ پیش از سرزنش مدل، بافت را بررسی کنید.

تشخیص و کاهش توهم

توهم زمانی رخ می‌دهد که مدل اطلاعاتی تولید کند که در بافت پشتیبانی نشده است. برای تشخیص آن می‌توان هر ادعای پاسخ را به جملات منبع بازیابی‌شده نگاشت و بررسی کرد. راهکارهای کاهش شامل دستور صریح به مدل برای تکیه‌ی انحصاری بر بافت، الزام به ذکر منبع برای هر ادعا، و طراحی پرامپت برای اعلام صادقانه‌ی «نمی‌دانم» هنگام نبود اطلاعات کافی است.

مدل به‌عنوان داور

ارزیابی انسانی دقیق اما کند و گران است. استفاده از یک مدل زبانی قدرتمند به‌عنوان داور برای امتیازدهی خودکار به وفاداری، ربط و کیفیت، ارزیابی را مقیاس‌پذیر می‌کند. اما این رویکرد دام‌هایی دارد: داور می‌تواند سوگیری داشته باشد یا با خروجی‌های هم‌سبک خود مهربان‌تر باشد. بهترین رویه، کالیبره کردن داور خودکار با نمونه‌ی کوچکی از داوری انسانی است.

ساخت مجموعه‌ی ارزیابی

پایه‌ی هر ارزیابی جدی، یک مجموعه‌ی آزمون نماینده از پرسش‌های واقعی کاربران به‌همراه پاسخ‌های مرجع و اسناد طلایی است. این مجموعه باید پرسش‌های ساده، پیچیده، چندبخشی و سناریوهای لبه‌ای را پوشش دهد. ساخت آن زمان‌بر است اما سرمایه‌گذاری بنیادینی است که هر تصمیم بعدی را علمی می‌کند.

چرخه‌ی بهبود مستمر

ارزیابی یک رویداد یک‌باره نیست. هر تغییر در استراتژی قطعه‌بندی، مدل embedding، روش بازیابی یا پرامپت باید روی همان مجموعه‌ی ثابت سنجیده شود تا اثر واقعی‌اش روشن شود. ثبت معیارها در طول زمان و راه‌اندازی پایش در محیط تولید، افت کیفیت را زودتر از شکایت کاربران آشکار می‌کند.

گلدیتا چارچوب ارزیابی RAG اختصاصی برای زبان فارسی را در محصولات خود به کار می‌گیرد که بازیابی و تولید را به‌صورت مجزا می‌سنجد و چرخه‌ی بهبود مستمر مبتنی بر داده‌ی واقعی را ممکن می‌سازد.

آماده‌اید داده را به طلا تبدیل کنید؟

با کارشناسان گلدیتا درباره‌ی نیاز سازمان خود گفت‌وگو کنید؛ از معماری داده تا استقرار هوش مصنوعی، کنار شما هستیم.