adaptive-memory-multi-model-router 1.2.2 → 1.3.1
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/LICENSE +21 -0
- package/README.md +146 -66
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/integrations/airtable.js +20 -0
- package/dist/integrations/discord.js +18 -0
- package/dist/integrations/github.js +23 -0
- package/dist/integrations/gmail.js +19 -0
- package/dist/integrations/google-calendar.js +18 -0
- package/dist/integrations/index.js +61 -0
- package/dist/integrations/jira.js +21 -0
- package/dist/integrations/linear.js +19 -0
- package/dist/integrations/notion.js +19 -0
- package/dist/integrations/slack.js +18 -0
- package/dist/integrations/telegram.js +19 -0
- package/dist/providers/registry.js +7 -3
- package/docs/ARCHITECTURAL-IMPROVEMENTS-2025.md +1391 -0
- package/docs/ARCHITECTURAL-IMPROVEMENTS-REVISED-2025.md +1051 -0
- package/docs/CONFIGURATION.md +476 -0
- package/docs/COUNCIL_DECISION.json +308 -0
- package/docs/COUNCIL_SUMMARY.md +265 -0
- package/docs/COUNCIL_V2.2_DECISION.md +416 -0
- package/docs/IMPROVEMENT_ROADMAP.md +515 -0
- package/docs/LLM_COUNCIL_DECISION.md +508 -0
- package/docs/QUICK_START_VISIBILITY.md +782 -0
- package/docs/REDDIT_GAP_ANALYSIS.md +299 -0
- package/docs/RESEARCH_BACKED_IMPROVEMENTS.md +1180 -0
- package/docs/TMLPD_QNA.md +751 -0
- package/docs/TMLPD_V2.1_COMPLETE.md +763 -0
- package/docs/TMLPD_V2.2_RESEARCH_ROADMAP.md +754 -0
- package/docs/V2.2_IMPLEMENTATION_COMPLETE.md +446 -0
- package/docs/V2_IMPLEMENTATION_GUIDE.md +388 -0
- package/docs/VISIBILITY_ADOPTION_PLAN.md +1005 -0
- package/docs/launch-content/LAUNCH_EXECUTION_CHECKLIST.md +421 -0
- package/docs/launch-content/README.md +457 -0
- package/docs/launch-content/assets/cost_comparison_100_tasks.png +0 -0
- package/docs/launch-content/assets/cumulative_savings.png +0 -0
- package/docs/launch-content/assets/parallel_speedup.png +0 -0
- package/docs/launch-content/assets/provider_pricing_comparison.png +0 -0
- package/docs/launch-content/assets/task_breakdown_comparison.png +0 -0
- package/docs/launch-content/generate_charts.py +313 -0
- package/docs/launch-content/hn_show_post.md +139 -0
- package/docs/launch-content/partner_outreach_templates.md +745 -0
- package/docs/launch-content/reddit_posts.md +467 -0
- package/docs/launch-content/twitter_thread.txt +460 -0
- package/examples/QUICKSTART.md +1 -1
- package/openclaw-alexa-bridge/ALL_REMAINING_FIXES_PLAN.md +313 -0
- package/openclaw-alexa-bridge/REMAINING_FIXES_SUMMARY.md +277 -0
- package/openclaw-alexa-bridge/src/alexa_handler_no_tmlpd.js +1234 -0
- package/openclaw-alexa-bridge/test_fixes.js +77 -0
- package/package.json +120 -29
- package/package.json.tmp +0 -0
- package/qna/TMLPD_QNA.md +3 -3
- package/skill/SKILL.md +2 -2
- package/src/__tests__/integration/tmpld_integration.test.py +540 -0
- package/src/agents/skill_enhanced_agent.py +318 -0
- package/src/memory/__init__.py +15 -0
- package/src/memory/agentic_memory.py +353 -0
- package/src/memory/semantic_memory.py +444 -0
- package/src/memory/simple_memory.py +466 -0
- package/src/memory/working_memory.py +447 -0
- package/src/orchestration/__init__.py +52 -0
- package/src/orchestration/execution_engine.py +353 -0
- package/src/orchestration/halo_orchestrator.py +367 -0
- package/src/orchestration/mcts_workflow.py +498 -0
- package/src/orchestration/role_assigner.py +473 -0
- package/src/orchestration/task_planner.py +522 -0
- package/src/providers/__init__.py +67 -0
- package/src/providers/anthropic.py +304 -0
- package/src/providers/base.py +241 -0
- package/src/providers/cerebras.py +373 -0
- package/src/providers/registry.py +476 -0
- package/src/routing/__init__.py +30 -0
- package/src/routing/universal_router.py +621 -0
- package/src/skills/TMLPD-QUICKREF.md +210 -0
- package/src/skills/TMLPD-SETUP-SUMMARY.md +157 -0
- package/src/skills/TMLPD.md +540 -0
- package/src/skills/__tests__/skill_manager.test.ts +328 -0
- package/src/skills/skill_manager.py +385 -0
- package/src/skills/test-tmlpd.sh +108 -0
- package/src/skills/tmlpd-category.yaml +67 -0
- package/src/skills/tmlpd-monitoring.yaml +188 -0
- package/src/skills/tmlpd-phase.yaml +132 -0
- package/src/state/__init__.py +17 -0
- package/src/state/simple_checkpoint.py +508 -0
- package/src/tmlpd_agent.py +464 -0
- package/src/tmpld_v2.py +427 -0
- package/src/workflows/__init__.py +18 -0
- package/src/workflows/advanced_difficulty_classifier.py +377 -0
- package/src/workflows/chaining_executor.py +417 -0
- package/src/workflows/difficulty_integration.py +209 -0
- package/src/workflows/orchestrator.py +469 -0
- package/src/workflows/orchestrator_executor.py +456 -0
- package/src/workflows/parallelization_executor.py +382 -0
- package/src/workflows/router.py +311 -0
- package/test_integration_simple.py +86 -0
- package/test_mcts_workflow.py +150 -0
- package/test_templd_integration.py +262 -0
- package/test_universal_router.py +275 -0
- package/tmlpd-pi-extension/README.md +36 -0
- package/tmlpd-pi-extension/dist/cache/prefixCache.d.ts +114 -0
- package/tmlpd-pi-extension/dist/cache/prefixCache.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/cache/prefixCache.js +285 -0
- package/tmlpd-pi-extension/dist/cache/prefixCache.js.map +1 -0
- package/tmlpd-pi-extension/dist/cache/responseCache.d.ts +58 -0
- package/tmlpd-pi-extension/dist/cache/responseCache.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/cache/responseCache.js +153 -0
- package/tmlpd-pi-extension/dist/cache/responseCache.js.map +1 -0
- package/tmlpd-pi-extension/dist/cli.js +59 -0
- package/tmlpd-pi-extension/dist/cost/costTracker.d.ts +95 -0
- package/tmlpd-pi-extension/dist/cost/costTracker.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/cost/costTracker.js +240 -0
- package/tmlpd-pi-extension/dist/cost/costTracker.js.map +1 -0
- package/tmlpd-pi-extension/dist/index.d.ts +723 -0
- package/tmlpd-pi-extension/dist/index.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/index.js +239 -0
- package/tmlpd-pi-extension/dist/index.js.map +1 -0
- package/tmlpd-pi-extension/dist/memory/episodicMemory.d.ts +82 -0
- package/tmlpd-pi-extension/dist/memory/episodicMemory.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/memory/episodicMemory.js +145 -0
- package/tmlpd-pi-extension/dist/memory/episodicMemory.js.map +1 -0
- package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.d.ts +102 -0
- package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.js +207 -0
- package/tmlpd-pi-extension/dist/orchestration/haloOrchestrator.js.map +1 -0
- package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.d.ts +85 -0
- package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.js +210 -0
- package/tmlpd-pi-extension/dist/orchestration/mctsWorkflow.js.map +1 -0
- package/tmlpd-pi-extension/dist/providers/localProvider.d.ts +102 -0
- package/tmlpd-pi-extension/dist/providers/localProvider.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/providers/localProvider.js +338 -0
- package/tmlpd-pi-extension/dist/providers/localProvider.js.map +1 -0
- package/tmlpd-pi-extension/dist/providers/registry.d.ts +55 -0
- package/tmlpd-pi-extension/dist/providers/registry.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/providers/registry.js +138 -0
- package/tmlpd-pi-extension/dist/providers/registry.js.map +1 -0
- package/tmlpd-pi-extension/dist/routing/advancedRouter.d.ts +68 -0
- package/tmlpd-pi-extension/dist/routing/advancedRouter.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/routing/advancedRouter.js +332 -0
- package/tmlpd-pi-extension/dist/routing/advancedRouter.js.map +1 -0
- package/tmlpd-pi-extension/dist/tools/tmlpdTools.d.ts +101 -0
- package/tmlpd-pi-extension/dist/tools/tmlpdTools.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/tools/tmlpdTools.js +368 -0
- package/tmlpd-pi-extension/dist/tools/tmlpdTools.js.map +1 -0
- package/tmlpd-pi-extension/dist/utils/batchProcessor.d.ts +96 -0
- package/tmlpd-pi-extension/dist/utils/batchProcessor.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/utils/batchProcessor.js +170 -0
- package/tmlpd-pi-extension/dist/utils/batchProcessor.js.map +1 -0
- package/tmlpd-pi-extension/dist/utils/compression.d.ts +61 -0
- package/tmlpd-pi-extension/dist/utils/compression.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/utils/compression.js +281 -0
- package/tmlpd-pi-extension/dist/utils/compression.js.map +1 -0
- package/tmlpd-pi-extension/dist/utils/reliability.d.ts +74 -0
- package/tmlpd-pi-extension/dist/utils/reliability.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/utils/reliability.js +177 -0
- package/tmlpd-pi-extension/dist/utils/reliability.js.map +1 -0
- package/tmlpd-pi-extension/dist/utils/speculativeDecoding.d.ts +117 -0
- package/tmlpd-pi-extension/dist/utils/speculativeDecoding.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/utils/speculativeDecoding.js +246 -0
- package/tmlpd-pi-extension/dist/utils/speculativeDecoding.js.map +1 -0
- package/tmlpd-pi-extension/dist/utils/tokenUtils.d.ts +50 -0
- package/tmlpd-pi-extension/dist/utils/tokenUtils.d.ts.map +1 -0
- package/tmlpd-pi-extension/dist/utils/tokenUtils.js +124 -0
- package/tmlpd-pi-extension/dist/utils/tokenUtils.js.map +1 -0
- package/tmlpd-pi-extension/examples/QUICKSTART.md +183 -0
- package/tmlpd-pi-extension/package-lock.json +75 -0
- package/tmlpd-pi-extension/package.json +172 -0
- package/tmlpd-pi-extension/python/examples.py +53 -0
- package/tmlpd-pi-extension/python/integrations.py +330 -0
- package/tmlpd-pi-extension/python/setup.py +28 -0
- package/tmlpd-pi-extension/python/tmlpd.py +369 -0
- package/tmlpd-pi-extension/qna/REDDIT_GAP_ANALYSIS.md +299 -0
- package/tmlpd-pi-extension/qna/TMLPD_QNA.md +751 -0
- package/tmlpd-pi-extension/skill/SKILL.md +238 -0
- package/{src → tmlpd-pi-extension/src}/index.ts +1 -1
- package/tmlpd-pi-extension/tsconfig.json +18 -0
- package/demo/research-demo.js +0 -266
- package/notebooks/quickstart.ipynb +0 -157
- package/rust/tmlpd.h +0 -268
- package/src/cache/prefixCache.ts +0 -365
- package/src/routing/advancedRouter.ts +0 -406
- package/src/utils/speculativeDecoding.ts +0 -344
- /package/{src → tmlpd-pi-extension/src}/cache/responseCache.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/cost/costTracker.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/memory/episodicMemory.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/orchestration/haloOrchestrator.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/orchestration/mctsWorkflow.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/providers/localProvider.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/providers/registry.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/tools/tmlpdTools.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/utils/batchProcessor.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/utils/compression.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/utils/reliability.ts +0 -0
- /package/{src → tmlpd-pi-extension/src}/utils/tokenUtils.ts +0 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TMLPD HALO Orchestrator Reference
|
|
4
|
+
*
|
|
5
|
+
* Hierarchical Autonomous Logic-Oriented Orchestration
|
|
6
|
+
*
|
|
7
|
+
* Reference implementation - for full features see TMLPD v2.x
|
|
8
|
+
*
|
|
9
|
+
* Full TMLPD includes:
|
|
10
|
+
* - 3-tier hierarchical planning
|
|
11
|
+
* - TaskPlanner: Decompose with dependencies
|
|
12
|
+
* - RoleAssigner: Specialized agent assignment
|
|
13
|
+
* - ExecutionEngine: Parallel with verification
|
|
14
|
+
* - 19.6% improvement on complex tasks
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.HALOOrchestrator = void 0;
|
|
18
|
+
const mctsWorkflow_1 = require("./mctsWorkflow");
|
|
19
|
+
const episodicMemory_1 = require("../memory/episodicMemory");
|
|
20
|
+
const DEFAULT_HALO_CONFIG = {
|
|
21
|
+
maxConcurrent: 3,
|
|
22
|
+
optimizationTarget: "balanced",
|
|
23
|
+
enableMCTS: false
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* HALO Orchestrator
|
|
27
|
+
*
|
|
28
|
+
* Hierarchical orchestration with 3 tiers:
|
|
29
|
+
* 1. Plan: Decompose task into subtasks with dependencies
|
|
30
|
+
* 2. Assign: Match subtasks to optimal agents
|
|
31
|
+
* 3. Execute: Run in parallel with result verification
|
|
32
|
+
*/
|
|
33
|
+
class HALOOrchestrator {
|
|
34
|
+
config;
|
|
35
|
+
memory;
|
|
36
|
+
mcts;
|
|
37
|
+
constructor(config = {}) {
|
|
38
|
+
this.config = { ...DEFAULT_HALO_CONFIG, ...config };
|
|
39
|
+
this.memory = new episodicMemory_1.EpisodicMemoryStore();
|
|
40
|
+
this.mcts = new mctsWorkflow_1.MCTSWorkflowOptimizer({ maxIterations: 30 });
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Execute task with HALO orchestration
|
|
44
|
+
*/
|
|
45
|
+
async execute(taskDescription, executeFn) {
|
|
46
|
+
// Phase 1: Plan - decompose task
|
|
47
|
+
const subtasks = this.decomposeTask(taskDescription);
|
|
48
|
+
// Check memory for similar successful strategies
|
|
49
|
+
const similar = this.memory.getSimilarTasks(taskDescription, 3);
|
|
50
|
+
// Phase 2: Assign - determine optimal agent assignments
|
|
51
|
+
const strategy = this.config.enableMCTS
|
|
52
|
+
? await this.optimizeWithMCTS(subtasks)
|
|
53
|
+
: this.quickAssign(subtasks);
|
|
54
|
+
// Phase 3: Execute - run with concurrency limit
|
|
55
|
+
const results = await this.executeParallel(subtasks, strategy, executeFn);
|
|
56
|
+
// Store in episodic memory
|
|
57
|
+
this.memory.store({
|
|
58
|
+
task: {
|
|
59
|
+
description: taskDescription,
|
|
60
|
+
type: this.classifyTask(taskDescription),
|
|
61
|
+
complexity: subtasks.length
|
|
62
|
+
},
|
|
63
|
+
result: {
|
|
64
|
+
success: results.every(r => r.success),
|
|
65
|
+
output: results.map(r => r.output).join("\n---\n"),
|
|
66
|
+
duration_ms: results.reduce((sum, r) => sum + r.duration_ms, 0)
|
|
67
|
+
},
|
|
68
|
+
agent: { id: "halo", model: "composite", provider: "multi" },
|
|
69
|
+
metadata: { strategy, subtaskCount: subtasks.length },
|
|
70
|
+
importance: subtasks.length > 5 ? 0.8 : 0.5
|
|
71
|
+
});
|
|
72
|
+
return {
|
|
73
|
+
success: results.every(r => r.success),
|
|
74
|
+
results,
|
|
75
|
+
strategy,
|
|
76
|
+
metadata: {
|
|
77
|
+
subtasks: subtasks.length,
|
|
78
|
+
optimizationTarget: this.config.optimizationTarget
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Decompose task into subtasks
|
|
84
|
+
*/
|
|
85
|
+
decomposeTask(taskDescription) {
|
|
86
|
+
// Simple decomposition - for full NLP-based decomposition see TMLPD
|
|
87
|
+
const words = taskDescription.toLowerCase().split(/\s+/);
|
|
88
|
+
const subtasks = [];
|
|
89
|
+
// Detect complexity indicators
|
|
90
|
+
const hasMultipleSteps = /and|then|also|plus|additionally/.test(taskDescription);
|
|
91
|
+
const hasBranching = /if|when|either|option|choice/.test(taskDescription);
|
|
92
|
+
const hasSequential = /first|then|finally|step|last/.test(taskDescription);
|
|
93
|
+
if (hasMultipleSteps || taskDescription.length > 100) {
|
|
94
|
+
// Multi-subtask decomposition
|
|
95
|
+
const segments = taskDescription.split(/[.,]+/).filter(s => s.trim().length > 10);
|
|
96
|
+
segments.forEach((seg, idx) => {
|
|
97
|
+
subtasks.push({
|
|
98
|
+
id: `subtask-${idx}`,
|
|
99
|
+
description: seg.trim(),
|
|
100
|
+
dependencies: idx > 0 ? [`subtask-${idx - 1}`] : [],
|
|
101
|
+
estimatedComplexity: seg.split(/\s+/).length / 10
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
// Single task
|
|
107
|
+
subtasks.push({
|
|
108
|
+
id: "subtask-0",
|
|
109
|
+
description: taskDescription,
|
|
110
|
+
dependencies: [],
|
|
111
|
+
estimatedComplexity: words.length / 10
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
return subtasks;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Classify task type
|
|
118
|
+
*/
|
|
119
|
+
classifyTask(description) {
|
|
120
|
+
const lower = description.toLowerCase();
|
|
121
|
+
if (/coding|code|function|class|debug/.test(lower))
|
|
122
|
+
return "coding";
|
|
123
|
+
if (/explain|what is|how to|understand/.test(lower))
|
|
124
|
+
return "explanation";
|
|
125
|
+
if (/analyze|review|evaluate|assess/.test(lower))
|
|
126
|
+
return "analysis";
|
|
127
|
+
if (/create|build|design|implement/.test(lower))
|
|
128
|
+
return "creation";
|
|
129
|
+
if (/translate|convert|transform/.test(lower))
|
|
130
|
+
return "transformation";
|
|
131
|
+
return "general";
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Quick agent assignment without MCTS
|
|
135
|
+
*/
|
|
136
|
+
quickAssign(subtasks) {
|
|
137
|
+
const strategy = {};
|
|
138
|
+
const agents = ["claude", "codex", "claude-minimax", "gemini"];
|
|
139
|
+
subtasks.forEach((subtask, idx) => {
|
|
140
|
+
// Round-robin assignment based on complexity
|
|
141
|
+
if (subtask.estimatedComplexity > 1.5) {
|
|
142
|
+
strategy[subtask.id] = agents[idx % agents.length];
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
strategy[subtask.id] = "claude-minimax"; // Fast agent for simple tasks
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
return strategy;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Optimize assignment with MCTS
|
|
152
|
+
*/
|
|
153
|
+
async optimizeWithMCTS(subtasks) {
|
|
154
|
+
const subtaskIds = subtasks.map(s => s.id);
|
|
155
|
+
return await this.mcts.findBestStrategy(subtaskIds, async (assignments) => {
|
|
156
|
+
// Evaluate strategy quality
|
|
157
|
+
// For reference: higher reward for balanced load + successful execution
|
|
158
|
+
const agentLoad = Object.values(assignments).reduce((acc, agentId) => {
|
|
159
|
+
acc[agentId] = (acc[agentId] || 0) + 1;
|
|
160
|
+
return acc;
|
|
161
|
+
}, {});
|
|
162
|
+
const loadBalance = 1 / (1 + Object.values(agentLoad).reduce((max, v) => Math.max(max, v), 0) - 1);
|
|
163
|
+
return loadBalance * 100; // Reward for balanced assignment
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Execute subtasks in parallel with concurrency limit
|
|
168
|
+
*/
|
|
169
|
+
async executeParallel(subtasks, strategy, executeFn) {
|
|
170
|
+
const results = [];
|
|
171
|
+
const pending = [];
|
|
172
|
+
let idx = 0;
|
|
173
|
+
for (const subtask of subtasks) {
|
|
174
|
+
const agentId = strategy[subtask.id] || "claude";
|
|
175
|
+
const promise = executeFn(subtask, agentId).then(result => {
|
|
176
|
+
results[idx] = result;
|
|
177
|
+
});
|
|
178
|
+
pending.push(promise);
|
|
179
|
+
if (pending.length >= this.config.maxConcurrent) {
|
|
180
|
+
await Promise.race(pending);
|
|
181
|
+
}
|
|
182
|
+
idx++;
|
|
183
|
+
}
|
|
184
|
+
await Promise.all(pending);
|
|
185
|
+
return results;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Get memory statistics
|
|
189
|
+
*/
|
|
190
|
+
getMemoryStats() {
|
|
191
|
+
return this.memory.getStats();
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
exports.HALOOrchestrator = HALOOrchestrator;
|
|
195
|
+
/**
|
|
196
|
+
* Reference to Full TMLPD HALO
|
|
197
|
+
*
|
|
198
|
+
* Full implementation in tmlpd-clean/src/orchestration/halo_orchestrator.py
|
|
199
|
+
*
|
|
200
|
+
* Features:
|
|
201
|
+
* - NLP-based task decomposition
|
|
202
|
+
* - Dependency graph resolution
|
|
203
|
+
* - Agent capability matching
|
|
204
|
+
* - Result verification and retry
|
|
205
|
+
* - Multi-round refinement for low confidence
|
|
206
|
+
*/
|
|
207
|
+
//# sourceMappingURL=haloOrchestrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"haloOrchestrator.js","sourceRoot":"","sources":["../../src/orchestration/haloOrchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TMLPD MCTS Workflow Search
|
|
3
|
+
*
|
|
4
|
+
* Monte Carlo Tree Search for workflow optimization.
|
|
5
|
+
* Reference implementation - for full features see TMLPD v2.x
|
|
6
|
+
*
|
|
7
|
+
* Full TMLPD includes:
|
|
8
|
+
* - UCB1 selection policy
|
|
9
|
+
* - Exploration vs exploitation balancing
|
|
10
|
+
* - Workflow state tree building
|
|
11
|
+
* - Strategy learning from execution outcomes
|
|
12
|
+
*/
|
|
13
|
+
export interface WorkflowState {
|
|
14
|
+
stateId: string;
|
|
15
|
+
subtasks: string[];
|
|
16
|
+
completed: string[];
|
|
17
|
+
assignments: Record<string, string>;
|
|
18
|
+
totalReward: number;
|
|
19
|
+
visits: number;
|
|
20
|
+
}
|
|
21
|
+
export interface WorkflowAction {
|
|
22
|
+
type: "assign" | "execute" | "parallelize";
|
|
23
|
+
subtaskId?: string;
|
|
24
|
+
agentId?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface MCTSConfig {
|
|
27
|
+
maxIterations: number;
|
|
28
|
+
explorationConstant: number;
|
|
29
|
+
maxDepth: number;
|
|
30
|
+
}
|
|
31
|
+
export declare class WorkflowNode {
|
|
32
|
+
state: WorkflowState;
|
|
33
|
+
parent: WorkflowNode | null;
|
|
34
|
+
children: Map<string, WorkflowNode>;
|
|
35
|
+
untriedActions: WorkflowAction[];
|
|
36
|
+
constructor(state: WorkflowState, parent?: WorkflowNode | null);
|
|
37
|
+
get averageReward(): number;
|
|
38
|
+
get isTerminal(): boolean;
|
|
39
|
+
get isFullyExpanded(): boolean;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* MCTS Workflow Optimizer
|
|
43
|
+
*
|
|
44
|
+
* Uses Monte Carlo Tree Search to find optimal workflow strategies.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const optimizer = new MCTSWorkflowOptimizer();
|
|
49
|
+
* const bestStrategy = optimizer.findBestStrategy(task);
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare class MCTSWorkflowOptimizer {
|
|
53
|
+
private config;
|
|
54
|
+
private root;
|
|
55
|
+
private agents;
|
|
56
|
+
constructor(config?: Partial<MCTSConfig>, agents?: string[]);
|
|
57
|
+
/**
|
|
58
|
+
* Set available agents
|
|
59
|
+
*/
|
|
60
|
+
setAgents(agents: string[]): void;
|
|
61
|
+
/**
|
|
62
|
+
* Find best workflow strategy using MCTS
|
|
63
|
+
*/
|
|
64
|
+
findBestStrategy(subtasks: string[], evaluateFn: (strategy: Record<string, string>) => Promise<number>): Promise<Record<string, string>>;
|
|
65
|
+
private mctsIteration;
|
|
66
|
+
private selectNode;
|
|
67
|
+
private ucb1Select;
|
|
68
|
+
private ucb;
|
|
69
|
+
private expand;
|
|
70
|
+
private generateActions;
|
|
71
|
+
private selectBestChild;
|
|
72
|
+
private backpropagate;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Reference to Full TMLPD MCTS
|
|
76
|
+
*
|
|
77
|
+
* Full implementation in tmlpd-clean/src/orchestration/mcts_workflow.py
|
|
78
|
+
*
|
|
79
|
+
* Features:
|
|
80
|
+
* - Full UCB1 with proper exploration constant
|
|
81
|
+
* - Deterministic rollout simulation
|
|
82
|
+
* - Strategy caching with performance tracking
|
|
83
|
+
* - Adaptive depth based on task complexity
|
|
84
|
+
*/
|
|
85
|
+
//# sourceMappingURL=mctsWorkflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mctsWorkflow.d.ts","sourceRoot":"","sources":["../../src/orchestration/mctsWorkflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAQD,qBAAa,YAAY;IACvB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpC,cAAc,EAAE,cAAc,EAAE,CAAC;gBAErB,KAAK,EAAE,aAAa,EAAE,MAAM,GAAE,YAAY,GAAG,IAAW;IAOpE,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,eAAe,IAAI,OAAO,CAE7B;CACF;AAED;;;;;;;;;;GAUG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,MAAM,CAAW;gBAEb,MAAM,GAAE,OAAO,CAAC,UAAU,CAAM,EAAE,MAAM,GAAE,MAAM,EAAO;IAKnE;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;IAI1B;;OAEG;IACG,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAAE,EAClB,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAChE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YA+BpB,aAAa;IAsB3B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,GAAG;IAOX,OAAO,CAAC,MAAM;IAuBd,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,eAAe;IAcvB,OAAO,CAAC,aAAa;CAOtB;AAED;;;;;;;;;;GAUG"}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TMLPD MCTS Workflow Search
|
|
4
|
+
*
|
|
5
|
+
* Monte Carlo Tree Search for workflow optimization.
|
|
6
|
+
* Reference implementation - for full features see TMLPD v2.x
|
|
7
|
+
*
|
|
8
|
+
* Full TMLPD includes:
|
|
9
|
+
* - UCB1 selection policy
|
|
10
|
+
* - Exploration vs exploitation balancing
|
|
11
|
+
* - Workflow state tree building
|
|
12
|
+
* - Strategy learning from execution outcomes
|
|
13
|
+
*/
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.MCTSWorkflowOptimizer = exports.WorkflowNode = void 0;
|
|
16
|
+
const nanoid_1 = require("nanoid");
|
|
17
|
+
const DEFAULT_MCTS_CONFIG = {
|
|
18
|
+
maxIterations: 50,
|
|
19
|
+
explorationConstant: 1.414, // sqrt(2) for UCB1
|
|
20
|
+
maxDepth: 5
|
|
21
|
+
};
|
|
22
|
+
class WorkflowNode {
|
|
23
|
+
state;
|
|
24
|
+
parent;
|
|
25
|
+
children;
|
|
26
|
+
untriedActions;
|
|
27
|
+
constructor(state, parent = null) {
|
|
28
|
+
this.state = state;
|
|
29
|
+
this.parent = parent;
|
|
30
|
+
this.children = new Map();
|
|
31
|
+
this.untriedActions = [];
|
|
32
|
+
}
|
|
33
|
+
get averageReward() {
|
|
34
|
+
return this.state.visits > 0 ? this.state.totalReward / this.state.visits : 0;
|
|
35
|
+
}
|
|
36
|
+
get isTerminal() {
|
|
37
|
+
return this.state.subtasks.length === this.state.completed.length;
|
|
38
|
+
}
|
|
39
|
+
get isFullyExpanded() {
|
|
40
|
+
return this.untriedActions.length === 0 && this.children.size > 0;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.WorkflowNode = WorkflowNode;
|
|
44
|
+
/**
|
|
45
|
+
* MCTS Workflow Optimizer
|
|
46
|
+
*
|
|
47
|
+
* Uses Monte Carlo Tree Search to find optimal workflow strategies.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const optimizer = new MCTSWorkflowOptimizer();
|
|
52
|
+
* const bestStrategy = optimizer.findBestStrategy(task);
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
class MCTSWorkflowOptimizer {
|
|
56
|
+
config;
|
|
57
|
+
root = null;
|
|
58
|
+
agents;
|
|
59
|
+
constructor(config = {}, agents = []) {
|
|
60
|
+
this.config = { ...DEFAULT_MCTS_CONFIG, ...config };
|
|
61
|
+
this.agents = agents;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Set available agents
|
|
65
|
+
*/
|
|
66
|
+
setAgents(agents) {
|
|
67
|
+
this.agents = agents;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Find best workflow strategy using MCTS
|
|
71
|
+
*/
|
|
72
|
+
async findBestStrategy(subtasks, evaluateFn // Returns reward
|
|
73
|
+
) {
|
|
74
|
+
const initialState = {
|
|
75
|
+
stateId: (0, nanoid_1.nanoid)(8),
|
|
76
|
+
subtasks,
|
|
77
|
+
completed: [],
|
|
78
|
+
assignments: {},
|
|
79
|
+
totalReward: 0,
|
|
80
|
+
visits: 0
|
|
81
|
+
};
|
|
82
|
+
this.root = new WorkflowNode(initialState);
|
|
83
|
+
// Initialize untried actions
|
|
84
|
+
if (this.root) {
|
|
85
|
+
this.root.untriedActions = this.generateActions(subtasks);
|
|
86
|
+
}
|
|
87
|
+
// MCTS iterations
|
|
88
|
+
for (let i = 0; i < this.config.maxIterations; i++) {
|
|
89
|
+
await this.mctsIteration(evaluateFn);
|
|
90
|
+
}
|
|
91
|
+
// Return best strategy
|
|
92
|
+
if (this.root && this.root.children.size > 0) {
|
|
93
|
+
const bestChild = this.selectBestChild(this.root);
|
|
94
|
+
return bestChild?.state.assignments || {};
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
return {};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
async mctsIteration(evaluateFn) {
|
|
101
|
+
if (!this.root)
|
|
102
|
+
return;
|
|
103
|
+
let node = this.selectNode(this.root);
|
|
104
|
+
if (!node)
|
|
105
|
+
return;
|
|
106
|
+
// Expansion
|
|
107
|
+
if (node.untriedActions.length > 0) {
|
|
108
|
+
const action = node.untriedActions.pop();
|
|
109
|
+
node = this.expand(node, action);
|
|
110
|
+
}
|
|
111
|
+
// Simulation (simplified - evaluate async)
|
|
112
|
+
if (node) {
|
|
113
|
+
const reward = await evaluateFn(node.state.assignments);
|
|
114
|
+
this.backpropagate(node, reward);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
selectNode(node) {
|
|
118
|
+
while (node && !node.isTerminal) {
|
|
119
|
+
if (node.isFullyExpanded) {
|
|
120
|
+
node = this.ucb1Select(node);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
return node;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return node;
|
|
127
|
+
}
|
|
128
|
+
ucb1Select(node) {
|
|
129
|
+
let bestChild = null;
|
|
130
|
+
let bestUCB = -Infinity;
|
|
131
|
+
for (const child of node.children.values()) {
|
|
132
|
+
const ucb = this.ucb(child);
|
|
133
|
+
if (ucb > bestUCB) {
|
|
134
|
+
bestUCB = ucb;
|
|
135
|
+
bestChild = child;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return bestChild || node;
|
|
139
|
+
}
|
|
140
|
+
ucb(node) {
|
|
141
|
+
if (node.state.visits === 0)
|
|
142
|
+
return Infinity;
|
|
143
|
+
const parentVisits = node.parent?.state.visits || 1;
|
|
144
|
+
return node.averageReward +
|
|
145
|
+
this.config.explorationConstant * Math.sqrt(Math.log(parentVisits) / node.state.visits);
|
|
146
|
+
}
|
|
147
|
+
expand(node, action) {
|
|
148
|
+
const newAssignments = { ...node.state.assignments };
|
|
149
|
+
if (action.type === "assign" && action.subtaskId && action.agentId) {
|
|
150
|
+
newAssignments[action.subtaskId] = action.agentId;
|
|
151
|
+
}
|
|
152
|
+
const newState = {
|
|
153
|
+
stateId: (0, nanoid_1.nanoid)(8),
|
|
154
|
+
subtasks: node.state.subtasks,
|
|
155
|
+
completed: [...node.state.completed],
|
|
156
|
+
assignments: newAssignments,
|
|
157
|
+
totalReward: 0,
|
|
158
|
+
visits: 0
|
|
159
|
+
};
|
|
160
|
+
const child = new WorkflowNode(newState, node);
|
|
161
|
+
node.children.set(newState.stateId, child);
|
|
162
|
+
child.untriedActions = this.generateActions(newState.subtasks);
|
|
163
|
+
return child;
|
|
164
|
+
}
|
|
165
|
+
generateActions(subtasks) {
|
|
166
|
+
const actions = [];
|
|
167
|
+
const availableAgents = this.agents.length > 0 ? this.agents : ["claude", "codex", "gemini"];
|
|
168
|
+
subtasks.forEach(subtask => {
|
|
169
|
+
availableAgents.forEach(agent => {
|
|
170
|
+
actions.push({
|
|
171
|
+
type: "assign",
|
|
172
|
+
subtaskId: subtask,
|
|
173
|
+
agentId: agent
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
});
|
|
177
|
+
return actions;
|
|
178
|
+
}
|
|
179
|
+
selectBestChild(node) {
|
|
180
|
+
let best = null;
|
|
181
|
+
let bestReward = -Infinity;
|
|
182
|
+
for (const child of node.children.values()) {
|
|
183
|
+
if (child.averageReward > bestReward) {
|
|
184
|
+
bestReward = child.averageReward;
|
|
185
|
+
best = child;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return best;
|
|
189
|
+
}
|
|
190
|
+
backpropagate(node, reward) {
|
|
191
|
+
while (node) {
|
|
192
|
+
node.state.visits++;
|
|
193
|
+
node.state.totalReward += reward;
|
|
194
|
+
node = node.parent;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
exports.MCTSWorkflowOptimizer = MCTSWorkflowOptimizer;
|
|
199
|
+
/**
|
|
200
|
+
* Reference to Full TMLPD MCTS
|
|
201
|
+
*
|
|
202
|
+
* Full implementation in tmlpd-clean/src/orchestration/mcts_workflow.py
|
|
203
|
+
*
|
|
204
|
+
* Features:
|
|
205
|
+
* - Full UCB1 with proper exploration constant
|
|
206
|
+
* - Deterministic rollout simulation
|
|
207
|
+
* - Strategy caching with performance tracking
|
|
208
|
+
* - Adaptive depth based on task complexity
|
|
209
|
+
*/
|
|
210
|
+
//# sourceMappingURL=mctsWorkflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mctsWorkflow.js","sourceRoot":"","sources":["../../src/orchestration/mctsWorkflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TMLPD Local Provider Support
|
|
3
|
+
*
|
|
4
|
+
* Integration with local LLM runtimes:
|
|
5
|
+
* - Ollama (localhost:11434)
|
|
6
|
+
* - vLLM (localhost:8000)
|
|
7
|
+
* - LM Studio (localhost:1234)
|
|
8
|
+
*
|
|
9
|
+
* Enables privacy-preserving, cost-free parallel LLM execution.
|
|
10
|
+
*/
|
|
11
|
+
export type LocalRuntime = "ollama" | "vllm" | "lmstudio";
|
|
12
|
+
export interface LocalProviderConfig {
|
|
13
|
+
runtime: LocalRuntime;
|
|
14
|
+
endpoint?: string;
|
|
15
|
+
default_model?: string;
|
|
16
|
+
timeout_ms?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface LocalModelInfo {
|
|
19
|
+
name: string;
|
|
20
|
+
size?: string;
|
|
21
|
+
quantization?: string;
|
|
22
|
+
capabilities?: string[];
|
|
23
|
+
}
|
|
24
|
+
export declare class LocalProvider {
|
|
25
|
+
private runtime;
|
|
26
|
+
private endpoint;
|
|
27
|
+
private default_model;
|
|
28
|
+
private timeout_ms;
|
|
29
|
+
constructor(config: LocalProviderConfig);
|
|
30
|
+
/**
|
|
31
|
+
* List available models on this runtime.
|
|
32
|
+
*/
|
|
33
|
+
listModels(): Promise<LocalModelInfo[]>;
|
|
34
|
+
private listOllamaModels;
|
|
35
|
+
private listVLLMModels;
|
|
36
|
+
private listLMStudioModels;
|
|
37
|
+
/**
|
|
38
|
+
* Generate completion (generic, works with all runtimes).
|
|
39
|
+
*/
|
|
40
|
+
generate(prompt: string, model?: string, options?: Record<string, any>): Promise<LocalGenerationResult>;
|
|
41
|
+
private ollamaGenerate;
|
|
42
|
+
private vllmGenerate;
|
|
43
|
+
private lmstudioGenerate;
|
|
44
|
+
/**
|
|
45
|
+
* Check if this runtime is available/healthy.
|
|
46
|
+
*/
|
|
47
|
+
healthCheck(): Promise<boolean>;
|
|
48
|
+
/**
|
|
49
|
+
* Get runtime info.
|
|
50
|
+
*/
|
|
51
|
+
getInfo(): {
|
|
52
|
+
runtime: LocalRuntime;
|
|
53
|
+
endpoint: string;
|
|
54
|
+
default_model: string;
|
|
55
|
+
timeout_ms: number;
|
|
56
|
+
};
|
|
57
|
+
private formatSize;
|
|
58
|
+
}
|
|
59
|
+
export interface LocalGenerationResult {
|
|
60
|
+
success: boolean;
|
|
61
|
+
error: string | null;
|
|
62
|
+
model: string;
|
|
63
|
+
provider: string;
|
|
64
|
+
content: string;
|
|
65
|
+
duration_ms: number;
|
|
66
|
+
tokens: number;
|
|
67
|
+
cost: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Manager for multiple local providers.
|
|
71
|
+
*/
|
|
72
|
+
export declare class LocalProviderManager {
|
|
73
|
+
private providers;
|
|
74
|
+
addProvider(name: string, config: LocalProviderConfig): void;
|
|
75
|
+
executeParallel(prompt: string, options?: {
|
|
76
|
+
models?: string[];
|
|
77
|
+
provider_priority?: string[];
|
|
78
|
+
fallback_to_cloud?: boolean;
|
|
79
|
+
}): Promise<LocalParallelResult>;
|
|
80
|
+
healthCheckAll(): Promise<Record<string, boolean>>;
|
|
81
|
+
listProviders(): string[];
|
|
82
|
+
}
|
|
83
|
+
export interface LocalParallelResult {
|
|
84
|
+
success: boolean;
|
|
85
|
+
responses: LocalGenerationResult[];
|
|
86
|
+
total_models: number;
|
|
87
|
+
successful_models: number;
|
|
88
|
+
total_cost: number;
|
|
89
|
+
duration_ms: number;
|
|
90
|
+
}
|
|
91
|
+
export declare function createOllamaProvider(model?: string): LocalProvider;
|
|
92
|
+
export declare function createVLLMProvider(endpoint?: string, model?: string): LocalProvider;
|
|
93
|
+
export declare function createLMStudioProvider(model?: string): LocalProvider;
|
|
94
|
+
declare const _default: {
|
|
95
|
+
LocalProvider: typeof LocalProvider;
|
|
96
|
+
LocalProviderManager: typeof LocalProviderManager;
|
|
97
|
+
createOllamaProvider: typeof createOllamaProvider;
|
|
98
|
+
createVLLMProvider: typeof createVLLMProvider;
|
|
99
|
+
createLMStudioProvider: typeof createLMStudioProvider;
|
|
100
|
+
};
|
|
101
|
+
export default _default;
|
|
102
|
+
//# sourceMappingURL=localProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localProvider.d.ts","sourceRoot":"","sources":["../../src/providers/localProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AASD,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,mBAAmB;IAOvC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAgB/B,gBAAgB;YAiBhB,cAAc;YAgBd,kBAAkB;IAiBhC;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAyB/F,cAAc;YA2Bd,YAAY;YA6BZ,gBAAgB;IA6B9B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAerC;;OAEG;IACH,OAAO;;;;;;IASP,OAAO,CAAC,UAAU;CAYnB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,SAAS,CAAyC;IAE1D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAItD,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GACA,OAAO,CAAC,mBAAmB,CAAC;IAiDzB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAUxD,aAAa,IAAI,MAAM,EAAE;CAG1B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAGD,wBAAgB,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAKlE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAMnF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAKpE;;;;;;;;AAED,wBAME"}
|