Skip to content

What is QQL?

QQL gives a product team one query surface for search, retrieval pipelines, point mutations, and collection management. The same source works in a Rust service, Python worker, Node.js API, browser tool, or the qql CLI.

Readable operations

Keep the intent, filter, vector choice, and result shape together instead of assembling transport-specific request bodies across application layers.

Inspectable before execution

Parse, explain, and compile a statement locally. The playground exposes the same AST and Qdrant route your application will use.

Portable integration

Adopt QQL in the host language that already owns your product workflow rather than running a separate query service just to translate syntax.

Policy at the source

Inject a trusted predicate into the parsed AST before planning. Tenant filtering is part of the operation, not a post-processing step.

Choose QQL when the product benefits from reviewable query source, consistent retrieval behavior across services, or policy enforcement before Qdrant sees a request. Use a native Qdrant SDK directly when your application already owns a stable typed request builder and portability is not useful.

QQLHybrid retrieval scoped to one serviceTry in playground
QUERY TEXT 'incident response'
FROM runbooks
USING HYBRID
DENSE dense
SPARSE sparse
FUSION RRF
WHERE service = 'payments'
LIMIT 8;

Continue with installation or run the quickstart.