Key Takeaways
- Milvus is free and open-source under Apache-2.0, governed by the LF AI & Data Foundation, with Zilliz as the primary corporate contributor
- Three self-hosted deployment modes: Milvus Lite (embedded,
pip install pymilvus, for prototyping), Standalone (Docker, single machine), and Distributed (Kubernetes/Helm, for cluster-scale production) - Supports hybrid search β combining dense vector similarity, sparse/full-text (BM25) search, and metadata filtering in a single query
- Supports GPU-accelerated indexing and multiple index types (HNSW, IVF, FLAT, DiskANN, and others)
- Multi-tenancy support (databases, collections, partitions, and role-based access control) for isolating workloads on shared infrastructure
- Integrates directly with RAG/orchestration frameworks β LangChain, LlamaIndex β and with embedding models from OpenAI, Hugging Face, and local/self-hosted sources
- GitHub repository shows roughly 46,150 stars as of September 2026
- Zilliz Cloud is a separate, optional managed-hosting service from Zilliz β not required to run Milvus yourself
π In One Sentence
Milvus is a free, open-source, self-hostable vector database β from a single pip install to a Kubernetes cluster β built for the large-scale similarity search that powers RAG pipelines and semantic search.
π¬ In Plain Terms
When you build a local RAG system, you first turn your documents into embeddings (lists of numbers) with an embedding model, then need somewhere to store those embeddings and quickly find the closest matches to a new question. Milvus is that storage-and-search layer. You can run it as a single file on your laptop for testing, as one Docker container for a small production app, or as a full cluster for billions of vectors β all free and self-hosted, no account required.
πNote: This review is the deep-dive companion to Milvus's entry in the Local LLM Software Directory β see that page for how Milvus compares at a glance to dozens of other local AI tools, including other vector databases.
What Is Milvus?
Milvus is an open-source, cloud-native vector database designed to store, index, and search massive collections of high-dimensional vector embeddings. Its own GitHub description calls it "a high-performance, cloud-native vector database built for scalable vector ANN [approximate nearest neighbor] search." In a local-LLM or RAG context, Milvus is not an LLM inference engine itself β it is the retrieval infrastructure that sits behind one: an embedding model turns your text (or images, audio, etc.) into vectors, Milvus stores and indexes them, and at query time Milvus finds the vectors most similar to a new query so an LLM can generate an answer grounded in the retrieved content.
- Core function: store, index, and search large collections of vector embeddings with approximate-nearest-neighbor (ANN) algorithms, at scales from thousands to tens of billions of vectors
- Written in Go and C++, per the GitHub repository, and designed as a distributed, cloud-native system from the ground up
- Deployment models: an embedded library (Milvus Lite), a single-machine server (Standalone), and a distributed cluster (Kubernetes/Helm)
- Index types: HNSW, IVF, FLAT, DiskANN, and GPU-accelerated indexes (such as CAGRA), selectable per collection depending on your speed/accuracy/memory tradeoffs
- Governance: part of the LF AI & Data Foundation, the same Linux Foundation umbrella that hosts other open-source AI/data infrastructure projects
- Primary corporate contributor: Zilliz, founded in 2017, which also offers the separate managed Zilliz Cloud service
- Canonical repository: github.com/milvus-io/milvus
Milvus's Project History and Version Milestones
Milvus was created and open-sourced by Zilliz in 2019. It joined the LF AI & Data Foundation as an incubation project in January 2020 and formally graduated from incubation in June 2021 β a milestone the foundation reserves for projects that meet defined maturity, adoption, and governance criteria. The project underwent a full architectural rebuild between its original 1.x line and Milvus 2.0, released in January 2022, moving to the distributed, cloud-native, storage-compute-separated architecture the project still uses today.
- 12019: Initial open-source release
Why it matters: Zilliz released the original Milvus as open source, establishing the project's first architecture. - 2January 2020: Joins LF AI & Data Foundation as an incubation project
Why it matters: Moved Milvus under neutral, vendor-independent open-source governance rather than staying a single-company project. - 3June 2021: Graduates from LF AI & Data Foundation incubation
Why it matters: Signaled the project met the foundation's bar for maturity, community size, and governance β the top tier of LF AI & Data project status. - 4January 2022: Milvus 2.0 released
Why it matters: A full architectural rebuild introducing a distributed, cloud-native design with separated storage and compute β the foundation of the architecture still used in the 2.x line today. - 52.4.x: GPU-accelerated indexing added
Why it matters: Added GPU index types (such as CAGRA) for substantially faster index building and search on supported hardware. - 62.5.x: Full-text search (BM25) and expanded hybrid search
Why it matters: Added native sparse/full-text search alongside dense vector search, letting a single query combine keyword-style and semantic matching. - 72.6.x β ongoing through 2026: Continuous performance and reliability releases
Why it matters: Recent 2.6.x point releases (per the [GitHub Releases page](https://github.com/milvus-io/milvus/releases)) focus on query-scheduling efficiency, GPU search correctness fixes, and security hardening β 2.6.23 shipped August 28, 2026 as the most recent point release this review could verify.
What Can You Do With Milvus?
Milvus's feature set centers on storing and searching vector embeddings at scale, with hybrid search and multi-tenancy layered on top for production RAG use. Here is what each part actually does, per Milvus's own documentation and GitHub README.
- Vector similarity search β store embeddings and run approximate-nearest-neighbor queries to find the most similar vectors to a given query vector, the core operation behind RAG retrieval and semantic search
- Hybrid search β combine dense vector similarity, sparse/full-text (BM25) search, and structured metadata filtering in a single query, rather than running separate keyword and semantic searches
- GPU-accelerated indexing β build and search GPU-backed indexes (such as CAGRA) on supported hardware for substantially faster performance at large scale
- Multiple index types β HNSW, IVF, FLAT, DiskANN, and others, selectable per collection to trade off between search speed, recall accuracy, and memory/disk footprint
- Multi-tenancy β databases, collections, and partitions, plus role-based access control (RBAC), for isolating different applications or teams on shared Milvus infrastructure
- Flexible deployment scale β the same data model and API work from an embedded Milvus Lite instance on a laptop up to a distributed Kubernetes cluster handling tens of billions of vectors
- Framework and embedding-model integrations β official integrations with LangChain, LlamaIndex, and embedding models from OpenAI, Hugging Face/Sentence Transformers, BGE-M3, and other providers, including local/self-hosted embedding models
- Python SDK (PyMilvus) β the primary client library,
pip install pymilvus, used for both the embedded Milvus Lite mode and connecting to a remote Standalone or Distributed server
Usage Examples: Three Ways to Use Milvus
These are concrete workflows built from Milvus's documented features above, not hypothetical use cases.
Install Milvus
Milvus installs free via pip for local/embedded use, via Docker for a single self-hosted server, or via Helm for a Kubernetes cluster. There is no GUI installer β Milvus is infrastructure you run and connect to from code.
Source | Link |
|---|---|
| Official site (docs, quickstart) | milvus.io |
| GitHub repository (source code, Apache-2.0) | github.com/milvus-io/milvus |
| PyMilvus (Python SDK + Milvus Lite) | pip install -U pymilvus β pypi.org/project/pymilvus |
| Docker Compose (Standalone) | milvus.io/docs/install_standalone-docker.md |
| Helm chart (Distributed/Kubernetes) | milvus.io/docs/install_cluster-milvusoperator.md |
Verify the current recommended install commands on milvus.io before running them, since install instructions and Helm chart versions can change between releases. Milvus Lite is the fastest path to trying Milvus with no separate server process; Standalone and Distributed are the self-hosted paths for anything beyond local prototyping.
Milvus Pricing: Is Milvus Really Free?
Yes β Milvus itself has no paid tier. The database, in all three deployment modes (Lite, Standalone, Distributed), is free and open source under the Apache License 2.0, confirmed via the GitHub repository's LICENSE file.
- No subscription, no paid tier, no usage limits imposed by self-hosted Milvus itself
- No account or sign-up required to download, install, or run Milvus
- Compute, storage, and any cloud hosting you use to run self-hosted Milvus is a cost you control and pay for separately (your own server or cloud VM), not a fee paid to Milvus or Zilliz
- Zilliz Cloud β a fully managed, paid hosting service for Milvus β is entirely optional and offered by Zilliz, Milvus's primary corporate contributor, separate from the open-source project itself
Milvus vs. Qdrant
Milvus and Qdrant are two of the most widely used open-source vector databases, and they get compared often since both are free, self-hostable, and support hybrid search for RAG pipelines. The clearest differences are in architecture complexity and typical deployment scale.
Language
- Milvus:
- Go / C++
- Qdrant:
- Rust
License
- Milvus:
- Apache-2.0
- Qdrant:
- Apache-2.0
Deployment modes
- Milvus:
- Embedded (Lite), Standalone (Docker), Distributed (Kubernetes/Helm)
- Qdrant:
- Embedded, single-node Docker, distributed cluster mode
GPU-accelerated indexing
- Milvus:
- Yes, on supported index types
- Qdrant:
- Not a core focus
Governance
- Milvus:
- LF AI & Data Foundation (graduated project); primary contributor Zilliz
- Qdrant:
- Company-led open-source project (Qdrant Solutions GmbH)
Typical fit
- Milvus:
- Larger-scale, distributed production workloads; more architectural complexity to operate
- Qdrant:
- Simpler to self-host for small-to-mid-scale RAG apps; lighter operational footprint
If your priority is proven scale to tens of billions of vectors and GPU-accelerated indexing under neutral foundation governance, Milvus's architecture is the more heavyweight, production-oriented of the two. If your priority is the simplest possible self-hosted vector database to stand up for a small-to-mid-scale RAG project, Qdrant is worth evaluating directly β see the Qdrant review for a full breakdown. Both are free and open-source; verify current feature details on each project's own site before deciding, since both ship updates frequently.
Who Should Use Milvus?
Whether Milvus fits depends on the scale of your retrieval workload and whether you want a path from local prototyping to distributed production without switching databases.
Milvus vs. Other Vector Databases
Milvus is one of several open-source vector databases commonly used in local and self-hosted RAG stacks. See the Local LLM Software Directory for the full catalog, and the dedicated Milvus vs. Qdrant comparison above for the closest head-to-head.
- Qdrant β a Rust-based open-source vector database with a simpler operational footprint, popular for small-to-mid-scale self-hosted RAG; see the dedicated comparison section above and the Qdrant review.
- Chroma β a lightweight, developer-friendly open-source embedding database often used for quick local RAG prototyping; see the Chroma review.
- txtai β an embedded, Python-native vector/semantic-search library that runs in-process rather than as a separate server, a lighter-weight alternative for smaller local projects; see the txtai review.
Common Mistakes When Evaluating Milvus
Most confusion about Milvus comes from conflating it with Zilliz Cloud, underestimating its operational complexity at scale, or expecting it to do more than retrieval.
Frequently Asked Questions
What is Milvus?
Milvus (milvus.io, source at github.com/milvus-io/milvus) is a free, open-source, cloud-native vector database for storing and searching large-scale vector embeddings, commonly used as the retrieval layer in RAG pipelines.
Is Milvus free?
Yes. Milvus is free and open source under the Apache License 2.0 in all three of its deployment modes (Lite, Standalone, Distributed). Zilliz Cloud, a separate managed-hosting service, is optional and not required to use Milvus.
Is Milvus open source? What license does it use?
Yes. Milvus is licensed under Apache-2.0, per the LICENSE file in its GitHub repository, and is governed by the LF AI & Data Foundation.
How do I install Milvus?
Run pip install -U pymilvus for Milvus Lite (embedded, local file-based use), deploy Milvus Standalone via Docker Compose for a single self-hosted server, or use the Helm chart / Milvus Operator for a distributed Kubernetes deployment. See the Install Milvus section above.
What is Milvus Lite?
Milvus Lite is an embedded version of Milvus bundled with the PyMilvus Python SDK β install it with pip install -U pymilvus, point the connection URI at a local file (such as ./milvus.db), and it runs entirely in-process with no separate server, ideal for local prototyping.
Does Milvus support RAG with local embedding models?
Yes. Milvus integrates with LangChain and LlamaIndex, and its Python SDK supports embedding models from Sentence Transformers, BGE-M3, and other sources, including locally run models β not only cloud providers like OpenAI.
Is Milvus the same thing as Zilliz Cloud?
No. Milvus is the open-source database project itself, governed by the LF AI & Data Foundation. Zilliz Cloud is a separate, optional, paid managed-hosting service offered by Zilliz, Milvus's primary corporate contributor.
Does Milvus support GPU acceleration?
Yes. Milvus supports GPU-accelerated index types (such as CAGRA) on supported hardware for faster index building and search at large scale, introduced in the 2.4.x release line.
Does Milvus support hybrid search?
Yes. Milvus supports combining dense vector similarity, sparse/full-text (BM25) search, and metadata filtering in a single query β full-text search was added in the 2.5.x release line.
How does Milvus compare to Qdrant?
Both are free, open-source, self-hostable vector databases supporting hybrid search. Milvus offers GPU-accelerated indexing and a more distributed, production-scale architecture under LF AI & Data Foundation governance; Qdrant, written in Rust, is generally simpler to self-host for small-to-mid-scale projects. See the dedicated Milvus vs. Qdrant section above.
Who governs the Milvus project?
Milvus is part of the LF AI & Data Foundation (a Linux Foundation umbrella project), which it graduated from incubation with in June 2021. Zilliz, the company that originally open-sourced Milvus in 2019, remains its primary corporate contributor.