agentdb 3.0.0-alpha.7 → 3.0.0-alpha.9
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.
- package/README.md +214 -1204
- package/dist/agentdb.browser.js +1 -1
- package/dist/agentdb.browser.min.js +1 -1
- package/dist/backends/VectorBackend.d.ts +120 -0
- package/dist/backends/VectorBackend.js +14 -0
- package/dist/backends/VectorBackend.js.map +1 -0
- package/dist/optimizations/RVFOptimizer.d.ts +225 -0
- package/dist/optimizations/RVFOptimizer.js +541 -0
- package/dist/optimizations/RVFOptimizer.js.map +1 -0
- package/dist/src/backends/factory.d.ts +1 -0
- package/dist/src/backends/factory.d.ts.map +1 -1
- package/dist/src/backends/factory.js +40 -7
- package/dist/src/backends/factory.js.map +1 -1
- package/dist/src/backends/index.cjs +6 -0
- package/dist/src/backends/ruvector/RuVectorBackend.d.ts +40 -22
- package/dist/src/backends/ruvector/RuVectorBackend.d.ts.map +1 -1
- package/dist/src/backends/ruvector/RuVectorBackend.js +228 -81
- package/dist/src/backends/ruvector/RuVectorBackend.js.map +1 -1
- package/dist/src/consensus/RaftConsensus.d.ts +220 -0
- package/dist/src/consensus/RaftConsensus.d.ts.map +1 -0
- package/dist/src/consensus/RaftConsensus.js +762 -0
- package/dist/src/consensus/RaftConsensus.js.map +1 -0
- package/dist/src/controllers/AttentionService.d.ts +80 -1
- package/dist/src/controllers/AttentionService.d.ts.map +1 -1
- package/dist/src/controllers/AttentionService.js +344 -13
- package/dist/src/controllers/AttentionService.js.map +1 -1
- package/dist/src/controllers/HierarchicalMemory.d.ts +197 -0
- package/dist/src/controllers/HierarchicalMemory.d.ts.map +1 -0
- package/dist/src/controllers/HierarchicalMemory.js +519 -0
- package/dist/src/controllers/HierarchicalMemory.js.map +1 -0
- package/dist/src/controllers/LearningSystem.d.ts +17 -0
- package/dist/src/controllers/LearningSystem.d.ts.map +1 -1
- package/dist/src/controllers/LearningSystem.js +131 -0
- package/dist/src/controllers/LearningSystem.js.map +1 -1
- package/dist/src/controllers/MemoryConsolidation.d.ts +142 -0
- package/dist/src/controllers/MemoryConsolidation.d.ts.map +1 -0
- package/dist/src/controllers/MemoryConsolidation.js +479 -0
- package/dist/src/controllers/MemoryConsolidation.js.map +1 -0
- package/dist/src/controllers/QUICConnection.d.ts +122 -0
- package/dist/src/controllers/QUICConnection.d.ts.map +1 -0
- package/dist/src/controllers/QUICConnection.js +329 -0
- package/dist/src/controllers/QUICConnection.js.map +1 -0
- package/dist/src/controllers/QUICConnectionPool.d.ts +83 -0
- package/dist/src/controllers/QUICConnectionPool.d.ts.map +1 -0
- package/dist/src/controllers/QUICConnectionPool.js +256 -0
- package/dist/src/controllers/QUICConnectionPool.js.map +1 -0
- package/dist/src/controllers/QUICStreamManager.d.ts +114 -0
- package/dist/src/controllers/QUICStreamManager.d.ts.map +1 -0
- package/dist/src/controllers/QUICStreamManager.js +267 -0
- package/dist/src/controllers/QUICStreamManager.js.map +1 -0
- package/dist/src/controllers/StreamingEmbeddingService.d.ts +82 -0
- package/dist/src/controllers/StreamingEmbeddingService.d.ts.map +1 -0
- package/dist/src/controllers/StreamingEmbeddingService.js +243 -0
- package/dist/src/controllers/StreamingEmbeddingService.js.map +1 -0
- package/dist/src/controllers/WASMVectorSearch.d.ts +30 -0
- package/dist/src/controllers/WASMVectorSearch.d.ts.map +1 -1
- package/dist/src/controllers/WASMVectorSearch.js +70 -0
- package/dist/src/controllers/WASMVectorSearch.js.map +1 -1
- package/dist/src/controllers/index.cjs +6 -0
- package/dist/src/controllers/index.d.ts +10 -0
- package/dist/src/controllers/index.d.ts.map +1 -1
- package/dist/src/controllers/index.js +6 -0
- package/dist/src/controllers/index.js.map +1 -1
- package/dist/src/core/AgentDB.d.ts.map +1 -1
- package/dist/src/core/AgentDB.js +1 -0
- package/dist/src/core/AgentDB.js.map +1 -1
- package/dist/src/index.cjs +6 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/optimizations/RVFOptimizer.d.ts +226 -0
- package/dist/src/optimizations/RVFOptimizer.d.ts.map +1 -0
- package/dist/src/optimizations/RVFOptimizer.js +541 -0
- package/dist/src/optimizations/RVFOptimizer.js.map +1 -0
- package/dist/src/optimizations/index.d.ts +2 -0
- package/dist/src/optimizations/index.d.ts.map +1 -1
- package/dist/src/optimizations/index.js +1 -0
- package/dist/src/optimizations/index.js.map +1 -1
- package/dist/src/security/MutationGuard.d.ts.map +1 -1
- package/dist/src/security/MutationGuard.js +24 -39
- package/dist/src/security/MutationGuard.js.map +1 -1
- package/dist/src/security/index.cjs +6 -0
- package/dist/src/services/GNNService.d.ts +172 -0
- package/dist/src/services/GNNService.d.ts.map +1 -0
- package/dist/src/services/GNNService.js +612 -0
- package/dist/src/services/GNNService.js.map +1 -0
- package/dist/src/services/GraphTransformerService.d.ts +1 -0
- package/dist/src/services/GraphTransformerService.d.ts.map +1 -1
- package/dist/src/services/GraphTransformerService.js +41 -3
- package/dist/src/services/GraphTransformerService.js.map +1 -1
- package/dist/src/services/SemanticRouter.d.ts +7 -2
- package/dist/src/services/SemanticRouter.d.ts.map +1 -1
- package/dist/src/services/SemanticRouter.js +13 -2
- package/dist/src/services/SemanticRouter.js.map +1 -1
- package/dist/src/services/SonaTrajectoryService.d.ts +126 -2
- package/dist/src/services/SonaTrajectoryService.d.ts.map +1 -1
- package/dist/src/services/SonaTrajectoryService.js +311 -3
- package/dist/src/services/SonaTrajectoryService.js.map +1 -1
- package/package.json +22 -16
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAGrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAGrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EAChB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC7E,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AACzH,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtE,YAAY,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACnF,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxE,YAAY,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGjJ,cAAc,wBAAwB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -32,6 +32,7 @@ export { createDatabase } from './db-fallback.js';
|
|
|
32
32
|
// Optimizations
|
|
33
33
|
export { BatchOperations } from './optimizations/BatchOperations.js';
|
|
34
34
|
export { QueryOptimizer } from './optimizations/QueryOptimizer.js';
|
|
35
|
+
export { RVFOptimizer } from './optimizations/RVFOptimizer.js';
|
|
35
36
|
// Security
|
|
36
37
|
export { validateTableName, validateColumnName, validatePragmaCommand, buildSafeWhereClause, buildSafeSetClause, ValidationError } from './security/input-validation.js';
|
|
37
38
|
// Services - RuVector package integrations
|
|
@@ -39,6 +40,7 @@ export { SemanticRouter } from './services/SemanticRouter.js';
|
|
|
39
40
|
export { SonaTrajectoryService } from './services/SonaTrajectoryService.js';
|
|
40
41
|
export { LLMRouter } from './services/LLMRouter.js';
|
|
41
42
|
export { GraphTransformerService } from './services/GraphTransformerService.js';
|
|
43
|
+
export { GNNService } from './services/GNNService.js';
|
|
42
44
|
// Vector math utilities
|
|
43
45
|
export { cosineSimilarity, batchCosineSimilarity, distanceToSimilarity, serializeEmbedding, deserializeEmbedding } from './utils/vector-math.js';
|
|
44
46
|
// Re-export all controllers for convenience
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAqB;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,qBAAqB;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,uBAAuB;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,gBAAgB;AAChB,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAqB;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,qBAAqB;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF,sCAAsC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,uBAAuB;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,gBAAgB;AAChB,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,WAAW;AACX,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EAChB,MAAM,gCAAgC,CAAC;AAExC,2CAA2C;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAUtD,wBAAwB;AACxB,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEjJ,4CAA4C;AAC5C,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RVFOptimizer - RuVector Format Optimization Patterns
|
|
3
|
+
*
|
|
4
|
+
* Implements RVF (RuVector Format) optimization patterns for AgentDB:
|
|
5
|
+
* - Embedding compression via quantization (4/8/16-bit)
|
|
6
|
+
* - Deduplication of near-identical embeddings
|
|
7
|
+
* - Memory pruning based on confidence and age
|
|
8
|
+
* - Batch embedding with configurable queue and timer
|
|
9
|
+
* - LRU caching for frequently accessed embeddings
|
|
10
|
+
* - 4-bit INT4 quantization for 8x memory compression (ADR-065)
|
|
11
|
+
* - Adaptive quantization based on importance scores
|
|
12
|
+
* - Progressive compression with automatic promotion/demotion
|
|
13
|
+
* - Multi-level caching with zero-copy hot paths
|
|
14
|
+
*
|
|
15
|
+
* Performance targets (ADR-062, ADR-065):
|
|
16
|
+
* - 10-100x speedup via batch embedding
|
|
17
|
+
* - 8x memory reduction via 4-bit quantization (vs 4x with 8-bit)
|
|
18
|
+
* - 20-50% storage reduction via deduplication
|
|
19
|
+
* - <5% quality degradation with adaptive quantization
|
|
20
|
+
*/
|
|
21
|
+
export interface RVFConfig {
|
|
22
|
+
compression: {
|
|
23
|
+
enabled: boolean;
|
|
24
|
+
quantizeBits: 4 | 8 | 16;
|
|
25
|
+
deduplicationThreshold: number;
|
|
26
|
+
adaptive: boolean;
|
|
27
|
+
progressive: boolean;
|
|
28
|
+
};
|
|
29
|
+
pruning: {
|
|
30
|
+
enabled: boolean;
|
|
31
|
+
minConfidence: number;
|
|
32
|
+
maxAge: number;
|
|
33
|
+
};
|
|
34
|
+
batching: {
|
|
35
|
+
enabled: boolean;
|
|
36
|
+
batchSize: number;
|
|
37
|
+
maxWaitMs: number;
|
|
38
|
+
};
|
|
39
|
+
caching: {
|
|
40
|
+
enabled: boolean;
|
|
41
|
+
maxSize: number;
|
|
42
|
+
ttl: number;
|
|
43
|
+
multiLevel: boolean;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export interface CompressionMetrics {
|
|
47
|
+
originalSize: number;
|
|
48
|
+
compressedSize: number;
|
|
49
|
+
compressionRatio: number;
|
|
50
|
+
qualityScore: number;
|
|
51
|
+
quantizationBits: 4 | 8 | 16;
|
|
52
|
+
adaptiveBoost: number;
|
|
53
|
+
}
|
|
54
|
+
export interface CacheLevel {
|
|
55
|
+
name: 'L1' | 'L2' | 'L3';
|
|
56
|
+
maxSize: number;
|
|
57
|
+
quantizeBits: 4 | 8 | 16;
|
|
58
|
+
hitRate: number;
|
|
59
|
+
entries: number;
|
|
60
|
+
}
|
|
61
|
+
export declare class RVFOptimizer {
|
|
62
|
+
private config;
|
|
63
|
+
private cache;
|
|
64
|
+
private batchQueue;
|
|
65
|
+
private batchTimer?;
|
|
66
|
+
private l1Cache;
|
|
67
|
+
private l2Cache;
|
|
68
|
+
private l3Cache;
|
|
69
|
+
private importanceScores;
|
|
70
|
+
private compressionMetrics;
|
|
71
|
+
private cacheStats;
|
|
72
|
+
constructor(config?: Partial<RVFConfig>);
|
|
73
|
+
/**
|
|
74
|
+
* 4-bit INT4 quantization for 8x memory compression.
|
|
75
|
+
*
|
|
76
|
+
* ADR-065: Implements aggressive 4-bit quantization with:
|
|
77
|
+
* - 16 levels per component (0-15)
|
|
78
|
+
* - Min-max normalization per vector
|
|
79
|
+
* - 8x compression ratio (32-bit → 4-bit)
|
|
80
|
+
*
|
|
81
|
+
* @returns Compressed embedding with quality metrics
|
|
82
|
+
*/
|
|
83
|
+
quantize4Bit(embedding: number[]): {
|
|
84
|
+
compressed: number[];
|
|
85
|
+
metrics: CompressionMetrics;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Adaptive quantization: adjust bit depth based on importance score.
|
|
89
|
+
*
|
|
90
|
+
* ADR-065: High-importance embeddings get higher bit depth:
|
|
91
|
+
* - importance > 0.8: 16-bit (minimal quality loss)
|
|
92
|
+
* - importance 0.5-0.8: 8-bit (balanced)
|
|
93
|
+
* - importance < 0.5: 4-bit (max compression)
|
|
94
|
+
*/
|
|
95
|
+
adaptiveQuantize(embedding: number[], importance?: number): {
|
|
96
|
+
compressed: number[];
|
|
97
|
+
metrics: CompressionMetrics;
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* Progressive compression: automatically promote/demote based on access patterns.
|
|
101
|
+
*
|
|
102
|
+
* ADR-065: Multi-level caching:
|
|
103
|
+
* - L1 (4-bit): Hot embeddings (accessed frequently)
|
|
104
|
+
* - L2 (8-bit): Warm embeddings (moderate access)
|
|
105
|
+
* - L3 (16-bit): Cold embeddings (rare access)
|
|
106
|
+
*
|
|
107
|
+
* Automatic promotion on cache hits, demotion on age.
|
|
108
|
+
*/
|
|
109
|
+
progressiveCompress(key: string, embedding: number[], accessCount?: number): {
|
|
110
|
+
compressed: number[];
|
|
111
|
+
cacheLevel: 'L1' | 'L2' | 'L3';
|
|
112
|
+
metrics: CompressionMetrics;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Zero-copy compression using Int8Array for hot paths.
|
|
116
|
+
*
|
|
117
|
+
* ADR-065: For frequently accessed embeddings, use typed arrays
|
|
118
|
+
* to avoid allocation overhead and enable SIMD optimizations.
|
|
119
|
+
*/
|
|
120
|
+
zeroCopyCompress4Bit(embedding: Float32Array): Int8Array;
|
|
121
|
+
/**
|
|
122
|
+
* Measure quality degradation from compression.
|
|
123
|
+
*
|
|
124
|
+
* @returns Quality metrics: cosine similarity, MSE, max error
|
|
125
|
+
*/
|
|
126
|
+
measureQuality(original: number[], compressed: number[]): {
|
|
127
|
+
cosineSimilarity: number;
|
|
128
|
+
mse: number;
|
|
129
|
+
maxError: number;
|
|
130
|
+
};
|
|
131
|
+
/**
|
|
132
|
+
* Get multi-level cache statistics.
|
|
133
|
+
*/
|
|
134
|
+
getCacheLevels(): CacheLevel[];
|
|
135
|
+
/**
|
|
136
|
+
* Compress embeddings using quantization.
|
|
137
|
+
*
|
|
138
|
+
* Maps each component to an N-bit integer range then reconstructs
|
|
139
|
+
* the approximate float value. This reduces memory per vector by
|
|
140
|
+
* up to 8x (float32 -> 4-bit) while retaining search accuracy.
|
|
141
|
+
*/
|
|
142
|
+
compressEmbedding(embedding: number[]): number[];
|
|
143
|
+
/**
|
|
144
|
+
* Compress a Float32Array embedding (zero-copy friendly).
|
|
145
|
+
*/
|
|
146
|
+
compressFloat32(embedding: Float32Array): Float32Array;
|
|
147
|
+
/**
|
|
148
|
+
* Deduplicate similar embeddings by cosine similarity.
|
|
149
|
+
*
|
|
150
|
+
* Scans the list and removes items whose embedding is above
|
|
151
|
+
* the deduplication threshold compared to an already-kept item.
|
|
152
|
+
* Keeps the higher-confidence entry when duplicates are found.
|
|
153
|
+
*/
|
|
154
|
+
deduplicate(embeddings: Array<{
|
|
155
|
+
id: string;
|
|
156
|
+
embedding: number[];
|
|
157
|
+
confidence: number;
|
|
158
|
+
}>): Array<{
|
|
159
|
+
id: string;
|
|
160
|
+
embedding: number[];
|
|
161
|
+
confidence: number;
|
|
162
|
+
}>;
|
|
163
|
+
/**
|
|
164
|
+
* Identify memories that should be pruned based on confidence and age.
|
|
165
|
+
*
|
|
166
|
+
* Returns an array of IDs that are below the minimum confidence
|
|
167
|
+
* threshold or older than the maximum allowed age.
|
|
168
|
+
*/
|
|
169
|
+
pruneMemories(memories: Array<{
|
|
170
|
+
id: string;
|
|
171
|
+
confidence: number;
|
|
172
|
+
timestamp: number;
|
|
173
|
+
}>): string[];
|
|
174
|
+
/**
|
|
175
|
+
* Batch embedding generation for 10-100x throughput improvement.
|
|
176
|
+
*
|
|
177
|
+
* Queues individual embed requests and flushes them either when
|
|
178
|
+
* the batch reaches `batchSize` or after `maxWaitMs` milliseconds.
|
|
179
|
+
* Uses the provided `embedFn` callback for the actual embedding.
|
|
180
|
+
*/
|
|
181
|
+
batchEmbed(query: string, embedFn: (text: string) => Promise<number[]>): Promise<number[]>;
|
|
182
|
+
/**
|
|
183
|
+
* Flush any pending batch items immediately.
|
|
184
|
+
*/
|
|
185
|
+
flush(embedFn: (text: string) => Promise<number[]>): Promise<void>;
|
|
186
|
+
/**
|
|
187
|
+
* Clear the embedding cache.
|
|
188
|
+
*/
|
|
189
|
+
clearCache(): void;
|
|
190
|
+
/**
|
|
191
|
+
* Get optimizer statistics.
|
|
192
|
+
*/
|
|
193
|
+
getStats(): {
|
|
194
|
+
config: RVFConfig;
|
|
195
|
+
cacheSize: number;
|
|
196
|
+
batchQueueSize: number;
|
|
197
|
+
multiLevelCache?: {
|
|
198
|
+
l1: {
|
|
199
|
+
size: number;
|
|
200
|
+
hits: number;
|
|
201
|
+
misses: number;
|
|
202
|
+
hitRate: number;
|
|
203
|
+
};
|
|
204
|
+
l2: {
|
|
205
|
+
size: number;
|
|
206
|
+
hits: number;
|
|
207
|
+
misses: number;
|
|
208
|
+
hitRate: number;
|
|
209
|
+
};
|
|
210
|
+
l3: {
|
|
211
|
+
size: number;
|
|
212
|
+
hits: number;
|
|
213
|
+
misses: number;
|
|
214
|
+
hitRate: number;
|
|
215
|
+
};
|
|
216
|
+
};
|
|
217
|
+
compressionMetrics?: {
|
|
218
|
+
avgCompressionRatio: number;
|
|
219
|
+
avgQualityScore: number;
|
|
220
|
+
totalCompressed: number;
|
|
221
|
+
};
|
|
222
|
+
};
|
|
223
|
+
private processBatch;
|
|
224
|
+
private cosineSimilarity;
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=RVFOptimizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RVFOptimizer.d.ts","sourceRoot":"","sources":["../../../src/optimizations/RVFOptimizer.ts"],"names":[],"mappings":"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"}
|