{
  "id": "installation",
  "title": "Install RedisVL",
  "url": "https://redis.io/docs/latest/develop/ai/redisvl/0.16.0/user_guide/installation/",
  "summary": "",
  "content": "\n\nThere are a few ways to install RedisVL. The easiest way is to use pip.\n\n## Install RedisVL with Pip\n\nInstall `redisvl` into your Python (\u003e=3.9) environment using `pip`:\n\n```bash\n$ pip install -U redisvl\n```\n\nRedisVL comes with a few dependencies that are automatically installed, however, several optional\ndependencies can be installed separately based on your needs:\n\n```bash\n# Vectorizer providers\n$ pip install redisvl[openai]              # OpenAI embeddings\n$ pip install redisvl[cohere]              # Cohere embeddings and reranking\n$ pip install redisvl[mistralai]           # Mistral AI embeddings\n$ pip install redisvl[voyageai]            # Voyage AI embeddings and reranking\n$ pip install redisvl[sentence-transformers]  # HuggingFace local embeddings\n$ pip install redisvl[vertexai]            # Google Vertex AI embeddings\n$ pip install redisvl[bedrock]             # AWS Bedrock embeddings\n\n# Other optional features\n$ pip install redisvl[langcache]           # LangCache managed service integration\n$ pip install redisvl[sql-redis]           # SQL query support\n```\n\nIf you use ZSH, remember to escape the brackets:\n\n```bash\n$ pip install redisvl\\[openai\\]\n```\n\nYou can install multiple optional dependencies at once:\n\n```bash\n$ pip install redisvl[openai,cohere,sentence-transformers]\n```\n\nTo install **all** optional dependencies at once:\n\n```bash\n$ pip install redisvl[all]\n```\n\n## Install RedisVL from Source\n\nTo install RedisVL from source, clone the repository and install the package using `pip`:\n\n```bash\n$ git clone https://github.com/redis/redis-vl-python.git \u0026\u0026 cd redis-vl-python\n$ pip install .\n\n# or for an editable installation (for developers of RedisVL)\n$ pip install -e .\n```\n\n## Development Installation\n\nFor contributors who want to develop RedisVL, we recommend using [uv](https://docs.astral.sh/uv/) for dependency management:\n\n```bash\n# Clone the repository\n$ git clone https://github.com/redis/redis-vl-python.git \u0026\u0026 cd redis-vl-python\n\n# Install uv if you don't have it\n$ pip install uv\n\n# Install all dependencies (including dev and docs)\n$ uv sync\n\n# Or use make\n$ make install\n```\n\nThis installs the package in editable mode along with all development dependencies (testing, linting, type checking) and documentation dependencies.\n\n### Running Tests and Linting\n\n```bash\n# Run tests (no external APIs required)\n$ make test\n\n# Run all tests (includes API-dependent tests)\n$ make test-all\n\n# Format code\n$ make format\n\n# Run type checking\n$ make check-types\n\n# Run full check (lint + test)\n$ make check\n```\n\n### Pre-commit Hooks\n\nWe use pre-commit hooks to ensure code quality. Install them with:\n\n```bash\n$ pre-commit install\n```\n\nRun hooks manually on all files:\n\n```bash\n$ pre-commit run --all-files\n```\n\n## Installing Redis\n\nRedisVL requires a distribution of Redis that supports the [Search and Query](https://redis.com/modules/redis-search/) capability. There are several options:\n\n1. [Redis Cloud](https://redis.io/cloud), a fully managed cloud offering with a free tier\n2. [Redis 8+ (Docker)](https://redis.io/downloads/), for local development and testing\n3. [Redis Enterprise](https://redis.com/redis-enterprise/), a commercial self-hosted option\n\n### Redis Cloud\n\nRedis Cloud is the easiest way to get started with RedisVL. You can sign up for a free account [here](https://redis.io/cloud). Make sure to have the `Search and Query`\ncapability enabled when creating your database.\n\n### Redis 8+ (local development)\n\nFor local development and testing, we recommend running Redis 8+ in a Docker container:\n\n```bash\ndocker run -d --name redis -p 6379:6379 redis:latest\n```\n\nRedis 8 includes built-in vector search capabilities.\n\n### Redis Enterprise (self-hosted)\n\nRedis Enterprise is a commercial offering that can be self-hosted. You can download the latest version [here](https://redis.io/downloads/).\n\nIf you are considering a self-hosted Redis Enterprise deployment on Kubernetes, there is the [Redis Enterprise Operator](https://docs.redis.com/latest/kubernetes/) for Kubernetes. This will allow you to easily deploy and manage a Redis Enterprise cluster on Kubernetes.\n\n### Redis Sentinel\n\nFor high availability deployments, RedisVL supports connecting to Redis through Sentinel. Use the `redis+sentinel://` URL scheme to connect. Both sync and async connections are fully supported.\n\n```python\nfrom redisvl.index import SearchIndex, AsyncSearchIndex\n\n# Sync connection via Sentinel\n# Format: redis+sentinel://[username:password@]host1:port1,host2:port2/service_name[/db]\nindex = SearchIndex.from_yaml(\n    \"schema.yaml\",\n    redis_url=\"redis+sentinel://sentinel1:26379,sentinel2:26379/mymaster\"\n)\n\n# Async connection via Sentinel\nasync_index = AsyncSearchIndex.from_yaml(\n    \"schema.yaml\",\n    redis_url=\"redis+sentinel://sentinel1:26379,sentinel2:26379/mymaster\"\n)\n\n# With authentication and database selection\nindex = SearchIndex.from_yaml(\n    \"schema.yaml\",\n    redis_url=\"redis+sentinel://user:pass@sentinel1:26379,sentinel2:26379/mymaster/0\"\n)\n```\n\nThe Sentinel URL format supports:\n\n- Multiple sentinel hosts (comma-separated)\n- Optional authentication (username:password)\n- Service name (defaults to `mymaster` if not specified)\n- Optional database number (defaults to 0)\n- Both sync (`SearchIndex`) and async (`AsyncSearchIndex`) connections\n",
  "tags": [],
  "last_updated": "2026-04-21T14:39:33+02:00"
}
