rag-cli-tester
Version:
A lightweight CLI tool for testing RAG (Retrieval-Augmented Generation) systems with different embedding combinations
43 lines • 1.51 kB
TypeScript
export interface EmbeddingConfig {
model: 'openai' | 'local';
openaiModel?: string;
localModel?: string;
}
export interface ColumnCombination {
columns: string[];
name: string;
}
export interface EmbeddingResult {
id: string;
combination: ColumnCombination;
embedding: number[];
context: string;
yValue: any;
metadata: Record<string, any>;
}
export interface TrainingData {
embeddings: EmbeddingResult[];
combination: ColumnCombination;
totalRows: number;
}
export declare class EmbeddingGenerator {
private config;
private localEmbeddingPipeline;
constructor(config: EmbeddingConfig);
initialize(): Promise<void>;
generateColumnCombinations(columns: string[]): ColumnCombination[];
private getCombinations;
generateEmbedding(text: string): Promise<number[]>;
createContext(row: Record<string, any>, combination: ColumnCombination): string;
processTrainingData(data: Record<string, any>[], combination: ColumnCombination, yColumn: string, idColumn?: string): Promise<TrainingData>;
calculateCosineSimilarity(a: number[], b: number[]): number;
findBestMatch(queryEmbedding: number[], trainingData: TrainingData, topK?: number): Promise<{
result: EmbeddingResult;
similarity: number;
}[]>;
processQuery(query: string, trainingData: TrainingData, topK?: number): Promise<{
result: EmbeddingResult;
similarity: number;
}[]>;
}
//# sourceMappingURL=embeddings.d.ts.map