RUNLOCALAIv38
->Will it run?Best GPUCompareTroubleshootStartLearnPulseModelsHardwareToolsBench
Run check
RUNLOCALAI

Independently operated catalog for local-AI hardware and software. Hand-written verdicts. Source-cited claims. Reproducible commands when we have them.

OP·Eruo Fredoline
DIR
  • Models
  • Hardware
  • Tools
  • Benchmarks
TOOLS
  • Will it run?
  • Compare hardware
  • Cost vs cloud
  • Choose my GPU
  • Prompting kits
  • Quick answers
REF
  • All buyer guides
  • Learn local AI
  • Methodology
  • Glossary
  • Errors KB
  • Trust
EDITOR
  • About
  • Author
  • How we make money
  • Editorial policy
  • Contact
LEGAL
  • Privacy
  • Terms
  • Sitemap
MAIL · MONTHLY DIGEST
Get monthly local AI changes
Monthly recap. No spam.
DISCLOSURE

Some links on this site are affiliate links (Amazon Associates and other first-class retailers). When you buy through them, we earn a small commission at no extra cost to you. Affiliate links do not influence our verdicts — there are cards we rate highly that we don't have affiliate relationships with, and cards that sell well that we refuse to recommend. Read more →

© 2026 runlocalai.coIndependently operated
RUNLOCALAI · v38
  1. >
  2. Home
  3. /Tools
  4. /Redis (vector search)
server
Open source
free (Redis OSS) + Redis Cloud

Redis (vector search)

Vector search inside the same Redis you already run. HNSW + flat indices, hybrid filtering with FT.SEARCH. The pragmatic pick when you don't want to add another service to ops.

By Eruo Fredoline·Last verified Jun 12, 2026·65,000 GitHub stars

Overview

What it is and how it works

Redis Stack (and Redis 8+, which folds the search module into core) adds vector similarity search to the same in-memory data engine that has run caches, queues, and session stores for well over a decade. The feature lives inside the FT.SEARCH / FT.AGGREGATE query engine, originally built for full-text and secondary indexing on hashes and JSON documents. Vectors are stored as a field type alongside your normal fields — a product ID, a timestamp, a tag array, an embedding — and Redis indexes that field with either a flat (brute-force) index or HNSW (Hierarchical Navigable Small World), the same graph-based approximate nearest neighbor structure used by Qdrant, Milvus, and most modern ANN libraries. You choose the distance metric (cosine, L2, inner product) at index-creation time.

The architectural distinction that matters is that this is not a bolt-on vector database — it's a query capability grafted onto Redis's existing data model. Everything lives in RAM (with optional AOF/RDB persistence to disk for durability, not for serving), so lookups are single-digit-millisecond regardless of whether you're doing a plain key GET or a KNN vector query. Because vector fields sit next to ordinary Redis fields, you get hybrid queries for free: FT.SEARCH can combine a vector KNN clause with tag filters, numeric range filters, and full-text matching in one round trip, using Redis's existing query syntax rather than a bolted-on filter DSL. That's the practical payoff of "search inside the database you already have" — filtering by category:electronics AND price:[10 100] alongside a KNN clause doesn't require a second system or a client-side join.

The tradeoff is baked into the architecture: HNSW graphs and flat indices in Redis are memory-resident, full stop. There's no disk-backed index tier, no memory-mapped fallback the way some purpose-built vector stores offer for cold data. Every vector you index costs RAM for the vector itself, the HNSW graph edges, and Redis's own per-key overhead. This is a deliberate design choice that trades scale-to-disk flexibility for the low, predictable latency Redis is known for.

Deployment patterns

Solo/prototype: docker run redis/redis-stack (or redis-stack-server for a headless variant) gets you a working vector index in one command, with RedisInsight as an optional GUI for poking at the data. This is the common path for RAG prototypes where the team already has Redis running for caching or sessions and wants to avoid standing up Qdrant or a managed Pinecone account just to test an embedding pipeline. FT.CREATE defines the index schema (vector field dimensions, algorithm, distance metric) once; ingestion is then just HSET or JSON.SET calls with the embedding as one field among others.

Homelab/small team: Redis with persistence enabled (AOF + periodic RDB snapshots) running as a systemd service or Docker container with a mounted volume. This is where the "already runs in your stack" pitch pays off most: if you're running Redis for job queues (Celery/BullMQ/Sidekiq backends), rate limiting, or caching, adding vector search means one more index definition, not one more service to patch, monitor, and back up. Memory sizing is the main planning task — budget RAM for embeddings (dimension × 4 bytes for float32, times row count) plus HNSW graph overhead, which typically adds a meaningful multiple on top of raw vector size depending on the M parameter.

Team/production server: Redis Cluster for horizontal scaling and sharding, or Redis Cloud (the managed offering) when you don't want to own failover and resharding operations. Redis Sentinel or Cluster mode handles HA. At this scale the RAM-cost-scales-linearly constraint becomes a real budgeting line item — teams either accept the cost for the latency win, tier hot vs. cold data (recent embeddings in Redis, bulk archive in a cheaper store), or move to a disk-capable vector database once collection size passes the point where RAM becomes the dominant cost driver.

How it compares

Against Qdrant, Redis is the "convenience over specialization" choice: Qdrant has richer payload filtering, disk-backed storage options for datasets that don't fit in RAM, and quantization features purpose-built for vector workloads. Redis wins when you already run Redis and want to avoid operating a second stateful service, and when your working set genuinely fits in memory.

Against Milvus, the comparison is similar but starker at scale — Milvus is built for billion-vector collections with distributed sharding, multiple index types tuned for different recall/speed tradeoffs, and GPU-accelerated indexing. Redis's vector search is comparatively simple (HNSW or flat, no GPU path) and is not trying to compete at that scale; it's aimed at datasets where sub-ms latency and operational simplicity matter more than maximum collection size.

Against pgvector, the two are philosophically similar — "add vector search to infrastructure you already run" — but pgvector piggybacks on Postgres's transactional, disk-backed model (better for datasets larger than RAM, ACID guarantees), while Redis piggybacks on an in-memory model (better raw latency, worse cost-per-GB at scale). Teams already on Postgres often prefer pgvector for the same "no new service" logic Redis users apply to Redis.

Best use cases and honest limitations

Redis vector search is the right call when: you already operate Redis in production, your embedding collection is small-to-medium (thousands to low millions of vectors, not hundreds of millions), you need hybrid vector + metadata + full-text queries in a single request, and sub-millisecond latency matters more than exhaustive recall tuning. It's a strong fit for RAG chatbots with a bounded document set, recommendation systems layered on existing Redis-backed product catalogs, and semantic caching (matching incoming queries against previously-seen embeddings) — a pattern Redis itself promotes.

It's the wrong call when your vector collection is large enough that RAM cost dominates your infrastructure bill — that's when Qdrant, Milvus, or a disk-backed store earns its keep. It's also weaker than dedicated vector databases on filtering sophistication, index-tuning knobs, and multi-tenancy features aimed specifically at vector workloads. Teams without existing Redis expertise gain little by adopting it purely for vector search — the value proposition is entirely about reusing infrastructure and operational knowledge you already have, not about best-in-class vector search capability.

Stack & relationships

How Redis (vector search) relates to other entries in the catalog — recommended pairings, alternatives, dependencies, and edges to avoid. Each edge carries a one-line operator note from our editorial team.

Redis (vector search) ↔ ecosystem

Alternatives

  • Alternative to
    Qdrant

    Redis Vector is the right choice when you already run Redis for caching and want vector search without adding another service. Slower than purpose-built vector DBs at scale.

Pros

  • Already runs in your stack
  • Sub-ms latency
  • Hybrid with full-text out of the box

Cons

  • Memory-resident — RAM cost grows linearly
  • Less specialized than Qdrant/Milvus

Compatibility

Operating systems
macOS
Linux
Windows
Docker
GPU backends
n/a
LicenseOpen source · free (Redis OSS) + Redis Cloud

Runtime health

Operator-grade signals on how actively Redis (vector search) is being maintained, how fresh its measurements are, and what failure classes operators have flagged. Every label below is anchored to a real date or count — we never infer maintainer activity we can't show.

Release cadence

Derived from the most recent editorial signal on this row.

Active
Updated Jul 3, 2026

32 days since last refresh · source: enrichedAt

Benchmark freshness

How recent the editorial measurements on this runtime are.

0editorial benchmarks

No editorial benchmarks for this runtime yet.

Community reproduction

Submissions that match an editorial measurement on similar hardware.

0reproduced reports

No community reproductions on file yet.

Get Redis (vector search)

Official site
https://redis.io/docs/latest/develop/interact/search-and-query/
GitHub
https://github.com/redis/redis

Frequently asked

Is Redis (vector search) free?

Yes — Redis (vector search) is free to use and open-source.

What operating systems does Redis (vector search) support?

Redis (vector search) supports macOS, Linux, Windows, Docker.

Does Redis (vector search) need a GPU?

No — Redis (vector search) runs on CPU; it does not require or use a GPU.
See something off?Report outdated·Suggest a correctionWe read every submission. Editorial review takes 1-7 days.

Reviewed by RunLocalAI Editorial. See our editorial policy for how we evaluate tools.

Related — keep moving

Compare hardware
  • RTX 4090 vs RTX 5090 →
  • Dual 3090 vs RTX 5090 (tensor-parallel) →
  • RTX 5090 vs H100 →
Buyer guides
  • Best GPU for local AI →
  • Best AI PC build under $2,000 →
When it doesn't work
  • vLLM CUDA version mismatch →
  • Tensor parallelism crash →
  • CUDA driver too old →
  • CUDA out of memory →
Recommended hardware
  • RTX 4090 (24 GB) →
  • RTX 5090 (32 GB) →
  • H100 PCIe (datacenter) →
Alternatives
SGLangText Generation Inference (TGI)ExoWeaviateQdrantNeo4j GraphRAGChromaGraphiti (Zep)
Before you buy

Verify Redis (vector search) runs on your specific hardware before committing money.

Will it run on my hardware? →Custom hardware comparison →GPU recommender (4 questions) →