@soulcraft/brainy 0.35.0 → 0.37.0
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 +190 -20
- package/dist/coreTypes.d.ts +27 -2
- package/dist/hnsw/distributedSearch.d.ts +118 -0
- package/dist/hnsw/distributedSearch.d.ts.map +1 -0
- package/dist/hnsw/optimizedHNSWIndex.d.ts +97 -0
- package/dist/hnsw/optimizedHNSWIndex.d.ts.map +1 -0
- package/dist/hnsw/partitionedHNSWIndex.d.ts +101 -0
- package/dist/hnsw/partitionedHNSWIndex.d.ts.map +1 -0
- package/dist/hnsw/scaledHNSWSystem.d.ts +142 -0
- package/dist/hnsw/scaledHNSWSystem.d.ts.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/storage/adapters/baseStorageAdapter.d.ts +2 -0
- package/dist/storage/adapters/baseStorageAdapter.d.ts.map +1 -1
- package/dist/storage/adapters/batchS3Operations.d.ts +71 -0
- package/dist/storage/adapters/batchS3Operations.d.ts.map +1 -0
- package/dist/storage/adapters/fileSystemStorage.d.ts +23 -5
- package/dist/storage/adapters/fileSystemStorage.d.ts.map +1 -1
- package/dist/storage/adapters/memoryStorage.d.ts +22 -4
- package/dist/storage/adapters/memoryStorage.d.ts.map +1 -1
- package/dist/storage/adapters/opfsStorage.d.ts +27 -9
- package/dist/storage/adapters/opfsStorage.d.ts.map +1 -1
- package/dist/storage/adapters/s3CompatibleStorage.d.ts +24 -8
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +1 -1
- package/dist/storage/baseStorage.d.ts +30 -4
- package/dist/storage/baseStorage.d.ts.map +1 -1
- package/dist/storage/enhancedCacheManager.d.ts +141 -0
- package/dist/storage/enhancedCacheManager.d.ts.map +1 -0
- package/dist/storage/readOnlyOptimizations.d.ts +133 -0
- package/dist/storage/readOnlyOptimizations.d.ts.map +1 -0
- package/dist/unified.js +635 -215
- package/dist/unified.min.js +991 -991
- package/dist/utils/autoConfiguration.d.ts +125 -0
- package/dist/utils/autoConfiguration.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scaled HNSW System - Integration of All Optimization Strategies
|
|
3
|
+
* Production-ready system for handling millions of vectors with sub-second search
|
|
4
|
+
*/
|
|
5
|
+
import { Vector, VectorDocument } from '../coreTypes.js';
|
|
6
|
+
import { PartitionConfig } from './partitionedHNSWIndex.js';
|
|
7
|
+
import { OptimizedHNSWConfig } from './optimizedHNSWIndex.js';
|
|
8
|
+
import { SearchStrategy } from './distributedSearch.js';
|
|
9
|
+
export interface ScaledHNSWConfig {
|
|
10
|
+
expectedDatasetSize?: number;
|
|
11
|
+
maxMemoryUsage?: number;
|
|
12
|
+
targetSearchLatency?: number;
|
|
13
|
+
s3Config?: {
|
|
14
|
+
bucketName: string;
|
|
15
|
+
region: string;
|
|
16
|
+
endpoint?: string;
|
|
17
|
+
accessKeyId?: string;
|
|
18
|
+
secretAccessKey?: string;
|
|
19
|
+
};
|
|
20
|
+
autoConfigureEnvironment?: boolean;
|
|
21
|
+
learningEnabled?: boolean;
|
|
22
|
+
enablePartitioning?: boolean;
|
|
23
|
+
enableCompression?: boolean;
|
|
24
|
+
enableDistributedSearch?: boolean;
|
|
25
|
+
enablePredictiveCaching?: boolean;
|
|
26
|
+
partitionConfig?: Partial<PartitionConfig>;
|
|
27
|
+
hnswConfig?: Partial<OptimizedHNSWConfig>;
|
|
28
|
+
readOnlyMode?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* High-performance HNSW system with all optimizations integrated
|
|
32
|
+
* Handles datasets from thousands to millions of vectors
|
|
33
|
+
*/
|
|
34
|
+
export declare class ScaledHNSWSystem {
|
|
35
|
+
private config;
|
|
36
|
+
private autoConfig;
|
|
37
|
+
private partitionedIndex?;
|
|
38
|
+
private distributedSearch?;
|
|
39
|
+
private cacheManager?;
|
|
40
|
+
private batchOperations?;
|
|
41
|
+
private readOnlyOptimizations?;
|
|
42
|
+
private performanceMetrics;
|
|
43
|
+
constructor(config?: ScaledHNSWConfig);
|
|
44
|
+
/**
|
|
45
|
+
* Initialize the optimized system based on configuration
|
|
46
|
+
*/
|
|
47
|
+
private initializeOptimizedSystem;
|
|
48
|
+
/**
|
|
49
|
+
* Calculate optimal configuration based on dataset size and constraints
|
|
50
|
+
*/
|
|
51
|
+
private calculateOptimalConfiguration;
|
|
52
|
+
/**
|
|
53
|
+
* Add vector to the scaled system
|
|
54
|
+
*/
|
|
55
|
+
addVector(item: VectorDocument): Promise<string>;
|
|
56
|
+
/**
|
|
57
|
+
* Bulk insert vectors with optimizations
|
|
58
|
+
*/
|
|
59
|
+
bulkInsert(items: VectorDocument[]): Promise<string[]>;
|
|
60
|
+
/**
|
|
61
|
+
* High-performance vector search with all optimizations
|
|
62
|
+
*/
|
|
63
|
+
search(queryVector: Vector, k?: number, options?: {
|
|
64
|
+
strategy?: SearchStrategy;
|
|
65
|
+
useCache?: boolean;
|
|
66
|
+
maxPartitions?: number;
|
|
67
|
+
}): Promise<Array<[string, number]>>;
|
|
68
|
+
/**
|
|
69
|
+
* Get system performance metrics
|
|
70
|
+
*/
|
|
71
|
+
getPerformanceMetrics(): typeof this.performanceMetrics & {
|
|
72
|
+
partitionStats?: any;
|
|
73
|
+
cacheStats?: any;
|
|
74
|
+
compressionStats?: any;
|
|
75
|
+
distributedSearchStats?: any;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Optimize insertion order for better index quality
|
|
79
|
+
*/
|
|
80
|
+
private optimizeInsertionOrder;
|
|
81
|
+
/**
|
|
82
|
+
* Calculate optimal batch size based on system resources
|
|
83
|
+
*/
|
|
84
|
+
private calculateOptimalBatchSize;
|
|
85
|
+
/**
|
|
86
|
+
* Update search performance metrics
|
|
87
|
+
*/
|
|
88
|
+
private updateSearchMetrics;
|
|
89
|
+
/**
|
|
90
|
+
* Estimate current memory usage
|
|
91
|
+
*/
|
|
92
|
+
private estimateMemoryUsage;
|
|
93
|
+
/**
|
|
94
|
+
* Generate performance report
|
|
95
|
+
*/
|
|
96
|
+
generatePerformanceReport(): string;
|
|
97
|
+
/**
|
|
98
|
+
* Get overall system status
|
|
99
|
+
*/
|
|
100
|
+
private getSystemStatus;
|
|
101
|
+
/**
|
|
102
|
+
* Check if adaptive learning should be triggered
|
|
103
|
+
*/
|
|
104
|
+
private shouldTriggerLearning;
|
|
105
|
+
/**
|
|
106
|
+
* Adaptively learn from performance and adjust configuration
|
|
107
|
+
*/
|
|
108
|
+
private adaptivelyLearnFromPerformance;
|
|
109
|
+
/**
|
|
110
|
+
* Update dataset analysis for better auto-configuration
|
|
111
|
+
*/
|
|
112
|
+
updateDatasetAnalysis(vectorCount: number, vectorDimension?: number): Promise<void>;
|
|
113
|
+
/**
|
|
114
|
+
* Infer access patterns from current metrics
|
|
115
|
+
*/
|
|
116
|
+
private inferAccessPatterns;
|
|
117
|
+
/**
|
|
118
|
+
* Cleanup system resources
|
|
119
|
+
*/
|
|
120
|
+
cleanup(): void;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Create a fully auto-configured Brainy system - minimal setup required!
|
|
124
|
+
* Just provide S3 config if you want persistence beyond the current session
|
|
125
|
+
*/
|
|
126
|
+
export declare function createAutoBrainy(s3Config?: {
|
|
127
|
+
bucketName: string;
|
|
128
|
+
region?: string;
|
|
129
|
+
accessKeyId?: string;
|
|
130
|
+
secretAccessKey?: string;
|
|
131
|
+
}): ScaledHNSWSystem;
|
|
132
|
+
/**
|
|
133
|
+
* Create a Brainy system optimized for specific scenarios
|
|
134
|
+
*/
|
|
135
|
+
export declare function createQuickBrainy(scenario: 'small' | 'medium' | 'large' | 'enterprise', s3Config?: {
|
|
136
|
+
bucketName: string;
|
|
137
|
+
region?: string;
|
|
138
|
+
}): Promise<ScaledHNSWSystem>;
|
|
139
|
+
/**
|
|
140
|
+
* Legacy factory function - still works but consider using createAutoBrainy() instead
|
|
141
|
+
*/
|
|
142
|
+
export declare function createScaledHNSWSystem(config?: ScaledHNSWConfig): ScaledHNSWSystem;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaledHNSWSystem.d.ts","sourceRoot":"","sources":["../../src/hnsw/scaledHNSWSystem.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -29,11 +29,11 @@ import { MemoryStorageAugmentation, FileSystemStorageAugmentation, OPFSStorageAu
|
|
|
29
29
|
import { WebSocketConduitAugmentation, WebRTCConduitAugmentation, createConduitAugmentation } from './augmentations/conduitAugmentations.js';
|
|
30
30
|
import { ServerSearchConduitAugmentation, ServerSearchActivationAugmentation, createServerSearchAugmentations } from './augmentations/serverSearchAugmentations.js';
|
|
31
31
|
export { MemoryStorageAugmentation, FileSystemStorageAugmentation, OPFSStorageAugmentation, createMemoryAugmentation, WebSocketConduitAugmentation, WebRTCConduitAugmentation, createConduitAugmentation, ServerSearchConduitAugmentation, ServerSearchActivationAugmentation, createServerSearchAugmentations };
|
|
32
|
-
import type { Vector, VectorDocument, SearchResult, DistanceFunction, EmbeddingFunction, EmbeddingModel, HNSWNoun, HNSWConfig, StorageAdapter } from './coreTypes.js';
|
|
32
|
+
import type { Vector, VectorDocument, SearchResult, DistanceFunction, EmbeddingFunction, EmbeddingModel, HNSWNoun, HNSWVerb, HNSWConfig, StorageAdapter } from './coreTypes.js';
|
|
33
33
|
import { HNSWIndex } from './hnsw/hnswIndex.js';
|
|
34
34
|
import { HNSWIndexOptimized, HNSWOptimizedConfig } from './hnsw/hnswIndexOptimized.js';
|
|
35
35
|
export { HNSWIndex, HNSWIndexOptimized };
|
|
36
|
-
export type { Vector, VectorDocument, SearchResult, DistanceFunction, EmbeddingFunction, EmbeddingModel, HNSWNoun, HNSWConfig, HNSWOptimizedConfig, StorageAdapter };
|
|
36
|
+
export type { Vector, VectorDocument, SearchResult, DistanceFunction, EmbeddingFunction, EmbeddingModel, HNSWNoun, HNSWVerb, HNSWConfig, HNSWOptimizedConfig, StorageAdapter };
|
|
37
37
|
import type { IAugmentation, AugmentationResponse, IWebSocketSupport, ISenseAugmentation, IConduitAugmentation, ICognitionAugmentation, IMemoryAugmentation, IPerceptionAugmentation, IDialogAugmentation, IActivationAugmentation } from './types/augmentations.js';
|
|
38
38
|
import { AugmentationType, BrainyAugmentations } from './types/augmentations.js';
|
|
39
39
|
export type { IAugmentation, AugmentationResponse, IWebSocketSupport };
|
|
@@ -22,6 +22,8 @@ export declare abstract class BaseStorageAdapter implements StorageAdapter {
|
|
|
22
22
|
abstract deleteVerb(id: string): Promise<void>;
|
|
23
23
|
abstract saveMetadata(id: string, metadata: any): Promise<void>;
|
|
24
24
|
abstract getMetadata(id: string): Promise<any | null>;
|
|
25
|
+
abstract saveVerbMetadata(id: string, metadata: any): Promise<void>;
|
|
26
|
+
abstract getVerbMetadata(id: string): Promise<any | null>;
|
|
25
27
|
abstract clear(): Promise<void>;
|
|
26
28
|
abstract getStorageStatus(): Promise<{
|
|
27
29
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseStorageAdapter.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/baseStorageAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"baseStorageAdapter.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/baseStorageAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enhanced Batch S3 Operations for High-Performance Vector Retrieval
|
|
3
|
+
* Implements optimized batch operations to reduce S3 API calls and latency
|
|
4
|
+
*/
|
|
5
|
+
import { HNSWNoun } from '../../coreTypes.js';
|
|
6
|
+
type S3Client = any;
|
|
7
|
+
export interface BatchRetrievalOptions {
|
|
8
|
+
maxConcurrency?: number;
|
|
9
|
+
prefetchSize?: number;
|
|
10
|
+
useS3Select?: boolean;
|
|
11
|
+
compressionEnabled?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface BatchResult<T> {
|
|
14
|
+
items: Map<string, T>;
|
|
15
|
+
errors: Map<string, Error>;
|
|
16
|
+
statistics: {
|
|
17
|
+
totalRequested: number;
|
|
18
|
+
totalRetrieved: number;
|
|
19
|
+
totalErrors: number;
|
|
20
|
+
duration: number;
|
|
21
|
+
apiCalls: number;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* High-performance batch operations for S3-compatible storage
|
|
26
|
+
* Optimizes retrieval patterns for HNSW search operations
|
|
27
|
+
*/
|
|
28
|
+
export declare class BatchS3Operations {
|
|
29
|
+
private s3Client;
|
|
30
|
+
private bucketName;
|
|
31
|
+
private options;
|
|
32
|
+
constructor(s3Client: S3Client, bucketName: string, options?: BatchRetrievalOptions);
|
|
33
|
+
/**
|
|
34
|
+
* Batch retrieve HNSW nodes with intelligent prefetching
|
|
35
|
+
*/
|
|
36
|
+
batchGetNodes(nodeIds: string[], prefix?: string): Promise<BatchResult<HNSWNoun>>;
|
|
37
|
+
/**
|
|
38
|
+
* Parallel GetObject operations for small batches
|
|
39
|
+
*/
|
|
40
|
+
private parallelGetObjects;
|
|
41
|
+
/**
|
|
42
|
+
* Chunked parallel retrieval with intelligent batching
|
|
43
|
+
*/
|
|
44
|
+
private chunkedParallelGet;
|
|
45
|
+
/**
|
|
46
|
+
* List-based batch retrieval for large datasets
|
|
47
|
+
* Uses S3 ListObjects to reduce API calls
|
|
48
|
+
*/
|
|
49
|
+
private listBasedBatchGet;
|
|
50
|
+
/**
|
|
51
|
+
* Intelligent prefetch based on HNSW graph connectivity
|
|
52
|
+
*/
|
|
53
|
+
prefetchConnectedNodes(currentNodeIds: string[], connectionMap: Map<string, Set<string>>, prefix?: string): Promise<BatchResult<HNSWNoun>>;
|
|
54
|
+
/**
|
|
55
|
+
* S3 Select-based retrieval for filtered queries
|
|
56
|
+
*/
|
|
57
|
+
selectiveRetrieve(prefix: string, filter: {
|
|
58
|
+
vectorDimension?: number;
|
|
59
|
+
metadataKey?: string;
|
|
60
|
+
metadataValue?: any;
|
|
61
|
+
}): Promise<BatchResult<HNSWNoun>>;
|
|
62
|
+
/**
|
|
63
|
+
* Parse stored object from JSON string
|
|
64
|
+
*/
|
|
65
|
+
private parseStoredObject;
|
|
66
|
+
/**
|
|
67
|
+
* Utility function to chunk arrays
|
|
68
|
+
*/
|
|
69
|
+
private chunkArray;
|
|
70
|
+
}
|
|
71
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batchS3Operations.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/batchS3Operations.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAY,MAAM,oBAAoB,CAAA;AAGvD,KAAK,QAAQ,GAAG,GAAG,CAAA;AAInB,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC1B,UAAU,EAAE;QACV,cAAc,EAAE,MAAM,CAAA;QACtB,cAAc,EAAE,MAAM,CAAA;QACtB,WAAW,EAAE,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,OAAO,CAAuB;gBAGpC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,qBAA0B;IAarC;;OAEG;IACU,aAAa,CACxB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,GAAE,MAAiB,GACxB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAmCjC;;OAEG;YACW,kBAAkB;IAwChC;;OAEG;YACW,kBAAkB;IAuBhC;;;OAGG;YACW,iBAAiB;IA4E/B;;OAEG;IACU,sBAAsB,CACjC,cAAc,EAAE,MAAM,EAAE,EACxB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACvC,MAAM,GAAE,MAAiB,GACxB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAmCjC;;OAEG;IACU,iBAAiB,CAC5B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,aAAa,CAAC,EAAE,GAAG,CAAA;KACpB,GACA,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAyBjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;OAEG;IACH,OAAO,CAAC,UAAU;CAOnB"}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* File System Storage Adapter
|
|
3
3
|
* File system storage adapter for Node.js environments
|
|
4
4
|
*/
|
|
5
|
-
import { GraphVerb, HNSWNoun, StatisticsData } from '../../coreTypes.js';
|
|
5
|
+
import { GraphVerb, HNSWNoun, HNSWVerb, StatisticsData } from '../../coreTypes.js';
|
|
6
6
|
import { BaseStorage } from '../baseStorage.js';
|
|
7
7
|
type HNSWNode = HNSWNoun;
|
|
8
|
-
type Edge =
|
|
8
|
+
type Edge = HNSWVerb;
|
|
9
9
|
/**
|
|
10
10
|
* File system storage adapter for Node.js environments
|
|
11
11
|
* Uses the file system to store data in the specified directory structure
|
|
@@ -15,6 +15,8 @@ export declare class FileSystemStorage extends BaseStorage {
|
|
|
15
15
|
private nounsDir;
|
|
16
16
|
private verbsDir;
|
|
17
17
|
private metadataDir;
|
|
18
|
+
private nounMetadataDir;
|
|
19
|
+
private verbMetadataDir;
|
|
18
20
|
private indexDir;
|
|
19
21
|
private lockDir;
|
|
20
22
|
private activeLocks;
|
|
@@ -89,6 +91,22 @@ export declare class FileSystemStorage extends BaseStorage {
|
|
|
89
91
|
* Get metadata from storage
|
|
90
92
|
*/
|
|
91
93
|
getMetadata(id: string): Promise<any | null>;
|
|
94
|
+
/**
|
|
95
|
+
* Save noun metadata to storage
|
|
96
|
+
*/
|
|
97
|
+
saveNounMetadata(id: string, metadata: any): Promise<void>;
|
|
98
|
+
/**
|
|
99
|
+
* Get noun metadata from storage
|
|
100
|
+
*/
|
|
101
|
+
getNounMetadata(id: string): Promise<any | null>;
|
|
102
|
+
/**
|
|
103
|
+
* Save verb metadata to storage
|
|
104
|
+
*/
|
|
105
|
+
saveVerbMetadata(id: string, metadata: any): Promise<void>;
|
|
106
|
+
/**
|
|
107
|
+
* Get verb metadata from storage
|
|
108
|
+
*/
|
|
109
|
+
getVerbMetadata(id: string): Promise<any | null>;
|
|
92
110
|
/**
|
|
93
111
|
* Clear all data from storage
|
|
94
112
|
*/
|
|
@@ -128,15 +146,15 @@ export declare class FileSystemStorage extends BaseStorage {
|
|
|
128
146
|
/**
|
|
129
147
|
* Save a verb to storage
|
|
130
148
|
*/
|
|
131
|
-
protected saveVerb_internal(verb:
|
|
149
|
+
protected saveVerb_internal(verb: HNSWVerb): Promise<void>;
|
|
132
150
|
/**
|
|
133
151
|
* Get a verb from storage
|
|
134
152
|
*/
|
|
135
|
-
protected getVerb_internal(id: string): Promise<
|
|
153
|
+
protected getVerb_internal(id: string): Promise<HNSWVerb | null>;
|
|
136
154
|
/**
|
|
137
155
|
* Get all verbs from storage
|
|
138
156
|
*/
|
|
139
|
-
protected getAllVerbs_internal(): Promise<
|
|
157
|
+
protected getAllVerbs_internal(): Promise<HNSWVerb[]>;
|
|
140
158
|
/**
|
|
141
159
|
* Get verbs by source
|
|
142
160
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileSystemStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/fileSystemStorage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"fileSystemStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/fileSystemStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Memory Storage Adapter
|
|
3
3
|
* In-memory storage adapter for environments where persistent storage is not available or needed
|
|
4
4
|
*/
|
|
5
|
-
import { GraphVerb, HNSWNoun, StatisticsData } from '../../coreTypes.js';
|
|
5
|
+
import { GraphVerb, HNSWNoun, HNSWVerb, StatisticsData } from '../../coreTypes.js';
|
|
6
6
|
import { BaseStorage } from '../baseStorage.js';
|
|
7
7
|
import { PaginatedResult } from '../../types/paginationTypes.js';
|
|
8
8
|
/**
|
|
@@ -13,6 +13,8 @@ export declare class MemoryStorage extends BaseStorage {
|
|
|
13
13
|
private nouns;
|
|
14
14
|
private verbs;
|
|
15
15
|
private metadata;
|
|
16
|
+
private nounMetadata;
|
|
17
|
+
private verbMetadata;
|
|
16
18
|
private statistics;
|
|
17
19
|
constructor();
|
|
18
20
|
/**
|
|
@@ -63,15 +65,15 @@ export declare class MemoryStorage extends BaseStorage {
|
|
|
63
65
|
/**
|
|
64
66
|
* Save a verb to storage
|
|
65
67
|
*/
|
|
66
|
-
protected saveVerb_internal(verb:
|
|
68
|
+
protected saveVerb_internal(verb: HNSWVerb): Promise<void>;
|
|
67
69
|
/**
|
|
68
70
|
* Get a verb from storage
|
|
69
71
|
*/
|
|
70
|
-
protected getVerb_internal(id: string): Promise<
|
|
72
|
+
protected getVerb_internal(id: string): Promise<HNSWVerb | null>;
|
|
71
73
|
/**
|
|
72
74
|
* Get all verbs from storage
|
|
73
75
|
*/
|
|
74
|
-
protected getAllVerbs_internal(): Promise<
|
|
76
|
+
protected getAllVerbs_internal(): Promise<HNSWVerb[]>;
|
|
75
77
|
/**
|
|
76
78
|
* Get verbs with pagination and filtering
|
|
77
79
|
* @param options Pagination and filtering options
|
|
@@ -118,6 +120,22 @@ export declare class MemoryStorage extends BaseStorage {
|
|
|
118
120
|
* Get metadata from storage
|
|
119
121
|
*/
|
|
120
122
|
getMetadata(id: string): Promise<any | null>;
|
|
123
|
+
/**
|
|
124
|
+
* Save noun metadata to storage
|
|
125
|
+
*/
|
|
126
|
+
saveNounMetadata(id: string, metadata: any): Promise<void>;
|
|
127
|
+
/**
|
|
128
|
+
* Get noun metadata from storage
|
|
129
|
+
*/
|
|
130
|
+
getNounMetadata(id: string): Promise<any | null>;
|
|
131
|
+
/**
|
|
132
|
+
* Save verb metadata to storage
|
|
133
|
+
*/
|
|
134
|
+
saveVerbMetadata(id: string, metadata: any): Promise<void>;
|
|
135
|
+
/**
|
|
136
|
+
* Get verb metadata from storage
|
|
137
|
+
*/
|
|
138
|
+
getVerbMetadata(id: string): Promise<any | null>;
|
|
121
139
|
/**
|
|
122
140
|
* Clear all data from storage
|
|
123
141
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/memoryStorage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"memoryStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/memoryStorage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAClF,OAAO,EAAE,WAAW,EAAkB,MAAM,mBAAmB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAIhE;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAE5C,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,UAAU,CAA8B;;IAMhD;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC;;OAEG;cACa,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhE;;OAEG;cACa,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwBtE;;OAEG;cACa,oBAAoB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAuB3D;;;;OAIG;IACU,QAAQ,CAAC,OAAO,GAAE;QAC7B,UAAU,CAAC,EAAE;YACX,MAAM,CAAC,EAAE,MAAM,CAAA;YACf,KAAK,CAAC,EAAE,MAAM,CAAA;YACd,MAAM,CAAC,EAAE,MAAM,CAAA;SAChB,CAAA;QACD,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;SAC/B,CAAA;KACG,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAyF3C;;;;;OAKG;cACa,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IASlF;;OAEG;cACa,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D;;OAEG;cACa,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhE;;OAEG;cACa,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAoCtE;;OAEG;cACa,oBAAoB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAuB3D;;;;OAIG;IACU,QAAQ,CAAC,OAAO,GAAE;QAC7B,UAAU,CAAC,EAAE;YACX,MAAM,CAAC,EAAE,MAAM,CAAA;YACf,KAAK,CAAC,EAAE,MAAM,CAAA;YACd,MAAM,CAAC,EAAE,MAAM,CAAA;SAChB,CAAA;QACD,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;YAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;SAC/B,CAAA;KACG,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IA+H5C;;;OAGG;cACa,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IASjF;;;OAGG;cACa,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IASjF;;;OAGG;cACa,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAS3E;;OAEG;cACa,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D;;OAEG;IACU,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAInE;;OAEG;IACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IASzD;;OAEG;IACU,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;OAEG;IACU,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAS7D;;OAEG;IACU,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;OAEG;IACU,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAS7D;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IASnC;;OAEG;IACU,gBAAgB,IAAI,OAAO,CAAC;QACvC,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAC9B,CAAC;IAaF;;;OAGG;cACa,kBAAkB,CAAC,UAAU,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe7E;;;OAGG;cACa,iBAAiB,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAiBpE"}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
* OPFS (Origin Private File System) Storage Adapter
|
|
3
3
|
* Provides persistent storage for the vector database using the Origin Private File System API
|
|
4
4
|
*/
|
|
5
|
-
import { GraphVerb, HNSWNoun, StatisticsData } from '../../coreTypes.js';
|
|
5
|
+
import { GraphVerb, HNSWNoun, HNSWVerb, StatisticsData } from '../../coreTypes.js';
|
|
6
6
|
import { BaseStorage } from '../baseStorage.js';
|
|
7
7
|
import '../../types/fileSystemTypes.js';
|
|
8
8
|
type HNSWNode = HNSWNoun;
|
|
9
9
|
/**
|
|
10
|
-
* Type alias for
|
|
10
|
+
* Type alias for HNSWVerb to make the code more readable
|
|
11
11
|
*/
|
|
12
|
-
type Edge =
|
|
12
|
+
type Edge = HNSWVerb;
|
|
13
13
|
type HNSWNoun_internal = HNSWNoun;
|
|
14
14
|
/**
|
|
15
15
|
* OPFS storage adapter for browser environments
|
|
@@ -20,6 +20,8 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
20
20
|
private nounsDir;
|
|
21
21
|
private verbsDir;
|
|
22
22
|
private metadataDir;
|
|
23
|
+
private nounMetadataDir;
|
|
24
|
+
private verbMetadataDir;
|
|
23
25
|
private indexDir;
|
|
24
26
|
private isAvailable;
|
|
25
27
|
private isPersistentRequested;
|
|
@@ -81,7 +83,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
81
83
|
/**
|
|
82
84
|
* Save a verb to storage (internal implementation)
|
|
83
85
|
*/
|
|
84
|
-
protected saveVerb_internal(verb:
|
|
86
|
+
protected saveVerb_internal(verb: HNSWVerb): Promise<void>;
|
|
85
87
|
/**
|
|
86
88
|
* Save an edge to storage
|
|
87
89
|
*/
|
|
@@ -89,7 +91,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
89
91
|
/**
|
|
90
92
|
* Get a verb from storage (internal implementation)
|
|
91
93
|
*/
|
|
92
|
-
protected getVerb_internal(id: string): Promise<
|
|
94
|
+
protected getVerb_internal(id: string): Promise<HNSWVerb | null>;
|
|
93
95
|
/**
|
|
94
96
|
* Get an edge from storage
|
|
95
97
|
*/
|
|
@@ -97,7 +99,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
97
99
|
/**
|
|
98
100
|
* Get all verbs from storage (internal implementation)
|
|
99
101
|
*/
|
|
100
|
-
protected getAllVerbs_internal(): Promise<
|
|
102
|
+
protected getAllVerbs_internal(): Promise<HNSWVerb[]>;
|
|
101
103
|
/**
|
|
102
104
|
* Get all edges from storage
|
|
103
105
|
*/
|
|
@@ -109,7 +111,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
109
111
|
/**
|
|
110
112
|
* Get edges by source
|
|
111
113
|
*/
|
|
112
|
-
protected getEdgesBySource(sourceId: string): Promise<
|
|
114
|
+
protected getEdgesBySource(sourceId: string): Promise<GraphVerb[]>;
|
|
113
115
|
/**
|
|
114
116
|
* Get verbs by target (internal implementation)
|
|
115
117
|
*/
|
|
@@ -117,7 +119,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
117
119
|
/**
|
|
118
120
|
* Get edges by target
|
|
119
121
|
*/
|
|
120
|
-
protected getEdgesByTarget(targetId: string): Promise<
|
|
122
|
+
protected getEdgesByTarget(targetId: string): Promise<GraphVerb[]>;
|
|
121
123
|
/**
|
|
122
124
|
* Get verbs by type (internal implementation)
|
|
123
125
|
*/
|
|
@@ -125,7 +127,7 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
125
127
|
/**
|
|
126
128
|
* Get edges by type
|
|
127
129
|
*/
|
|
128
|
-
protected getEdgesByType(type: string): Promise<
|
|
130
|
+
protected getEdgesByType(type: string): Promise<GraphVerb[]>;
|
|
129
131
|
/**
|
|
130
132
|
* Delete a verb from storage (internal implementation)
|
|
131
133
|
*/
|
|
@@ -142,6 +144,22 @@ export declare class OPFSStorage extends BaseStorage {
|
|
|
142
144
|
* Get metadata from storage
|
|
143
145
|
*/
|
|
144
146
|
getMetadata(id: string): Promise<any | null>;
|
|
147
|
+
/**
|
|
148
|
+
* Save verb metadata to storage
|
|
149
|
+
*/
|
|
150
|
+
saveVerbMetadata(id: string, metadata: any): Promise<void>;
|
|
151
|
+
/**
|
|
152
|
+
* Get verb metadata from storage
|
|
153
|
+
*/
|
|
154
|
+
getVerbMetadata(id: string): Promise<any | null>;
|
|
155
|
+
/**
|
|
156
|
+
* Save noun metadata to storage
|
|
157
|
+
*/
|
|
158
|
+
saveNounMetadata(id: string, metadata: any): Promise<void>;
|
|
159
|
+
/**
|
|
160
|
+
* Get noun metadata from storage
|
|
161
|
+
*/
|
|
162
|
+
getNounMetadata(id: string): Promise<any | null>;
|
|
145
163
|
/**
|
|
146
164
|
* Clear all data from storage
|
|
147
165
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opfsStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/opfsStorage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"opfsStorage.d.ts","sourceRoot":"","sources":["../../../src/storage/adapters/opfsStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
* Uses the AWS S3 client to interact with S3-compatible storage services
|
|
4
4
|
* including Amazon S3, Cloudflare R2, and Google Cloud Storage
|
|
5
5
|
*/
|
|
6
|
-
import { GraphVerb, HNSWNoun, StatisticsData } from '../../coreTypes.js';
|
|
6
|
+
import { GraphVerb, HNSWNoun, HNSWVerb, StatisticsData } from '../../coreTypes.js';
|
|
7
7
|
import { BaseStorage } from '../baseStorage.js';
|
|
8
8
|
import { OperationConfig } from '../../utils/operationUtils.js';
|
|
9
9
|
type HNSWNode = HNSWNoun;
|
|
10
|
-
type Edge =
|
|
10
|
+
type Edge = HNSWVerb;
|
|
11
11
|
interface ChangeLogEntry {
|
|
12
12
|
timestamp: number;
|
|
13
13
|
operation: 'add' | 'update' | 'delete';
|
|
@@ -148,7 +148,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
148
148
|
/**
|
|
149
149
|
* Save a verb to storage (internal implementation)
|
|
150
150
|
*/
|
|
151
|
-
protected saveVerb_internal(verb:
|
|
151
|
+
protected saveVerb_internal(verb: HNSWVerb): Promise<void>;
|
|
152
152
|
/**
|
|
153
153
|
* Save an edge to storage
|
|
154
154
|
*/
|
|
@@ -156,7 +156,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
156
156
|
/**
|
|
157
157
|
* Get a verb from storage (internal implementation)
|
|
158
158
|
*/
|
|
159
|
-
protected getVerb_internal(id: string): Promise<
|
|
159
|
+
protected getVerb_internal(id: string): Promise<HNSWVerb | null>;
|
|
160
160
|
/**
|
|
161
161
|
* Get an edge from storage
|
|
162
162
|
*/
|
|
@@ -166,7 +166,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
166
166
|
* @deprecated This method is deprecated and will be removed in a future version.
|
|
167
167
|
* It can cause memory issues with large datasets. Use getVerbsWithPagination() instead.
|
|
168
168
|
*/
|
|
169
|
-
protected getAllVerbs_internal(): Promise<
|
|
169
|
+
protected getAllVerbs_internal(): Promise<HNSWVerb[]>;
|
|
170
170
|
/**
|
|
171
171
|
* Get all edges from storage
|
|
172
172
|
* @deprecated This method is deprecated and will be removed in a future version.
|
|
@@ -227,7 +227,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
227
227
|
/**
|
|
228
228
|
* Get edges by source
|
|
229
229
|
*/
|
|
230
|
-
protected getEdgesBySource(sourceId: string): Promise<
|
|
230
|
+
protected getEdgesBySource(sourceId: string): Promise<GraphVerb[]>;
|
|
231
231
|
/**
|
|
232
232
|
* Get verbs by target (internal implementation)
|
|
233
233
|
*/
|
|
@@ -235,7 +235,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
235
235
|
/**
|
|
236
236
|
* Get edges by target
|
|
237
237
|
*/
|
|
238
|
-
protected getEdgesByTarget(targetId: string): Promise<
|
|
238
|
+
protected getEdgesByTarget(targetId: string): Promise<GraphVerb[]>;
|
|
239
239
|
/**
|
|
240
240
|
* Get verbs by type (internal implementation)
|
|
241
241
|
*/
|
|
@@ -243,7 +243,7 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
243
243
|
/**
|
|
244
244
|
* Get edges by type
|
|
245
245
|
*/
|
|
246
|
-
protected getEdgesByType(type: string): Promise<
|
|
246
|
+
protected getEdgesByType(type: string): Promise<GraphVerb[]>;
|
|
247
247
|
/**
|
|
248
248
|
* Delete a verb from storage (internal implementation)
|
|
249
249
|
*/
|
|
@@ -256,6 +256,22 @@ export declare class S3CompatibleStorage extends BaseStorage {
|
|
|
256
256
|
* Save metadata to storage
|
|
257
257
|
*/
|
|
258
258
|
saveMetadata(id: string, metadata: any): Promise<void>;
|
|
259
|
+
/**
|
|
260
|
+
* Save verb metadata to storage
|
|
261
|
+
*/
|
|
262
|
+
saveVerbMetadata(id: string, metadata: any): Promise<void>;
|
|
263
|
+
/**
|
|
264
|
+
* Get verb metadata from storage
|
|
265
|
+
*/
|
|
266
|
+
getVerbMetadata(id: string): Promise<any | null>;
|
|
267
|
+
/**
|
|
268
|
+
* Save noun metadata to storage
|
|
269
|
+
*/
|
|
270
|
+
saveNounMetadata(id: string, metadata: any): Promise<void>;
|
|
271
|
+
/**
|
|
272
|
+
* Get noun metadata from storage
|
|
273
|
+
*/
|
|
274
|
+
getNounMetadata(id: string): Promise<any | null>;
|
|
259
275
|
/**
|
|
260
276
|
* Get metadata from storage
|
|
261
277
|
*/
|