@soulcraft/brainy 0.57.0 → 0.58.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 +431 -187
- package/dist/augmentations/memoryAugmentations.d.ts.map +1 -1
- package/dist/brainyData.d.ts.map +1 -1
- package/dist/brainyData.js +7 -2
- package/dist/brainyData.js.map +1 -1
- package/dist/browserFramework.d.ts.map +1 -0
- package/dist/coreTypes.d.ts +35 -0
- package/dist/coreTypes.d.ts.map +1 -1
- package/dist/cortex/cli.d.ts +8 -0
- package/dist/cortex/cli.js +207 -0
- package/dist/cortex/cli.js.map +1 -0
- package/dist/cortex/commands/index.d.ts +79 -0
- package/dist/cortex/commands/index.js +614 -0
- package/dist/cortex/commands/index.js.map +1 -0
- package/dist/cortex/config.d.ts +112 -0
- package/dist/cortex/config.js +312 -0
- package/dist/cortex/config.js.map +1 -0
- package/dist/demo.d.ts.map +1 -0
- package/dist/distributed/configManager.d.ts.map +1 -0
- package/dist/distributed/domainDetector.d.ts.map +1 -0
- package/dist/distributed/hashPartitioner.d.ts.map +1 -0
- package/dist/distributed/healthMonitor.d.ts.map +1 -0
- package/dist/distributed/index.d.ts.map +1 -0
- package/dist/distributed/operationalModes.d.ts.map +1 -0
- package/dist/hnsw/distributedSearch.d.ts.map +1 -0
- package/dist/hnsw/hnswIndex.d.ts.map +1 -1
- package/dist/hnsw/hnswIndexOptimized.d.ts.map +1 -1
- package/dist/hnsw/optimizedHNSWIndex.d.ts.map +1 -0
- package/dist/hnsw/partitionedHNSWIndex.d.ts.map +1 -0
- package/dist/hnsw/scaledHNSWSystem.d.ts.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/storage/adapters/baseStorageAdapter.d.ts +59 -0
- package/dist/storage/adapters/baseStorageAdapter.d.ts.map +1 -1
- package/dist/storage/adapters/baseStorageAdapter.js +199 -0
- package/dist/storage/adapters/baseStorageAdapter.js.map +1 -1
- package/dist/storage/adapters/batchS3Operations.d.ts.map +1 -0
- package/dist/storage/adapters/fileSystemStorage.d.ts.map +1 -1
- package/dist/storage/adapters/memoryStorage.d.ts.map +1 -1
- package/dist/storage/adapters/opfsStorage.d.ts.map +1 -1
- package/dist/storage/adapters/optimizedS3Search.d.ts.map +1 -0
- package/dist/storage/adapters/s3CompatibleStorage.d.ts +4 -9
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +1 -1
- package/dist/storage/adapters/s3CompatibleStorage.js +18 -33
- package/dist/storage/adapters/s3CompatibleStorage.js.map +1 -1
- package/dist/storage/baseStorage.d.ts.map +1 -1
- package/dist/storage/cacheManager.d.ts.map +1 -0
- package/dist/storage/enhancedCacheManager.d.ts.map +1 -0
- package/dist/storage/readOnlyOptimizations.d.ts.map +1 -0
- package/dist/storage/storageFactory.d.ts.map +1 -1
- package/dist/types/distributedTypes.d.ts.map +1 -0
- package/dist/types/paginationTypes.d.ts.map +1 -0
- package/dist/types/tensorflowTypes.js +6 -0
- package/dist/types/tensorflowTypes.js.map +1 -0
- package/dist/utils/autoConfiguration.d.ts.map +1 -0
- package/dist/utils/cacheAutoConfig.d.ts.map +1 -0
- package/dist/utils/crypto.d.ts.map +1 -0
- package/dist/utils/embedding.d.ts.map +1 -1
- package/dist/utils/fieldNameTracking.d.ts.map +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/jsonProcessing.d.ts.map +1 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/robustModelLoader.d.ts +112 -0
- package/dist/utils/robustModelLoader.d.ts.map +1 -0
- package/dist/utils/robustModelLoader.js +624 -0
- package/dist/utils/robustModelLoader.js.map +1 -0
- package/dist/utils/searchCache.d.ts.map +1 -0
- package/dist/utils/statisticsCollector.d.ts +37 -0
- package/dist/utils/statisticsCollector.d.ts.map +1 -0
- package/dist/utils/statisticsCollector.js +142 -0
- package/dist/utils/statisticsCollector.js.map +1 -1
- package/dist/utils/typeUtils.d.ts.map +1 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/augmentations/neuralImportSense.d.ts +0 -196
- package/dist/augmentations/neuralImportSense.js +0 -747
- package/dist/augmentations/neuralImportSense.js.map +0 -1
- package/dist/patched-platform-node.d.ts +0 -17
- package/dist/patched-platform-node.d.ts.map +0 -1
- package/dist/testing/prettyReporter.d.ts +0 -23
- package/dist/testing/prettyReporter.d.ts.map +0 -1
- package/dist/testing/prettySummaryReporter.d.ts +0 -22
- package/dist/testing/prettySummaryReporter.d.ts.map +0 -1
- package/dist/unified.min.js +0 -12511
- package/dist/unified.min.js.map +0 -1
- package/dist/utils/tensorflowUtils.d.ts +0 -17
- package/dist/utils/tensorflowUtils.d.ts.map +0 -1
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Robust Model Loader - Enhanced model loading with retry mechanisms and fallbacks
|
|
3
|
+
*
|
|
4
|
+
* This module provides a more reliable way to load TensorFlow models with:
|
|
5
|
+
* - Exponential backoff retry mechanisms
|
|
6
|
+
* - Timeout handling
|
|
7
|
+
* - Multiple fallback strategies
|
|
8
|
+
* - Better error handling and logging
|
|
9
|
+
* - Optional local model bundling support
|
|
10
|
+
*/
|
|
11
|
+
import { EmbeddingModel } from '../coreTypes.js';
|
|
12
|
+
export interface ModelLoadOptions {
|
|
13
|
+
/** Maximum number of retry attempts */
|
|
14
|
+
maxRetries?: number;
|
|
15
|
+
/** Initial retry delay in milliseconds */
|
|
16
|
+
initialRetryDelay?: number;
|
|
17
|
+
/** Maximum retry delay in milliseconds */
|
|
18
|
+
maxRetryDelay?: number;
|
|
19
|
+
/** Request timeout in milliseconds */
|
|
20
|
+
timeout?: number;
|
|
21
|
+
/** Whether to use exponential backoff */
|
|
22
|
+
useExponentialBackoff?: boolean;
|
|
23
|
+
/** Fallback model URLs to try if primary fails */
|
|
24
|
+
fallbackUrls?: string[];
|
|
25
|
+
/** Whether to enable verbose logging */
|
|
26
|
+
verbose?: boolean;
|
|
27
|
+
/** Whether to prefer local bundled model if available */
|
|
28
|
+
preferLocalModel?: boolean;
|
|
29
|
+
/** Custom directory path where models are stored (for Docker deployments) */
|
|
30
|
+
customModelsPath?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface RetryConfig {
|
|
33
|
+
attempt: number;
|
|
34
|
+
maxRetries: number;
|
|
35
|
+
delay: number;
|
|
36
|
+
error: Error;
|
|
37
|
+
}
|
|
38
|
+
export declare class RobustModelLoader {
|
|
39
|
+
private options;
|
|
40
|
+
private loadAttempts;
|
|
41
|
+
constructor(options?: ModelLoadOptions);
|
|
42
|
+
/**
|
|
43
|
+
* Auto-detect extracted models directory
|
|
44
|
+
*/
|
|
45
|
+
private autoDetectModelsPath;
|
|
46
|
+
/**
|
|
47
|
+
* Load model with all available fallback strategies
|
|
48
|
+
*/
|
|
49
|
+
loadModelWithFallbacks(): Promise<EmbeddingModel>;
|
|
50
|
+
/**
|
|
51
|
+
* Load a model with robust retry and fallback mechanisms
|
|
52
|
+
*/
|
|
53
|
+
loadModel(primaryLoadFunction: () => Promise<EmbeddingModel>, modelIdentifier?: string): Promise<EmbeddingModel>;
|
|
54
|
+
/**
|
|
55
|
+
* Load a model with retry logic and exponential backoff
|
|
56
|
+
*/
|
|
57
|
+
private loadWithRetries;
|
|
58
|
+
/**
|
|
59
|
+
* Try to load a locally bundled model
|
|
60
|
+
*/
|
|
61
|
+
private tryLoadLocalBundledModel;
|
|
62
|
+
/**
|
|
63
|
+
* Find the @soulcraft/brainy-models package path if installed
|
|
64
|
+
*/
|
|
65
|
+
private findBrainyModelsPath;
|
|
66
|
+
/**
|
|
67
|
+
* Try to load model from a custom directory path
|
|
68
|
+
*/
|
|
69
|
+
private tryLoadFromCustomPath;
|
|
70
|
+
/**
|
|
71
|
+
* Load model from a specific URL
|
|
72
|
+
*/
|
|
73
|
+
private loadFromUrl;
|
|
74
|
+
/**
|
|
75
|
+
* Create a model wrapper that matches the Universal Sentence Encoder interface
|
|
76
|
+
*/
|
|
77
|
+
private createModelWrapper;
|
|
78
|
+
/**
|
|
79
|
+
* Apply timeout to a promise
|
|
80
|
+
*/
|
|
81
|
+
private withTimeout;
|
|
82
|
+
/**
|
|
83
|
+
* Calculate retry delay with exponential backoff
|
|
84
|
+
*/
|
|
85
|
+
private calculateRetryDelay;
|
|
86
|
+
/**
|
|
87
|
+
* Sleep for specified milliseconds
|
|
88
|
+
*/
|
|
89
|
+
private sleep;
|
|
90
|
+
/**
|
|
91
|
+
* Log message if verbose mode is enabled
|
|
92
|
+
*/
|
|
93
|
+
private log;
|
|
94
|
+
/**
|
|
95
|
+
* Get loading statistics
|
|
96
|
+
*/
|
|
97
|
+
getLoadingStats(): {
|
|
98
|
+
[key: string]: number;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Reset loading statistics
|
|
102
|
+
*/
|
|
103
|
+
resetStats(): void;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Create a robust model loader with sensible defaults
|
|
107
|
+
*/
|
|
108
|
+
export declare function createRobustModelLoader(options?: ModelLoadOptions): RobustModelLoader;
|
|
109
|
+
/**
|
|
110
|
+
* Utility function to create fallback URLs for Universal Sentence Encoder
|
|
111
|
+
*/
|
|
112
|
+
export declare function getUniversalSentenceEncoderFallbacks(): string[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"robustModelLoader.d.ts","sourceRoot":"","sources":["../../src/utils/robustModelLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAMhD,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,yCAAyC;IACzC,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,KAAK,CAAA;CACb;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAsF;IACrG,OAAO,CAAC,YAAY,CAAiC;gBAEzC,OAAO,GAAE,gBAAqB;IAoB1C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6D5B;;OAEG;IACG,sBAAsB,IAAI,OAAO,CAAC,cAAc,CAAC;IAgDvD;;OAEG;IACG,SAAS,CACb,mBAAmB,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,EAClD,eAAe,GAAE,MAAkB,GAClC,OAAO,CAAC,cAAc,CAAC;IAqD1B;;OAEG;YACW,eAAe;IA2C7B;;OAEG;YACW,wBAAwB;IAoItC;;OAEG;YACW,qBAAqB;IAgFnC;;OAEG;YACW,WAAW;IAmBzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsC1B;;OAEG;YACW,WAAW;IAUzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;OAEG;IACH,OAAO,CAAC,GAAG;IAMX;;OAEG;IACH,eAAe,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAQ5C;;OAEG;IACH,UAAU,IAAI,IAAI;CAGnB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAErF;AAED;;GAEG;AACH,wBAAgB,oCAAoC,IAAI,MAAM,EAAE,CAM/D"}
|