Home Expressions
Docs
Drivers Gateway SDKs Benchmarks
Changelog
GitHub
Blog Status Roadmap
QAIL Vector Driver

qail-qdrant: Native Qdrant Driver for Rust

A high-throughput vector search driver built for the Rust ecosystem. Leverage gRPC over HTTP/2 with typed AST filters for seamless, production-grade similarity search and data synchronization.

Vector Driver qail-qdrant v1.3.3 gRPC + HTTP/2 TLS (rustls) Beta Updated June 18, 2026

Qdrant Driver Capability Matrix

Feature surface below is derived from qail.rs/qdrant source and docs. It reflects the current Rust API shape and transport model, with beta maturity status preserved explicitly.

Capability Current Data Notes
Primary focus Qdrant vector search driver qail-qdrant targets vector similarity workflows over Qdrant using Rust-native APIs.
Current crate release 1.3.3 Matches the current stable QAIL workspace release line with Qdrant JSON integer drift rejection and little-endian vector encoding.
Maturity state Beta Marked as beta in crate docs; API can still change.
Transport gRPC over HTTP/2 Direct gRPC transport path with reusable buffers.
TLS model rustls (no system OpenSSL required) Supports TLS connection mode in driver and pool config.
Search APIs search, search_named, search_filtered, search_batch, search_ast Covers plain, named-vector, filtered, concurrent batch, and AST-driven search paths.
Data ops upsert, get_points, scroll, delete, payload update Point lifecycle and payload update operations are supported in the Rust driver.
Collection/index ops create/delete collection, create payload field index Includes collection creation and payload index creation for faster filtering.
Pooling QdrantPool + PoolConfig Configurable max connections, TLS flag, and qail.toml-derived pool config.

Core Runtime Paths

Search + Filter Paths

Supports plain vector search, named-vector search, filtered search with AST conditions, and AST-driven search extraction via search_ast.

Point + Payload Lifecycle

Includes upsert, get, scroll pagination, delete by IDs, and payload updates for existing points.

Collection + Index Controls

Collection create/delete plus payload field index creation for filtered-search acceleration paths.

Quick Start (Rust)

1. Add Dependencies

Add the vector driver and core AST crate.

cargo add qail-qdrant qail-core

2. Connect and Search

Minimal connection and vector search flow.

use qail_qdrant::QdrantDriver;

let mut driver = QdrantDriver::connect("localhost", 6334).await?;
let hits = driver.search("products", &embedding, 10, None).await?;

3. Use AST Filtered Search

Filter conditions can be pushed through QAIL AST into Qdrant filter clauses.

use qail_core::Qail;

let cmd = Qail::search("products")
    .vector(embedding)
    .limit(10)
    .filter("tenant_id", qail_core::Operator::Eq, "t-001");

let hits = driver.search_ast(&cmd).await?;

Related Pages

Operational Tips