rag-cli-tester
Version:
A lightweight CLI tool for testing RAG (Retrieval-Augmented Generation) systems with different embedding combinations
42 lines • 1.71 kB
TypeScript
import { EmbeddingConfig, ColumnCombination } from './types';
export interface EmbeddingResult {
id: string;
combination: ColumnCombination;
embedding: number[];
context: string;
targetValue: any;
metadata: Record<string, any>;
}
export interface TrainingData {
embeddings: EmbeddingResult[];
combination: ColumnCombination;
totalRows: number;
}
export interface PipelineProvider {
createPipeline(task: string, model: string): Promise<any>;
}
export declare class TransformersPipelineProvider implements PipelineProvider {
createPipeline(task: string, model: string): Promise<any>;
}
export declare class EmbeddingGenerator {
private config;
private embeddingPipeline;
private pipelineProvider;
constructor(config: EmbeddingConfig, pipelineProvider?: PipelineProvider);
initialize(): Promise<void>;
generateColumnCombinations(columns: string[], maxCombinations?: number): ColumnCombination[];
private getCombinations;
generateEmbedding(text: string): Promise<number[]>;
createContext(row: Record<string, any>, combination: ColumnCombination): string;
processTrainingData(data: Record<string, any>[], combination: ColumnCombination, targetColumn: 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