@soulcraft/brainy 2.11.0 → 2.12.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/dist/brainyData.d.ts +5 -8
- package/dist/brainyData.js +52 -22
- package/dist/neural/improvedNeuralAPI.d.ts +346 -0
- package/dist/neural/improvedNeuralAPI.js +2439 -0
- package/dist/neural/types.d.ts +267 -0
- package/dist/neural/types.js +24 -0
- package/package.json +1 -1
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Neural API Type Definitions
|
|
3
|
+
* Comprehensive interfaces for clustering, similarity, and analysis
|
|
4
|
+
*/
|
|
5
|
+
export interface Vector {
|
|
6
|
+
[index: number]: number;
|
|
7
|
+
length: number;
|
|
8
|
+
}
|
|
9
|
+
export interface SemanticCluster {
|
|
10
|
+
id: string;
|
|
11
|
+
centroid: Vector;
|
|
12
|
+
members: string[];
|
|
13
|
+
size: number;
|
|
14
|
+
confidence: number;
|
|
15
|
+
label?: string;
|
|
16
|
+
metadata?: Record<string, any>;
|
|
17
|
+
cohesion?: number;
|
|
18
|
+
level?: number;
|
|
19
|
+
}
|
|
20
|
+
export interface DomainCluster extends SemanticCluster {
|
|
21
|
+
domain: string;
|
|
22
|
+
domainConfidence: number;
|
|
23
|
+
crossDomainMembers?: string[];
|
|
24
|
+
}
|
|
25
|
+
export interface TemporalCluster extends SemanticCluster {
|
|
26
|
+
timeWindow: TimeWindow;
|
|
27
|
+
trend?: 'increasing' | 'decreasing' | 'stable';
|
|
28
|
+
temporal: {
|
|
29
|
+
startTime: Date;
|
|
30
|
+
endTime: Date;
|
|
31
|
+
peakTime?: Date;
|
|
32
|
+
frequency?: number;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export interface ExplainableCluster extends SemanticCluster {
|
|
36
|
+
explanation: {
|
|
37
|
+
primaryFeatures: string[];
|
|
38
|
+
commonTerms: string[];
|
|
39
|
+
reasoning: string;
|
|
40
|
+
confidence: number;
|
|
41
|
+
};
|
|
42
|
+
subClusters?: ExplainableCluster[];
|
|
43
|
+
}
|
|
44
|
+
export interface ConfidentCluster extends SemanticCluster {
|
|
45
|
+
minConfidence: number;
|
|
46
|
+
uncertainMembers: string[];
|
|
47
|
+
certainMembers: string[];
|
|
48
|
+
}
|
|
49
|
+
export interface BaseClusteringOptions {
|
|
50
|
+
maxClusters?: number;
|
|
51
|
+
minClusterSize?: number;
|
|
52
|
+
threshold?: number;
|
|
53
|
+
cacheResults?: boolean;
|
|
54
|
+
}
|
|
55
|
+
export interface ClusteringOptions extends BaseClusteringOptions {
|
|
56
|
+
algorithm?: 'auto' | 'hierarchical' | 'kmeans' | 'dbscan' | 'sample' | 'semantic' | 'graph' | 'multimodal';
|
|
57
|
+
sampleSize?: number;
|
|
58
|
+
strategy?: 'random' | 'diverse' | 'recent' | 'important';
|
|
59
|
+
memoryLimit?: string;
|
|
60
|
+
includeOutliers?: boolean;
|
|
61
|
+
maxIterations?: number;
|
|
62
|
+
tolerance?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface DomainClusteringOptions extends BaseClusteringOptions {
|
|
65
|
+
domainField?: string;
|
|
66
|
+
crossDomainThreshold?: number;
|
|
67
|
+
preserveDomainBoundaries?: boolean;
|
|
68
|
+
}
|
|
69
|
+
export interface TemporalClusteringOptions extends BaseClusteringOptions {
|
|
70
|
+
timeField: string;
|
|
71
|
+
windows: TimeWindow[];
|
|
72
|
+
overlapStrategy?: 'merge' | 'separate' | 'hierarchical';
|
|
73
|
+
trendAnalysis?: boolean;
|
|
74
|
+
}
|
|
75
|
+
export interface StreamClusteringOptions extends BaseClusteringOptions {
|
|
76
|
+
batchSize?: number;
|
|
77
|
+
updateInterval?: number;
|
|
78
|
+
adaptiveThreshold?: boolean;
|
|
79
|
+
decayFactor?: number;
|
|
80
|
+
}
|
|
81
|
+
export interface SimilarityOptions {
|
|
82
|
+
detailed?: boolean;
|
|
83
|
+
metric?: 'cosine' | 'euclidean' | 'manhattan' | 'jaccard';
|
|
84
|
+
normalized?: boolean;
|
|
85
|
+
}
|
|
86
|
+
export interface SimilarityResult {
|
|
87
|
+
score: number;
|
|
88
|
+
confidence: number;
|
|
89
|
+
explanation?: string;
|
|
90
|
+
metric?: string;
|
|
91
|
+
}
|
|
92
|
+
export interface NeighborOptions {
|
|
93
|
+
limit?: number;
|
|
94
|
+
radius?: number;
|
|
95
|
+
minSimilarity?: number;
|
|
96
|
+
includeMetadata?: boolean;
|
|
97
|
+
sortBy?: 'similarity' | 'importance' | 'recency';
|
|
98
|
+
}
|
|
99
|
+
export interface Neighbor {
|
|
100
|
+
id: string;
|
|
101
|
+
similarity: number;
|
|
102
|
+
data?: any;
|
|
103
|
+
metadata?: Record<string, any>;
|
|
104
|
+
distance?: number;
|
|
105
|
+
}
|
|
106
|
+
export interface NeighborsResult {
|
|
107
|
+
neighbors: Neighbor[];
|
|
108
|
+
queryId: string;
|
|
109
|
+
totalFound: number;
|
|
110
|
+
averageSimilarity: number;
|
|
111
|
+
}
|
|
112
|
+
export interface SemanticHierarchy {
|
|
113
|
+
self: {
|
|
114
|
+
id: string;
|
|
115
|
+
vector?: Vector;
|
|
116
|
+
metadata?: any;
|
|
117
|
+
};
|
|
118
|
+
parent?: {
|
|
119
|
+
id: string;
|
|
120
|
+
similarity: number;
|
|
121
|
+
};
|
|
122
|
+
children?: Array<{
|
|
123
|
+
id: string;
|
|
124
|
+
similarity: number;
|
|
125
|
+
}>;
|
|
126
|
+
siblings?: Array<{
|
|
127
|
+
id: string;
|
|
128
|
+
similarity: number;
|
|
129
|
+
}>;
|
|
130
|
+
level?: number;
|
|
131
|
+
depth?: number;
|
|
132
|
+
}
|
|
133
|
+
export interface HierarchyOptions {
|
|
134
|
+
maxDepth?: number;
|
|
135
|
+
minSimilarity?: number;
|
|
136
|
+
includeMetadata?: boolean;
|
|
137
|
+
buildStrategy?: 'similarity' | 'metadata' | 'mixed';
|
|
138
|
+
}
|
|
139
|
+
export interface VisualizationOptions {
|
|
140
|
+
maxNodes?: number;
|
|
141
|
+
dimensions?: 2 | 3;
|
|
142
|
+
algorithm?: 'force' | 'spring' | 'circular' | 'hierarchical';
|
|
143
|
+
includeEdges?: boolean;
|
|
144
|
+
clusterColors?: boolean;
|
|
145
|
+
nodeSize?: 'uniform' | 'importance' | 'connections';
|
|
146
|
+
}
|
|
147
|
+
export interface VisualizationNode {
|
|
148
|
+
id: string;
|
|
149
|
+
x: number;
|
|
150
|
+
y: number;
|
|
151
|
+
z?: number;
|
|
152
|
+
cluster?: string;
|
|
153
|
+
size?: number;
|
|
154
|
+
color?: string;
|
|
155
|
+
metadata?: Record<string, any>;
|
|
156
|
+
}
|
|
157
|
+
export interface VisualizationEdge {
|
|
158
|
+
source: string;
|
|
159
|
+
target: string;
|
|
160
|
+
weight: number;
|
|
161
|
+
color?: string;
|
|
162
|
+
type?: string;
|
|
163
|
+
}
|
|
164
|
+
export interface VisualizationResult {
|
|
165
|
+
nodes: VisualizationNode[];
|
|
166
|
+
edges: VisualizationEdge[];
|
|
167
|
+
clusters?: Array<{
|
|
168
|
+
id: string;
|
|
169
|
+
color: string;
|
|
170
|
+
size: number;
|
|
171
|
+
label?: string;
|
|
172
|
+
}>;
|
|
173
|
+
metadata: {
|
|
174
|
+
algorithm: string;
|
|
175
|
+
dimensions: number;
|
|
176
|
+
totalNodes: number;
|
|
177
|
+
totalEdges: number;
|
|
178
|
+
generatedAt: Date;
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
export interface TimeWindow {
|
|
182
|
+
start: Date;
|
|
183
|
+
end: Date;
|
|
184
|
+
label?: string;
|
|
185
|
+
weight?: number;
|
|
186
|
+
}
|
|
187
|
+
export interface ClusterFeedback {
|
|
188
|
+
clusterId: string;
|
|
189
|
+
action: 'merge' | 'split' | 'relabel' | 'adjust';
|
|
190
|
+
parameters?: Record<string, any>;
|
|
191
|
+
confidence?: number;
|
|
192
|
+
}
|
|
193
|
+
export interface OutlierOptions {
|
|
194
|
+
threshold?: number;
|
|
195
|
+
method?: 'isolation' | 'statistical' | 'cluster-based';
|
|
196
|
+
minNeighbors?: number;
|
|
197
|
+
includeReasons?: boolean;
|
|
198
|
+
}
|
|
199
|
+
export interface Outlier {
|
|
200
|
+
id: string;
|
|
201
|
+
score: number;
|
|
202
|
+
reasons?: string[];
|
|
203
|
+
nearestNeighbors?: Neighbor[];
|
|
204
|
+
metadata?: Record<string, any>;
|
|
205
|
+
}
|
|
206
|
+
export interface PerformanceMetrics {
|
|
207
|
+
executionTime: number;
|
|
208
|
+
memoryUsed: number;
|
|
209
|
+
itemsProcessed: number;
|
|
210
|
+
cacheHits: number;
|
|
211
|
+
cacheMisses: number;
|
|
212
|
+
algorithm: string;
|
|
213
|
+
}
|
|
214
|
+
export interface ClusteringResult<T = SemanticCluster> {
|
|
215
|
+
clusters: T[];
|
|
216
|
+
metrics: PerformanceMetrics;
|
|
217
|
+
metadata: {
|
|
218
|
+
totalItems: number;
|
|
219
|
+
clustersFound: number;
|
|
220
|
+
averageClusterSize: number;
|
|
221
|
+
silhouetteScore?: number;
|
|
222
|
+
timestamp: Date;
|
|
223
|
+
semanticTypes?: number;
|
|
224
|
+
hnswLevel?: number;
|
|
225
|
+
kValue?: number;
|
|
226
|
+
hasConverged?: boolean;
|
|
227
|
+
outlierCount?: number;
|
|
228
|
+
eps?: number;
|
|
229
|
+
minPts?: number;
|
|
230
|
+
averageModularity?: number;
|
|
231
|
+
fusionMethod?: string;
|
|
232
|
+
componentAlgorithms?: string[];
|
|
233
|
+
sampleSize?: number;
|
|
234
|
+
samplingStrategy?: string;
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
export interface StreamingBatch<T = SemanticCluster> {
|
|
238
|
+
clusters: T[];
|
|
239
|
+
batchNumber: number;
|
|
240
|
+
isComplete: boolean;
|
|
241
|
+
progress: {
|
|
242
|
+
processed: number;
|
|
243
|
+
total: number;
|
|
244
|
+
percentage: number;
|
|
245
|
+
};
|
|
246
|
+
metrics: PerformanceMetrics;
|
|
247
|
+
}
|
|
248
|
+
export declare class NeuralAPIError extends Error {
|
|
249
|
+
code: string;
|
|
250
|
+
context?: Record<string, any> | undefined;
|
|
251
|
+
constructor(message: string, code: string, context?: Record<string, any> | undefined);
|
|
252
|
+
}
|
|
253
|
+
export declare class ClusteringError extends NeuralAPIError {
|
|
254
|
+
constructor(message: string, context?: Record<string, any>);
|
|
255
|
+
}
|
|
256
|
+
export declare class SimilarityError extends NeuralAPIError {
|
|
257
|
+
constructor(message: string, context?: Record<string, any>);
|
|
258
|
+
}
|
|
259
|
+
export interface NeuralAPIConfig {
|
|
260
|
+
cacheSize?: number;
|
|
261
|
+
defaultAlgorithm?: string;
|
|
262
|
+
similarityMetric?: 'cosine' | 'euclidean' | 'manhattan';
|
|
263
|
+
performanceTracking?: boolean;
|
|
264
|
+
maxMemoryUsage?: string;
|
|
265
|
+
parallelProcessing?: boolean;
|
|
266
|
+
streamingBatchSize?: number;
|
|
267
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Neural API Type Definitions
|
|
3
|
+
* Comprehensive interfaces for clustering, similarity, and analysis
|
|
4
|
+
*/
|
|
5
|
+
// ===== ERROR TYPES =====
|
|
6
|
+
export class NeuralAPIError extends Error {
|
|
7
|
+
constructor(message, code, context) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.code = code;
|
|
10
|
+
this.context = context;
|
|
11
|
+
this.name = 'NeuralAPIError';
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export class ClusteringError extends NeuralAPIError {
|
|
15
|
+
constructor(message, context) {
|
|
16
|
+
super(message, 'CLUSTERING_ERROR', context);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export class SimilarityError extends NeuralAPIError {
|
|
20
|
+
constructor(message, context) {
|
|
21
|
+
super(message, 'SIMILARITY_ERROR', context);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=types.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@soulcraft/brainy",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.12.0",
|
|
4
4
|
"description": "Universal Knowledge Protocol™ - World's first Triple Intelligence database unifying vector, graph, and document search in one API. 31 nouns × 40 verbs for infinite expressiveness.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|