freshcrate
Skin:/
Home > Databases > redis-vl-python

redis-vl-python

Redis Vector Library (RedisVL) -- the AI-native Python client for Redis.

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

Redis Vector Library (RedisVL) -- the AI-native Python client for Redis.

README

Redis

Redis Vector Library

The AI-native Redis Python client

License: MIT pypi PyPI - Downloads GitHub stars

Code style: black Language GitHub last commit

Documentation โ€ข Recipes โ€ข GitHub


Introduction

Redis Vector Library (RedisVL) is the production-ready Python client for AI applications built on Redis. Lightning-fast vector search meets enterprise-grade reliability.

Perfect for building RAG pipelines with real-time retrieval, AI agents with memory and semantic routing, and recommendation systems with fast search and reranking.

๐ŸŽฏ Core Capabilities ๐Ÿš€ AI Extensions ๐Ÿ› ๏ธ Dev Utilities
Index Management
Schema design, data loading, CRUD ops
Semantic Caching
Reduce LLM costs & boost throughput
CLI
Index management from terminal
Vector Search
Similarity search with metadata filters
LLM Memory
Agentic AI context management
Async Support
Async indexing and search for improved performance
Complex Filtering
Combine multiple filter types
Semantic Routing
Intelligent query classification
Vectorizers
8+ embedding provider integrations
Hybrid Search
Combine semantic & full-text signals
Embedding Caching
Cache embeddings for efficiency
Rerankers
Improve search result relevancy
MCP Server
Expose an existing Redis index to MCP clients

๐Ÿ’ช Getting Started

Installation

Install redisvl into your Python (>=3.10) environment using pip:

pip install redisvl

Install the MCP server extra when you want to expose an existing Redis index through MCP:

pip install redisvl[mcp]

For more detailed instructions, visit the installation guide. For MCP concepts and setup, see the RedisVL MCP docs and the MCP how-to guide.

Redis

Choose from multiple Redis deployment options:

Redis Cloud - Managed cloud database (free tier available)

Redis Cloud offers a fully managed Redis service with a free tier, perfect for getting started quickly.

Docker - Local development

Run Redis locally using Docker:

docker run -d --name redis -p 6379:6379 redis:latest

This runs Redis 8+ with built-in vector search capabilities.

Redis Enterprise - Commercial, self-hosted database

Redis Enterprise provides enterprise-grade features for production deployments.

Redis Sentinel - High availability with automatic failover

Configure Redis Sentinel for high availability:

# Connect via Sentinel
redis_url="redis+sentinel://sentinel1:26379,sentinel2:26379/mymaster"
Azure Managed Redis - Fully managed Redis Enterprise on Azure

Azure Managed Redis provides fully managed Redis Enterprise on Microsoft Azure.

๐Ÿ’ก Tip: Enhance your experience and observability with the free Redis Insight GUI.

Overview

Index Management

  1. Design a schema for your use case that models your dataset with built-in Redis indexable fields (e.g. text, tags, numerics, geo, and vectors).

    Load schema from YAML file
    index:
      name: user-idx
      prefix: user
      storage_type: json
    
    fields:
      - name: user
        type: tag
      - name: credit_score
        type: tag
      - name: job_title
        type: text
        attrs:
          sortable: true
          no_index: false  # Index for search (default)
          unf: false       # Normalize case for sorting (default)
      - name: embedding
        type: vector
        attrs:
          algorithm: flat
          dims: 4
          distance_metric: cosine
          datatype: float32
    from redisvl.schema import IndexSchema
    
    schema = IndexSchema.from_yaml("schemas/schema.yaml")
    Load schema from Python dictionary
    from redisvl.schema import IndexSchema
    
    schema = IndexSchema.from_dict({
        "index": {
            "name": "user-idx",
            "prefix": "user",
            "storage_type": "json"
        },
        "fields": [
            {"name": "user", "type": "tag"},
            {"name": "credit_score", "type": "tag"},
            {
                "name": "job_title",
                "type": "text",
                "attrs": {
                    "sortable": True,
                    "no_index": False,  # Index for search
                    "unf": False        # Normalize case for sorting
                }
            },
            {
                "name": "embedding",
                "type": "vector",
                "attrs": {
                    "algorithm": "flat",
                    "datatype": "float32",
                    "dims": 4,
                    "distance_metric": "cosine"
                }
            }
        ]
    })

    ๐Ÿ“š Learn more about schema design and schema creation.

  2. Create a SearchIndex class with an input schema to perform admin and search operations on your index in Redis:

    from redis import Redis
    from redisvl.index import SearchIndex
    
    # Define the index
    index = SearchIndex(schema, redis_url="redis://localhost:6379")
    
    # Create the index in Redis
    index.create()

    An async-compatible index class also available: AsyncSearchIndex.

  3. Load and fetch data to/from your Redis instance:

    data = {"user": "john", "credit_score": "high", "embedding": [0.23, 0.49, -0.18, 0.95]}
    
    # load list of dictionaries, specify the "id" field
    index.load([data], id_field="user")
    
    # fetch by "id"
    john = index.fetch("john")

Retrieval

Define queries and perform advanced searches over your indices, including vector search, complex filtering, and hybrid search combining semantic and full-text signals.

Quick Reference: Query Types
Query Type Use Case Description
VectorQuery Semantic similarity search Find similar vectors with optional filters
RangeQuery Distance-based search Vector search within a defined distance range
FilterQuery Metadata filtering Filter and search using metadata fields
TextQuery Full-text search BM25-based keyword search with field weighting
HybridQuery Combined search Combine semantic + full-text signals (Redis 8.4.0+)
CountQuery Counting records Count documents matching filter criteria

Vector Search

  • VectorQuery - Flexible vector queries with customizable filters enabling semantic search:

    from redisvl.query import VectorQuery
    
    query = VectorQuery(
      vector=[0.16, -0.34, 0.98, 0.23],
      vector_field_name="embedding",
      num_results=3,
      # Optional: tune search performance with runtime parameters
      ef_runtime=100  # HNSW: higher for better recall
    )
    # run the vector search query against the embedding field
    results = index.query(query)
  • RangeQuery - Vector search within a defined range paired with customizable filters

Complex Filtering

Build complex filtering queries by combining multiple filter types (tags, numerics, text, geo, timestamps) using logical operators:

```python
from redisvl.query import VectorQuery
from redisvl.query.filter import Tag, Num

# Combine multiple filter types
tag_filter = Tag("user") == "john"
price_filter = Num("price") >= 100

# Create complex filtering query with combined filters
query = VectorQuery(
    vector=[0.16, -0.34, 0.98, 0.23],
    vector_field_name="embedding",
    filter_expression=tag_filter & price_filter,
    num_results=10
)
results = index.query(query)
```
  • FilterQuery - Standard search using filters and full-text search
  • CountQuery - Count the number of indexed records given attributes
  • TextQuery - Full-text search with support for field weighting and BM25 scoring

Learn more about building complex filtering queries.

Hybrid Search

Combine semantic (vector) search with full-text (BM25) search signals for improved search quality:

  • HybridQuery - Native hybrid search combining text and vector similarity (Redis 8.4.0+):

    from redisvl.query import HybridQuery
    
    hybrid_query = HybridQuery(
        text="running shoes",
        text_field_name="description",
        vector=[0.1, 0.2, 0.3],
        vector_field_name="embedding",
        combination_method="LINEAR",  # or "RRF"
        num_results=10
    )
    results = index.query(hybrid_query)
  • AggregateHybridQuery - Hybrid search using aggregation (compatible with earlier Redis versions)

Learn more about hybrid search.

Dev Utilities

Vectorizers

Integrate with popular embedding providers to greatly simplify the process of vectorizing unstructured data for your index and queries.

Supported Vectorizer Providers
from redisvl.utils.vectorize import CohereTextVectorizer

# set COHERE_API_KEY in your environment
co = CohereTextVectorizer()

embedding = co.embed(
    text="What is the capital city of France?",
    input_type="search_query"
)

embeddings = co.embed_many(
    texts=["my document chunk content", "my other document chunk content"],
    input_type="search_document"
)

Learn more about using vectorizers in your embedding workflows.

Rerankers

Integrate with popular reranking providers to improve the relevancy of the initial search results from Redis

Extensions

RedisVL Extensions provide production-ready modules implementing best practices and design patterns for working with LLM memory and agents. These extensions encapsulate learnings from our user community and enterprise customers.

๐Ÿ’ก Have an idea for another extension? Open a PR or reach out to us at applied.ai@redis.com. We're always open to feedback.

Semantic Caching

Increase application throughput and reduce the cost of using LLM models in production by leveraging previously generated knowledge with the SemanticCache.

Example: Semantic Cache Usage
from redisvl.extensions.cache.llm import SemanticCache

# init cache with TTL and semantic distance threshold
llmcache = SemanticCache(
    name="llmcache",
    ttl=360,
    redis_url="redis://localhost:6379",
    distance_threshold=0.1  # Redis COSINE distance [0-2], lower is stricter
)

# store user queries and LLM responses in the semantic cache
llmcache.store(
    prompt="What is the capital city of France?",
    response="Paris"
)

# quickly check the cache with a slightly different prompt (before invoking an LLM)
response = llmcache.check(prompt="What is France's capital city?")
print(response[0]["response"])
>>> Paris

Learn more about semantic caching for LLMs.

Embedding Caching

Reduce computational costs and improve performance by caching embedding vectors with their associated text and metadata using the EmbeddingsCache.

Example: Embedding Cache Usage
from redisvl.extensions.cache.embeddings import EmbeddingsCache
from redisvl.utils.vectorize import HFTextVectorizer

# Initialize embedding cache
embed_cache = EmbeddingsCache(
    name="embed_cache",
    redis_url="redis://localhost:6379",
    ttl=3600  # 1 hour TTL
)

# Initialize vectorizer with cache
vectorizer = HFTextVectorizer(
    model="sentence-transformers/all-MiniLM-L6-v2",
    cache=embed_cache
)

# First call computes and caches the embedding
embedding = vectorizer.embed("What is machine learning?")

# Subsequent calls retrieve from cache (much faster!)
cached_embedding = vectorizer.embed("What is machine learning?")
>>> Cache hit! Retrieved from Redis in <1ms

Learn more about embedding caching for improved performance.

LLM Memory

Improve personalization and accuracy of LLM responses by providing user conversation context. Manage access to memory data using recency or relevancy, powered by vector search with the MessageHistory.

Example: Message History Usage
from redisvl.extensions.message_history import SemanticMessageHistory

history = SemanticMessageHistory(
    name="my-session",
    redis_url="redis://localhost:6379",
    distance_threshold=0.7
)

# Supports roles: system, user, llm, tool
# Optional metadata field for additional context
history.add_messages([
    {"role": "user", "content": "hello, how are you?"},
    {"role": "llm", "content": "I'm doing fine, thanks."},
    {"role": "user", "content": "what is the weather going to be today?"},
    {"role": "llm", "content": "I don't know", "metadata": {"model": "gpt-4"}}
])

# Get recent chat history
history.get_recent(top_k=1)
# >>> [{"role": "llm", "content": "I don't know", "metadata": {"model": "gpt-4"}}]

# Get relevant chat history (powered by vector search)
history.get_relevant("weather", top_k=1)
# >>> [{"role": "user", "content": "what is the weather going to be today?"}]

# Filter messages by role
history.get_recent(role="user")  # Get only user messages
history.get_recent(role=["user", "system"])  # Or multiple roles

Learn more about LLM memory.

Semantic Routing

Build fast decision models that run directly in Redis and route user queries to the nearest "route" or "topic".

Example: Semantic Router Usage
from redisvl.extensions.router import Route, SemanticRouter

routes = [
    Route(
        name="greeting",
        references=["hello", "hi"],
        metadata={"type": "greeting"},
        distance_threshold=0.3,
    ),
    Route(
        name="farewell",
        references=["bye", "goodbye"],
        metadata={"type": "farewell"},
        distance_threshold=0.3,
    ),
]

# build semantic router from routes
router = SemanticRouter(
    name="topic-router",
    routes=routes,
    redis_url="redis://localhost:6379",
)

router("Hi, good morning")
# >>> RouteMatch(name='greeting', distance=0.273891836405)

Learn more about semantic routing.

Command Line Interface

Create, destroy, and manage Redis index configurations from a purpose-built CLI interface: rvl.

$ rvl -h

usage: rvl <command> [<args>]

Commands:
        index       Index manipulation (create, delete, etc.)
        mcp         Run the RedisVL MCP server
        version     Obtain the version of RedisVL
        stats       Obtain statistics about an index

Run the MCP server over stdio (default):

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml

Or over Streamable HTTP for remote MCP clients:

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml --transport streamable-http --host 0.0.0.0 --port 8000

Or over SSE:

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml --transport sse --host 0.0.0.0 --port 9000

Use --read-only to expose search without upsert.

Read more about using the CLI and running RedisVL MCP.

MCP Server

RedisVL includes an MCP server that lets MCP-compatible clients search or upsert data in an existing Redis index through a small, stable tool contract.

The server:

  • connects to one existing Redis Search index
  • reconstructs the schema from Redis at startup
  • uses the configured vectorizer for query embedding and optional upsert embedding
  • exposes search-records and, unless read-only mode is enabled, upsert-records
  • supports stdio (default), Streamable HTTP, and SSE transports

Run it over stdio (default):

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml

Run it over Streamable HTTP for remote clients:

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml --transport streamable-http --host 0.0.0.0 --port 8000

Use --read-only when clients should only search:

uvx --from redisvl[mcp] rvl mcp --config /path/to/mcp.yaml --read-only

For configuration details, tool arguments, and examples, see the RedisVL MCP docs and the MCP how-to guide.

๐Ÿš€ Why RedisVL?

Redis is a proven, high-performance database that excels at real-time workloads. With RedisVL, you get a production-ready Python client that makes Redis's vector search, caching, and session management capabilities easily accessible for AI applications.

Built on the Redis Python client, RedisVL provides an intuitive interface for vector search, LLM caching, and conversational AI memory - all the core components needed for modern AI workloads.

๐Ÿ˜ Helpful Links

For additional help, check out the following resources:

๐Ÿซฑ๐Ÿผโ€๐Ÿซฒ๐Ÿฝ Contributing

Please help us by contributing PRs, opening GitHub issues for bugs or new feature ideas, improving documentation, or increasing test coverage. Read more about how to contribute!

๐Ÿšง Maintenance

This project is supported by Redis, Inc on a good faith effort basis. To report bugs, request features, or receive assistance, please file an issue.

Release History

VersionChangesUrgencyDate
v0.20.0#### ๐Ÿš€ Enhancement - feat: Index Migrator [#583](https://github.com/redis/redis-vl-python/pull/583) ([@nkanu17](https://github.com/nkanu17)) #### Authors: 1 - nitin ([@nkanu17](https://github.com/nkanu17))High6/4/2026
v0.19.0#### ๐Ÿš€ Enhancement - feat: add Ollama text vectorizer [#617](https://github.com/redis/redis-vl-python/pull/617) ([@s-agbede](https://github.com/s-agbede)) #### ๐Ÿ› Bug Fix - updates for 0.6.0 [#621](https://github.com/redis/redis-vl-python/pull/621) ([@rbs333](https://github.com/rbs333)) - fix(query)!: Remove epsilon parameter from VectorQuery [#612](https://github.com/redis/redis-vl-python/pull/612) ([@booleanhunter](https://github.com/booleanhunter)) #### Authors: 3 - [@s-agbede](https://High5/27/2026
v0.18.2#### ๐Ÿ› Bug Fix - update for sql-redis 0.5.0 [#598](https://github.com/redis/redis-vl-python/pull/598) ([@rbs333](https://github.com/rbs333)) #### Authors: 1 - Robert Shelton ([@rbs333](https://github.com/rbs333))High5/12/2026
v0.18.1#### ๐Ÿ› Bug Fix - docs(cli): Clean up CLI command structure and improve documentation [#594](https://github.com/redis/redis-vl-python/pull/594) ([@limjoobin](https://github.com/limjoobin) [@vishal-bala](https://github.com/vishal-bala)) - Add JSON output for RedisVL CLI read commands [#593](https://github.com/redis/redis-vl-python/pull/593) ([@limjoobin](https://github.com/limjoobin)) - fix(MCP): Avoid required search config fields that aren't relevant to the configured search type [#591](htHigh4/30/2026
v0.18.0#### ๐Ÿš€ Enhancement - refactor(python): drop Python 3.9 support [#587](https://github.com/redis/redis-vl-python/pull/587) ([@vishal-bala](https://github.com/vishal-bala)) #### ๐Ÿ“ Documentation - Remove empty cell from 11_advanced_queries.ipynb [#584](https://github.com/redis/redis-vl-python/pull/584) ([@paoloredis](https://github.com/paoloredis)) - Update langcache documentation [#586](https://github.com/redis/redis-vl-python/pull/586) ([@justin-cechmanek](https://github.com/justin-cecHigh4/21/2026
v0.17.1## What's Changed * feat(mcp): add Streamable HTTP and SSE transport support by @nkanu17 in https://github.com/redis/redis-vl-python/pull/580 * Normalize Redis connection handling and CLI URL resolution by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/576 * chore(release): bump version to 0.17.1 by @nkanu17 in https://github.com/redis/redis-vl-python/pull/581 **Full Changelog**: https://github.com/redis/redis-vl-python/compare/v0.17.0...v0.17.1High4/10/2026
v0.17.0#### ๐Ÿš€ Enhancement - feat(MCP): Introduce a configurable MCP server for RedisVL indexes [#575](https://github.com/redis/redis-vl-python/pull/575) ([@vishal-bala](https://github.com/vishal-bala)) - Add GEO and Date SQL integration tests [#533](https://github.com/redis/redis-vl-python/pull/533) ([@nkanu17](https://github.com/nkanu17)) - Expand SQL section in queries concept doc with link to guide [#533](https://github.com/redis/redis-vl-python/pull/533) ([@nkanu17](https://github.com/nkanu17Medium4/10/2026
v0.16.0## What's Changed * ci(release): Run automated release workflows outside PR context by @vishal-bala in https://github.com/redis/redis-vl-python/pull/513 * Update URL in README file by @nabilasiregar in https://github.com/redis/redis-vl-python/pull/516 * Add `count()`support to message history by @GDaamn in https://github.com/redis/redis-vl-python/pull/517 * Add ChatRole enum for message history role validation by @nabilasiregar in https://github.com/redis/redis-vl-python/pull/518 * feat: adMedium3/13/2026
v0.15.0#### ๐Ÿš€ Enhancement - Enable multiple prefixes per index [#471](https://github.com/redis/redis-vl-python/pull/471) ([@rbs333](https://github.com/rbs333)) - Add Python 3.14 support [#468](https://github.com/redis/redis-vl-python/pull/468) ([@abrookins](https://github.com/abrookins) [@vishal-bala](https://github.com/vishal-bala)) - Expose max_distance as an optional setting in multi vector queries [#478](https://github.com/redis/redis-vl-python/pull/478) ([@justin-cechmanek](https://github.coLow2/27/2026
v0.14.0# Changes - Feat/sql redis query (#467) - Fix index clear (#463) - ci: Minor clean-ups for GH Actions workflow for testing fork PRs (#466) - ci: Enable GH Actions testing for forked PRs (#462) - Patch/dtype vectorizer from dict (#461) ## ๐Ÿ› Bug Fixes - fix: Avoid catching non-exception; skip retry for ValueErrors from VertexAI (#470) ## Contributors We'd like to thank all the contributors who worked on this release! @dfroger, @rbs333 and @vishal-bala Low2/6/2026
v0.13.2This releases fixes a bug where the `redisvl.utils.vectorize` module had an unintentional dependency on the `botocore` package.Low12/19/2025
v0.13.0# Changes ## New Features - Added `HybridQuery` interface for `FT.HYBRID` search command introduced in Redis 8.4.0 (#447, #455) - Added support for multimodal embeddings in vectorizers, with implementations for Amazon Bedrock, Vertex AI, Voyage AI (#452) ## Enhancements - Added support for item-specific TTLs to the LangCache semantic cache implementation (#442) - Added support for wildcard pattern matching for Tag filters using the modulo (%) operator (#454) ## Fixes - Fixed Low12/19/2025
v0.12.1# Changes - Add runtime parameter support for HNSW and SVS-VAMANA vector indexes (#439) ## Contributors We'd like to thank all the contributors who worked on this release! @nkanu17 Low11/25/2025
v0.12.0# Changes ## New Features - Add index level stopwords support in configuration in index schema (#436) ## Bug fixes - Fix more problematic attribute values for LangCache (#438) - Decode LangCache attribute values on retrieval (#437) - Ensure field modifiers (schema) follow canonical order for RediSearch parser (#434) ## Contributors We'd like to thank all the contributors who worked on this release! @abrookins and @nkanu17 Low11/21/2025
v0.11.1# Changes ## Fixes - Fix LangCache clear() 400 error by using flush() API (#428) ## Tests - Add LangCache integration tests (#429) ## Docs - Fix broken links to hash and json data types (#421) - Fix broken link in VectorQuery docs (#426) ## Contributors We'd like to thank all the contributors who worked on this release! @Copilot, @abrookins, @copilot-swe-agent, @nicoweidner and @vinaykulk621 Low11/21/2025
v0.11.0# Changes ## New Features - Add LangCache integration (LLM cache extension) (#408, #418) - Add SVS-VAMANA implementation (#404) ## Enhancements - Add optional text word weights to HybridQuery and TextQuery (#410) - Vector objects automatically convert vectors to byte strings (#411) ## Fixes - Rename HybridQuery to AggregateHybridQuery (#422) - Fix flaky text word weights (#416) - Fix typo in doc string (#414) - Fix inconsistent FLAT/HNSW algorithm recommendations (#409) ## DLow11/7/2025
v0.10.0# Changes - Adds multi vector query class (#402) ## Contributors We'd like to thank all the contributors who worked on this release! @justin-cechmanek and @rbs333 Low10/16/2025
v0.9.1# Changes - refactor: obtain version information dynamically from the installed pโ€ฆ (#401) - release: bump version to 0.9.1 (#400) ## Contributors We'd like to thank all the contributors who worked on this release! @bsbodden Low10/1/2025
v0.9.0# ๐Ÿš€ RedisVL 0.9.0 Release Notes **Release Date:** October 1, 2025 We're excited to announce RedisVL 0.9.0, featuring significant enhancements to conversational AI, advanced query capabilities, and enterprise-grade reliability improvements. --- ## โœจ Highlights ### ๐Ÿค– Enhanced LLM Memory & Conversational AI #### Message History Gets Smarter Your AI agents and chatbots now have more powerful memory capabilities: - **๐Ÿท๏ธ Tool Call Support** - Native support for `tool` role aLow10/1/2025
v0.8.2# Changes - Filter expression as native string (#367) ## Contributors We'd like to thank all the contributors who worked on this release! @rbs333 Low8/26/2025
v0.8.1# Changes - disable progress bar by default (#363) ## ๐Ÿš€ New Features - Adds metadata field to chat message history (#357) ## Contributors We'd like to thank all the contributors who worked on this release! @justin-cechmanek and @rbs333 Low8/19/2025
v0.8.0# Changes ## ๐Ÿš€ New Features - Migrate from poetry to UV for improved dependency mgmt (#355) - Factor out threshold optimizers and cleanup README (#354) - Update readthedocs config to use UV (#356) - Add support for newer Voyage 3.5 models (#339) ## ๐Ÿ› Bug Fixes - Fix spelling errors (#351) - Skip echo call for RedisCluster mode (#344) - Fix numpy version and remove scipy optional (#347) - Rename 0_5_0_release.ipynb to 0_5_1_release.ipynb (#335) - Fix headings for 08_semantic_routLow6/24/2025
v0.7.0# Changes - Release prep for 0.7.0 (#343) - Fix various commands to work with Redis Cluster (#338) - Add Claude Code GitHub Workflow (#340) ## ๐Ÿš€ New Features - Add index empty and missing support (#341) ## Contributors We'd like to thank all the contributors who worked on this release! @abrookins and @tylerhutcherson Low5/30/2025
v0.6.0# Changes ## โœจ New Features - **Embeddings Cache Support** Embedding caching is now enabled across all vectorizers, improving performance and reusability. (#318, #320, #325) - **Semantic Router Enhancements** Reference updates are now supported in semantic routers. (#322) - **Lazy Import Strategy** Introduced a `lazy_import` utility to defer loading of third-party libraries. (#330, #331) ## ๐Ÿ› ๏ธ Improvements - **New Default Embeddings Model** ChangLow5/1/2025
0.5.2# Changes ## ๐Ÿ› Bug Fixes - Widen ml-dtypes pkg range (#315) - Fix HybridQuery class description (#314) ## Contributors We'd like to thank all the contributors who worked on this release! @paololazzari and @tylerhutcherson Low4/9/2025
0.5.1# Changes ## ๐Ÿš€ New Features - Add helpers for full-text and hybrid search queries (#303) - Add datetime and timestamp filters (#295) - Add distance threshold optimizer (#292) - Add option to normalize vector distances on query (#298 ) - Add option to validate data against the schema with Pydantic (#304) - Add support for HYBRID_POLICY on KNN queries with filters (#299) ## ๐Ÿ› Bug Fixes - Validate passed-in Redis clients (#296) - Improve vectorizer kwargs and typing (#291) ##Low4/6/2025
0.4.1# Changes ## ๐Ÿ› Bug Fixes - Fix Redis URL parameter name (#289) ## Contributors We'd like to thank all the contributors who worked on this release! @abrookins and @rbs333 Low2/21/2025
0.4.0# Changes ## ๐Ÿš€ New Features - Add nested JSON example to docs (#287) - Expand CLI usage examples and docs (#285) - Support Redis 8 (#282) - Support for int8 and uint8 dtypes in RedisVL Vectorizers (#279) - Use ULID instead of UUID4 (#277) - Support Python 3.13 (#272) ## ๐Ÿ› Bug Fixes - Patch dependabot security vulnerability in extras dependency (#284) ## ๐Ÿงฐ Maintenance - Refactor async client connection-handling (#280) - Upgrade to Pydantic V2 models (#281) - Avoid lookLow2/20/2025
0.3.9# Changes ## ๐Ÿš€ New Features - Integrate VoyageAI Vectorizer and Reranker class (#223) ## ๐Ÿ› Bug Fixes - Add a default for the `dtype` field of `BaseVectorizer` (#261) - Fix README Redis logo src (#265) - Fix recommender link (#259) - Fix asyncio.gather() call in SemanticCache.aheck (#263) ## ๐Ÿงฐ Maintenance - Add a Makefile again (#264) - Standardize GH actions workflows (#262) ## Contributors We'd like to thank all the contributors who worked on this release! @abrooLow1/27/2025
0.3.8## What's Changed * fix protobuf broken version for google (optional) dependencies by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/254 * migrates mistral vectorizer to new client by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/255 * sets the default datatype in our vectorizers to float32 if not specified by users by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/253 * Upgrade to readthedocs.org documentation by @tylerhutcherson in htLow1/10/2025
0.3.7## What's Changed * updates github link repo name in docs by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/241 * Rename mypy script to avoid version conflict by @rbs333 in https://github.com/redis/redis-vl-python/pull/245 * Update docs: add hf reranker, fix github links and searchindex links by @antonum in https://github.com/redis/redis-vl-python/pull/246 * BUG: fix missing redis_url fixture in integration tests by @bsbodden in https://github.com/redis/redis-vl-python/pull/Low12/3/2024
0.3.6## What's Changed * Expose show_progress_bar by @antonum in https://github.com/redis/redis-vl-python/pull/236 * Fix dtype parsing from vectorizer kwargs by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/237 * manually parse special attributes that have no associated value by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/239 * Release 0.3.6 by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/240 ## New Contributors * @antonum made their fiLow10/31/2024
0.3.5## What's Changed * Fix sentence transformers reranker import by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/231 * Expose aggregation API from SearchIndex by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/230 * Allow manual, user-defined strings as filters on queries by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/233 * Release 0.3.5 by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/234 **Full Changelog**: https:/Low10/10/2024
0.3.4## What's Changed * DOC-4198: add TCEs to the vector query page by @dwdougherty in https://github.com/redis/redis-vl-python/pull/221 * moves extension field names into constants file by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/225 * adds filter fields to cache key name hash by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/224 * adds support for new vector data types by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/222 * Fix moduLow10/2/2024
0.3.3## What's Changed * Refactor query classes by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/211 * Add async support to semantic cache extension by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/214 * Update cache check logic by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/216 * Support semantic cache TTL overrides on writes by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/217 * Version bump to 0.3.3 by @tylerhutchersLow9/9/2024
0.3.2## What's Changed * Fix cache schema overwrite by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/208 * bump to 0.3.2 by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/209 **Full Changelog**: https://github.com/redis/redis-vl-python/compare/0.3.1...0.3.2Low8/26/2024
0.3.1## What's Changed * Fix semantic cache with empty metadata by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/201 * update project readme and schema definitions by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/200 * Fix notebook CI by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/205 * Support distance threshold override by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/202 * Release 0.3.1 by @tylerhutcherson in https:/Low8/16/2024
0.3.0## What's Changed * adds check to ensure correct embedding vector dimensions are used by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/177 * Introduce the LLM session manager classes by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/141 * Add ability to clear ALL data associated with an index by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/179 * Improve caching ttl tests by @tylerhutcherson in https://github.com/redis/redis-vl-python/Low8/2/2024
0.2.3## What's Changed * Fix index loading empty array by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/173 * Enable creating an index "from_existing" by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/174 * bump to 0.2.3 by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/175 **Full Changelog**: https://github.com/redis/redis-vl-python/compare/0.2.2...0.2.3Low7/2/2024
0.2.2## What's Changed * Fix null numeric filter conditions by @bsbodden in https://github.com/redis/redis-vl-python/pull/164 * Fix typos by @joshrotenberg in https://github.com/redis/redis-vl-python/pull/161 * Fix typo in cli.ipynb docs example by @mankerious in https://github.com/redis/redis-vl-python/pull/168 * Add MistralAI text vectorizer by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/169 * adds custom vectorizer support by @justin-cechmanek in https://github.com/redis/redLow6/27/2024
0.2.1## What's Changed * temporarily disable codecov failures by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/153 * Reranker implementation using Cross Encoders (HuggingFace / SentenceTโ€ฆ by @bsbodden in https://github.com/redis/redis-vl-python/pull/150 * feat: adds optional sorting parameter to FilterQuery by @justin-cechmanek in https://github.com/redis/redis-vl-python/pull/148 * Rename repo to new location by @tylerhutcherson in https://github.com/redis/redis-vl-python/pull/154Low6/18/2024
0.2.0## What's Changed * Add support for AzureOpenAI by @ajac-zero in https://github.com/RedisVentures/redisvl/pull/131 * Add Azure OAI secrets to gh actions by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/142 * Poetry for Dependency Management and TestContainers for Integration Testing by @bsbodden in https://github.com/RedisVentures/redisvl/pull/134 * Initial reranker integration in RedisVL by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/139 * Repackage docLow5/1/2024
0.1.3## What's Changed * fix connection pool for SSL by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/129 * Update VertexAI Vectorizer by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/132 * corrects typos in overview and getting started examples by @justin-cechmanek in https://github.com/RedisVentures/redisvl/pull/135 * Address schema serialization bug by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/136 * Update README.md by @eltociear in hLow4/9/2024
0.1.2## What's Changed * Added ACRE to README by @MSFTeegarden in https://github.com/RedisVentures/redisvl/pull/124 * OpenAI API client upgrade and code migration by @bsbodden in https://github.com/RedisVentures/redisvl/pull/126 * Small documentation updates by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/127 * update version to 0.1.2 by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/128 ## New Contributors * @MSFTeegarden made their first contribution in httpLow3/1/2024
0.1.1## What's Changed * Update Cohere client setting by @nabsabraham in https://github.com/RedisVentures/redisvl/pull/118 * Update and pin package dependency ranges by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/119 * Fix index.fetch() bug by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/120 * Fix vectorizer tests and docstrings by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/121 * Update package to 0.1.1 by @tylerhutcherson in https://gLow2/19/2024
0.1.0## What's Changed * Fixing release drafter to work aginst the main branch by @chayim in https://github.com/RedisVentures/redisvl/pull/102 * Upgrade to use Pydantic 2.x.x by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/101 * Finalize spec for index schema and fields by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/103 * Redis connection refactor by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/104 * Improve redisvl module structure by @Low2/8/2024
0.0.7## What's Changed * 0.0.6 Release by @Spartee in https://github.com/RedisVentures/redisvl/pull/100 **Full Changelog**: https://github.com/RedisVentures/redisvl/compare/0.0.5...0.0.7Low1/19/2024
0.0.5## What's Changed * Updating security contact email address by @chayim in https://github.com/RedisVentures/redisvl/pull/59 * Add support for CountQuery by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/65 * Update key prefix and access method by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/66 * Improve VectorField schema default args and tests by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/68 * Add optional data load preprocessor hookLow11/22/2023
0.0.4## What's Changed * Downgrade pydantic to 1.x by @Spartee in https://github.com/RedisVentures/redisvl/pull/50 * Add FilterQuery by @Spartee in https://github.com/RedisVentures/redisvl/pull/51 * Incorporate notebook tests by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/53 * Range query support by @Spartee in https://github.com/RedisVentures/redisvl/pull/55 * Run mypy tests on commit by @Spartee in https://github.com/RedisVentures/redisvl/pull/56 * Add `-u` (`--url`) option inLow9/7/2023
0.0.3## What's Changed * Vectorizer improvements by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/44 * add support for processing results on search and query by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/43 * rvl stats and Formatting for index info by @Spartee in https://github.com/RedisVentures/redisvl/pull/46 * Refactor filtering approach by @Spartee in https://github.com/RedisVentures/redisvl/pull/45 * Update docs landing page and docstrings by @tylerhutcLow8/12/2023
0.0.2## What's Changed * Full Fledged CLI and Library by @Spartee in https://github.com/RedisVentures/redisvl/pull/1 * readme and param defaults update by @tylerhutcherson in https://github.com/RedisVentures/redisvl/pull/3 * Fix improper package specification for pip by @Spartee in https://github.com/RedisVentures/redisvl/pull/4 * PandasReader and SearchIndex by @Spartee in https://github.com/RedisVentures/redisvl/pull/13 * redisvl index command by @Spartee in https://github.com/RedisVentures/redisvlLow8/7/2023

Dependencies & License Audit

Loading dependencies...

Similar Packages

txtai๐Ÿ’ก All-in-one AI framework for semantic search, LLM orchestration and language model workflowsv9.10.0
ai-news-scraperAI News Scraper & Semantic Search: A Python application that scrapes news articles, uses GenAI to generate summaries and identify topics, and provides semantic search capabilities through vector embed2.9.7
OllamaRAG๐Ÿค– Build a smart AI assistant that learns from any website using a Retrieval-Augmented Generation framework with local models powered by Ollama.main@2026-06-06
ai-real-estate-assistantAdvanced AI Real Estate Assistant using RAG, LLMs, and Python. Features market analysis, property valuation, and intelligent search.v5.0.7
local-rag-system๐Ÿค– Build your own local Retrieval-Augmented Generation system for private, offline AI memory without ongoing costs or data privacy concerns.main@2026-06-05

More in Databases

milvusMilvus is a high-performance, cloud-native vector database built for scalable vector ANN search
WeKnoraLLM-powered framework for deep document understanding, semantic retrieval, and context-aware answers using RAG paradigm.
ai-real-estate-assistantAdvanced AI Real Estate Assistant using RAG, LLMs, and Python. Features market analysis, property valuation, and intelligent search.
alibabacloud-adb20211201Alibaba Cloud adb (20211201) SDK Library for Python