ai-utils.js
Version:
Build AI applications, chatbots, and agents with JavaScript and TypeScript.
32 lines (31 loc) • 1.11 kB
TypeScript
import z from "zod";
import { Vector } from "../../run/Vector.js";
import { VectorIndex } from "../VectorIndex.js";
/**
* A very simple vector index that stores all entries in memory. Useful when you only have
* a small number of entries and don't want to set up a real database, e.g. for conversational memory
* that does not need to be persisted.
*/
export declare class MemoryVectorIndex<DATA> implements VectorIndex<DATA, MemoryVectorIndex<DATA>> {
static deserialize<DATA>({ serializedData, schema, }: {
serializedData: string;
schema?: z.ZodSchema<DATA>;
}): Promise<MemoryVectorIndex<DATA>>;
private readonly entries;
upsertMany(data: Array<{
id: string;
vector: Vector;
data: DATA;
}>): Promise<void>;
queryByVector({ queryVector, similarityThreshold, maxResults, }: {
queryVector: Vector;
maxResults: number;
similarityThreshold?: number;
}): Promise<Array<{
id: string;
data: DATA;
similarity?: number;
}>>;
serialize(): string;
asIndex(): MemoryVectorIndex<DATA>;
}