Vector databases

Vector stores and hybrid search engines for embeddings.

Milvus leads with 81, ahead of Meilisearch (69) and Chroma (64). 8 projects ranked by score.

The ranking

Vector databases: full ranking
RankProjectAdoptionFreshnessMaintenanceEasy to runAgent-readyScore
1MilvusDistributed vector database with dense, sparse and hybrid search at scale Live demo ↗ (opens in a new tab)46.3k stars, Apache-2.0, last commit Oct 20268210084677081 out of 100
2MeilisearchRust search engine API with full-text, vector and hybrid search Live demo ↗ (opens in a new tab)59.5k stars, custom license, last commit Oct 20269210081333069 out of 100
3ChromaEmbedding database with a four-function API for Python and JavaScript29.5k stars, Apache-2.0, last commit Oct 20266210037507064 out of 100
#4QdrantRust vector database with payload filtering, REST and gRPC Live demo ↗ (opens in a new tab)35k stars, Apache-2.0, last commit Oct 2026721008233063 out of 100
#5pgvectorPostgreSQL extension for vector similarity search with HNSW and IVFFlat23.3k stars, custom license, last commit Oct 2026521005850059 out of 100
#6WeaviateGo vector database with built-in vectorizers, hybrid search and RAG Live demo ↗ (opens in a new tab)16.9k stars, custom license, last commit Oct 20264210071334057 out of 100
#7HelixDBRust graph database with native vector and BM25 search6.2k stars, Apache-2.0, last commit Oct 20261910096333055 out of 100
#8VespaServing engine for vectors, tensors, text and ML ranking at scale7.1k stars, Apache-2.0, last commit Oct 202626100800041 out of 100

Momentum, Verified build, Docs and Privacy are not measured yet; their weight goes to the signals shown. A dash means the signal is not scored for that kind of project. Hover a number for its rating in words.

Reviews

181 out of 100

Milvus

Distributed vector database with dense, sparse and hybrid search at scale

Live demo ↗ (opens in a new tab)46.3k stars, Apache-2.0, last commit Oct 2026

Milvus is a distributed vector database (Go and C++, LF AI & Data Foundation) that separates compute and storage on Kubernetes, with a Standalone Docker mode and pip-installable Milvus Lite. It offers HNSW, IVF, FLAT, SCANN and DiskANN indexes, GPU CAGRA, sparse BM25 and learned-sparse vectors for hybrid search, metadata filtering, multi-tenancy, hot/cold storage, auth, TLS and RBAC.

Strengths

  • Index types HNSW, IVF, FLAT, SCANN, DiskANN plus GPU CAGRA
  • Dense, sparse (BM25, SPLADE, BGE-M3) and hybrid search in one collection
  • Multi-tenancy at database, collection, partition or partition-key level
  • Mandatory auth, TLS and RBAC; Milvus Lite via pip for local dev

Weaknesses

  • Distributed mode is Kubernetes-native with several microservices to operate
  • No port, RAM or Docker command in the README; install lives in docs
  • Zilliz is the major contributor and promotes its managed cloud
  • Source build needs Go 1.21+, CMake, GCC 11+ and Python 3.8 to 3.11
  • GPU optional
  • Compose
  • Compose runs Milvus, MinIO
  • Models: any embedding model or service; pymilvus[model] wraps embedding and reranking models
269 out of 100

Meilisearch

Rust search engine API with full-text, vector and hybrid search

Live demo ↗ (opens in a new tab)59.5k stars, custom license, last commit Oct 2026

Meilisearch is a Rust search engine with a REST API that combines full-text search (typo tolerance, facets, geosearch) with vector and hybrid search, returning results as you type. It adds API keys with fine-grained permissions, tenant tokens for multi-tenancy, conversational search and MCP and LangChain integrations. The Community Edition is MIT; sharding and S3 snapshots require the Enterprise Edition.

Strengths

  • Search-as-you-type under 50 ms with typo tolerance and faceting
  • Hybrid semantic plus full-text ranking in one engine
  • API keys with fine-grained permissions and tenant tokens for multi-tenancy
  • REST API with official SDKs; MCP and LangChain integrations

Weaknesses

  • Sharding, S3 snapshots and search-rule previews are Enterprise Edition (BSL or commercial)
  • Anonymized telemetry is on by default and must be disabled
  • No port, RAM or install details in the README; docs only
  • Vector search is documented under experimental features
  • no GPU
  • Docker
364 out of 100

Chroma

Embedding database with a four-function API for Python and JavaScript

29.5k stars, Apache-2.0, last commit Oct 2026

Chroma is an embedding database with a four-function API (create collection, add, query, get) that tokenizes, embeds and indexes documents itself or accepts your own vectors, with metadata and document filters. It runs in-memory or persisted from the Python or JavaScript client, or as a server via chroma run; the repo ships a Dockerfile and compose file. Chroma Cloud is the hosted serverless version.

Strengths

  • Four-function API: create collection, add, query, get
  • Handles tokenization, embedding and indexing; own vectors optional
  • Python and JavaScript clients; chroma run for client-server mode
  • Weekly tagged releases on Mondays with hotfixes in between

Weaknesses

  • README is thin: no port, resource or auth guidance
  • Hosted Chroma Cloud is the headline; self-hosting detail lives in docs
  • Row-based API marked coming soon
  • No multi-user auth described in the README
  • no GPU
  • Docker + Compose
  • Models: built-in embedding or user-supplied vectors
#463 out of 100

Qdrant

Rust vector database with payload filtering, REST and gRPC

Live demo ↗ (opens in a new tab)35k stars, Apache-2.0, last commit Oct 2026

Qdrant is a Rust vector database exposing REST (OpenAPI 3.0) and gRPC on port 6333 for storing points (vectors plus JSON payload) and searching with dense, sparse and multivector (ColBERT) embeddings, rich payload filters and hybrid fusion (RRF, DBSF). It adds quantization, on-disk storage, sharding and replication, multitenancy, GPU-accelerated indexing and a web UI. Qdrant Edge runs the same engine embedded in-process.

Strengths

  • Dense, sparse and multivector (ColBERT) search with RRF and DBSF fusion
  • Quantization cuts RAM up to 97 percent; on-disk storage and io_uring
  • REST with OpenAPI 3.0 spec plus gRPC; six official clients
  • Sharding and replication with zero-downtime collection resize

Weaknesses

  • Default docker run has no auth and binds all interfaces
  • GPU acceleration covers indexing only; search runs on CPU
  • Qdrant Edge embedded mode is Python and Rust only
  • Sharding and tenant isolation require upfront design
  • GPU optional
  • Docker
  • Models: any embedding model; dense, sparse and late-interaction (ColBERT) vectors
  • port 6333
#559 out of 100

pgvector

PostgreSQL extension for vector similarity search with HNSW and IVFFlat

23.3k stars, custom license, last commit Oct 2026

pgvector is a PostgreSQL extension (Postgres 13+) that adds vector, halfvec, bit and sparsevec column types with L2, inner product, cosine, L1, Hamming and Jaccard distance operators, exact search by default and HNSW or IVFFlat indexes for approximate search. Vectors sit beside ordinary rows with ACID, joins and backups, and Postgres full-text search can be combined for hybrid retrieval. It installs via make, Docker or OS packages.

Strengths

  • Vectors live next to relational data with ACID, joins and point-in-time recovery
  • HNSW and IVFFlat indexes with six distance operators
  • Half-precision, binary and sparse vector types plus binary quantization
  • Installs via make, Docker, Homebrew, APT, Yum; preinstalled on many hosted Postgres

Weaknesses

  • vector type capped at 2,000 dimensions (halfvec 4,000)
  • Approximate indexes filter after scanning; filtered recall needs iterative scan tuning
  • HNSW builds slow down sharply once the graph exceeds maintenance_work_mem
  • No server of its own; capacity depends on your Postgres tuning
  • no GPU
  • Docker
  • Needs PostgreSQL 13+
  • Models: any embedding model; stores precomputed vectors
#657 out of 100

Weaviate

Go vector database with built-in vectorizers, hybrid search and RAG

Live demo ↗ (opens in a new tab)16.9k stars, custom license, last commit Oct 2026

Weaviate is a Go vector database that stores objects with their vectors and serves hybrid BM25 plus semantic search, filtering, built-in RAG and reranking through REST, gRPC and GraphQL APIs. It can vectorize data at import using modules for OpenAI, Cohere, HuggingFace, Google or a local model2vec image, or accept precomputed vectors. Docker Compose runs it on ports 8080 and 50051; production adds multi-tenancy, replication and RBAC.

Strengths

  • Vectorizes at import with OpenAI, Cohere, HuggingFace, Google or a local model2vec container
  • Hybrid BM25 plus vector, image search, filtering, RAG and reranking in one query
  • Multi-tenancy, replication, RBAC, horizontal scaling and vector compression
  • REST, gRPC and GraphQL with Python, TypeScript, Java, Go and C# clients

Weaknesses

  • Enterprise features in wl/ need a commercial license key; one image mixes both
  • Vectorization needs a module container or external API keys
  • No RAM or sizing guidance in the README
  • Both REST 8080 and gRPC 50051 must be exposed
  • no GPU
  • Docker + Compose
  • Needs optional embedding inference container (e.g. model2vec) or external embedding APIs
  • Models: OpenAI, Cohere, HuggingFace, Google and other integrated model providers, local model2vec (minishlab/potion-base-32M), precomputed vectors
  • port 8080
#755 out of 100

HelixDB

Rust graph database with native vector and BM25 search

6.2k stars, Apache-2.0, last commit Oct 2026

HelixDB is a Rust database that combines a labeled property graph, approximate nearest-neighbor vector search and BM25 full-text search in one transactional engine. A CLI starts a local instance in Docker or Podman on port 6969 (in-memory by default, --disk to persist) or the engine runs embedded, and Rust, TypeScript, Python and Go SDKs send the same JSON queries to POST /v2/query.

Strengths

  • Graph traversal, vector ANN and BM25 in one transactional engine
  • Vector search prefiltered by graph traversal
  • SDKs for Rust, TypeScript, Python and Go sending the same JSON query
  • Embedded mode runs inside your process without a server

Weaknesses

  • Local data is in-memory unless started with --disk
  • Python and Go SDKs are 0.x while Rust and TypeScript are 3.x
  • Cypher support only in source builds
  • Install is a curl piped to bash script
  • no GPU
  • Docker
  • Needs Docker or Podman for the local instance
  • Models: any embedding model; stores precomputed vectors
  • port 6969
#841 out of 100

Vespa

Serving engine for vectors, tensors, text and ML ranking at scale

7.1k stars, Apache-2.0, last commit Oct 2026

Vespa is a serving platform that indexes vectors, tensors, text and structured data, selects a subset at query time, evaluates machine-learned ranking models over it and returns results in under 100 ms while the corpus changes, across many nodes. The Java and C++ engine builds from this repo with a release every morning Monday to Thursday. Getting started and self-hosting live in docs.vespa.ai; Vespa Cloud is the hosted option.

Strengths

  • Vectors, tensors, text and structured data queried and ranked together
  • Machine-learned ranking models evaluated at serving time
  • Runs hundreds of thousands of queries per second on large internet services
  • Sample applications repo plus detailed docs

Weaknesses

  • README covers building, not running; install details live in docs
  • Heavy platform (Java and C++ engine) sized for multi-node clusters
  • C++ builds require AlmaLinux 8; Java needs JDK 17 and Maven
  • A new release every weekday morning Monday to Thursday; versions churn
  • no GPU
  • Models: machine-learned ranking models evaluated in Vespa

Written from each project's README and checked facts. Spot something wrong? Report it on GitHub (opens in a new tab).