The runtime prepares and plans QQL once, then dispatches through a QdrantOps implementation.
REST
Broad compatibility, inspectable OpenAPI JSON, and the default choice for browser-like transports.
gRPC
Typed protobuf transport with query and mutation batching. Enable the runtime grpc feature.
Edge
Local HNSW storage and optional embedded models. No remote cluster administration and a deliberately smaller query subset. See the dedicated Edge section for capabilities and limits.
Runtime construction
Section titled “Runtime construction”Use Executor::rest(url, api_key) or Executor::grpc(url, api_key) for remote execution. The edge packages construct an in-process backend and expose it through Python, Node.js, or the CLI. The Edge overview explains when in-process execution fits, and Edge capabilities lists exactly which statements and features the edge backend supports.
QUERY 'local first retrieval'FROM notesUSING denseWHERE workspace = 'personal'LIMIT 10;The statement does not encode a transport. Backend-specific limits are reported during planning or execution. See Backend compatibility for the REST / gRPC / edge matrix — notably, SHOW QUOTAS / SET QUOTA are REST-only (gRPC and edge fail with QQL-GRPC-QUOTA / QQL-EDGE-UNSUPPORTED-QUOTA).
Feature selection
Section titled “Feature selection”The qql runtime enables REST and gRPC by default. Disable unused features for smaller native builds. Edge and embedded FastEmbed support are opt-in because they carry more code and model dependencies.