
Qdrant یا Weaviate؛ تأخیر کمتر همیشه بازیابی بهتر نیست

برای سامانهٔ RAG، نتیجهٔ آزمون پیشفرض بهتنهایی برنده تعیین نمیکند: Qdrant میتواند سریعتر پاسخ دهد، در حالی که Weaviate همسایههای مرجع بیشتری را پیدا کند. در ارزیابی مستقل جستوجوی برداری، روی مجموعهٔ SIFT1M و با تنظیمات پیشفرض، میانهٔ تأخیر Qdrant برابر ۴٫۵۵ میلیثانیه، توان عملیاتی آن ۲۱۶ پرسوجو در ثانیه و Recall@100 آن ۰٫۹۵۹ بود؛ Weaviate به ۸۷ پرسوجو در ثانیه و Recall@100 برابر ۰٫۹۹۶ رسید.
انتخاب میان این دو زمانی معنا پیدا میکند که ابتدا کیفیت بازیابی موردنیاز برنامه مشخص شود و سپس تأخیر p95، توان عملیاتی و مصرف منابع در همان سطح کیفیت مقایسه شوند. اعداد مطالعه حاصل جستوجوی صرفاً برداری، روی یک گره و بدون فیلتر فرادادهاند. SIFT1M نیز مجموعهای از بردارهای تصویر است؛ بنابراین فاصلهٔ ثبتشده میان دو محصول را نمیتوان مستقیماً به بازیابی اسناد متنی یا پاسخ نهایی یک سامانهٔ RAG تعمیم داد.
سرعت و recall چه تفاوتی را آشکار میکنند؟
تأخیر میانه میگوید یک درخواست معمول در شرایط آزمون چقدر منتظر مانده است. توان عملیاتی، شمار درخواستهای پاسخدادهشده در واحد زمان را نشان میدهد. این دو را باید همراه با میزان همزمانی خواند: نرخ درخواست تکرشتهای، رفتار سرویس هنگام رسیدن چندین درخواست در یک زمان را توصیف نمیکند. برای سرویسی که باید سقف زمان پاسخ را برای بیشتر کاربران نگه دارد، p95 زیر بار مورد انتظار از میانهٔ تأخیر اطلاعات مناسبتری میدهد.
Recall@100 سهم همسایههای مرجع پیداشده در فهرست صدتایی نتایج است. این سنجه کیفیت جستوجوی تقریبی در فضای بردار را نشان میدهد، اما مرتبطبودن قطعهها با پرسش کاربر را بهتنهایی اندازه نمیگیرد. اگر مدل embedding مفهوم پرسش را بد نمایش دهد یا سند در مرز نامناسبی قطعهبندی شده باشد، پایگاه داده ممکن است همسایههای برداری را با دقت بالا برگرداند و همچنان زمینهٔ ضعیفی برای پاسخ تولید شود.
عمق فهرست نیز مهم است. خط لولهای که چند قطعه را مستقیم به مدل زبانی میدهد، به همان نوع فهرست نامزدهایی نیاز ندارد که یک مرحلهٔ بازرتبهبندی را تغذیه میکنند. در حالت دوم، جاافتادن یک قطعهٔ مرتبط از فهرست اولیه را بازرتبهبند جبران نمیکند، چون فقط نامزدهای دریافتشده را جابهجا میکند. بنابراین recall باید در عمقی سنجیده شود که خط لوله واقعاً از آن استفاده میکند.
مقایسهٔ منصفانه در کیفیت همسطح
تنظیمات جستوجوی تقریبی میتوانند سرعت را در برابر شمار همسایههای پیداشده تغییر دهند. راهنمای بنچمارک Qdrant نیز میگوید تأخیر و نرخ درخواست باید در آستانههای دقت مشابه مقایسه شوند. این یک اصل روششناختی است، نه ادعای برتری Qdrant: نتایج پیشفرض مطالعه نشان میدهند هر محصول از نقطهٔ متفاوتی روی منحنی کیفیت و سرعت شروع کرده است.
برای مقایسه، مجموعهٔ بردارها، مدل embedding، معیار فاصله، پرسوجوها و تعداد نتایج درخواستی باید یکسان بمانند. سپس پارامترهای نمایه و جستوجوی هر محصول را میتوان تا رسیدن به recall هدف تنظیم کرد و تأخیر p95، توان عملیاتی و حافظه را در همان نقطه کنار هم گذاشت. اگر یکی از دو محصول با کیفیت پایینتر سریعتر باشد، آن عدد سرعت پاسخ کامل به مسئلهٔ انتخاب نیست.
یکسانبودن نام سنجه نیز کافی نیست؛ دادهٔ مرجع و تعریف نتیجهٔ درست باید مشترک باشند. در جستوجوی تقریبی، نزدیکترین بردارها مبنای محاسبهٔ recall هستند. در ارزیابی RAG، ممکن است چند قطعهٔ متفاوت همگی پاسخ درست را پشتیبانی کنند. برای همین، سنجهٔ بازیابی برداری و داوری مرتبطبودن قطعهها دو پرسش جداگانه را پاسخ میدهند و بهتر است هیچکدام جای دیگری ننشیند.
فیلتر و جستوجوی ترکیبی کجا انتخاب را تغییر میدهند؟
اگر پرسوجو به زبان سند، شناسهٔ مشتری یا سطح دسترسی محدود است، آزمون بدون فیلتر فقط یک خط مبناست. مستندات Qdrant توضیح میدهد که نمایهٔ فراداده میتواند شرط فیلتر را هنگام پیمایش نمایهٔ برداری اعمال کند. همان مستندات امکان انتقال بردارها و نمایه به دیسک را نیز شرح میدهند؛ این انتخاب مصرف حافظه را تغییر میدهد و ممکن است در پیمایش نمایه به خواندن از دیسک نیاز داشته باشد.
برای بار چندمستاجری، توزیع داده به اندازهٔ وجود قابلیت فیلتر اهمیت دارد. شرطی که بخش کوچکی از مجموعه را باقی میگذارد، مسیر جستوجوی متفاوتی از شرطی دارد که بیشتر دادهها را عبور میدهد. پس تأخیر و recall باید با همان فیلدهای نمایهشده، همان نسبت مستأجران و همان محدودیتهای دسترسیِ برنامه سنجیده شوند. سرعت جستوجوی آزاد، هزینهٔ اجرای این شرطها را در خود ندارد.
پرسوجوی متنی اغلب به معنای سند و به واژهٔ دقیق، مانند نام محصول یا کد خطا، همزمان نیاز دارد. راهنمای جستوجوی Weaviate جستوجوی برداری، جستوجوی کلیدواژهای BM25F، ترکیب آنها، فیلتر و بازرتبهبندی را بهعنوان قابلیتهای مجزا معرفی میکند. Qdrant نیز در مستندات خود بازیابی معنایی و واژگانی را شرح میدهد. کیفیت فهرست ترکیبی به نمایهسازی متن و شیوهٔ ادغام نتایج وابسته است؛ نتیجهٔ آزمون صرفاً برداری پاسخ این بخش از انتخاب را نمیدهد.
حافظه، ساخت نمایه و مسئولیت استقرار
رشد مجموعه فقط تعداد بردارهای قابل جستوجو را افزایش نمیدهد. نمایه، فراداده و نسخههای تکراری برای دسترسپذیری نیز فضا میخواهند؛ افزودن یا جایگزینی مداوم اسناد، زمان ساخت و بهروزرسانی نمایه را وارد هزینهٔ واقعی میکند. اگر بخشی از داده به دیسک منتقل شود، رفتار درخواستهای پرتکرار و کمتکرار میتواند متفاوت باشد. مصرف RAM را باید در پیکربندیای مقایسه کرد که به کیفیت هدف رسیده است، نه در دو تنظیم پیشفرض با recall متفاوت.
استقرار هم بخشی از همین حساب است. Qdrant در مستندات خود گزینههای مدیریتشده و خودمیزبان را معرفی میکند؛ گزینههای استقرار Weaviate نیز شامل سرویس ابری و استقرار با Docker یا Kubernetes است. در گزینهٔ خودمیزبان، تیم باید برای پشتیبانگیری، ارتقا، پایش و رسیدگی به خرابی ظرفیت داشته باشد. در گزینهٔ مدیریتشده، هزینه و حدود مسئولیت ارائهدهنده وارد مقایسه میشود. هیچیک از این تعهدها در عدد تأخیر جستوجو دیده نمیشود.
ماتریس انتخاب برای بار کاری RAG
نقطهٔ تصمیم از اندازهٔ مجموعه و نوع پرسوجو شروع میشود، اما با کیفیت هدف و بودجهٔ منابع کامل میشود. این حالتها روشن میکنند کدام تفاوت میان Qdrant و Weaviate برای یک معماری مشخص ارزش بیشتری دارد:
- مجموعهٔ کوچک و جستوجوی برداری ساده: اگر هر دو محصول قطعههای مرتبط را در عمق لازم بازیابی میکنند، تأخیر p95 زیر بار واقعی و زحمت نگهداری تعیینکننده میشود. recall بالاترِ یک آزمون عمومی زمانی امتیاز عملی دارد که در پرسشهای برنامه به زمینهٔ بهتر برسد.
- مجموعهٔ بزرگ یا در حال رشد: مصرف RAM و دیسک، زمان ساخت نمایه و رفتار هنگام ورود دادهٔ تازه را همراه با تأخیر بسنجید. سرعت ثبتشده روی مجموعهٔ کوچک، هزینهٔ نمایهسازی و حافظه در اندازهٔ آینده را پیشبینی نمیکند.
- فیلترهای سخت یا چندمستاجری: recall و p95 را پس از اعمال همان شرطهای دسترسی اندازه بگیرید. اگر بخشی از داده برای هر مستأجر جداست، هزینهٔ نمایهها و روش جداسازی داده نیز به تصمیم اضافه میشود.
- جستوجوی ترکیبی: کیفیت نامزدهای حاصل از جستوجوی معنایی و واژگانی، زمان ادغام آنها و تأخیر بازرتبهبندی را در زمان کل خط لوله حساب کنید. سرعت خود پایگاه برداری ممکن است تنها بخش کوچکی از زمان پاسخ باشد.
- محدودیت حافظه یا تیم عملیاتی کوچک: پیکربندیهای روی دیسک و نوع استقرار را در کنار کیفیت بازیابی مقایسه کنید. گزینهای که با منابع موجود به recall هدف و تأخیر قابل قبول میرسد، برای آن بار کاری مناسبتر از برندهٔ یک سنجهٔ منفرد است.
اگر هدف، کیفیت پاسخ نهایی است، ارزیابی بازیابی را در کنار ارزیابی پاسخ قرار دهید؛ رابطهٔ RAG و طول زمینه نیز بر ارزش قطعههای انتخابشده اثر میگذارد. انتخاب میان Qdrant و Weaviate در نقطهای روشن میشود که هر دو به کیفیت لازم رسیدهاند و تفاوت تأخیر، توان عملیاتی، حافظه و مسئولیت عملیاتی برای همان برنامه قابل سنجش است.
بیشتر بخوانید:
مقالات مرتبط


GraphRAG یا Vector RAG؛ گراف فقط در پرسشهای چندمرحلهای جلو میافتد

RAG را درست ارزیابی کنید؛ یک امتیاز خوب میتواند خطای بازیابی را پنهان کند

RAG یا پنجرهٔ زمینهٔ بلند؛ اسناد بیشتر همیشه پاسخ بهتر نمیسازند

PostgreSQL یا MySQL برای JSON؛ نوع ایندکس نتیجه را دو برابر میکند

Docker یا Podman؛ سرعت تقریباً برابر است، مدل دسترسی تصمیم را عوض میکند
عضویت در خبرنامه
تازهترین اخبار Web3، هوش مصنوعی و رمزارز را مستقیم در صندوق ایمیل خود دریافت کنید.