zrald
Version:
Advanced Graph RAG MCP Server with sophisticated graph structures, operators, and agentic capabilities for AI agents
40 lines • 1.6 kB
TypeScript
import { Node, Chunk } from '../types/graph.js';
export interface VectorSearchResult {
id: string;
score: number;
node?: Node;
chunk?: Chunk;
}
export declare class VectorStore {
private dimension;
private maxElements;
private nodeMap;
private chunkMap;
private embeddings;
private currentIndex;
constructor(dimension?: number, maxElements?: number);
initialize(): Promise<void>;
addNode(node: Node): Promise<void>;
addChunk(chunk: Chunk): Promise<void>;
searchNodes(queryEmbedding: number[], topK?: number, threshold?: number): Promise<VectorSearchResult[]>;
searchByNodeTypes(queryEmbedding: number[], nodeTypes: string[], topK?: number, threshold?: number): Promise<VectorSearchResult[]>;
searchChunks(queryEmbedding: number[], topK?: number, threshold?: number): Promise<VectorSearchResult[]>;
getNodeById(id: string): Promise<Node | undefined>;
getChunkById(id: string): Promise<Chunk | undefined>;
updateNode(node: Node): Promise<void>;
removeNode(id: string): Promise<void>;
batchAddNodes(nodes: Node[]): Promise<void>;
batchAddChunks(chunks: Chunk[]): Promise<void>;
getStats(): {
totalNodes: number;
totalChunks: number;
dimension: number;
maxElements: number;
};
saveIndex(filePath: string): Promise<void>;
loadIndex(filePath: string): Promise<void>;
clear(): Promise<void>;
static cosineSimilarity(a: number[], b: number[]): number;
static euclideanDistance(a: number[], b: number[]): number;
}
//# sourceMappingURL=vector-store.d.ts.map