query()
:
Query Parameters
You can specify additional parameters for the query, such as:top_k
: the number of results to return.n_probes
: the number of clusters to search for each query vector.filters
: metadata filters to apply to the query (dictionary format).include
: item fields to return (e.g.,["distance", "metadata"]
).greedy
: whether to perform a greedy search (higher recall but slower).
Batched Queries
It’s also possible to perform batch queries by passing multiple query vectors toquery()
:
Querying with Metadata Filters
You can filter query results based on metadata fields. For example, to filter items where theage
field is greater than 18
, you can use the following filter:
age
field is greater than 18
. You can also use other comparison operators such as $lt
, $gte
, $lte
, $eq
, and $ne
.
For more details on metadata filters, see the Metadata Filtering guide.
Automatic Embedding Generation
To use automatic embedding generation, use the Docker Service or install with
pip install cyborgdb-service[embeddings]
embedding_model
during index creation, you can automatically generate embeddings for queries by providing query_contents
to the query()
call:
Retrieving Items Post-Query
In certain applications, such as RAG, it may be desirable to retrieve matching items after a query. This is possible viaget()
, which retrieves and decrypts item added via upsert()
. For more details, see the Get Items guide.