Skip to content

Installation

QQL targets Qdrant 1.19.0 or newer. Pin the server version when running it in Docker:

Qdrant
docker run --rm -p 6333:6333 -p 6334:6334 qdrant/qdrant:v1.19.0

Text embedding (any USING step) needs an OpenAI-compatible endpoint. With Ollama, start the server and pull the model before configuring QQL:

Ollama
ollama serve ollama pull all-minilm:l6-v2

Then point QQL at both services (see Quickstart). Literal-vector queries skip the embedder entirely.

Linux and macOS
curl -fsSL https://raw.githubusercontent.com/srimon12/qql-rs/main/scripts/install.sh | sh
Windows PowerShell
irm https://raw.githubusercontent.com/srimon12/qql-rs/main/scripts/install.ps1 | iex

The installed binary is qql. Run qql setup to configure your Qdrant connection and embedding defaults, then run qql doctor to verify connectivity.

Configure and verify the CLI
qql version qql setup qql doctor

Rust

Cargo
cargo add qql qql-core

Python

pip
pip install pyqql

Use pyqql-edge only when the in-process edge backend is required.

Node.js

npm
npm install @veristamp/nqql

Use @veristamp/nqql-edge for the heavier edge-enabled build.

WebAssembly

npm
npm install qql-wasm

Initialize the module before calling browser exports.

Workspace build
git clone https://github.com/srimon12/qql-rs.git cd qql-rs cargo build --release --workspace

The default binary — including the prebuilt archives fetched by the installer above — is rest + grpc only. edge (ONNX/FastEmbed, heavy) and record (axum proxy, cheap) stay opt-in so the default download stays small. Install a feature build from crates.io with one command (no clone):

Feature installs (no clone needed)
cargo install qql-cli --locked --features edge cargo install qql-cli --locked --features record cargo install qql-cli --locked --features full

Run qql version to confirm: its features array lists what the binary supports. Python/Node stay split the same way — pyqql / @veristamp/nqql are lean, pyqql-edge / @veristamp/nqql-edge (plus uv pip install pyqql-edge / uv add pyqql-edge) carry the edge runtime.

The in-process edge backend is an opt-in build. Compile the CLI with the edge feature to enable --edge and qql config edge:

Edge-enabled CLI build
cargo install qql-cli --locked --features edge
# ... or from a local checkout:
# cargo build --release -p qql-cli --features edge

See the edge backend overview for capabilities and limits.

The runtime defaults to REST and gRPC. Edge and embedded model support are opt-in because they add substantial binary and model weight.