Expand description
§redis-vl
Async-first Rust implementation of the Redis Vector Library.
This crate provides vector search, semantic caching, message history, and
routing on top of Redis. It targets feature parity with the Python redisvl
package while using idiomatic Rust APIs.
§Quick start
use redis_vl::{IndexSchema, SearchIndex, Vector, VectorQuery};
let schema = IndexSchema::from_yaml_file("schema.yaml").unwrap();
let index = SearchIndex::new(schema, "redis://127.0.0.1:6379");
index.create().unwrap();
let query = VectorQuery::new(
Vector::new(&[0.1_f32; 128] as &[f32]),
"embedding",
5,
);
let result = index.search(&query).unwrap();§Feature flags
openai(default) – OpenAI-compatible vectorizerlitellm(default) – LiteLLM vectorizerazure-openai– Azure OpenAI vectorizerbedrock– AWS Bedrock vectorizercohere– Cohere vectorizer and reranker supportvoyageai– VoyageAI vectorizermistral– Mistral vectorizeranthropic– Anthropic adapter (Voyage AI-backed)vertex-ai– Google Vertex AI vectorizerhf-local– HuggingFace local ONNX embedding viafastembedsql– SQL query support (SQLQuery)rerankers– Reranker support (CohereReranker)
Re-exports§
pub use error::Error;pub use extensions::cache::CacheConfig;pub use extensions::cache::EmbeddingCacheEntry;pub use extensions::cache::EmbeddingCacheItem;pub use extensions::cache::EmbeddingsCache;pub use extensions::cache::SemanticCache;pub use extensions::history::Message;pub use extensions::history::MessageHistory;pub use extensions::history::MessageRole;pub use extensions::history::SemanticMessageHistory;pub use extensions::router::DistanceAggregationMethod;pub use extensions::router::Route;pub use extensions::router::RouteMatch;pub use extensions::router::RoutingConfig;pub use extensions::router::SemanticRouter;pub use filter::BetweenInclusivity;pub use filter::FilterExpression;pub use filter::Geo;pub use filter::GeoRadius;pub use filter::Num;pub use filter::Tag;pub use filter::Text;pub use filter::Timestamp;pub use index::AsyncSearchIndex;pub use index::QueryOutput;pub use index::RedisConnectionInfo;pub use index::SearchDocument;pub use index::SearchIndex;pub use index::SearchResult;pub use query::AggregateHybridQuery;pub use query::CountQuery;pub use query::FilterQuery;pub use query::GeoFilter;pub use query::HybridCombinationMethod;pub use query::HybridPolicy;pub use query::HybridQuery;pub use query::MultiVectorQuery;pub use query::PageableQuery;pub use query::QueryKind;pub use query::QueryLimit;pub use query::QueryParam;pub use query::QueryParamValue;pub use query::QueryRender;pub use query::QueryString;pub use query::SearchHistoryMode;pub use query::SortBy;pub use query::SortDirection;pub use query::TextQuery;pub use query::Vector;pub use query::VectorDtype;pub use query::VectorInput;pub use query::VectorQuery;pub use query::VectorRangeQuery;pub use query::VectorSearchMethod;pub use query::SQLQuery;pub use query::SqlParam;pub use rerankers::AsyncReranker;pub use rerankers::RerankDoc;pub use rerankers::RerankResult;pub use rerankers::Reranker;pub use rerankers::CohereReranker;pub use rerankers::CohereRerankerConfig;pub use schema::Field;pub use schema::FieldKind;pub use schema::GeoFieldAttributes;pub use schema::IndexDefinition;pub use schema::IndexSchema;pub use schema::NumericFieldAttributes;pub use schema::Prefix;pub use schema::StorageType;pub use schema::SvsCompressionType;pub use schema::TagFieldAttributes;pub use schema::TextFieldAttributes;pub use schema::TimestampFieldAttributes;pub use schema::VectorAlgorithm;pub use schema::VectorDataType;pub use schema::VectorDistanceMetric;pub use schema::VectorFieldAttributes;pub use vectorizers::AnthropicConfig;pub use vectorizers::AnthropicTextVectorizer;pub use vectorizers::AsyncVectorizer;pub use vectorizers::CustomTextVectorizer;pub use vectorizers::EmbeddingRequest;pub use vectorizers::LiteLLMTextVectorizer;pub use vectorizers::OpenAICompatibleConfig;pub use vectorizers::OpenAITextVectorizer;pub use vectorizers::Vectorizer;pub use vectorizers::AzureOpenAIConfig;pub use vectorizers::AzureOpenAITextVectorizer;pub use vectorizers::BedrockConfig;pub use vectorizers::BedrockTextVectorizer;pub use vectorizers::CohereConfig;pub use vectorizers::CohereTextVectorizer;pub use vectorizers::MistralAITextVectorizer;pub use vectorizers::MistralConfig;pub use vectorizers::VertexAIConfig;pub use vectorizers::VertexAITextVectorizer;pub use vectorizers::VoyageAIConfig;pub use vectorizers::VoyageAITextVectorizer;
Modules§
- error
- Error types returned by the library.
- extensions
- Cache and storage extensions:
EmbeddingsCache,SemanticCache,MessageHistory,SemanticMessageHistory, andSemanticRouter. RedisVL extension modules. - filter
- Filter DSL for Redis Search queries.
- index
- Search index lifecycle and Redis transport.
- query
- Query builders for Redis Search.
- rerankers
- Reranker abstractions and provider adapters.
- schema
- Schema types and Redis Search schema serialization.
- vectorizers
- Embedding provider abstractions and adapters.