@nxuss/lemma 1.40.0 → 1.41.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 +45 -14
- package/bin/brain-ingest.js +41 -0
- package/bin/init.js +92 -92
- package/bin/postinstall.js +58 -4
- package/dashboard/dist/assets/index-Ca05LJvs.js +453 -0
- package/dashboard/dist/assets/{index-DNTQXLER.css → index-DdEVyDRj.css} +1 -1
- package/dashboard/dist/index.html +2 -2
- package/dist/cjs/cli/hostHooks.d.ts +14 -1
- package/dist/cjs/cli/hostHooks.d.ts.map +1 -1
- package/dist/cjs/cli/hostHooks.js +53 -6
- package/dist/cjs/cli/hostHooks.js.map +1 -1
- package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/cjs/cli/lemma-proxy.js +29 -10
- package/dist/cjs/cli/lemma-proxy.js.map +1 -1
- package/dist/cjs/contracts/evidence.d.ts +8 -1
- package/dist/cjs/contracts/evidence.d.ts.map +1 -1
- package/dist/cjs/mcp/index.js +19 -0
- package/dist/cjs/mcp/index.js.map +1 -1
- package/dist/cjs/mcp/prompts.d.ts +1 -1
- package/dist/cjs/mcp/prompts.d.ts.map +1 -1
- package/dist/cjs/mcp/prompts.js +6 -16
- package/dist/cjs/mcp/prompts.js.map +1 -1
- package/dist/cjs/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/cjs/mcp/tool-profiles.js +8 -4
- package/dist/cjs/mcp/tool-profiles.js.map +1 -1
- package/dist/cjs/mcp/tools/context-tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/context-tools.js +21 -17
- package/dist/cjs/mcp/tools/context-tools.js.map +1 -1
- package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/memory.js +25 -4
- package/dist/cjs/mcp/tools/memory.js.map +1 -1
- package/dist/cjs/mcp/tools/workspace.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/workspace.js +97 -54
- package/dist/cjs/mcp/tools/workspace.js.map +1 -1
- package/dist/cjs/mcp/tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools.js +95 -34
- package/dist/cjs/mcp/tools.js.map +1 -1
- package/dist/cjs/mcp/utils.d.ts.map +1 -1
- package/dist/cjs/mcp/utils.js +6 -1
- package/dist/cjs/mcp/utils.js.map +1 -1
- package/dist/cjs/mcp/workspaceShared.d.ts.map +1 -1
- package/dist/cjs/mcp/workspaceShared.js +14 -9
- package/dist/cjs/mcp/workspaceShared.js.map +1 -1
- package/dist/cjs/proxy/KeyManager.d.ts +10 -0
- package/dist/cjs/proxy/KeyManager.d.ts.map +1 -1
- package/dist/cjs/proxy/KeyManager.js +45 -8
- package/dist/cjs/proxy/KeyManager.js.map +1 -1
- package/dist/cjs/security/SemanticScrubber.d.ts.map +1 -1
- package/dist/cjs/security/SemanticScrubber.js +19 -1
- package/dist/cjs/security/SemanticScrubber.js.map +1 -1
- package/dist/cjs/subconscious/HostRecall.d.ts +7 -5
- package/dist/cjs/subconscious/HostRecall.d.ts.map +1 -1
- package/dist/cjs/subconscious/HostRecall.js +115 -13
- package/dist/cjs/subconscious/HostRecall.js.map +1 -1
- package/dist/cjs/subconscious/TheBrainV2.d.ts +6 -1
- package/dist/cjs/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/cjs/subconscious/TheBrainV2.js +21 -9
- package/dist/cjs/subconscious/TheBrainV2.js.map +1 -1
- package/dist/cjs/subconscious/freshness/LocalFsResolver.d.ts +3 -0
- package/dist/cjs/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
- package/dist/cjs/subconscious/freshness/LocalFsResolver.js +32 -14
- package/dist/cjs/subconscious/freshness/LocalFsResolver.js.map +1 -1
- package/dist/cjs/utils/CommandOutputDistiller.d.ts +10 -0
- package/dist/cjs/utils/CommandOutputDistiller.d.ts.map +1 -1
- package/dist/cjs/utils/CommandOutputDistiller.js +40 -2
- package/dist/cjs/utils/CommandOutputDistiller.js.map +1 -1
- package/dist/cjs/utils/ContextSqueezer.d.ts +13 -1
- package/dist/cjs/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/cjs/utils/ContextSqueezer.js +176 -3
- package/dist/cjs/utils/ContextSqueezer.js.map +1 -1
- package/dist/cjs/utils/FixCapture.d.ts.map +1 -1
- package/dist/cjs/utils/FixCapture.js +56 -0
- package/dist/cjs/utils/FixCapture.js.map +1 -1
- package/dist/cjs/utils/LineNumberMap.d.ts.map +1 -1
- package/dist/cjs/utils/LineNumberMap.js +27 -0
- package/dist/cjs/utils/LineNumberMap.js.map +1 -1
- package/dist/cjs/utils/PatchMatcher.d.ts.map +1 -1
- package/dist/cjs/utils/PatchMatcher.js +26 -0
- package/dist/cjs/utils/PatchMatcher.js.map +1 -1
- package/dist/cjs/utils/ProLicense.d.ts +2 -0
- package/dist/cjs/utils/ProLicense.d.ts.map +1 -0
- package/dist/cjs/utils/ProLicense.js +31 -0
- package/dist/cjs/utils/ProLicense.js.map +1 -0
- package/dist/cjs/utils/RevivalThrottle.d.ts +9 -0
- package/dist/cjs/utils/RevivalThrottle.d.ts.map +1 -0
- package/dist/cjs/utils/RevivalThrottle.js +25 -0
- package/dist/cjs/utils/RevivalThrottle.js.map +1 -0
- package/dist/cjs/utils/SavingsLedger.d.ts +58 -18
- package/dist/cjs/utils/SavingsLedger.d.ts.map +1 -1
- package/dist/cjs/utils/SavingsLedger.js +332 -179
- package/dist/cjs/utils/SavingsLedger.js.map +1 -1
- package/dist/cjs/utils/SearchCache.d.ts +2 -2
- package/dist/cjs/utils/SearchCache.d.ts.map +1 -1
- package/dist/cjs/utils/SearchCache.js +8 -6
- package/dist/cjs/utils/SearchCache.js.map +1 -1
- package/dist/cjs/utils/SessionCapture.d.ts +65 -0
- package/dist/cjs/utils/SessionCapture.d.ts.map +1 -0
- package/dist/cjs/utils/SessionCapture.js +339 -0
- package/dist/cjs/utils/SessionCapture.js.map +1 -0
- package/dist/cjs/utils/StaleDelta.d.ts +2 -0
- package/dist/cjs/utils/StaleDelta.d.ts.map +1 -0
- package/dist/cjs/utils/StaleDelta.js +60 -0
- package/dist/cjs/utils/StaleDelta.js.map +1 -0
- package/dist/cjs/utils/TokenBudgetedReader.d.ts.map +1 -1
- package/dist/cjs/utils/TokenBudgetedReader.js +56 -15
- package/dist/cjs/utils/TokenBudgetedReader.js.map +1 -1
- package/dist/cjs/utils/WorkspaceSearch.d.ts +8 -1
- package/dist/cjs/utils/WorkspaceSearch.d.ts.map +1 -1
- package/dist/cjs/utils/WorkspaceSearch.js +75 -5
- package/dist/cjs/utils/WorkspaceSearch.js.map +1 -1
- package/dist/cjs/utils/reportSavings.d.ts +3 -0
- package/dist/cjs/utils/reportSavings.d.ts.map +1 -1
- package/dist/cjs/utils/reportSavings.js +44 -5
- package/dist/cjs/utils/reportSavings.js.map +1 -1
- package/dist/esm/cli/hostHooks.d.ts +14 -1
- package/dist/esm/cli/hostHooks.d.ts.map +1 -1
- package/dist/esm/cli/hostHooks.js +52 -5
- package/dist/esm/cli/hostHooks.js.map +1 -1
- package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/esm/cli/lemma-proxy.js +30 -11
- package/dist/esm/cli/lemma-proxy.js.map +1 -1
- package/dist/esm/contracts/evidence.d.ts +8 -1
- package/dist/esm/contracts/evidence.d.ts.map +1 -1
- package/dist/esm/mcp/index.js +20 -1
- package/dist/esm/mcp/index.js.map +1 -1
- package/dist/esm/mcp/prompts.d.ts +1 -1
- package/dist/esm/mcp/prompts.d.ts.map +1 -1
- package/dist/esm/mcp/prompts.js +6 -16
- package/dist/esm/mcp/prompts.js.map +1 -1
- package/dist/esm/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/esm/mcp/tool-profiles.js +8 -4
- package/dist/esm/mcp/tool-profiles.js.map +1 -1
- package/dist/esm/mcp/tools/context-tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools/context-tools.js +21 -17
- package/dist/esm/mcp/tools/context-tools.js.map +1 -1
- package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
- package/dist/esm/mcp/tools/memory.js +26 -5
- package/dist/esm/mcp/tools/memory.js.map +1 -1
- package/dist/esm/mcp/tools/workspace.d.ts.map +1 -1
- package/dist/esm/mcp/tools/workspace.js +98 -55
- package/dist/esm/mcp/tools/workspace.js.map +1 -1
- package/dist/esm/mcp/tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools.js +94 -33
- package/dist/esm/mcp/tools.js.map +1 -1
- package/dist/esm/mcp/utils.d.ts.map +1 -1
- package/dist/esm/mcp/utils.js +6 -1
- package/dist/esm/mcp/utils.js.map +1 -1
- package/dist/esm/mcp/workspaceShared.d.ts.map +1 -1
- package/dist/esm/mcp/workspaceShared.js +14 -9
- package/dist/esm/mcp/workspaceShared.js.map +1 -1
- package/dist/esm/proxy/KeyManager.d.ts +10 -0
- package/dist/esm/proxy/KeyManager.d.ts.map +1 -1
- package/dist/esm/proxy/KeyManager.js +43 -6
- package/dist/esm/proxy/KeyManager.js.map +1 -1
- package/dist/esm/security/SemanticScrubber.d.ts.map +1 -1
- package/dist/esm/security/SemanticScrubber.js +19 -1
- package/dist/esm/security/SemanticScrubber.js.map +1 -1
- package/dist/esm/subconscious/HostRecall.d.ts +7 -5
- package/dist/esm/subconscious/HostRecall.d.ts.map +1 -1
- package/dist/esm/subconscious/HostRecall.js +115 -14
- package/dist/esm/subconscious/HostRecall.js.map +1 -1
- package/dist/esm/subconscious/TheBrainV2.d.ts +6 -1
- package/dist/esm/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/esm/subconscious/TheBrainV2.js +21 -9
- package/dist/esm/subconscious/TheBrainV2.js.map +1 -1
- package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts +3 -0
- package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
- package/dist/esm/subconscious/freshness/LocalFsResolver.js +32 -14
- package/dist/esm/subconscious/freshness/LocalFsResolver.js.map +1 -1
- package/dist/esm/utils/CommandOutputDistiller.d.ts +10 -0
- package/dist/esm/utils/CommandOutputDistiller.d.ts.map +1 -1
- package/dist/esm/utils/CommandOutputDistiller.js +39 -2
- package/dist/esm/utils/CommandOutputDistiller.js.map +1 -1
- package/dist/esm/utils/ContextSqueezer.d.ts +13 -1
- package/dist/esm/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/esm/utils/ContextSqueezer.js +175 -3
- package/dist/esm/utils/ContextSqueezer.js.map +1 -1
- package/dist/esm/utils/FixCapture.d.ts.map +1 -1
- package/dist/esm/utils/FixCapture.js +56 -0
- package/dist/esm/utils/FixCapture.js.map +1 -1
- package/dist/esm/utils/LineNumberMap.d.ts.map +1 -1
- package/dist/esm/utils/LineNumberMap.js +27 -0
- package/dist/esm/utils/LineNumberMap.js.map +1 -1
- package/dist/esm/utils/PatchMatcher.d.ts.map +1 -1
- package/dist/esm/utils/PatchMatcher.js +26 -0
- package/dist/esm/utils/PatchMatcher.js.map +1 -1
- package/dist/esm/utils/ProLicense.d.ts +2 -0
- package/dist/esm/utils/ProLicense.d.ts.map +1 -0
- package/dist/esm/utils/ProLicense.js +25 -0
- package/dist/esm/utils/ProLicense.js.map +1 -0
- package/dist/esm/utils/RevivalThrottle.d.ts +9 -0
- package/dist/esm/utils/RevivalThrottle.d.ts.map +1 -0
- package/dist/esm/utils/RevivalThrottle.js +22 -0
- package/dist/esm/utils/RevivalThrottle.js.map +1 -0
- package/dist/esm/utils/SavingsLedger.d.ts +58 -18
- package/dist/esm/utils/SavingsLedger.d.ts.map +1 -1
- package/dist/esm/utils/SavingsLedger.js +332 -179
- package/dist/esm/utils/SavingsLedger.js.map +1 -1
- package/dist/esm/utils/SearchCache.d.ts +2 -2
- package/dist/esm/utils/SearchCache.d.ts.map +1 -1
- package/dist/esm/utils/SearchCache.js +8 -6
- package/dist/esm/utils/SearchCache.js.map +1 -1
- package/dist/esm/utils/SessionCapture.d.ts +65 -0
- package/dist/esm/utils/SessionCapture.d.ts.map +1 -0
- package/dist/esm/utils/SessionCapture.js +328 -0
- package/dist/esm/utils/SessionCapture.js.map +1 -0
- package/dist/esm/utils/StaleDelta.d.ts +2 -0
- package/dist/esm/utils/StaleDelta.d.ts.map +1 -0
- package/dist/esm/utils/StaleDelta.js +54 -0
- package/dist/esm/utils/StaleDelta.js.map +1 -0
- package/dist/esm/utils/TokenBudgetedReader.d.ts.map +1 -1
- package/dist/esm/utils/TokenBudgetedReader.js +56 -15
- package/dist/esm/utils/TokenBudgetedReader.js.map +1 -1
- package/dist/esm/utils/WorkspaceSearch.d.ts +8 -1
- package/dist/esm/utils/WorkspaceSearch.d.ts.map +1 -1
- package/dist/esm/utils/WorkspaceSearch.js +74 -5
- package/dist/esm/utils/WorkspaceSearch.js.map +1 -1
- package/dist/esm/utils/reportSavings.d.ts +3 -0
- package/dist/esm/utils/reportSavings.d.ts.map +1 -1
- package/dist/esm/utils/reportSavings.js +42 -5
- package/dist/esm/utils/reportSavings.js.map +1 -1
- package/package.json +4 -4
- package/dashboard/dist/assets/index-DzL_Zu3m.js +0 -452
- package/dist/cjs/examples/basic-usage.d.ts +0 -12
- package/dist/cjs/examples/basic-usage.d.ts.map +0 -1
- package/dist/cjs/examples/basic-usage.js +0 -128
- package/dist/cjs/examples/basic-usage.js.map +0 -1
- package/dist/esm/examples/basic-usage.d.ts +0 -12
- package/dist/esm/examples/basic-usage.d.ts.map +0 -1
- package/dist/esm/examples/basic-usage.js +0 -126
- package/dist/esm/examples/basic-usage.js.map +0 -1
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Basic Usage Example for Subconscious Semantic Engine
|
|
3
|
-
*
|
|
4
|
-
* This example demonstrates:
|
|
5
|
-
* 1. Initializing the engine
|
|
6
|
-
* 2. Intercepting tasks for cache checks
|
|
7
|
-
* 3. Storing results for future caching
|
|
8
|
-
* 4. Monitoring metrics
|
|
9
|
-
*/
|
|
10
|
-
declare function main(): Promise<void>;
|
|
11
|
-
export { main };
|
|
12
|
-
//# sourceMappingURL=basic-usage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basic-usage.d.ts","sourceRoot":"","sources":["../../../src/examples/basic-usage.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,iBAAe,IAAI,kBA6HlB;AAWD,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Basic Usage Example for Subconscious Semantic Engine
|
|
4
|
-
*
|
|
5
|
-
* This example demonstrates:
|
|
6
|
-
* 1. Initializing the engine
|
|
7
|
-
* 2. Intercepting tasks for cache checks
|
|
8
|
-
* 3. Storing results for future caching
|
|
9
|
-
* 4. Monitoring metrics
|
|
10
|
-
*/
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.main = main;
|
|
13
|
-
const subconscious_1 = require("../subconscious");
|
|
14
|
-
async function main() {
|
|
15
|
-
console.log('=== Subconscious Engine Demo ===\n');
|
|
16
|
-
// 1. Create and initialize the engine
|
|
17
|
-
const engine = new subconscious_1.SubconsciousEngine({
|
|
18
|
-
chromaUrl: 'http://localhost:8000',
|
|
19
|
-
ollamaUrl: 'http://localhost:11434',
|
|
20
|
-
model: 'llama3',
|
|
21
|
-
threshold: 0.95,
|
|
22
|
-
enableBackgroundVectorization: true,
|
|
23
|
-
});
|
|
24
|
-
// Listen to events
|
|
25
|
-
engine.on('cacheHit', (data) => {
|
|
26
|
-
console.log(`🎯 Cache Hit! Similarity: ${data.similarity?.toFixed(4)}`);
|
|
27
|
-
});
|
|
28
|
-
engine.on('cacheMiss', (data) => {
|
|
29
|
-
console.log(`❌ Cache Miss for task: ${data.taskId}`);
|
|
30
|
-
});
|
|
31
|
-
engine.on('backgroundVectorized', (data) => {
|
|
32
|
-
console.log(`📦 Background vectorized: ${data.taskId}`);
|
|
33
|
-
});
|
|
34
|
-
try {
|
|
35
|
-
await engine.initialize();
|
|
36
|
-
console.log('✓ Engine initialized\n');
|
|
37
|
-
// 2. Simulate first task (will be a cache miss)
|
|
38
|
-
console.log('--- Task 1: First Request ---');
|
|
39
|
-
const task1 = {
|
|
40
|
-
id: 'task-001',
|
|
41
|
-
description: 'Calculate the sum of numbers from 1 to 100',
|
|
42
|
-
metadata: { agent: 'math-agent', priority: 'high' },
|
|
43
|
-
};
|
|
44
|
-
let cacheResult = await engine.interceptTask(task1);
|
|
45
|
-
if (!cacheResult.hit) {
|
|
46
|
-
// Simulate agent processing
|
|
47
|
-
console.log('⚙️ Processing with agent...');
|
|
48
|
-
await sleep(1000); // Simulate 1 second of processing
|
|
49
|
-
const result = { answer: 5050, computation_time: '1000ms' };
|
|
50
|
-
// Store the result
|
|
51
|
-
await engine.storeResult(task1, result);
|
|
52
|
-
console.log('✓ Result stored\n');
|
|
53
|
-
}
|
|
54
|
-
// 3. Simulate similar task (should be a cache hit)
|
|
55
|
-
console.log('--- Task 2: Similar Request ---');
|
|
56
|
-
const task2 = {
|
|
57
|
-
id: 'task-002',
|
|
58
|
-
description: 'What is the sum of integers from 1 to 100?',
|
|
59
|
-
metadata: { agent: 'math-agent', priority: 'medium' },
|
|
60
|
-
};
|
|
61
|
-
cacheResult = await engine.interceptTask(task2);
|
|
62
|
-
if (cacheResult.hit) {
|
|
63
|
-
console.log(`✓ Returned cached result in ${cacheResult.latencyMs}ms`);
|
|
64
|
-
console.log(`📊 Result:`, cacheResult.result);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
console.log('Processing with agent...');
|
|
68
|
-
await sleep(1000);
|
|
69
|
-
const result = { answer: 5050, computation_time: '1000ms' };
|
|
70
|
-
await engine.storeResult(task2, result);
|
|
71
|
-
}
|
|
72
|
-
// 4. Simulate different task (will be a cache miss)
|
|
73
|
-
console.log('\n--- Task 3: Different Request ---');
|
|
74
|
-
const task3 = {
|
|
75
|
-
id: 'task-003',
|
|
76
|
-
description: 'Generate a random UUID',
|
|
77
|
-
metadata: { agent: 'utility-agent' },
|
|
78
|
-
};
|
|
79
|
-
cacheResult = await engine.interceptTask(task3);
|
|
80
|
-
if (!cacheResult.hit) {
|
|
81
|
-
console.log('⚙️ Processing with agent...');
|
|
82
|
-
await sleep(500);
|
|
83
|
-
const result = { uuid: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' };
|
|
84
|
-
await engine.storeResult(task3, result);
|
|
85
|
-
console.log('✓ Result stored\n');
|
|
86
|
-
}
|
|
87
|
-
// 5. Wait for background vectorization to complete
|
|
88
|
-
console.log('--- Waiting for background processing ---');
|
|
89
|
-
await sleep(2000);
|
|
90
|
-
// 6. Display metrics
|
|
91
|
-
console.log('\n--- Engine Metrics ---');
|
|
92
|
-
const metrics = await engine.getMetrics();
|
|
93
|
-
console.log(`Total Tasks: ${metrics.totalTasks}`);
|
|
94
|
-
console.log(`Cache Hits: ${metrics.cacheHits}`);
|
|
95
|
-
console.log(`Cache Misses: ${metrics.cacheMisses}`);
|
|
96
|
-
console.log(`Hit Rate: ${(metrics.hitRate * 100).toFixed(2)}%`);
|
|
97
|
-
console.log(`Avg Cache Latency: ${metrics.avgCacheLatencyMs}ms`);
|
|
98
|
-
console.log(`Avg Miss Latency: ${metrics.avgMissLatencyMs}ms`);
|
|
99
|
-
console.log(`Total Cached Tasks: ${metrics.totalCachedTasks}`);
|
|
100
|
-
console.log(`Background Queue Size: ${metrics.backgroundQueueSize}`);
|
|
101
|
-
// 7. Demonstrate cost savings
|
|
102
|
-
console.log('\n--- Cost Savings Analysis ---');
|
|
103
|
-
const avgAgentLatency = 1000; // 1 second per agent call
|
|
104
|
-
const timeSaved = metrics.cacheHits * avgAgentLatency;
|
|
105
|
-
const costPerToken = 0.0001; // Example: $0.0001 per token
|
|
106
|
-
const tokensPerRequest = 500; // Example: 500 tokens per request
|
|
107
|
-
const costSaved = metrics.cacheHits * tokensPerRequest * costPerToken;
|
|
108
|
-
console.log(`Time Saved: ${timeSaved}ms (${(timeSaved / 1000).toFixed(2)}s)`);
|
|
109
|
-
console.log(`Estimated Cost Saved: $${costSaved.toFixed(4)}`);
|
|
110
|
-
console.log(`Latency Reduction: ${((1 - metrics.avgCacheLatencyMs / avgAgentLatency) * 100).toFixed(2)}%`);
|
|
111
|
-
// 8. Shutdown gracefully
|
|
112
|
-
console.log('\n--- Shutting Down ---');
|
|
113
|
-
await engine.shutdown();
|
|
114
|
-
console.log('✓ Engine shutdown complete');
|
|
115
|
-
}
|
|
116
|
-
catch (error) {
|
|
117
|
-
console.error('Error:', error);
|
|
118
|
-
process.exit(1);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
function sleep(ms) {
|
|
122
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
123
|
-
}
|
|
124
|
-
// Run the demo
|
|
125
|
-
if (require.main === module) {
|
|
126
|
-
main().catch(console.error);
|
|
127
|
-
}
|
|
128
|
-
//# sourceMappingURL=basic-usage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basic-usage.js","sourceRoot":"","sources":["../../../src/examples/basic-usage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Basic Usage Example for Subconscious Semantic Engine
|
|
3
|
-
*
|
|
4
|
-
* This example demonstrates:
|
|
5
|
-
* 1. Initializing the engine
|
|
6
|
-
* 2. Intercepting tasks for cache checks
|
|
7
|
-
* 3. Storing results for future caching
|
|
8
|
-
* 4. Monitoring metrics
|
|
9
|
-
*/
|
|
10
|
-
declare function main(): Promise<void>;
|
|
11
|
-
export { main };
|
|
12
|
-
//# sourceMappingURL=basic-usage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basic-usage.d.ts","sourceRoot":"","sources":["../../../src/examples/basic-usage.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,iBAAe,IAAI,kBA6HlB;AAWD,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Basic Usage Example for Subconscious Semantic Engine
|
|
3
|
-
*
|
|
4
|
-
* This example demonstrates:
|
|
5
|
-
* 1. Initializing the engine
|
|
6
|
-
* 2. Intercepting tasks for cache checks
|
|
7
|
-
* 3. Storing results for future caching
|
|
8
|
-
* 4. Monitoring metrics
|
|
9
|
-
*/
|
|
10
|
-
import { SubconsciousEngine } from '../subconscious/index.js';
|
|
11
|
-
async function main() {
|
|
12
|
-
console.log('=== Subconscious Engine Demo ===\n');
|
|
13
|
-
// 1. Create and initialize the engine
|
|
14
|
-
const engine = new SubconsciousEngine({
|
|
15
|
-
chromaUrl: 'http://localhost:8000',
|
|
16
|
-
ollamaUrl: 'http://localhost:11434',
|
|
17
|
-
model: 'llama3',
|
|
18
|
-
threshold: 0.95,
|
|
19
|
-
enableBackgroundVectorization: true,
|
|
20
|
-
});
|
|
21
|
-
// Listen to events
|
|
22
|
-
engine.on('cacheHit', (data) => {
|
|
23
|
-
console.log(`🎯 Cache Hit! Similarity: ${data.similarity?.toFixed(4)}`);
|
|
24
|
-
});
|
|
25
|
-
engine.on('cacheMiss', (data) => {
|
|
26
|
-
console.log(`❌ Cache Miss for task: ${data.taskId}`);
|
|
27
|
-
});
|
|
28
|
-
engine.on('backgroundVectorized', (data) => {
|
|
29
|
-
console.log(`📦 Background vectorized: ${data.taskId}`);
|
|
30
|
-
});
|
|
31
|
-
try {
|
|
32
|
-
await engine.initialize();
|
|
33
|
-
console.log('✓ Engine initialized\n');
|
|
34
|
-
// 2. Simulate first task (will be a cache miss)
|
|
35
|
-
console.log('--- Task 1: First Request ---');
|
|
36
|
-
const task1 = {
|
|
37
|
-
id: 'task-001',
|
|
38
|
-
description: 'Calculate the sum of numbers from 1 to 100',
|
|
39
|
-
metadata: { agent: 'math-agent', priority: 'high' },
|
|
40
|
-
};
|
|
41
|
-
let cacheResult = await engine.interceptTask(task1);
|
|
42
|
-
if (!cacheResult.hit) {
|
|
43
|
-
// Simulate agent processing
|
|
44
|
-
console.log('⚙️ Processing with agent...');
|
|
45
|
-
await sleep(1000); // Simulate 1 second of processing
|
|
46
|
-
const result = { answer: 5050, computation_time: '1000ms' };
|
|
47
|
-
// Store the result
|
|
48
|
-
await engine.storeResult(task1, result);
|
|
49
|
-
console.log('✓ Result stored\n');
|
|
50
|
-
}
|
|
51
|
-
// 3. Simulate similar task (should be a cache hit)
|
|
52
|
-
console.log('--- Task 2: Similar Request ---');
|
|
53
|
-
const task2 = {
|
|
54
|
-
id: 'task-002',
|
|
55
|
-
description: 'What is the sum of integers from 1 to 100?',
|
|
56
|
-
metadata: { agent: 'math-agent', priority: 'medium' },
|
|
57
|
-
};
|
|
58
|
-
cacheResult = await engine.interceptTask(task2);
|
|
59
|
-
if (cacheResult.hit) {
|
|
60
|
-
console.log(`✓ Returned cached result in ${cacheResult.latencyMs}ms`);
|
|
61
|
-
console.log(`📊 Result:`, cacheResult.result);
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
console.log('Processing with agent...');
|
|
65
|
-
await sleep(1000);
|
|
66
|
-
const result = { answer: 5050, computation_time: '1000ms' };
|
|
67
|
-
await engine.storeResult(task2, result);
|
|
68
|
-
}
|
|
69
|
-
// 4. Simulate different task (will be a cache miss)
|
|
70
|
-
console.log('\n--- Task 3: Different Request ---');
|
|
71
|
-
const task3 = {
|
|
72
|
-
id: 'task-003',
|
|
73
|
-
description: 'Generate a random UUID',
|
|
74
|
-
metadata: { agent: 'utility-agent' },
|
|
75
|
-
};
|
|
76
|
-
cacheResult = await engine.interceptTask(task3);
|
|
77
|
-
if (!cacheResult.hit) {
|
|
78
|
-
console.log('⚙️ Processing with agent...');
|
|
79
|
-
await sleep(500);
|
|
80
|
-
const result = { uuid: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' };
|
|
81
|
-
await engine.storeResult(task3, result);
|
|
82
|
-
console.log('✓ Result stored\n');
|
|
83
|
-
}
|
|
84
|
-
// 5. Wait for background vectorization to complete
|
|
85
|
-
console.log('--- Waiting for background processing ---');
|
|
86
|
-
await sleep(2000);
|
|
87
|
-
// 6. Display metrics
|
|
88
|
-
console.log('\n--- Engine Metrics ---');
|
|
89
|
-
const metrics = await engine.getMetrics();
|
|
90
|
-
console.log(`Total Tasks: ${metrics.totalTasks}`);
|
|
91
|
-
console.log(`Cache Hits: ${metrics.cacheHits}`);
|
|
92
|
-
console.log(`Cache Misses: ${metrics.cacheMisses}`);
|
|
93
|
-
console.log(`Hit Rate: ${(metrics.hitRate * 100).toFixed(2)}%`);
|
|
94
|
-
console.log(`Avg Cache Latency: ${metrics.avgCacheLatencyMs}ms`);
|
|
95
|
-
console.log(`Avg Miss Latency: ${metrics.avgMissLatencyMs}ms`);
|
|
96
|
-
console.log(`Total Cached Tasks: ${metrics.totalCachedTasks}`);
|
|
97
|
-
console.log(`Background Queue Size: ${metrics.backgroundQueueSize}`);
|
|
98
|
-
// 7. Demonstrate cost savings
|
|
99
|
-
console.log('\n--- Cost Savings Analysis ---');
|
|
100
|
-
const avgAgentLatency = 1000; // 1 second per agent call
|
|
101
|
-
const timeSaved = metrics.cacheHits * avgAgentLatency;
|
|
102
|
-
const costPerToken = 0.0001; // Example: $0.0001 per token
|
|
103
|
-
const tokensPerRequest = 500; // Example: 500 tokens per request
|
|
104
|
-
const costSaved = metrics.cacheHits * tokensPerRequest * costPerToken;
|
|
105
|
-
console.log(`Time Saved: ${timeSaved}ms (${(timeSaved / 1000).toFixed(2)}s)`);
|
|
106
|
-
console.log(`Estimated Cost Saved: $${costSaved.toFixed(4)}`);
|
|
107
|
-
console.log(`Latency Reduction: ${((1 - metrics.avgCacheLatencyMs / avgAgentLatency) * 100).toFixed(2)}%`);
|
|
108
|
-
// 8. Shutdown gracefully
|
|
109
|
-
console.log('\n--- Shutting Down ---');
|
|
110
|
-
await engine.shutdown();
|
|
111
|
-
console.log('✓ Engine shutdown complete');
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
console.error('Error:', error);
|
|
115
|
-
process.exit(1);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
function sleep(ms) {
|
|
119
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
120
|
-
}
|
|
121
|
-
// Run the demo
|
|
122
|
-
if (require.main === module) {
|
|
123
|
-
main().catch(console.error);
|
|
124
|
-
}
|
|
125
|
-
export { main };
|
|
126
|
-
//# sourceMappingURL=basic-usage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basic-usage.js","sourceRoot":"","sources":["../../../src/examples/basic-usage.ts"],"names":[],"mappings":"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"}
|