Embedding Providers¶
The Redis Agent Memory Server uses LiteLLM for embeddings, enabling support for many embedding providers out of the box.
Quick Start¶
Set the EMBEDDING_MODEL environment variable to your desired model:
# OpenAI (default)
export EMBEDDING_MODEL=text-embedding-3-small
# AWS Bedrock
export EMBEDDING_MODEL=bedrock/amazon.titan-embed-text-v2:0
# Ollama (local)
export EMBEDDING_MODEL=ollama/nomic-embed-text
Supported Providers¶
| Provider | Model Format | Environment Variables | Example |
|---|---|---|---|
| OpenAI | text-embedding-3-small | OPENAI_API_KEY | text-embedding-3-large |
| AWS Bedrock | bedrock/<model-id> | AWS credentials | bedrock/amazon.titan-embed-text-v2:0 |
| Ollama | ollama/<model> | OLLAMA_API_BASE | ollama/nomic-embed-text |
| HuggingFace | huggingface/<org>/<model> | HUGGINGFACE_API_KEY | huggingface/BAAI/bge-large-en |
| Cohere | cohere/<model> | COHERE_API_KEY | cohere/embed-english-v3.0 |
| Gemini | gemini/<model> | GEMINI_API_KEY | gemini/text-embedding-004 |
| Mistral | mistral/<model> | MISTRAL_API_KEY | mistral/mistral-embed |
| Azure OpenAI | azure/<deployment> | AZURE_API_KEY, AZURE_API_BASE | azure/my-embedding-deployment |
Provider Configuration¶
OpenAI¶
Available models: - text-embedding-3-small (1536 dimensions, recommended) - text-embedding-3-large (3072 dimensions) - text-embedding-ada-002 (1536 dimensions, legacy)
AWS Bedrock¶
export EMBEDDING_MODEL=bedrock/amazon.titan-embed-text-v2:0
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
export AWS_REGION_NAME=us-east-1
Available models: - bedrock/amazon.titan-embed-text-v2:0 (1024 dimensions, recommended) - bedrock/amazon.titan-embed-text-v1 (1536 dimensions) - bedrock/cohere.embed-english-v3 (1024 dimensions) - bedrock/cohere.embed-multilingual-v3 (1024 dimensions)
Note: Always use the
bedrock/prefix. Unprefixed Bedrock model names are deprecated.
Ollama (Local)¶
export EMBEDDING_MODEL=ollama/nomic-embed-text
export OLLAMA_API_BASE=http://localhost:11434
export REDISVL_VECTOR_DIMENSIONS=768 # Required for Ollama models
Popular models: - ollama/nomic-embed-text (768 dimensions) - ollama/mxbai-embed-large (1024 dimensions) - ollama/all-minilm (384 dimensions)
HuggingFace¶
export EMBEDDING_MODEL=huggingface/BAAI/bge-large-en
export HUGGINGFACE_API_KEY=hf_...
export REDISVL_VECTOR_DIMENSIONS=1024 # Required for HuggingFace models
Cohere¶
export EMBEDDING_MODEL=cohere/embed-english-v3.0
export COHERE_API_KEY=...
export REDISVL_VECTOR_DIMENSIONS=1024
Embedding Dimensions¶
The server needs to know the embedding dimensions for the Redis vector index. Dimensions are resolved in this order:
- LiteLLM auto-detection - Works for OpenAI and Bedrock models
- MODEL_CONFIGS lookup - Pre-configured models in the server
- REDISVL_VECTOR_DIMENSIONS - Explicit override (required for unknown models)
Setting Dimensions Explicitly¶
For models not in our config (Ollama, HuggingFace, etc.), set dimensions explicitly:
Common Model Dimensions¶
| Model | Dimensions |
|---|---|
text-embedding-3-small | 1536 |
text-embedding-3-large | 3072 |
bedrock/amazon.titan-embed-text-v2:0 | 1024 |
bedrock/amazon.titan-embed-text-v1 | 1536 |
ollama/nomic-embed-text | 768 |
ollama/mxbai-embed-large | 1024 |
cohere/embed-english-v3.0 | 1024 |
Migration Guide¶
From OpenAI-only Setup¶
No changes required. The default text-embedding-3-small continues to work.
From Bedrock (Legacy)¶
If you were using unprefixed Bedrock model names:
# Before (deprecated)
export EMBEDDING_MODEL=amazon.titan-embed-text-v2:0
# After (recommended)
export EMBEDDING_MODEL=bedrock/amazon.titan-embed-text-v2:0
The server will auto-add the prefix and emit a deprecation warning, but updating your config is recommended.
Troubleshooting¶
"Unknown embedding model" Error¶
The model isn't in our config and LiteLLM can't auto-detect dimensions. Set REDISVL_VECTOR_DIMENSIONS:
Bedrock "Model not found" Error¶
- Ensure the model is available in your AWS region
- Check your IAM permissions include
bedrock:InvokeModel - Use the
bedrock/prefix:bedrock/amazon.titan-embed-text-v2:0
Ollama Connection Error¶
Ensure Ollama is running and set the API base: