اگر در پروژه های AI، RAG و Vector Search با حجم بالای Embeddingها کار می کنید، پروژه Open Source جدید TurboVec ارزش بررسی دارد.
🔹 معرفی TurboVec: یک Vector Index مبتنی بر زبان Rust است که از الگوریتم TurboQuant استفاده می کند و برای Python نیز Binding ارائه می دهد.
📊 نتایج Benchmark: طبق Benchmarkهای منتشرشده توسط پروژه:
• مصرف حافظه: یک Corpus شامل 10 میلیون Document که با
float32 حدود 31GB RAM نیاز دارد، با TurboVec در حدود 4GB RAM قابل نگهداری است.• فشرده سازی: Vectorها تا 2-bit و 4-bit فشرده می شوند؛ برای مثال یک Vector با 1536 Dimension از 6144 بایت به 384 بایت در حالت 2-bit کاهش می یابد.
• سرعت جستجو: در Benchmarkهای انجام شده، TurboVec در برخی سناریوها نسبت به FAISS سرعت بالاتری دارد؛ حدود 3.4x در 4-bit و حدود 20 تا 26 درصد در 2-bit.
• بهینه سازی سخت افزاری: از SIMD و دستورالعمل هایی مانند AVX-512 VNNI، AVX2 و ARM NEON استفاده می کند.
• قابلیت Online Ingest: امکان اضافه کردن Vectorهای جدید بدون نیاز به Training یا Rebuild کامل Index وجود دارد.
• قابلیت Persistence: قابلیت Incremental Persistence، حذف Vector با شناسه و Filtered Search را ارائه می دهد.
کاربرد در Private RAG: TurboVec کاملا Local اجرا می شود و برای استفاده از آن نیازی به Managed Vector Database یا ارسال داده به سرویس خارجی نیست.
پشتیبانی و Integration: از Python و Rust پشتیبانی می کند و با LangChain، LlamaIndex، Haystack و Agno نیز قابل استفاده است.
GitHub:
github.com/ryancodrai/turbovec
📡 کانال Hackers Zone:
@Hackers_Zone
#AI #RAG #VectorSearch #Rust #Python #TurboQuant #FAISS #Embeddings #OpenSource
