@lov3kaizen/agentsea-embeddings 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,647 @@
1
+ import { E as EmbeddingProviderType, M as ModelInfo, a as EmbeddingModel } from './index-DWddsKRi.js';
2
+ export { B as BaseProvider, s as BatchEmbeddingRequest, C as CohereProvider, n as CohereProviderConfig, z as CustomProviderConfig, r as EmbeddingRequest, H as HuggingFaceProvider, q as HuggingFaceProviderConfig, j as LocalEmbeddingFn, L as LocalProvider, p as LocalProviderConfig, k as LocalProviderOptions, b as ModelRegistry, O as OpenAIProvider, l as OpenAIProviderConfig, x as ProviderCapabilities, P as ProviderConfig, u as ProviderError, y as ProviderFactoryOptions, v as ProviderHealth, w as ProviderMetrics, t as ProviderResponse, R as RateLimitInfo, T as TokenUsage, V as VoyageProvider, o as VoyageProviderConfig, d as createCohereProvider, i as createHuggingFaceProvider, f as createLocalProvider, g as createMockProvider, c as createOpenAIProvider, h as createRandomProvider, e as createVoyageProvider, m as modelRegistry } from './index-DWddsKRi.js';
3
+ import EventEmitter from 'eventemitter3';
4
+ import { E as EmbeddingVector, a as EmbeddingResult, b as EmbeddingOptions, B as BatchEmbeddingOptions, c as BatchEmbeddingResult, d as EmbeddedChunk, S as SearchOptions, e as SearchResult, D as DocumentEmbeddingOptions, f as EmbeddingStats } from './embedding.types-CCgPVxt1.js';
5
+ export { h as BatchProgress, C as ChunkMetadata, g as EmbeddingModelInfo, i as SimilarityMetric } from './embedding.types-CCgPVxt1.js';
6
+ import { C as ChunkingStrategyType, a as ChunkingOptions, b as Chunk } from './index-DMaQRn2w.js';
7
+ export { B as BaseChunker, l as ChunkingMetadata, u as ChunkingResult, v as ChunkingStats, w as ChunkingStrategyConfig, g as CodeChunker, r as CodeChunkingOptions, x as CustomChunkingFn, F as FixedChunker, n as FixedChunkingOptions, M as MarkdownChunker, q as MarkdownChunkingOptions, P as ParagraphChunkingOptions, R as RecursiveChunker, p as RecursiveChunkingOptions, S as SemanticChunker, o as SemanticChunkingOptions, t as SentenceChunkingOptions, y as TextSplitterFn, T as TokenCounterFn, k as chunk, j as createChunker, h as createCodeChunker, c as createFixedChunker, f as createMarkdownChunker, e as createRecursiveChunker, i as createSemanticChunker, d as defaultTokenCounter, m as mergeSmallChunks, s as splitLargeChunks } from './index-DMaQRn2w.js';
8
+ export { BaseCache, BatchCacheLookupResult, CacheBackendType, CacheCleanupOptions, CacheCleanupResult, CacheEntryInfo, CacheEvictionPolicy, CacheExportFormat, CacheImportOptions, CacheKeyOptions, CacheLookupResult, CacheOptions, CacheStats, CacheWarmupOptions, CachedEmbedding, MemoryCache, MemoryCacheOptions, RedisCache, RedisCacheOptions, SQLiteCache, SQLiteCacheOptions, TierConfig, TieredCache, TieredCacheOptions, createCache, createMemoryCache, createRedisCache, createSQLiteCache, createStandardTieredCache, createTieredCache } from './caching/index.js';
9
+ export { BaseStore, ChromaStore, ChromaStoreConfig, CollectionInfo, DeleteOptions, DeleteResult, DistanceMetric, IndexInfo, MemoryStore, MemoryStoreConfig, MilvusStoreConfig, PgVectorStoreConfig, PineconeStore, PineconeStoreConfig, QdrantStore, QdrantStoreConfig, StoreConfig, StoreFactoryOptions, StoreHealth, StoreQueryOptions, StoreQueryResult, StoreStats, StoredVector, UpsertOptions, UpsertResult, VectorRecord, VectorStoreType, WeaviateStoreConfig, createChromaStore, createMemoryStore, createPineconeStore, createQdrantStore, createStore } from './stores/index.js';
10
+
11
+ interface EmbeddingVersion {
12
+ id: string;
13
+ name: string;
14
+ provider: EmbeddingProviderType;
15
+ model: string;
16
+ dimensions: number;
17
+ description?: string;
18
+ createdAt: number;
19
+ active: boolean;
20
+ deprecated: boolean;
21
+ deprecationReason?: string;
22
+ replacement?: string;
23
+ modelInfo?: ModelInfo;
24
+ metadata?: Record<string, unknown>;
25
+ }
26
+ interface VersionRegistryEntry {
27
+ version: EmbeddingVersion;
28
+ documentCount: number;
29
+ chunkCount: number;
30
+ firstUsed: number;
31
+ lastUsed: number;
32
+ }
33
+ interface VersionComparisonResult {
34
+ source: EmbeddingVersion;
35
+ target: EmbeddingVersion;
36
+ compatible: boolean;
37
+ dimensionChange: number;
38
+ providerChanged: boolean;
39
+ migrationRequired: boolean;
40
+ migrationComplexity: 'low' | 'medium' | 'high';
41
+ estimatedMigrationTimeMinutes?: number;
42
+ notes: string[];
43
+ }
44
+ interface MigrationPlan {
45
+ id: string;
46
+ name: string;
47
+ sourceVersion: string;
48
+ targetVersion: string;
49
+ steps: MigrationStep[];
50
+ totalItems: number;
51
+ estimatedDurationMinutes: number;
52
+ createdAt: number;
53
+ status: MigrationPlanStatus;
54
+ validation?: MigrationValidation;
55
+ metadata?: Record<string, unknown>;
56
+ }
57
+ type MigrationPlanStatus = 'draft' | 'validated' | 'ready' | 'in_progress' | 'paused' | 'completed' | 'failed' | 'cancelled';
58
+ interface MigrationStep {
59
+ id: string;
60
+ type: MigrationStepType;
61
+ description: string;
62
+ order: number;
63
+ status: MigrationStepStatus;
64
+ itemCount: number;
65
+ processedCount: number;
66
+ config?: Record<string, unknown>;
67
+ startedAt?: number;
68
+ completedAt?: number;
69
+ error?: string;
70
+ }
71
+ type MigrationStepType = 'backup' | 'validate_source' | 're_embed' | 'transform' | 'upsert' | 'verify' | 'cleanup' | 'rollback';
72
+ type MigrationStepStatus = 'pending' | 'in_progress' | 'completed' | 'failed' | 'skipped';
73
+ interface MigrationValidation {
74
+ valid: boolean;
75
+ errors: string[];
76
+ warnings: string[];
77
+ validatedAt: number;
78
+ }
79
+ interface MigrationProgress {
80
+ migrationId: string;
81
+ currentStep: string;
82
+ overallProgress: number;
83
+ stepProgress: number;
84
+ itemsProcessed: number;
85
+ totalItems: number;
86
+ itemsPerSecond: number;
87
+ estimatedRemainingSeconds: number;
88
+ errors: number;
89
+ startedAt: number;
90
+ status: MigrationPlanStatus;
91
+ }
92
+ interface MigrationResult {
93
+ migrationId: string;
94
+ success: boolean;
95
+ sourceVersion: string;
96
+ targetVersion: string;
97
+ itemsMigrated: number;
98
+ itemsFailed: number;
99
+ durationMs: number;
100
+ startedAt: number;
101
+ completedAt: number;
102
+ errors: MigrationError[];
103
+ rolledBack: boolean;
104
+ metadata?: Record<string, unknown>;
105
+ }
106
+ interface MigrationError {
107
+ itemId: string;
108
+ stepId: string;
109
+ message: string;
110
+ code?: string;
111
+ retryable: boolean;
112
+ timestamp: number;
113
+ }
114
+ interface MigrationOptions {
115
+ batchSize?: number;
116
+ concurrency?: number;
117
+ continueOnError?: boolean;
118
+ maxErrors?: number;
119
+ validate?: boolean;
120
+ backup?: boolean;
121
+ backupPath?: string;
122
+ dryRun?: boolean;
123
+ onProgress?: (progress: MigrationProgress) => void;
124
+ onStep?: (step: MigrationStep) => void;
125
+ onError?: (error: MigrationError) => void;
126
+ }
127
+ interface RollbackOptions {
128
+ toStep?: string;
129
+ useBackup?: boolean;
130
+ backupPath?: string;
131
+ force?: boolean;
132
+ }
133
+ interface VersionUpgradePath {
134
+ from: string;
135
+ to: string;
136
+ steps: string[];
137
+ direct: boolean;
138
+ complexity: 'low' | 'medium' | 'high';
139
+ breakingChanges: string[];
140
+ }
141
+ interface VersionRegistryOptions {
142
+ storagePath?: string;
143
+ autoRegister?: boolean;
144
+ trackUsage?: boolean;
145
+ maxVersions?: number;
146
+ }
147
+ interface VersionChangeEvent {
148
+ type: 'created' | 'activated' | 'deprecated' | 'deleted';
149
+ versionId: string;
150
+ previousVersion?: string;
151
+ timestamp: number;
152
+ metadata?: Record<string, unknown>;
153
+ }
154
+
155
+ type QualityMetricType = 'coherence' | 'diversity' | 'coverage' | 'stability' | 'retrieval_accuracy' | 'semantic_similarity' | 'cluster_quality';
156
+ interface QualityScore {
157
+ metric: QualityMetricType;
158
+ score: number;
159
+ interpretation: 'poor' | 'fair' | 'good' | 'excellent';
160
+ threshold: number;
161
+ passed: boolean;
162
+ sampleSize: number;
163
+ computedAt: number;
164
+ details?: Record<string, unknown>;
165
+ }
166
+ interface QualityReport {
167
+ id: string;
168
+ name: string;
169
+ model: string;
170
+ version?: string;
171
+ scores: QualityScore[];
172
+ overallScore: number;
173
+ overallInterpretation: 'poor' | 'fair' | 'good' | 'excellent';
174
+ recommendations: string[];
175
+ createdAt: number;
176
+ sampleCount: number;
177
+ metadata?: Record<string, unknown>;
178
+ }
179
+ interface DriftDetectionResult {
180
+ driftDetected: boolean;
181
+ severity: 'none' | 'low' | 'medium' | 'high' | 'critical';
182
+ driftScore: number;
183
+ affectedDimensionsPercent: number;
184
+ meanShift: number;
185
+ varianceChange: number;
186
+ distributionComparison: DistributionComparison;
187
+ detectedAt: number;
188
+ referenceTimestamp: number;
189
+ currentTimestamp: number;
190
+ recommendations: string[];
191
+ details?: Record<string, unknown>;
192
+ }
193
+ interface DistributionComparison {
194
+ klDivergence: number;
195
+ jsDivergence: number;
196
+ wassersteinDistance: number;
197
+ meanCosineSimilarity: number;
198
+ dimensionStats?: DimensionStats[];
199
+ }
200
+ interface DimensionStats {
201
+ dimension: number;
202
+ referenceMean: number;
203
+ currentMean: number;
204
+ meanChange: number;
205
+ referenceVariance: number;
206
+ currentVariance: number;
207
+ varianceChange: number;
208
+ significantChange: boolean;
209
+ }
210
+ interface ReferenceDistribution {
211
+ id: string;
212
+ model: string;
213
+ version?: string;
214
+ sampleCount: number;
215
+ mean: EmbeddingVector;
216
+ variance: EmbeddingVector;
217
+ covariance?: number[][];
218
+ createdAt: number;
219
+ validUntil?: number;
220
+ metadata?: Record<string, unknown>;
221
+ }
222
+ interface DriftMonitorConfig {
223
+ checkInterval?: number;
224
+ sampleSize?: number;
225
+ driftThreshold?: number;
226
+ alertSeverity?: 'low' | 'medium' | 'high' | 'critical';
227
+ autoUpdateBaseline?: boolean;
228
+ baselineUpdateInterval?: number;
229
+ onAlert?: (result: DriftDetectionResult) => void;
230
+ }
231
+ interface QualityEvaluationOptions {
232
+ metrics?: QualityMetricType[];
233
+ sampleSize?: number;
234
+ referenceEmbeddings?: EmbeddingVector[];
235
+ referenceTexts?: string[];
236
+ groundTruth?: GroundTruthData;
237
+ thresholds?: Record<QualityMetricType, number>;
238
+ }
239
+ interface GroundTruthData {
240
+ pairs: Array<{
241
+ query: string;
242
+ relevantDocs: string[];
243
+ irrelevantDocs?: string[];
244
+ }>;
245
+ labels?: Array<{
246
+ text: string;
247
+ label: string;
248
+ }>;
249
+ }
250
+ interface CoherenceDetails {
251
+ intraClusterCoherence: number;
252
+ topicCoherence: number;
253
+ semanticConsistency: number;
254
+ }
255
+ interface DiversityDetails {
256
+ uniqueCoverage: number;
257
+ pairwiseDiversity: number;
258
+ clusterSpread: number;
259
+ }
260
+ interface RetrievalAccuracyDetails {
261
+ precisionAtK: Record<number, number>;
262
+ recallAtK: Record<number, number>;
263
+ mrr: number;
264
+ ndcg: number;
265
+ }
266
+ interface ClusterQualityDetails {
267
+ silhouetteScore: number;
268
+ calinskiHarabaszIndex: number;
269
+ daviesBouldinIndex: number;
270
+ numClusters: number;
271
+ }
272
+ interface QualityAlert {
273
+ id: string;
274
+ type: 'quality_degradation' | 'drift_detected' | 'threshold_breach';
275
+ severity: 'low' | 'medium' | 'high' | 'critical';
276
+ message: string;
277
+ metric?: QualityMetricType;
278
+ currentValue?: number;
279
+ thresholdValue?: number;
280
+ createdAt: number;
281
+ acknowledged: boolean;
282
+ acknowledgedAt?: number;
283
+ metadata?: Record<string, unknown>;
284
+ }
285
+ interface QualityMonitoringOptions {
286
+ enabled?: boolean;
287
+ checkInterval?: number;
288
+ metrics?: QualityMetricType[];
289
+ thresholds?: Record<QualityMetricType, number>;
290
+ onAlert?: (alert: QualityAlert) => void;
291
+ onReport?: (report: QualityReport) => void;
292
+ }
293
+ interface BenchmarkResult {
294
+ name: string;
295
+ model: string;
296
+ dataset: string;
297
+ metrics: Record<string, number>;
298
+ latency: {
299
+ p50: number;
300
+ p95: number;
301
+ p99: number;
302
+ mean: number;
303
+ };
304
+ throughput: number;
305
+ totalItems: number;
306
+ durationMs: number;
307
+ timestamp: number;
308
+ }
309
+
310
+ type PipelineType = 'batch' | 'stream' | 'document' | 'custom';
311
+ type PipelineStatus = 'idle' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
312
+ interface PipelineConfig {
313
+ name: string;
314
+ type: PipelineType;
315
+ batchSize?: number;
316
+ concurrency?: number;
317
+ retry?: RetryConfig;
318
+ chunking?: ChunkingPipelineConfig;
319
+ caching?: boolean;
320
+ qualityChecks?: boolean;
321
+ progressInterval?: number;
322
+ metadata?: Record<string, unknown>;
323
+ }
324
+ interface ChunkingPipelineConfig {
325
+ strategy: ChunkingStrategyType;
326
+ options: ChunkingOptions;
327
+ preProcess?: (text: string) => string;
328
+ postProcess?: (chunks: Chunk[]) => Chunk[];
329
+ }
330
+ interface RetryConfig {
331
+ maxRetries?: number;
332
+ initialDelay?: number;
333
+ maxDelay?: number;
334
+ backoffMultiplier?: number;
335
+ jitter?: boolean;
336
+ retryOnCodes?: number[];
337
+ retryCondition?: (error: Error) => boolean;
338
+ }
339
+ interface PipelineInput {
340
+ id?: string;
341
+ text: string;
342
+ metadata?: Record<string, unknown>;
343
+ }
344
+ interface PipelineOutput {
345
+ id: string;
346
+ inputId: string;
347
+ result: EmbeddingResult;
348
+ chunks?: Chunk[];
349
+ processingTimeMs: number;
350
+ metadata?: Record<string, unknown>;
351
+ }
352
+ interface BatchPipelineOptions extends EmbeddingOptions {
353
+ batchSize?: number;
354
+ concurrency?: number;
355
+ continueOnError?: boolean;
356
+ onProgress?: (progress: PipelineProgress) => void;
357
+ onItem?: (output: PipelineOutput) => void;
358
+ onError?: (error: PipelineError) => void;
359
+ }
360
+ interface StreamPipelineOptions extends EmbeddingOptions {
361
+ bufferSize?: number;
362
+ flushInterval?: number;
363
+ highWaterMark?: number;
364
+ backpressureStrategy?: 'pause' | 'drop' | 'buffer';
365
+ maxBufferSize?: number;
366
+ }
367
+ interface DocumentPipelineOptions extends BatchPipelineOptions {
368
+ documentId?: string;
369
+ source?: string;
370
+ type?: string;
371
+ chunkingStrategy?: ChunkingStrategyType;
372
+ chunkingOptions?: ChunkingOptions;
373
+ store?: boolean;
374
+ storeNamespace?: string;
375
+ }
376
+ interface PipelineProgress {
377
+ pipelineId: string;
378
+ status: PipelineStatus;
379
+ totalItems: number;
380
+ processedItems: number;
381
+ failedItems: number;
382
+ progressPercent: number;
383
+ itemsPerSecond: number;
384
+ elapsedMs: number;
385
+ estimatedRemainingMs: number;
386
+ currentBatch?: number;
387
+ totalBatches?: number;
388
+ }
389
+ interface PipelineError {
390
+ id: string;
391
+ inputId?: string;
392
+ message: string;
393
+ code?: string;
394
+ retryCount: number;
395
+ willRetry: boolean;
396
+ timestamp: number;
397
+ stack?: string;
398
+ }
399
+ interface PipelineResult {
400
+ pipelineId: string;
401
+ status: PipelineStatus;
402
+ outputs: PipelineOutput[];
403
+ totalProcessed: number;
404
+ totalFailed: number;
405
+ totalTokens: number;
406
+ durationMs: number;
407
+ errors: PipelineError[];
408
+ metrics: PipelineMetrics;
409
+ }
410
+ interface PipelineMetrics {
411
+ totalItems: number;
412
+ successfulItems: number;
413
+ failedItems: number;
414
+ retriedItems: number;
415
+ totalTokens: number;
416
+ cacheHits: number;
417
+ cacheMisses: number;
418
+ avgLatencyMs: number;
419
+ p50LatencyMs: number;
420
+ p95LatencyMs: number;
421
+ p99LatencyMs: number;
422
+ throughput: number;
423
+ estimatedCostUSD: number;
424
+ }
425
+ interface PipelineEvent {
426
+ type: PipelineEventType;
427
+ pipelineId: string;
428
+ timestamp: number;
429
+ data?: Record<string, unknown>;
430
+ }
431
+ type PipelineEventType = 'started' | 'progress' | 'batch_completed' | 'item_completed' | 'item_failed' | 'paused' | 'resumed' | 'completed' | 'failed' | 'cancelled';
432
+ interface PipelineCheckpoint {
433
+ id: string;
434
+ pipelineId: string;
435
+ processedIds: string[];
436
+ failedIds: string[];
437
+ lastProcessedIndex: number;
438
+ progress: PipelineProgress;
439
+ createdAt: number;
440
+ data?: Record<string, unknown>;
441
+ }
442
+ interface StreamItem<T = unknown> {
443
+ id: string;
444
+ data: T;
445
+ timestamp: number;
446
+ metadata?: Record<string, unknown>;
447
+ }
448
+ interface StreamResult {
449
+ streamId: string;
450
+ itemsProcessed: number;
451
+ itemsFailed: number;
452
+ durationMs: number;
453
+ throughput: number;
454
+ }
455
+ interface PipelineBuilderOptions {
456
+ defaultBatchSize?: number;
457
+ defaultConcurrency?: number;
458
+ defaultRetry?: RetryConfig;
459
+ checkpointing?: boolean;
460
+ checkpointInterval?: number;
461
+ }
462
+
463
+ interface EmbeddingManagerConfig {
464
+ defaultModel?: string;
465
+ defaultProvider?: string;
466
+ caching?: boolean;
467
+ batchSize?: number;
468
+ concurrency?: number;
469
+ retry?: {
470
+ maxRetries?: number;
471
+ initialDelay?: number;
472
+ maxDelay?: number;
473
+ };
474
+ }
475
+ interface EmbeddingManagerEvents {
476
+ 'embed:start': [text: string, options?: EmbeddingOptions];
477
+ 'embed:complete': [result: EmbeddingResult];
478
+ 'embed:error': [error: Error, text: string];
479
+ 'batch:start': [texts: string[], options?: BatchEmbeddingOptions];
480
+ 'batch:progress': [progress: {
481
+ completed: number;
482
+ total: number;
483
+ }];
484
+ 'batch:complete': [result: BatchEmbeddingResult];
485
+ 'batch:error': [error: Error];
486
+ 'cache:hit': [key: string];
487
+ 'cache:miss': [key: string];
488
+ }
489
+ interface EmbeddingCache {
490
+ get(key: string): Promise<EmbeddingResult | undefined>;
491
+ set(key: string, result: EmbeddingResult, ttl?: number): Promise<void>;
492
+ has(key: string): Promise<boolean>;
493
+ delete(key: string): Promise<boolean>;
494
+ clear(): Promise<void>;
495
+ }
496
+ interface EmbeddingChunker {
497
+ chunk(text: string, options?: Record<string, unknown>): Promise<Array<{
498
+ text: string;
499
+ metadata: Record<string, unknown>;
500
+ }>>;
501
+ }
502
+ interface EmbeddingStore {
503
+ upsert(chunks: EmbeddedChunk[], namespace?: string): Promise<{
504
+ upsertedCount: number;
505
+ }>;
506
+ query(vector: EmbeddingVector, options?: SearchOptions): Promise<SearchResult[]>;
507
+ delete(ids: string[], namespace?: string): Promise<{
508
+ deletedCount: number;
509
+ }>;
510
+ }
511
+ declare class EmbeddingManager extends EventEmitter<EmbeddingManagerEvents> {
512
+ private config;
513
+ private modelRegistry;
514
+ private cache;
515
+ private chunker;
516
+ private store;
517
+ private stats;
518
+ constructor(config?: EmbeddingManagerConfig);
519
+ private createInitialStats;
520
+ registerModel(model: EmbeddingModel, isDefault?: boolean): this;
521
+ setCache(cache: EmbeddingCache): this;
522
+ setChunker(chunker: EmbeddingChunker): this;
523
+ setStore(store: EmbeddingStore): this;
524
+ private getModel;
525
+ embed(text: string, options?: EmbeddingOptions): Promise<EmbeddingResult>;
526
+ embedBatch(texts: string[], options?: BatchEmbeddingOptions): Promise<BatchEmbeddingResult>;
527
+ embedDocument(text: string, options?: DocumentEmbeddingOptions): Promise<EmbeddedChunk[]>;
528
+ search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
529
+ similarity(text1: string, text2: string): Promise<number>;
530
+ getStats(): EmbeddingStats;
531
+ resetStats(): void;
532
+ getModels(): Array<{
533
+ provider: string;
534
+ name: string;
535
+ dimensions: number;
536
+ }>;
537
+ private updateStats;
538
+ private estimateCost;
539
+ }
540
+ declare function createEmbeddingManager(config?: EmbeddingManagerConfig): EmbeddingManager;
541
+
542
+ declare function contentHash(text: string, algorithm?: 'md5' | 'sha1' | 'sha256'): string;
543
+ declare function cacheKey(text: string, model: string, prefix?: string): string;
544
+ declare function estimateTokens(text: string): number;
545
+ declare function splitByChars(text: string, maxChars: number, overlap?: number): string[];
546
+ declare function splitBySeparator(text: string, separator: string | RegExp): string[];
547
+ declare function batch<T>(items: T[], batchSize: number): T[][];
548
+ declare function withConcurrency<T, R>(items: T[], fn: (item: T, index: number) => Promise<R>, concurrency: number): Promise<R[]>;
549
+ declare function retry<T>(fn: () => Promise<T>, options?: {
550
+ maxRetries?: number;
551
+ initialDelay?: number;
552
+ maxDelay?: number;
553
+ backoffMultiplier?: number;
554
+ retryCondition?: (error: Error) => boolean;
555
+ }): Promise<T>;
556
+ declare function sleep(ms: number): Promise<void>;
557
+ declare function deferred<T>(): {
558
+ promise: Promise<T>;
559
+ resolve: (value: T) => void;
560
+ reject: (reason?: unknown) => void;
561
+ };
562
+ declare function percentile(values: number[], p: number): number;
563
+ declare function mean(values: number[]): number;
564
+ declare function variance(values: number[]): number;
565
+ declare function stdDev(values: number[]): number;
566
+ declare function normalize(value: number, min: number, max: number): number;
567
+ declare function clamp(value: number, min: number, max: number): number;
568
+ declare function generateId(prefix?: string): string;
569
+ declare function deepClone<T>(obj: T): T;
570
+ declare function measureTime<T>(fn: () => Promise<T>): Promise<{
571
+ result: T;
572
+ durationMs: number;
573
+ }>;
574
+ declare function formatBytes(bytes: number): string;
575
+ declare function formatDuration(ms: number): string;
576
+ declare function createEventEmitter<T extends Record<string, unknown[]>>(): {
577
+ on<K extends keyof T>(event: K, listener: (...args: T[K]) => void): () => void;
578
+ off<K extends keyof T>(event: K, listener: (...args: T[K]) => void): void;
579
+ emit<K extends keyof T>(event: K, ...args: T[K]): void;
580
+ removeAllListeners<K extends keyof T>(event?: K): void;
581
+ };
582
+
583
+ interface VersionRegistryEvents {
584
+ 'version:created': [version: EmbeddingVersion];
585
+ 'version:activated': [version: EmbeddingVersion, previous?: EmbeddingVersion];
586
+ 'version:deprecated': [version: EmbeddingVersion, reason: string];
587
+ 'version:deleted': [versionId: string];
588
+ change: [event: VersionChangeEvent];
589
+ }
590
+ declare class VersionRegistry extends EventEmitter<VersionRegistryEvents> {
591
+ private versions;
592
+ private activeVersion;
593
+ private options;
594
+ constructor(options?: VersionRegistryOptions);
595
+ register(version: Omit<EmbeddingVersion, 'id' | 'createdAt'>): EmbeddingVersion;
596
+ get(id: string): EmbeddingVersion | undefined;
597
+ getActive(): EmbeddingVersion | undefined;
598
+ activate(id: string): void;
599
+ deprecate(id: string, reason: string, replacement?: string): void;
600
+ delete(id: string): boolean;
601
+ list(): EmbeddingVersion[];
602
+ findByProvider(provider: EmbeddingProviderType): EmbeddingVersion[];
603
+ findByModel(model: string): EmbeddingVersion[];
604
+ compare(sourceId: string, targetId: string): VersionComparisonResult;
605
+ getUpgradePath(fromId: string, toId: string): VersionUpgradePath;
606
+ trackUsage(id: string, documents?: number, chunks?: number): void;
607
+ getUsageStats(id: string): VersionRegistryEntry | undefined;
608
+ private pruneOldVersions;
609
+ private emitChange;
610
+ export(): {
611
+ versions: VersionRegistryEntry[];
612
+ activeVersion: string | null;
613
+ };
614
+ import(data: {
615
+ versions: VersionRegistryEntry[];
616
+ activeVersion: string | null;
617
+ }): void;
618
+ }
619
+ declare function createVersionRegistry(options?: VersionRegistryOptions): VersionRegistry;
620
+
621
+ interface DriftDetectorEvents {
622
+ 'drift:detected': [result: DriftDetectionResult];
623
+ 'drift:alert': [alert: QualityAlert];
624
+ 'baseline:updated': [distribution: ReferenceDistribution];
625
+ }
626
+ declare class DriftDetector extends EventEmitter<DriftDetectorEvents> {
627
+ private reference;
628
+ private config;
629
+ private monitorInterval?;
630
+ private sampleBuffer;
631
+ constructor(config?: DriftMonitorConfig);
632
+ setReference(embeddings: EmbeddingVector[], model: string, version?: string): ReferenceDistribution;
633
+ getReference(): ReferenceDistribution | null;
634
+ detect(currentEmbeddings: EmbeddingVector[]): DriftDetectionResult;
635
+ private compareDistributions;
636
+ private calculateDriftScore;
637
+ private determineSeverity;
638
+ private generateRecommendations;
639
+ private shouldAlert;
640
+ private emitAlert;
641
+ addSample(embedding: EmbeddingVector): void;
642
+ startMonitoring(): void;
643
+ stopMonitoring(): void;
644
+ }
645
+ declare function createDriftDetector(config?: DriftMonitorConfig): DriftDetector;
646
+
647
+ export { BatchEmbeddingOptions, BatchEmbeddingResult, type BatchPipelineOptions, type BenchmarkResult, Chunk, ChunkingOptions, type ChunkingPipelineConfig, ChunkingStrategyType, type ClusterQualityDetails, type CoherenceDetails, type DimensionStats, type DistributionComparison, type DiversityDetails, DocumentEmbeddingOptions, type DocumentPipelineOptions, type DriftDetectionResult, DriftDetector, type DriftMonitorConfig, EmbeddedChunk, type EmbeddingCache, type EmbeddingChunker, EmbeddingManager, type EmbeddingManagerConfig, type EmbeddingManagerEvents, EmbeddingModel, EmbeddingOptions, EmbeddingProviderType, EmbeddingResult, EmbeddingStats, type EmbeddingStore, EmbeddingVector, type EmbeddingVersion, type GroundTruthData, type MigrationError, type MigrationOptions, type MigrationPlan, type MigrationPlanStatus, type MigrationProgress, type MigrationResult, type MigrationStep, type MigrationStepStatus, type MigrationStepType, type MigrationValidation, ModelInfo, type PipelineBuilderOptions, type PipelineCheckpoint, type PipelineConfig, type PipelineError, type PipelineEvent, type PipelineEventType, type PipelineInput, type PipelineMetrics, type PipelineOutput, type PipelineProgress, type PipelineResult, type PipelineStatus, type PipelineType, type QualityAlert, type QualityEvaluationOptions, type QualityMetricType, type QualityMonitoringOptions, type QualityReport, type QualityScore, type ReferenceDistribution, type RetrievalAccuracyDetails, type RetryConfig, type RollbackOptions, SearchOptions, SearchResult, type StreamItem, type StreamPipelineOptions, type StreamResult, type VersionChangeEvent, type VersionComparisonResult, VersionRegistry, type VersionRegistryEntry, type VersionRegistryOptions, type VersionUpgradePath, batch, cacheKey, clamp, contentHash, createDriftDetector, createEmbeddingManager, createEventEmitter, createVersionRegistry, deepClone, deferred, estimateTokens, formatBytes, formatDuration, generateId, mean, measureTime, normalize, percentile, retry, sleep, splitByChars, splitBySeparator, stdDev, variance, withConcurrency };