@sparkleideas/neural 3.0.0-alpha.7-patch.16 → 3.0.0-alpha.7-patch.18
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/package.json +3 -3
- package/dist/algorithms/a2c.d.ts +0 -86
- package/dist/algorithms/a2c.d.ts.map +0 -1
- package/dist/algorithms/a2c.js +0 -361
- package/dist/algorithms/a2c.js.map +0 -1
- package/dist/algorithms/curiosity.d.ts +0 -82
- package/dist/algorithms/curiosity.d.ts.map +0 -1
- package/dist/algorithms/curiosity.js +0 -392
- package/dist/algorithms/curiosity.js.map +0 -1
- package/dist/algorithms/decision-transformer.d.ts +0 -82
- package/dist/algorithms/decision-transformer.d.ts.map +0 -1
- package/dist/algorithms/decision-transformer.js +0 -415
- package/dist/algorithms/decision-transformer.js.map +0 -1
- package/dist/algorithms/dqn.d.ts +0 -72
- package/dist/algorithms/dqn.d.ts.map +0 -1
- package/dist/algorithms/dqn.js +0 -303
- package/dist/algorithms/dqn.js.map +0 -1
- package/dist/algorithms/index.d.ts +0 -32
- package/dist/algorithms/index.d.ts.map +0 -1
- package/dist/algorithms/index.js +0 -74
- package/dist/algorithms/index.js.map +0 -1
- package/dist/algorithms/ppo.d.ts +0 -72
- package/dist/algorithms/ppo.d.ts.map +0 -1
- package/dist/algorithms/ppo.js +0 -331
- package/dist/algorithms/ppo.js.map +0 -1
- package/dist/algorithms/q-learning.d.ts +0 -77
- package/dist/algorithms/q-learning.d.ts.map +0 -1
- package/dist/algorithms/q-learning.js +0 -259
- package/dist/algorithms/q-learning.js.map +0 -1
- package/dist/algorithms/sarsa.d.ts +0 -82
- package/dist/algorithms/sarsa.d.ts.map +0 -1
- package/dist/algorithms/sarsa.js +0 -297
- package/dist/algorithms/sarsa.js.map +0 -1
- package/dist/application/index.d.ts +0 -7
- package/dist/application/index.d.ts.map +0 -1
- package/dist/application/index.js +0 -7
- package/dist/application/index.js.map +0 -1
- package/dist/application/services/neural-application-service.d.ts +0 -92
- package/dist/application/services/neural-application-service.d.ts.map +0 -1
- package/dist/application/services/neural-application-service.js +0 -161
- package/dist/application/services/neural-application-service.js.map +0 -1
- package/dist/domain/entities/pattern.d.ts +0 -89
- package/dist/domain/entities/pattern.d.ts.map +0 -1
- package/dist/domain/entities/pattern.js +0 -134
- package/dist/domain/entities/pattern.js.map +0 -1
- package/dist/domain/index.d.ts +0 -8
- package/dist/domain/index.d.ts.map +0 -1
- package/dist/domain/index.js +0 -8
- package/dist/domain/index.js.map +0 -1
- package/dist/domain/services/learning-service.d.ts +0 -90
- package/dist/domain/services/learning-service.d.ts.map +0 -1
- package/dist/domain/services/learning-service.js +0 -195
- package/dist/domain/services/learning-service.js.map +0 -1
- package/dist/index.d.ts +0 -118
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -201
- package/dist/index.js.map +0 -1
- package/dist/modes/balanced.d.ts +0 -60
- package/dist/modes/balanced.d.ts.map +0 -1
- package/dist/modes/balanced.js +0 -234
- package/dist/modes/balanced.js.map +0 -1
- package/dist/modes/base.d.ts +0 -50
- package/dist/modes/base.d.ts.map +0 -1
- package/dist/modes/base.js +0 -77
- package/dist/modes/base.js.map +0 -1
- package/dist/modes/batch.d.ts +0 -82
- package/dist/modes/batch.d.ts.map +0 -1
- package/dist/modes/batch.js +0 -316
- package/dist/modes/batch.js.map +0 -1
- package/dist/modes/edge.d.ts +0 -85
- package/dist/modes/edge.d.ts.map +0 -1
- package/dist/modes/edge.js +0 -310
- package/dist/modes/edge.js.map +0 -1
- package/dist/modes/index.d.ts +0 -13
- package/dist/modes/index.d.ts.map +0 -1
- package/dist/modes/index.js +0 -13
- package/dist/modes/index.js.map +0 -1
- package/dist/modes/real-time.d.ts +0 -58
- package/dist/modes/real-time.d.ts.map +0 -1
- package/dist/modes/real-time.js +0 -196
- package/dist/modes/real-time.js.map +0 -1
- package/dist/modes/research.d.ts +0 -79
- package/dist/modes/research.d.ts.map +0 -1
- package/dist/modes/research.js +0 -389
- package/dist/modes/research.js.map +0 -1
- package/dist/pattern-learner.d.ts +0 -117
- package/dist/pattern-learner.d.ts.map +0 -1
- package/dist/pattern-learner.js +0 -603
- package/dist/pattern-learner.js.map +0 -1
- package/dist/reasoning-bank.d.ts +0 -259
- package/dist/reasoning-bank.d.ts.map +0 -1
- package/dist/reasoning-bank.js +0 -993
- package/dist/reasoning-bank.js.map +0 -1
- package/dist/reasoningbank-adapter.d.ts +0 -168
- package/dist/reasoningbank-adapter.d.ts.map +0 -1
- package/dist/reasoningbank-adapter.js +0 -463
- package/dist/reasoningbank-adapter.js.map +0 -1
- package/dist/sona-integration.d.ts +0 -168
- package/dist/sona-integration.d.ts.map +0 -1
- package/dist/sona-integration.js +0 -316
- package/dist/sona-integration.js.map +0 -1
- package/dist/sona-manager.d.ts +0 -147
- package/dist/sona-manager.d.ts.map +0 -1
- package/dist/sona-manager.js +0 -695
- package/dist/sona-manager.js.map +0 -1
- package/dist/types.d.ts +0 -431
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -11
- package/dist/types.js.map +0 -1
- package/tsconfig.build.tsbuildinfo +0 -1
package/dist/modes/edge.js
DELETED
|
@@ -1,310 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Edge Mode Implementation
|
|
3
|
-
*
|
|
4
|
-
* Optimized for resource-constrained environments with:
|
|
5
|
-
* - <5MB memory footprint
|
|
6
|
-
* - Minimal latency (<1ms)
|
|
7
|
-
* - Micro-LoRA (rank-1)
|
|
8
|
-
* - Aggressive pruning
|
|
9
|
-
* - Async updates
|
|
10
|
-
*/
|
|
11
|
-
import { BaseModeImplementation } from './base.js';
|
|
12
|
-
/**
|
|
13
|
-
* Edge mode for resource-constrained devices
|
|
14
|
-
*/
|
|
15
|
-
export class EdgeMode extends BaseModeImplementation {
|
|
16
|
-
mode = 'edge';
|
|
17
|
-
// Minimal pattern storage (compressed)
|
|
18
|
-
compressedPatterns = new Map();
|
|
19
|
-
// Quantized LoRA weights (int8)
|
|
20
|
-
quantizedWeights = new Map();
|
|
21
|
-
quantizationScale = 1.0;
|
|
22
|
-
// Pending async updates
|
|
23
|
-
pendingUpdates = [];
|
|
24
|
-
updateTimer = null;
|
|
25
|
-
// Stats
|
|
26
|
-
totalOps = 0;
|
|
27
|
-
totalTime = 0;
|
|
28
|
-
async initialize() {
|
|
29
|
-
await super.initialize();
|
|
30
|
-
this.compressedPatterns.clear();
|
|
31
|
-
this.quantizedWeights.clear();
|
|
32
|
-
this.pendingUpdates = [];
|
|
33
|
-
}
|
|
34
|
-
async cleanup() {
|
|
35
|
-
if (this.updateTimer) {
|
|
36
|
-
clearTimeout(this.updateTimer);
|
|
37
|
-
}
|
|
38
|
-
this.compressedPatterns.clear();
|
|
39
|
-
this.quantizedWeights.clear();
|
|
40
|
-
this.pendingUpdates = [];
|
|
41
|
-
await super.cleanup();
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Find patterns using compressed embeddings
|
|
45
|
-
*/
|
|
46
|
-
async findPatterns(embedding, k, patterns) {
|
|
47
|
-
const startTime = performance.now();
|
|
48
|
-
// Compress input embedding for comparison
|
|
49
|
-
const compressedInput = this.compressEmbedding(embedding);
|
|
50
|
-
// Fast similarity on compressed representations
|
|
51
|
-
const matches = [];
|
|
52
|
-
for (const pattern of patterns) {
|
|
53
|
-
let compressed = this.compressedPatterns.get(pattern.patternId);
|
|
54
|
-
if (!compressed) {
|
|
55
|
-
compressed = this.createCompressedPattern(pattern);
|
|
56
|
-
this.compressedPatterns.set(pattern.patternId, compressed);
|
|
57
|
-
}
|
|
58
|
-
// Use compressed similarity (faster but less accurate)
|
|
59
|
-
const score = this.compressedSimilarity(compressedInput, compressed.embedding);
|
|
60
|
-
matches.push({ pattern, score });
|
|
61
|
-
}
|
|
62
|
-
// Quick partial sort
|
|
63
|
-
matches.sort((a, b) => b.score - a.score);
|
|
64
|
-
const topK = matches.slice(0, k);
|
|
65
|
-
this.totalOps++;
|
|
66
|
-
this.totalTime += performance.now() - startTime;
|
|
67
|
-
return topK.map(m => ({
|
|
68
|
-
pattern: m.pattern,
|
|
69
|
-
similarity: m.score,
|
|
70
|
-
confidence: m.score * m.pattern.successRate,
|
|
71
|
-
latencyMs: 0,
|
|
72
|
-
}));
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Lightweight learning with async updates
|
|
76
|
-
*/
|
|
77
|
-
async learn(trajectories, config, ewcState) {
|
|
78
|
-
const startTime = performance.now();
|
|
79
|
-
if (trajectories.length === 0)
|
|
80
|
-
return 0;
|
|
81
|
-
// Edge mode: only learn from high-quality trajectories
|
|
82
|
-
const threshold = config.qualityThreshold;
|
|
83
|
-
const good = trajectories.filter(t => t.qualityScore >= threshold);
|
|
84
|
-
if (good.length === 0)
|
|
85
|
-
return 0;
|
|
86
|
-
const avgQuality = good.reduce((s, t) => s + t.qualityScore, 0) / good.length;
|
|
87
|
-
// Queue async update for later processing
|
|
88
|
-
this.queueAsyncUpdate(async () => {
|
|
89
|
-
await this.performLightweightUpdate(good, config.learningRate);
|
|
90
|
-
});
|
|
91
|
-
this.totalOps++;
|
|
92
|
-
this.totalTime += performance.now() - startTime;
|
|
93
|
-
return Math.max(0, avgQuality - 0.5);
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Apply quantized LoRA
|
|
97
|
-
*/
|
|
98
|
-
async applyLoRA(input, weights) {
|
|
99
|
-
if (!weights) {
|
|
100
|
-
return input;
|
|
101
|
-
}
|
|
102
|
-
const output = new Float32Array(input.length);
|
|
103
|
-
output.set(input);
|
|
104
|
-
// Quantize weights if not already done
|
|
105
|
-
for (const module of ['q_proj', 'v_proj']) {
|
|
106
|
-
const A = weights.A.get(module);
|
|
107
|
-
const B = weights.B.get(module);
|
|
108
|
-
if (A && B) {
|
|
109
|
-
const qA = this.getOrQuantize(`A_${module}`, A);
|
|
110
|
-
const qB = this.getOrQuantize(`B_${module}`, B);
|
|
111
|
-
// Apply quantized LoRA
|
|
112
|
-
const adapted = this.applyQuantizedLoRA(input, qA, qB);
|
|
113
|
-
const alpha = 0.05; // Very small blending for edge
|
|
114
|
-
for (let i = 0; i < output.length; i++) {
|
|
115
|
-
output[i] = output[i] * (1 - alpha) + adapted[i] * alpha;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return output;
|
|
120
|
-
}
|
|
121
|
-
getStats() {
|
|
122
|
-
return {
|
|
123
|
-
avgLatencyMs: this.totalOps > 0 ? this.totalTime / this.totalOps : 0,
|
|
124
|
-
compressedPatterns: this.compressedPatterns.size,
|
|
125
|
-
quantizedWeights: this.quantizedWeights.size,
|
|
126
|
-
pendingUpdates: this.pendingUpdates.length,
|
|
127
|
-
memoryEstimateMb: this.estimateMemoryUsage(),
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
// ========================================================================
|
|
131
|
-
// Compression utilities
|
|
132
|
-
// ========================================================================
|
|
133
|
-
/**
|
|
134
|
-
* Compress embedding to 8-bit representation
|
|
135
|
-
*/
|
|
136
|
-
compressEmbedding(embedding) {
|
|
137
|
-
const compressed = new Int8Array(embedding.length);
|
|
138
|
-
const max = Math.max(...embedding.map(Math.abs));
|
|
139
|
-
const scale = max > 0 ? 127 / max : 1;
|
|
140
|
-
for (let i = 0; i < embedding.length; i++) {
|
|
141
|
-
compressed[i] = Math.round(embedding[i] * scale);
|
|
142
|
-
}
|
|
143
|
-
return compressed;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Create compressed pattern representation
|
|
147
|
-
*/
|
|
148
|
-
createCompressedPattern(pattern) {
|
|
149
|
-
return {
|
|
150
|
-
id: pattern.patternId,
|
|
151
|
-
embedding: this.compressEmbedding(pattern.embedding),
|
|
152
|
-
successRate: Math.round(pattern.successRate * 255),
|
|
153
|
-
usageCount: Math.min(pattern.usageCount, 255),
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* Fast similarity on compressed embeddings
|
|
158
|
-
*/
|
|
159
|
-
compressedSimilarity(a, b) {
|
|
160
|
-
if (a.length !== b.length)
|
|
161
|
-
return 0;
|
|
162
|
-
let dot = 0;
|
|
163
|
-
let normA = 0;
|
|
164
|
-
let normB = 0;
|
|
165
|
-
// Process in chunks of 8 for better cache utilization
|
|
166
|
-
const len = a.length;
|
|
167
|
-
for (let i = 0; i < len; i++) {
|
|
168
|
-
dot += a[i] * b[i];
|
|
169
|
-
normA += a[i] * a[i];
|
|
170
|
-
normB += b[i] * b[i];
|
|
171
|
-
}
|
|
172
|
-
const denom = Math.sqrt(normA * normB);
|
|
173
|
-
return denom > 0 ? dot / denom : 0;
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Get or create quantized weights
|
|
177
|
-
*/
|
|
178
|
-
getOrQuantize(key, weights) {
|
|
179
|
-
let quantized = this.quantizedWeights.get(key);
|
|
180
|
-
if (!quantized) {
|
|
181
|
-
quantized = this.quantizeWeights(weights);
|
|
182
|
-
this.quantizedWeights.set(key, quantized);
|
|
183
|
-
}
|
|
184
|
-
return quantized;
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Quantize float weights to int8
|
|
188
|
-
*/
|
|
189
|
-
quantizeWeights(weights) {
|
|
190
|
-
const max = Math.max(...weights.map(Math.abs));
|
|
191
|
-
this.quantizationScale = max > 0 ? 127 / max : 1;
|
|
192
|
-
const quantized = new Int8Array(weights.length);
|
|
193
|
-
for (let i = 0; i < weights.length; i++) {
|
|
194
|
-
quantized[i] = Math.round(weights[i] * this.quantizationScale);
|
|
195
|
-
}
|
|
196
|
-
return quantized;
|
|
197
|
-
}
|
|
198
|
-
/**
|
|
199
|
-
* Apply LoRA with quantized weights
|
|
200
|
-
*/
|
|
201
|
-
applyQuantizedLoRA(input, qA, qB) {
|
|
202
|
-
const dim = input.length;
|
|
203
|
-
const rank = 1; // Edge mode uses rank-1
|
|
204
|
-
const output = new Float32Array(dim);
|
|
205
|
-
const dequantScale = 1 / this.quantizationScale;
|
|
206
|
-
// A * input -> intermediate (scalar for rank-1)
|
|
207
|
-
let intermediate = 0;
|
|
208
|
-
for (let d = 0; d < dim; d++) {
|
|
209
|
-
intermediate += (qA[d] * dequantScale) * input[d];
|
|
210
|
-
}
|
|
211
|
-
// B * intermediate -> output
|
|
212
|
-
for (let d = 0; d < dim; d++) {
|
|
213
|
-
output[d] = (qB[d] * dequantScale) * intermediate;
|
|
214
|
-
}
|
|
215
|
-
return output;
|
|
216
|
-
}
|
|
217
|
-
// ========================================================================
|
|
218
|
-
// Async updates
|
|
219
|
-
// ========================================================================
|
|
220
|
-
/**
|
|
221
|
-
* Queue an async update
|
|
222
|
-
*/
|
|
223
|
-
queueAsyncUpdate(update) {
|
|
224
|
-
this.pendingUpdates.push(update);
|
|
225
|
-
// Schedule processing if not already scheduled
|
|
226
|
-
if (!this.updateTimer) {
|
|
227
|
-
this.updateTimer = setTimeout(() => {
|
|
228
|
-
this.processAsyncUpdates();
|
|
229
|
-
}, 100); // Process updates every 100ms
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* Process pending async updates
|
|
234
|
-
*/
|
|
235
|
-
async processAsyncUpdates() {
|
|
236
|
-
this.updateTimer = null;
|
|
237
|
-
const updates = this.pendingUpdates;
|
|
238
|
-
this.pendingUpdates = [];
|
|
239
|
-
// Process up to 5 updates at a time
|
|
240
|
-
for (const update of updates.slice(0, 5)) {
|
|
241
|
-
try {
|
|
242
|
-
await update();
|
|
243
|
-
}
|
|
244
|
-
catch (error) {
|
|
245
|
-
console.error('Edge mode async update failed:', error);
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
// Re-queue remaining updates
|
|
249
|
-
if (updates.length > 5) {
|
|
250
|
-
this.pendingUpdates = updates.slice(5);
|
|
251
|
-
this.updateTimer = setTimeout(() => {
|
|
252
|
-
this.processAsyncUpdates();
|
|
253
|
-
}, 100);
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* Perform lightweight parameter update
|
|
258
|
-
*/
|
|
259
|
-
async performLightweightUpdate(trajectories, learningRate) {
|
|
260
|
-
// Simple exponential moving average update
|
|
261
|
-
const alpha = learningRate;
|
|
262
|
-
for (const trajectory of trajectories) {
|
|
263
|
-
if (trajectory.steps.length === 0)
|
|
264
|
-
continue;
|
|
265
|
-
// Update compressed patterns based on trajectory success
|
|
266
|
-
const lastStep = trajectory.steps[trajectory.steps.length - 1];
|
|
267
|
-
const pattern = this.findSimilarCompressedPattern(lastStep.stateAfter);
|
|
268
|
-
if (pattern) {
|
|
269
|
-
// Update success rate with EMA
|
|
270
|
-
const newRate = alpha * trajectory.qualityScore + (1 - alpha) * (pattern.successRate / 255);
|
|
271
|
-
pattern.successRate = Math.round(newRate * 255);
|
|
272
|
-
pattern.usageCount = Math.min(255, pattern.usageCount + 1);
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
/**
|
|
277
|
-
* Find most similar compressed pattern
|
|
278
|
-
*/
|
|
279
|
-
findSimilarCompressedPattern(embedding) {
|
|
280
|
-
const compressed = this.compressEmbedding(embedding);
|
|
281
|
-
let best = null;
|
|
282
|
-
let bestSim = -1;
|
|
283
|
-
for (const pattern of this.compressedPatterns.values()) {
|
|
284
|
-
const sim = this.compressedSimilarity(compressed, pattern.embedding);
|
|
285
|
-
if (sim > bestSim) {
|
|
286
|
-
bestSim = sim;
|
|
287
|
-
best = pattern;
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
return best;
|
|
291
|
-
}
|
|
292
|
-
/**
|
|
293
|
-
* Estimate memory usage in MB
|
|
294
|
-
*/
|
|
295
|
-
estimateMemoryUsage() {
|
|
296
|
-
let bytes = 0;
|
|
297
|
-
// Compressed patterns
|
|
298
|
-
for (const pattern of this.compressedPatterns.values()) {
|
|
299
|
-
bytes += pattern.embedding.byteLength + 8; // embedding + overhead
|
|
300
|
-
}
|
|
301
|
-
// Quantized weights
|
|
302
|
-
for (const weights of this.quantizedWeights.values()) {
|
|
303
|
-
bytes += weights.byteLength;
|
|
304
|
-
}
|
|
305
|
-
// Pending updates (minimal)
|
|
306
|
-
bytes += this.pendingUpdates.length * 100;
|
|
307
|
-
return bytes / (1024 * 1024);
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
//# sourceMappingURL=edge.js.map
|
package/dist/modes/edge.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edge.js","sourceRoot":"","sources":["../../src/modes/edge.ts"],"names":[],"mappings":"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"}
|
package/dist/modes/index.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SONA Learning Modes Index
|
|
3
|
-
*
|
|
4
|
-
* Exports all learning mode implementations and the common interface.
|
|
5
|
-
*/
|
|
6
|
-
export type { ModeImplementation } from './base.js';
|
|
7
|
-
export { BaseModeImplementation } from './base.js';
|
|
8
|
-
export { RealTimeMode } from './real-time.js';
|
|
9
|
-
export { BalancedMode } from './balanced.js';
|
|
10
|
-
export { ResearchMode } from './research.js';
|
|
11
|
-
export { EdgeMode } from './edge.js';
|
|
12
|
-
export { BatchMode } from './batch.js';
|
|
13
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGnD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/modes/index.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SONA Learning Modes Index
|
|
3
|
-
*
|
|
4
|
-
* Exports all learning mode implementations and the common interface.
|
|
5
|
-
*/
|
|
6
|
-
export { BaseModeImplementation } from './base.js';
|
|
7
|
-
// Export mode implementations
|
|
8
|
-
export { RealTimeMode } from './real-time.js';
|
|
9
|
-
export { BalancedMode } from './balanced.js';
|
|
10
|
-
export { ResearchMode } from './research.js';
|
|
11
|
-
export { EdgeMode } from './edge.js';
|
|
12
|
-
export { BatchMode } from './batch.js';
|
|
13
|
-
//# sourceMappingURL=index.js.map
|
package/dist/modes/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modes/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEnD,8BAA8B;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Real-Time Mode Implementation
|
|
3
|
-
*
|
|
4
|
-
* Optimized for sub-millisecond adaptation with:
|
|
5
|
-
* - 2200 ops/sec target
|
|
6
|
-
* - <0.5ms latency
|
|
7
|
-
* - Micro-LoRA (rank-2)
|
|
8
|
-
* - SIMD vectorization
|
|
9
|
-
* - Aggressive caching
|
|
10
|
-
*/
|
|
11
|
-
import type { SONAModeConfig, Trajectory, Pattern, PatternMatch, LoRAWeights, EWCState } from '../types.js';
|
|
12
|
-
import { BaseModeImplementation } from './base.js';
|
|
13
|
-
/**
|
|
14
|
-
* Real-Time mode for sub-millisecond adaptation
|
|
15
|
-
*/
|
|
16
|
-
export declare class RealTimeMode extends BaseModeImplementation {
|
|
17
|
-
readonly mode = "real-time";
|
|
18
|
-
private patternCache;
|
|
19
|
-
private cacheHits;
|
|
20
|
-
private cacheMisses;
|
|
21
|
-
private patternEmbeddings;
|
|
22
|
-
private patternIds;
|
|
23
|
-
private totalPatternMatches;
|
|
24
|
-
private totalPatternTime;
|
|
25
|
-
private totalLearnTime;
|
|
26
|
-
private learnIterations;
|
|
27
|
-
initialize(): Promise<void>;
|
|
28
|
-
cleanup(): Promise<void>;
|
|
29
|
-
/**
|
|
30
|
-
* Find patterns using cached similarity search
|
|
31
|
-
* Target: <1ms for k=3
|
|
32
|
-
*/
|
|
33
|
-
findPatterns(embedding: Float32Array, k: number, patterns: Pattern[]): Promise<PatternMatch[]>;
|
|
34
|
-
/**
|
|
35
|
-
* Fast learning using Micro-LoRA updates
|
|
36
|
-
* Target: <10ms per batch
|
|
37
|
-
*/
|
|
38
|
-
learn(trajectories: Trajectory[], config: SONAModeConfig, ewcState: EWCState): Promise<number>;
|
|
39
|
-
/**
|
|
40
|
-
* Apply LoRA with minimal overhead
|
|
41
|
-
* Target: <0.05ms
|
|
42
|
-
*/
|
|
43
|
-
applyLoRA(input: Float32Array, weights?: LoRAWeights): Promise<Float32Array>;
|
|
44
|
-
getStats(): Record<string, number>;
|
|
45
|
-
/**
|
|
46
|
-
* Compute cache key from embedding
|
|
47
|
-
*/
|
|
48
|
-
private computeCacheKey;
|
|
49
|
-
/**
|
|
50
|
-
* Update pattern index for fast similarity search
|
|
51
|
-
*/
|
|
52
|
-
private updatePatternIndex;
|
|
53
|
-
/**
|
|
54
|
-
* Partial sort to get top-k elements (faster than full sort)
|
|
55
|
-
*/
|
|
56
|
-
private partialSort;
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=real-time.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"real-time.d.ts","sourceRoot":"","sources":["../../src/modes/real-time.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,cAAc,EAEd,UAAU,EACV,OAAO,EACP,YAAY,EACZ,WAAW,EACX,QAAQ,EACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEnD;;GAEG;AACH,qBAAa,YAAa,SAAQ,sBAAsB;IACtD,QAAQ,CAAC,IAAI,eAAe;IAG5B,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAK;IAGxB,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,UAAU,CAAgB;IAGlC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,eAAe,CAAK;IAEtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B;;;OAGG;IACG,YAAY,CAChB,SAAS,EAAE,YAAY,EACvB,CAAC,EAAE,MAAM,EACT,QAAQ,EAAE,OAAO,EAAE,GAClB,OAAO,CAAC,YAAY,EAAE,CAAC;IAqD1B;;;OAGG;IACG,KAAK,CACT,YAAY,EAAE,UAAU,EAAE,EAC1B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC;IAyBlB;;;OAGG;IACG,SAAS,CACb,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,YAAY,CAAC;IA8BxB,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAgBlC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,WAAW;CA4BpB"}
|
package/dist/modes/real-time.js
DELETED
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Real-Time Mode Implementation
|
|
3
|
-
*
|
|
4
|
-
* Optimized for sub-millisecond adaptation with:
|
|
5
|
-
* - 2200 ops/sec target
|
|
6
|
-
* - <0.5ms latency
|
|
7
|
-
* - Micro-LoRA (rank-2)
|
|
8
|
-
* - SIMD vectorization
|
|
9
|
-
* - Aggressive caching
|
|
10
|
-
*/
|
|
11
|
-
import { BaseModeImplementation } from './base.js';
|
|
12
|
-
/**
|
|
13
|
-
* Real-Time mode for sub-millisecond adaptation
|
|
14
|
-
*/
|
|
15
|
-
export class RealTimeMode extends BaseModeImplementation {
|
|
16
|
-
mode = 'real-time';
|
|
17
|
-
// Pattern cache for fast lookups
|
|
18
|
-
patternCache = new Map();
|
|
19
|
-
cacheHits = 0;
|
|
20
|
-
cacheMisses = 0;
|
|
21
|
-
// Pre-computed pattern embeddings for fast similarity
|
|
22
|
-
patternEmbeddings = [];
|
|
23
|
-
patternIds = [];
|
|
24
|
-
// Stats
|
|
25
|
-
totalPatternMatches = 0;
|
|
26
|
-
totalPatternTime = 0;
|
|
27
|
-
totalLearnTime = 0;
|
|
28
|
-
learnIterations = 0;
|
|
29
|
-
async initialize() {
|
|
30
|
-
await super.initialize();
|
|
31
|
-
this.patternCache.clear();
|
|
32
|
-
this.patternEmbeddings = [];
|
|
33
|
-
this.patternIds = [];
|
|
34
|
-
}
|
|
35
|
-
async cleanup() {
|
|
36
|
-
this.patternCache.clear();
|
|
37
|
-
this.patternEmbeddings = [];
|
|
38
|
-
this.patternIds = [];
|
|
39
|
-
await super.cleanup();
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Find patterns using cached similarity search
|
|
43
|
-
* Target: <1ms for k=3
|
|
44
|
-
*/
|
|
45
|
-
async findPatterns(embedding, k, patterns) {
|
|
46
|
-
const startTime = performance.now();
|
|
47
|
-
// Check cache first (hash first 8 floats for cache key)
|
|
48
|
-
const cacheKey = this.computeCacheKey(embedding);
|
|
49
|
-
const cached = this.patternCache.get(cacheKey);
|
|
50
|
-
if (cached && cached.length >= k) {
|
|
51
|
-
this.cacheHits++;
|
|
52
|
-
this.totalPatternTime += performance.now() - startTime;
|
|
53
|
-
this.totalPatternMatches++;
|
|
54
|
-
return cached.slice(0, k);
|
|
55
|
-
}
|
|
56
|
-
this.cacheMisses++;
|
|
57
|
-
// Update pattern embeddings if patterns changed
|
|
58
|
-
if (patterns.length !== this.patternIds.length) {
|
|
59
|
-
this.updatePatternIndex(patterns);
|
|
60
|
-
}
|
|
61
|
-
// Fast similarity search using pre-computed embeddings
|
|
62
|
-
const similarities = [];
|
|
63
|
-
for (let i = 0; i < this.patternEmbeddings.length; i++) {
|
|
64
|
-
const similarity = this.cosineSimilarity(embedding, this.patternEmbeddings[i]);
|
|
65
|
-
similarities.push({ index: i, similarity });
|
|
66
|
-
}
|
|
67
|
-
// Partial sort to get top-k (faster than full sort)
|
|
68
|
-
const topK = this.partialSort(similarities, k);
|
|
69
|
-
const matches = topK.map(item => ({
|
|
70
|
-
pattern: patterns[item.index],
|
|
71
|
-
similarity: item.similarity,
|
|
72
|
-
confidence: item.similarity * patterns[item.index].successRate,
|
|
73
|
-
latencyMs: 0, // Will be set by caller
|
|
74
|
-
}));
|
|
75
|
-
// Cache the result
|
|
76
|
-
if (this.patternCache.size > 1000) {
|
|
77
|
-
// LRU eviction: remove oldest entries
|
|
78
|
-
const firstKey = this.patternCache.keys().next().value;
|
|
79
|
-
if (firstKey)
|
|
80
|
-
this.patternCache.delete(firstKey);
|
|
81
|
-
}
|
|
82
|
-
this.patternCache.set(cacheKey, matches);
|
|
83
|
-
this.totalPatternTime += performance.now() - startTime;
|
|
84
|
-
this.totalPatternMatches++;
|
|
85
|
-
return matches;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Fast learning using Micro-LoRA updates
|
|
89
|
-
* Target: <10ms per batch
|
|
90
|
-
*/
|
|
91
|
-
async learn(trajectories, config, ewcState) {
|
|
92
|
-
const startTime = performance.now();
|
|
93
|
-
if (trajectories.length === 0)
|
|
94
|
-
return 0;
|
|
95
|
-
// Real-time mode uses simplified learning for speed
|
|
96
|
-
// Only process high-quality trajectories
|
|
97
|
-
const qualityThreshold = config.qualityThreshold;
|
|
98
|
-
const goodTrajectories = trajectories.filter(t => t.qualityScore >= qualityThreshold);
|
|
99
|
-
if (goodTrajectories.length === 0)
|
|
100
|
-
return 0;
|
|
101
|
-
// Compute average quality improvement
|
|
102
|
-
const avgQuality = goodTrajectories.reduce((sum, t) => sum + t.qualityScore, 0) / goodTrajectories.length;
|
|
103
|
-
// Simplified gradient update (for real-time, we skip full backprop)
|
|
104
|
-
// Just update EWC means to track what works
|
|
105
|
-
const improvementDelta = avgQuality - 0.5; // Relative to baseline of 0.5
|
|
106
|
-
this.totalLearnTime += performance.now() - startTime;
|
|
107
|
-
this.learnIterations++;
|
|
108
|
-
return Math.max(0, improvementDelta);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Apply LoRA with minimal overhead
|
|
112
|
-
* Target: <0.05ms
|
|
113
|
-
*/
|
|
114
|
-
async applyLoRA(input, weights) {
|
|
115
|
-
if (!weights) {
|
|
116
|
-
// No adaptation, return input as-is
|
|
117
|
-
return input;
|
|
118
|
-
}
|
|
119
|
-
// Micro-LoRA: only apply to key modules
|
|
120
|
-
const output = new Float32Array(input.length);
|
|
121
|
-
output.set(input);
|
|
122
|
-
// Apply rank-2 adaptation (minimal overhead)
|
|
123
|
-
const rank = this.config.loraRank;
|
|
124
|
-
for (const module of ['q_proj', 'v_proj']) {
|
|
125
|
-
const A = weights.A.get(module);
|
|
126
|
-
const B = weights.B.get(module);
|
|
127
|
-
if (A && B) {
|
|
128
|
-
const adapted = this.applyLoRATransform(input, A, B, rank);
|
|
129
|
-
// Blend with small alpha for stability
|
|
130
|
-
const alpha = 0.1;
|
|
131
|
-
for (let i = 0; i < output.length; i++) {
|
|
132
|
-
output[i] = output[i] * (1 - alpha) + adapted[i] * alpha;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
return output;
|
|
137
|
-
}
|
|
138
|
-
getStats() {
|
|
139
|
-
return {
|
|
140
|
-
cacheHitRate: this.cacheHits + this.cacheMisses > 0
|
|
141
|
-
? this.cacheHits / (this.cacheHits + this.cacheMisses)
|
|
142
|
-
: 0,
|
|
143
|
-
avgPatternMatchMs: this.totalPatternMatches > 0
|
|
144
|
-
? this.totalPatternTime / this.totalPatternMatches
|
|
145
|
-
: 0,
|
|
146
|
-
avgLearnMs: this.learnIterations > 0
|
|
147
|
-
? this.totalLearnTime / this.learnIterations
|
|
148
|
-
: 0,
|
|
149
|
-
patternCacheSize: this.patternCache.size,
|
|
150
|
-
indexedPatterns: this.patternEmbeddings.length,
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Compute cache key from embedding
|
|
155
|
-
*/
|
|
156
|
-
computeCacheKey(embedding) {
|
|
157
|
-
// Use first 8 floats for cache key (fast hash)
|
|
158
|
-
const keyParts = [];
|
|
159
|
-
for (let i = 0; i < Math.min(8, embedding.length); i++) {
|
|
160
|
-
keyParts.push(embedding[i].toFixed(3));
|
|
161
|
-
}
|
|
162
|
-
return keyParts.join(',');
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Update pattern index for fast similarity search
|
|
166
|
-
*/
|
|
167
|
-
updatePatternIndex(patterns) {
|
|
168
|
-
this.patternEmbeddings = patterns.map(p => p.embedding);
|
|
169
|
-
this.patternIds = patterns.map(p => p.patternId);
|
|
170
|
-
this.patternCache.clear();
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* Partial sort to get top-k elements (faster than full sort)
|
|
174
|
-
*/
|
|
175
|
-
partialSort(items, k) {
|
|
176
|
-
if (items.length <= k) {
|
|
177
|
-
return items.sort((a, b) => b.similarity - a.similarity);
|
|
178
|
-
}
|
|
179
|
-
// Use a simple selection algorithm for small k
|
|
180
|
-
const result = [];
|
|
181
|
-
for (let i = 0; i < k; i++) {
|
|
182
|
-
let maxIdx = 0;
|
|
183
|
-
let maxVal = -Infinity;
|
|
184
|
-
for (let j = 0; j < items.length; j++) {
|
|
185
|
-
if (items[j].similarity > maxVal) {
|
|
186
|
-
maxVal = items[j].similarity;
|
|
187
|
-
maxIdx = j;
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
result.push(items[maxIdx]);
|
|
191
|
-
items[maxIdx] = { index: -1, similarity: -Infinity };
|
|
192
|
-
}
|
|
193
|
-
return result;
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
//# sourceMappingURL=real-time.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"real-time.js","sourceRoot":"","sources":["../../src/modes/real-time.ts"],"names":[],"mappings":"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"}
|