تولید تقویتشده با بازیابی یا RAG، یکی از کاربردیترین الگوهای استفاده از مدلهای زبانی بزرگ در سازمان است. این رویکرد بهجای اتکای صرف به دانش درونی مدل، پاسخ را بر پایهی اسناد واقعی و بهروز سازمان شما بنا میکند و در نتیجه دقت و قابلیت استناد را بهشدت بالا میبرد.
اما پیادهسازی RAG برای زبان فارسی چالشهای ویژهای دارد. تفاوت در نگارش، وجود نیمفاصله، شکلهای نوشتاری متفاوت یک واژه و کیفیت متغیر embeddingهای چندزبانه، همگی بر کیفیت بازیابی اثر میگذارند. در این راهنما مسیر عملی ساخت یک سامانهی RAG فارسیِ قابلاتکا را مرور میکنیم.
معماری کلی یک سامانهی RAG
هر سامانهی RAG از دو فاز اصلی تشکیل میشود: فاز نمایهسازی که اسناد را پردازش و در پایگاه برداری ذخیره میکند، و فاز پرسوجو که پرسش کاربر را به قطعات مرتبط نگاشت میکند و آنها را همراه با پرسش به مدل میدهد. کیفیت نهایی پاسخ بیش از آنکه به مدل وابسته باشد، به کیفیت بازیابی بستگی دارد.
گام اول: نرمالسازی متن فارسی
پیش از هر چیز باید متن فارسی را یکدست کنید. بدون این مرحله، واژههای یکسان با املای متفاوت به بردارهای متفاوت نگاشت میشوند و بازیابی افت میکند.
- یکسانسازی حروف عربی و فارسی مانند ی و ک.
- مدیریت درست نیمفاصله و حذف فاصلههای زائد.
- حذف اعراب و کاراکترهای کنترلی غیرضروری.
- یکسانسازی ارقام فارسی و لاتین بر اساس نیاز دامنه.
گام دوم: قطعهبندی هوشمند اسناد
قطعهبندی یا chunking یکی از تعیینکنندهترین تصمیمهاست. قطعات بسیار بزرگ، نویز را وارد بافت میکنند و قطعات بسیار کوچک، معنای کامل را از دست میدهند. تجربه نشان میدهد قطعاتی در بازهی چندصد توکن با همپوشانی محدود، تعادل خوبی میان دقت و پوشش برقرار میکنند.
قطعهبندی مبتنی بر ساختار سند، یعنی شکستن بر اساس عنوانها و بندها بهجای برش مکانیکی، انسجام معنایی هر قطعه را حفظ میکند و کیفیت بازیابی را بهطور محسوس بهبود میدهد.
گام سوم: انتخاب مدل embedding
برای فارسی باید مدل embedding چندزبانهای انتخاب کنید که روی متن فارسی ارزیابی شده باشد. کیفیت بازنمایی معنایی فارسی در مدلهای مختلف تفاوت زیادی دارد، بنابراین پیش از تصمیم نهایی، روی مجموعهای از پرسشهای واقعی دامنهی خودتان بنچمارک بگیرید و معیارهای بازیابی را اندازه بگیرید.
در RAG فارسی، کیفیت بازیابی نقطهی شکست اصلی است؛ بهترین مدل مولد هم نمیتواند از قطعات نامرتبط پاسخ درست بسازد.
گام چهارم: بازیابی ترکیبی و rerank
تکیهی صرف بر جستوجوی برداری برای فارسی کافی نیست. ترکیب جستوجوی برداری معنایی با جستوجوی واژهمحور مانند BM25، هم مفاهیم نزدیک و هم تطابق دقیق اصطلاحات تخصصی و نامهای خاص را پوشش میدهد. این رویکرد ترکیبی بهویژه برای اصطلاحات فنی و اسامی سازمانی نتیجهی بهتری میدهد.
نقش بازچینشگر (reranker)
پس از بازیابی اولیه، یک مدل بازچینشگر میتواند قطعات کاندید را بر اساس ارتباط دقیق با پرسش دوباره مرتب کند. این مرحله، با حذف قطعات کمربط از بافت نهایی، هم دقت پاسخ را بالا میبرد و هم مصرف توکن و هزینه را کاهش میدهد.
گام پنجم: مهندسی پرامپت و کاهش توهم
مدل را بهصراحت موظف کنید فقط بر اساس بافت ارائهشده پاسخ دهد و در صورت نبود اطلاعات کافی، صادقانه اعلام کند که پاسخ در منابع موجود نیست. درخواست از مدل برای ذکر منبع هر ادعا، هم قابلیت استناد را بالا میبرد و هم توهم را بهشکل چشمگیری کاهش میدهد.
گام ششم: ارزیابی و پایش مداوم
بدون ارزیابی، بهبود ممکن نیست. مجموعهای از پرسش و پاسخهای مرجع بسازید و معیارهایی مثل صحت بازیابی، وفاداری پاسخ به بافت و ارتباط با پرسش را پیوسته بسنجید. پایش رفتار سامانه در تولید و جمعآوری بازخورد کاربران، چرخهی بهبود مستمر را کامل میکند.
- صحت بازیابی: آیا قطعات درست بازیابی شدهاند.
- وفاداری: آیا پاسخ صرفاً از بافت استخراج شده است.
- ارتباط: آیا پاسخ به پرسش واقعی کاربر مرتبط است.
حریم خصوصی و استقرار اختصاصی
برای سازمانهایی که با دادهی حساس کار میکنند، استقرار اختصاصی مدل و پایگاه برداری در زیرساخت خودشان امکان حفظ کامل حریم خصوصی را فراهم میکند. GoldData LLM Cloud هم گزینهی ابری و هم استقرار on-prem را پشتیبانی میکند تا دادهی شما هرگز از مرزهای سازمانتان خارج نشود.
با رعایت این گامها، یک سامانهی RAG فارسیِ دقیق، قابلاستناد و امن خواهید داشت که میتواند به ستون اصلی دستیارهای دانشی سازمان شما تبدیل شود.