Open-source embedding database for AI apps, storing documents and vectors to power semantic, hybrid and full-text search.
milvus-io/milvus
Milvus is an open-source, distributed vector database for storing and searching embeddings at scale, used for AI search and RAG applications.
Open-source alternative to:Pinecone
- Stars
- 46,453
- Forks
- 4,310
- Open issues
- 1,432
- Last commit
- 4 hours ago
What is it?
Milvus is a vector database that stores embeddings produced from unstructured data such as text, images and multi-modal content, and runs approximate nearest neighbor search over them. It can store vectors alongside scalar fields like integers, strings and JSON, and supports metadata filtering, range search and hybrid search.
The system is written in Go and C++ and has a distributed, Kubernetes-native architecture that separates compute from storage, so query and data nodes can be scaled independently. It also offers a Standalone mode for a single machine and Milvus Lite, a lightweight version installable with pip for local prototyping. Supported index types include HNSW, IVF, FLAT, SCANN and DiskANN, with optional GPU indexing.
The project includes full-text search with BM25, sparse embeddings such as SPLADE and BGE-M3, multi-tenancy isolation, RBAC and TLS. It integrates with tools such as LangChain, LlamaIndex and OpenAI, and the Python SDK pymilvus provides a MilvusClient interface. It is licensed under Apache 2.0 and hosted under LF AI & Data Foundation.
Key features
- 01Vector search with HNSW, IVF, FLAT, SCANN and DiskANN index types
- 02Metadata filtering, range search and hybrid search with scalar fields
- 03Full-text search using BM25 and sparse embeddings such as SPLADE
- 04Distributed, Kubernetes-native deployment with independently scalable nodes
- 05Multi-tenancy isolation with RBAC, user authentication and TLS encryption
- 06Milvus Lite for local use via pip install pymilvus[milvus-lite]
Use cases
- Building retrieval-augmented generation (RAG) pipelines over private documents
- Image, text or multi-modal similarity search in production applications
- Recommendation systems that match users and items by embedding similarity
- Prototyping vector search locally with Milvus Lite before deploying a cluster
Quick start
- 1
Install the Python SDK pymilvus
pip install -U pymilvus - 2
Import MilvusClient from pymilvus
- 3
Create a local Milvus Lite client with a file name for persisting data
- 4
Create a collection with the client
Things to know
- Running a self-hosted distributed Milvus cluster is complex, with many microservices on Kubernetes.
- The lightweight Milvus Lite option is meant for quickstart use, not for production-scale workloads.
Topics
FAQ
- What is milvus?
- Milvus is an open-source, distributed vector database for storing and searching embeddings at scale, used for AI search and RAG applications. Milvus is a vector database that stores embeddings produced from unstructured data such as text, images and multi-modal content, and runs approximate nearest neighbor search over them. It can store vectors alongside scalar fields like integers, strings and JSON, and supports metadata filtering, range search and hybrid search.
- Is milvus free to use? What license does it have?
- milvus is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is milvus still maintained?
- Actively maintained. The last commit to milvus was on Oct 21, 2026.
- What can I use milvus for?
- Building retrieval-augmented generation (RAG) pipelines over private documents Image, text or multi-modal similarity search in production applications Recommendation systems that match users and items by embedding similarity Prototyping vector search locally with Milvus Lite before deploying a cluster
- How do I install milvus?
- Install the Python SDK pymilvus: pip install -U pymilvus Import MilvusClient from pymilvus Create a local Milvus Lite client with a file name for persisting data Create a collection with the client
- Where can I get milvus?
- The source code and installation instructions are on GitHub: https://github.com/milvus-io/milvus
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A local vector index and RAG toolkit that cuts storage by about 97% by recomputing embeddings on demand, so you can search personal data on your laptop.
Local-first AI memory system that stores conversation history verbatim and retrieves it with semantic search, exposed as an MCP server and CLI.
A no-code RAG server that indexes a folder of documents into one of 8 vector databases and keeps answers in sync as files change.
Self-hosted platform for building AI agents and assistants that answer questions from your own documents, with citations and any model.
A local-first, Markdown-native long-term memory layer for AI agents, storing memories as editable files with SQLite and LanceDB indexes.