/** * CyborgDB Service * REST API for CyborgDB: The Confidential Vector Database * * The version of the OpenAPI document: 0.17.1.dev16 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Request model for batch similarity search. * * Inherits: * IndexOperationRequest: Includes `index_name` and `index_key`. * HybridQueryParams: `text` and the fusion knobs for hybrid search. * * Attributes: * query_vectors (List[List[float]]): List of vectors to search for in batch mode. * top_k (Optional[int]): Number of nearest neighbors to return for each query. Defaults to 100. * n_probes (Optional[int]): Number of lists to probe during the query. Defaults to auto. * greedy (Optional[bool]): Whether to use greedy search. Defaults to False. * rerank_mult (Optional[int]): Multiplier for stage 1 retrieval in reranking indexes. Defaults to 10. * filters (Optional[Dict[str, Any]]): Metadata filters as a JSON-like * dictionary (see `FILTERS_DESCRIPTION` for the operator set). * Defaults to {}. * include (List[str]): List of additional fields to include in the response. Defaults to `[]` (only IDs are returned). * @export * @interface BatchQueryRequest */ export interface BatchQueryRequest { /** * Query text for a BM25 full-text leg. Requires an index with at least one full_text field. Omitted/empty leaves the query text-free. * @type {string} * @memberof BatchQueryRequest */ text?: string | null; /** * full_text fields the text leg searches; omitted means all of them. Naming a non-full_text field raises. * @type {Array} * @memberof BatchQueryRequest */ textFields?: Array | null; /** * Per-field weights on the summed per-field BM25 scores, parallel to the searched fields. Omitted means 1.0 each. * @type {Array} * @memberof BatchQueryRequest */ textFieldWeights?: Array | null; /** * Require every query term to match (AND) instead of any (OR, the default). * @type {boolean} * @memberof BatchQueryRequest */ requireAllTerms?: boolean | null; /** * Leg blend in [0, 1]: 0 = pure BM25, 1 = pure vector; omitted means 0.5. An exact endpoint skips the dead leg's retrieval. * @type {number} * @memberof BatchQueryRequest */ alpha?: number | null; /** * RRF rank-smoothing constant (> 0; omitted means 60). Higher rewards agreement further down each leg's list. * @type {number} * @memberof BatchQueryRequest */ rrfK?: number | null; /** * Per-leg candidate depth as a multiple of top_k (>= 1; omitted means 3), so each leg looks deeper than the final cut. * @type {number} * @memberof BatchQueryRequest */ windowMult?: number | null; /** * ID name * @type {string} * @memberof BatchQueryRequest */ indexName: string; /** * 32-byte encryption key as hex string. Required for SDK-supplied indexes; must be omitted for KMS-backed indexes (the service resolves the KEK via the index's KMSBlob). * @type {string} * @memberof BatchQueryRequest */ indexKey?: string | null; /** * * @type {Array>} * @memberof BatchQueryRequest */ queryVectors: Array>; /** * * @type {number} * @memberof BatchQueryRequest */ topK?: number | null; /** * * @type {number} * @memberof BatchQueryRequest */ nProbes?: number | null; /** * * @type {number} * @memberof BatchQueryRequest */ rerankMult?: number | null; /** * * @type {boolean} * @memberof BatchQueryRequest */ greedy?: boolean | null; /** * Metadata filters as a JSON object. Operators: `$eq`, `$ne`, `$in`, `$nin`, `$exists`, `$gt`, `$gte`, `$lt`, `$lte`, `$regex`, `$contains`, combined with `$and` / `$or` / `$nor` / `$not`. Filtering works on any metadata field; the index's `metadata_schema` only decides how a filter is resolved — fields marked `filterable` (the default) are answered from the inverted index, and `$regex` / `$contains` are answered from the regex dictionary on `pattern` fields. Anything else falls back to a post-filter over the decrypted metadata, which is correct but slower. Dates have no native type: store and filter them as epoch milliseconds. * @type {{ [key: string]: any; }} * @memberof BatchQueryRequest */ filters?: { [key: string]: any; } | null; /** * * @type {Array} * @memberof BatchQueryRequest */ include?: Array; } /** * Check if a given object implements the BatchQueryRequest interface. */ export declare function instanceOfBatchQueryRequest(value: object): value is BatchQueryRequest; export declare function BatchQueryRequestFromJSON(json: any): BatchQueryRequest; export declare function BatchQueryRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): BatchQueryRequest; export declare function BatchQueryRequestToJSON(json: any): BatchQueryRequest; export declare function BatchQueryRequestToJSONTyped(value?: BatchQueryRequest | null, ignoreDiscriminator?: boolean): any;