rag-cli-tester
Version:
A lightweight CLI tool for testing RAG (Retrieval-Augmented Generation) systems with different embedding combinations
54 lines • 1.85 kB
TypeScript
import { DatabaseConnection } from './database';
import { EmbeddingGenerator } from './embeddings';
import { BaseMetricResult } from './metrics/base-metric';
import { TestConfiguration, TestResult, ExperimentResults } from './types';
export interface EnhancedTestConfiguration extends TestConfiguration {
batchSize: number;
maxTrainingSamples: number;
maxTestingSamples: number;
enableCaching: boolean;
crossValidationFolds?: number;
dataSamplingStrategy: 'random' | 'stratified' | 'sequential';
}
export interface EnhancedTestResult extends TestResult {
detailedMetrics: BaseMetricResult;
crossValidationScores?: number[];
confidenceInterval?: {
lower: number;
upper: number;
};
processingStats: {
trainingTime: number;
testingTime: number;
embeddingTime: number;
memoryUsage: number;
};
}
export declare class EnhancedRAGTester {
private db;
private embeddings;
private metricCache;
private embeddingCache;
constructor(dbConnection: DatabaseConnection, embeddingGenerator: EmbeddingGenerator);
initialize(): Promise<void>;
runEnhancedExperiment(config: EnhancedTestConfiguration): Promise<ExperimentResults>;
private runEnhancedSingleTest;
private getTrainingData;
private getTestingData;
private generateTrainingEmbeddings;
private processTestQueries;
private getMetric;
private sampleData;
private randomSample;
private stratifiedSample;
private sequentialSample;
private combineColumns;
private calculateConfidenceInterval;
private calculateEnhancedSummary;
validateEnhancedConfiguration(config: EnhancedTestConfiguration): Promise<{
isValid: boolean;
errors: string[];
warnings: string[];
}>;
}
//# sourceMappingURL=enhanced-tester.d.ts.map