UNPKG

ai-utils.js

Version:

Build AI applications, chatbots, and agents with JavaScript and TypeScript.

32 lines (31 loc) 1.11 kB
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>; }