
Qdrant sau Weaviate: 4,55 ms nu bat automat un recall de 99%

În evaluarea empirică pe SIFT1M, un set de un milion de vectori cu 128 de dimensiuni, configurația Qdrant a atins 4,55 ms latență mediană, 216 interogări pe secundă și Recall@100 de 95,9%; configurația Weaviate a atins un recall de peste 99% (99,6%), la aproximativ 87 de interogări pe secundă. Viteza mai bună a Qdrant vine aici împreună cu un recall mai mic, astfel că latența nu decide singură alegerea pentru RAG.
Qdrant este un candidat puternic dacă timpul de răspuns și debitul au prioritate, iar echipa poate atinge recallul necesar după reglarea căutării. Weaviate merită evaluat cu atenție dacă recuperarea cât mai multor rezultate corecte din configurația inițială este prioritară. Comparația utilă pentru un produs RAG pune lângă fiecare latență recallul obținut pe aceleași documente și include interogările hibride, filtrele și resursele consumate.
Ce măsoară diferența de performanță
Recallul arată ce parte dintre vecinii stabiliți prin căutarea de referință apare în rezultatele returnate. O configurație poate răspunde mai repede fiindcă explorează mai puțini candidați; una care caută mai amplu poate găsi mai mulți vecini, cu un cost de timp. Prin urmare, valorile de latență compară atât motoarele, cât și cantitatea de lucru cerută configurațiilor lor implicite.
SIFT1M folosește descriptori vizuali, în timp ce un RAG pentru contracte, documentație de produs sau asistență clienți caută pasaje text reprezentate prin embeddinguri. Structura vectorilor, dimensiunea lor și distribuția întrebărilor se pot schimba odată cu corpusul. Rezultatul pe SIFT1M este un punct de plecare pentru estimarea comportamentului căutării vectoriale, nu o măsură a pasajelor care vor susține răspunsurile unui asistent.
Mediana descrie cererea obișnuită, dar utilizatorul resimte și răspunsurile lente din coada distribuției. Debitul arată câte interogări pot fi servite într-un interval, fără a include automat timpul pentru generarea embeddingului întrebării, aplicarea regulilor aplicației sau reranking. Într-un sistem RAG, aceste etape pot schimba atât timpul total, cât și ordinea pasajelor oferite modelului.
Căutarea hibridă poate schimba clasamentul
O întrebare formulată liber poate beneficia de apropierea semantică, în timp ce un cod de eroare sau un identificator cere potrivirea termenilor exacți. Query API din Qdrant permite căutări preliminare pe vectori denși și rari, urmate de fuziune RRF sau DBSF. RRF folosește poziția rezultatelor în listele inițiale, iar DBSF normalizează distribuțiile scorurilor înainte de combinare.
Documentația Weaviate pentru căutarea hibridă descrie combinarea căutării vectoriale cu BM25, fuziunea după rang sau după scoruri relative și parametrul alpha pentru ponderea componentei vectoriale. Documentația recomandă setarea explicită a ponderii când aceasta contează, deoarece comportamentul efectiv poate varia în funcție de client și de versiune. Ambele produse oferă, așadar, căutare hibridă; diferența relevantă pentru RAG este clasamentul obținut după alegerea reprezentărilor, a candidaților și a metodei de fuziune.
Un corpus cu nume de produs, articole numerotate și formulări variate poate scoate la iveală compromisuri pe care căutarea exclusiv vectorială nu le arată. Pentru aceeași colecție, întrebările semantice și cele cu termeni exacți trebuie păstrate distincte în evaluare. Altfel, o medie bună poate ascunde faptul că un motor găsește parafraze, dar ratează identificatorul necesar răspunsului.
De ce rezultatul nu se extrapolează la orice colecție
O colecție RAG are adesea filtre după client, limbă, tip de document sau drepturi de acces. Selectivitatea lor schimbă mulțimea în care se caută și poate modifica atât latența, cât și recallul. Testul vectorial nefiltrat din comparația SIFT1M nu reproduce direct o cerere în care aplicația are voie să returneze doar documentele unui anumit client.
Pagina de benchmarkuri Weaviate listează teste de latență și debit pentru căutarea ANN nefiltrată, dar marchează benchmarkurile pentru ANN filtrată și filtrarea scalară drept viitoare. Graficele publicate acolo nu oferă, prin urmare, o valoare măsurată pentru o interogare restrânsă puternic prin metadate. Această distincție contează când filtrul face parte din fiecare cerere, nu doar dintr-un caz marginal.
Contează și profilul documentelor: fragmentele scurte și repetitive pot produce alți vecini decât pasaje lungi, iar schimbarea modelului de embedding modifică reprezentările indexate. O colecție mai mare poate aduce alte cerințe de memorie, stocare și repartizare a datelor. Comparația trebuie să păstreze același corpus, aceeași împărțire în fragmente și aceleași reguli de acces pentru ambele implementări.
Costul include indexarea și operarea
Prețul instanței este doar o parte din costul unei baze vectoriale. Construirea indexului, reindexarea după schimbarea embeddingurilor, replicile și copiile de siguranță consumă resurse chiar când latența interogării arată bine. Capacitatea rezervată pentru perioadele aglomerate poate conta mai mult în buget decât diferența dintre timpii mediani măsurați pe o colecție statică.
Pentru o instalare administrată de echipă, autentificarea, izolarea datelor și recuperarea după o defecțiune cer configurare și verificare continuă. Dacă alternativa este un serviciu administrat, comparația financiară trebuie să includă aceleași cerințe de disponibilitate și protecție a datelor. Altfel, o variantă pare mai ieftină doar fiindcă o parte din munca de operare a fost lăsată în afara calculului.
Fișa de selecție pentru RAG
O comparație reproductibilă înregistrează împreună latența, recallul, debitul, resursele și condițiile fiecărei interogări. Pentru căutarea hibridă, fișa include metoda de fuziune, ponderea căutării lexicale și numărul de candidați; pentru colecție, dimensiunea vectorilor, volumul documentelor și filtrele. Această asociere împiedică interpretarea unei latențe mai mici drept câștig atunci când ea vine cu pierderea pasajelor necesare răspunsului.
Decizia se poate lua după reglarea ambelor produse la nivelul de recuperare cerut de aplicație. Dacă Qdrant își păstrează avantajul de timp și debit la acel nivel, rezultatul îi susține alegerea. Dacă Weaviate recuperează mai constant pasajele relevante, iar timpul total rămâne în bugetul produsului, calitatea recuperării poate justifica resursele suplimentare. În ambele cazuri, unitatea de comparație este aceeași sarcină RAG, cu aceleași documente și aceleași restricții.
Citește și:
Articole similare


Un scor RAG bun poate ascunde componenta defectă: măsoară patru lucruri separat

PostgreSQL sau MySQL: stocarea schimbă câștigătorul benchmarkului

RAG sau fine-tuning: datele noi și comportamentul cer soluții diferite

LangChain sau LlamaIndex: cadrul nu compensează un prompt ineficient

Cache-ul semantic taie apelurile LLM, dar poate reutiliza răspunsul greșit
Abonează-te la newsletter
Primește cele mai noi știri despre Web3, IA și cripto direct în inbox.