vector-chunk
Version:
🚀 Next-Gen Content Intelligence - The most powerful, lightweight, and intelligent vector search package for modern applications. Zero dependencies, AI-powered search, real-time processing, content analysis, tone detection, style matching, DNA fingerprint
69 lines (68 loc) • 2.42 kB
TypeScript
import type { PerformanceMetrics, OptimizationConfig, AdaptiveConfig, ChunkingConfig, VectorStoreConfig } from '../types';
export declare class AdaptiveOptimizer {
private performanceHistory;
private config;
private adaptiveConfig;
private optimizationCount;
private lastOptimization;
constructor(optimizationConfig?: Partial<OptimizationConfig>, adaptiveConfig?: Partial<AdaptiveConfig>);
recordMetrics(metrics: Omit<PerformanceMetrics, 'timestamp'>): void;
optimizeChunkSize(currentConfig: ChunkingConfig): ChunkingConfig;
optimizeSearchConfig(currentConfig: VectorStoreConfig): VectorStoreConfig;
getOptimizationRecommendations(): {
chunkSize: {
current: number;
recommended: number;
confidence: number;
};
overlap: {
current: number;
recommended: number;
confidence: number;
};
threshold: {
current: number;
recommended: number;
confidence: number;
};
maxResults: {
current: number;
recommended: number;
confidence: number;
};
overallImprovement: number;
};
getPerformanceAnalytics(): {
averageSearchTime: number;
averageAccuracy: number;
performanceTrend: 'improving' | 'declining' | 'stable';
optimizationHistory: Array<{
timestamp: Date;
improvement: number;
changes: Record<string, {
from: number;
to: number;
}>;
}>;
};
resetOptimization(): void;
updateConfig(newConfig: Partial<OptimizationConfig>): void;
updateAdaptiveConfig(newConfig: Partial<AdaptiveConfig>): void;
private shouldAutoOptimize;
private autoOptimize;
private calculateOptimalChunkSize;
private calculateOptimalOverlap;
private calculateOptimalThreshold;
private calculateOptimalMaxResults;
private calculateConfidence;
private calculateOverallImprovement;
private calculatePerformanceTrend;
private getOptimizationHistory;
getOptimizationStats(): {
totalOptimizations: number;
lastOptimization: Date;
performanceImprovement: number;
confidenceLevel: number;
recommendations: string[];
};
}