typesense-utils
Version:
A list of utilities for typesense search engine
28 lines (27 loc) • 811 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildVectorQuery = void 0;
/**
* Builds a vector query to filter by vectors.
*
* https://typesense.org/docs/0.24.0/api/vector-search.html#vector-search
*/
function buildVectorQuery(...args) {
const [field, vector, options] = args;
const params = [];
if (Array.isArray(vector)) {
params.push(JSON.stringify(vector));
}
else {
params.push('[]');
params.push(`id:${vector}`);
}
if (options?.$k !== undefined) {
params.push(`k:${options.$k}`);
}
if (options?.$flat_search_cutoff !== undefined) {
params.push(`flat_search_cutoff:${options.$flat_search_cutoff}`);
}
return `${field}:(${params})`;
}
exports.buildVectorQuery = buildVectorQuery;