इस प्रोजेक्ट के बारे में
Milvus Go और C++ में लिखा गया एक वितरित वेक्टर डेटाबेस है जो टेक्स्ट, इमेज और मल्टी-मोडल जानकारी सहित बड़ी मात्रा में असंरचित डेटा के कुशल संगठन और खोज को सक्षम बनाता है। इसे उच्च स्केलेबिलिटी और उपलब्धता के लिए डिज़ाइन किया गया है, जो एक K8s-नेटिव आर्किटेक्चर का उपयोग करता है जो कंप्यूट और स्टोरेज को अलग करता है ताकि स्वतंत्र क्षैतिज स्केलिंग (horizontal scaling) की अनुमति मिल सके।
मुख्य क्षमताओं में शामिल हैं:
- वेक्टर सर्च और इंडेक्सिंग: HNSW, IVF, FLAT, SCANN और DiskANN जैसे कई इंडेक्स प्रकारों का समर्थन करता है, जिसमें CPU और GPU (NVIDIA CAGRA सहित) दोनों के लिए हार्डवेयर त्वरण उपलब्ध है।
- हाइब्रिड सर्च: यह सिमेंटिक सर्च के लिए डेंस वेक्टर्स और फुल-टेक्स्ट सर्च (BM25, SPLADE, BGE-M3) के लिए स्पार्स वेक्टर्स दोनों का नेटिव रूप से समर्थन करता है, जिससे रीरैंक किए गए हाइब्रिड परिणाम प्राप्त होते हैं।
- डेटा प्रबंधन: इसमें मल्टी-टेनेंसी आइसोलेशन, लागत-प्रभावशीलता के लिए हॉट/कोल्ड स्टोरेज तंत्र, और मेटाडेटा फ़िल्टरिंग के लिए स्केलर डेटा प्रकारों (इंटीजर्स, स्ट्रिंग्स, JSON) का समर्थन शामिल है।
- सुरक्षा: यह अनिवार्य उपयोगकर्ता प्रमाणीकरण, TLS एन्क्रिप्शन और Role-Based Access Control (RBAC) को लागू करता है।
- परिनियोजन विकल्प: यह एक वितरित क्लस्टर, स्टैंडअलोन Docker परिनियोजन, या एक हल्का पायथन संस्करण (Milvus Lite) के रूप में उपलब्ध है।
Milvus LangChain, LlamaIndex, OpenAI और HuggingFace जैसे लोकप्रिय AI फ्रेमवर्क के साथ एकीकृत होता है, और डेटा अंतर्ग्रहण (ingestion) और क्वेरी के लिए एक Python SDK (pymilvus) प्रदान करता है।