Skip to content

feature: Valkey vector store backend #1611

@daric93

Description

@daric93

Describe the feature

Add Valkey as a VectorStoreBackend in pkg/vectorstore/ using valkey-glide Go client with CustomCommand for ValkeySearch operations (FT.CREATE, FT.SEARCH, FT.AGGREGATE, FT.DROPINDEX). This extends Valkey support to the VectorStore interface, complementing the existing Valkey CacheBackend work (#1484). Native valkey-glide search commands are expected in the 2.4 release (Q2 2026); a follow-up story will migrate from CustomCommand to native API.

Primary layer

plugin

Why this layer?

The vector store system is implemented as a pluggable architecture where different backends (Memory, Milvus, Llama Stack) implement the VectorStoreBackend interface. Adding Valkey follows this same plugin pattern, integrating at the vector store backend layer without requiring changes to the core semantic router logic.

Why do you need this feature?

Organizations wanting Valkey as their unified data layer for vLLM semantic router currently can't use it for RAG vector storage, document management, or hybrid search — forcing a separate vector database (e.g., Milvus) alongside Valkey. This increases operational complexity. Completing Valkey's VectorStore integration enables a single-backend deployment for both caching and vector storage, reducing infrastructure overhead while maintaining BSD licensing compliance.

Additional context

  • Related: feature: add a Valkey cache backend #1484 adds Valkey CacheBackend in pkg/cache/.
  • Implementation follows existing backend patterns, primarily milvus_backend.go as reference.
  • All FT.* commands issued via valkey-glide CustomCommand until native API lands in v2.4.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions