@memberjunction/ai-prompts 2.111.0 → 2.112.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AIPromptRunner.d.ts.map +1 -1
- package/dist/AIPromptRunner.js +261 -271
- package/dist/AIPromptRunner.js.map +1 -1
- package/dist/ExecutionPlanner.d.ts +1 -1
- package/dist/ExecutionPlanner.d.ts.map +1 -1
- package/dist/ExecutionPlanner.js +32 -34
- package/dist/ExecutionPlanner.js.map +1 -1
- package/dist/ParallelExecution.d.ts +1 -1
- package/dist/ParallelExecution.d.ts.map +1 -1
- package/dist/ParallelExecutionCoordinator.d.ts.map +1 -1
- package/dist/ParallelExecutionCoordinator.js +31 -31
- package/dist/ParallelExecutionCoordinator.js.map +1 -1
- package/package.json +8 -9
package/dist/ExecutionPlanner.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ExecutionPlanner = void 0;
|
|
4
|
-
const
|
|
4
|
+
const global_1 = require("@memberjunction/global");
|
|
5
5
|
const ai_engine_base_1 = require("@memberjunction/ai-engine-base");
|
|
6
6
|
const aiengine_1 = require("@memberjunction/aiengine");
|
|
7
7
|
const uuid_1 = require("uuid");
|
|
8
8
|
class ExecutionPlanner {
|
|
9
9
|
createExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole = 'system') {
|
|
10
|
-
(0,
|
|
10
|
+
(0, global_1.LogStatus)(`Creating execution plan for prompt "${prompt.Name}" with parallelization mode: ${prompt.ParallelizationMode}`);
|
|
11
11
|
const strategy = prompt.ParallelizationMode;
|
|
12
12
|
switch (strategy) {
|
|
13
13
|
case 'None':
|
|
@@ -19,14 +19,14 @@ class ExecutionPlanner {
|
|
|
19
19
|
case 'ModelSpecific':
|
|
20
20
|
return this.createModelSpecificPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
21
21
|
default:
|
|
22
|
-
(0,
|
|
22
|
+
(0, global_1.LogError)(`Unknown parallelization strategy: ${strategy}, falling back to single execution`);
|
|
23
23
|
return this.createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole = 'system') {
|
|
27
27
|
const selectedModel = this.selectBestModel(prompt, promptModels, allModels, configurationId);
|
|
28
28
|
if (!selectedModel) {
|
|
29
|
-
(0,
|
|
29
|
+
(0, global_1.LogError)(`No suitable model found for prompt "${prompt.Name}"`);
|
|
30
30
|
return [];
|
|
31
31
|
}
|
|
32
32
|
const promptModel = promptModels.find((pm) => pm.ModelID === selectedModel.ID);
|
|
@@ -48,19 +48,19 @@ class ExecutionPlanner {
|
|
|
48
48
|
vendorDriverClass: vendorInfo.vendorDriverClass,
|
|
49
49
|
vendorApiName: vendorInfo.vendorApiName,
|
|
50
50
|
};
|
|
51
|
-
(0,
|
|
51
|
+
(0, global_1.LogStatus)(`Created single execution plan with model: ${selectedModel.Name}`);
|
|
52
52
|
return [task];
|
|
53
53
|
}
|
|
54
54
|
createStaticCountPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole = 'system') {
|
|
55
55
|
const parallelCount = prompt.ParallelCount || 1;
|
|
56
56
|
if (parallelCount <= 1) {
|
|
57
|
-
(0,
|
|
57
|
+
(0, global_1.LogStatus)(`StaticCount parallelization with count ${parallelCount}, falling back to single execution`);
|
|
58
58
|
return this.createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
59
59
|
}
|
|
60
60
|
const tasks = [];
|
|
61
61
|
const availableModels = this.getAvailableModels(prompt, promptModels, allModels, configurationId);
|
|
62
62
|
if (availableModels.length === 0) {
|
|
63
|
-
(0,
|
|
63
|
+
(0, global_1.LogError)(`No suitable models found for prompt "${prompt.Name}"`);
|
|
64
64
|
return [];
|
|
65
65
|
}
|
|
66
66
|
for (let i = 0; i < parallelCount; i++) {
|
|
@@ -87,24 +87,24 @@ class ExecutionPlanner {
|
|
|
87
87
|
};
|
|
88
88
|
tasks.push(task);
|
|
89
89
|
}
|
|
90
|
-
(0,
|
|
90
|
+
(0, global_1.LogStatus)(`Created StaticCount execution plan with ${tasks.length} parallel tasks`);
|
|
91
91
|
return tasks;
|
|
92
92
|
}
|
|
93
93
|
createConfigParamPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole = 'system') {
|
|
94
94
|
const configParamName = prompt.ParallelConfigParam;
|
|
95
95
|
if (!configParamName) {
|
|
96
|
-
(0,
|
|
96
|
+
(0, global_1.LogError)(`ConfigParam parallelization specified but ParallelConfigParam is not set for prompt "${prompt.Name}"`);
|
|
97
97
|
return this.createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
98
98
|
}
|
|
99
99
|
const parallelCount = this.getConfigurationParameter(configParamName, configurationId) || 1;
|
|
100
|
-
(0,
|
|
100
|
+
(0, global_1.LogStatus)(`ConfigParam parallelization: ${configParamName} = ${parallelCount}`);
|
|
101
101
|
if (parallelCount <= 1) {
|
|
102
102
|
return this.createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
103
103
|
}
|
|
104
104
|
const tasks = [];
|
|
105
105
|
const availableModels = this.getAvailableModels(prompt, promptModels, allModels, configurationId);
|
|
106
106
|
if (availableModels.length === 0) {
|
|
107
|
-
(0,
|
|
107
|
+
(0, global_1.LogError)(`No suitable models found for prompt "${prompt.Name}"`);
|
|
108
108
|
return [];
|
|
109
109
|
}
|
|
110
110
|
for (let i = 0; i < parallelCount; i++) {
|
|
@@ -131,20 +131,20 @@ class ExecutionPlanner {
|
|
|
131
131
|
};
|
|
132
132
|
tasks.push(task);
|
|
133
133
|
}
|
|
134
|
-
(0,
|
|
134
|
+
(0, global_1.LogStatus)(`Created ConfigParam execution plan with ${tasks.length} parallel tasks`);
|
|
135
135
|
return tasks;
|
|
136
136
|
}
|
|
137
137
|
createModelSpecificPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole = 'system') {
|
|
138
138
|
const tasks = [];
|
|
139
139
|
const activePromptModels = promptModels.filter((pm) => pm.Status === 'Active' || pm.Status === 'Preview');
|
|
140
140
|
if (activePromptModels.length === 0) {
|
|
141
|
-
(0,
|
|
141
|
+
(0, global_1.LogError)(`No active prompt models found for ModelSpecific parallelization of prompt "${prompt.Name}"`);
|
|
142
142
|
return this.createSingleExecutionPlan(prompt, promptModels, allModels, renderedPrompt, contextUser, configurationId, conversationMessages, templateMessageRole);
|
|
143
143
|
}
|
|
144
144
|
for (const promptModel of activePromptModels) {
|
|
145
145
|
const model = allModels.find((m) => m.ID === promptModel.ModelID && m.IsActive);
|
|
146
146
|
if (!model) {
|
|
147
|
-
(0,
|
|
147
|
+
(0, global_1.LogError)(`Model ${promptModel.ModelID} not found or inactive for prompt "${prompt.Name}"`);
|
|
148
148
|
continue;
|
|
149
149
|
}
|
|
150
150
|
const parallelCount = this.getModelParallelCount(promptModel);
|
|
@@ -170,11 +170,12 @@ class ExecutionPlanner {
|
|
|
170
170
|
tasks.push(task);
|
|
171
171
|
}
|
|
172
172
|
}
|
|
173
|
-
(0,
|
|
173
|
+
(0, global_1.LogStatus)(`Created ModelSpecific execution plan with ${tasks.length} tasks across ${new Set(tasks.map((t) => t.executionGroup)).size} execution groups`);
|
|
174
174
|
return tasks;
|
|
175
175
|
}
|
|
176
176
|
selectBestModel(prompt, promptModels, allModels, configurationId) {
|
|
177
|
-
const availablePromptModels = promptModels.filter((pm) => (pm.Status === 'Active' || pm.Status === 'Preview') &&
|
|
177
|
+
const availablePromptModels = promptModels.filter((pm) => (pm.Status === 'Active' || pm.Status === 'Preview') &&
|
|
178
|
+
(!configurationId || !pm.ConfigurationID || pm.ConfigurationID === configurationId));
|
|
178
179
|
if (availablePromptModels.length > 0) {
|
|
179
180
|
availablePromptModels.sort((a, b) => b.Priority - a.Priority);
|
|
180
181
|
const selectedPromptModel = availablePromptModels[0];
|
|
@@ -202,7 +203,8 @@ class ExecutionPlanner {
|
|
|
202
203
|
return candidateModels[0];
|
|
203
204
|
}
|
|
204
205
|
getAvailableModels(prompt, promptModels, allModels, configurationId) {
|
|
205
|
-
const availablePromptModels = promptModels.filter((pm) => (pm.Status === 'Active' || pm.Status === 'Preview') &&
|
|
206
|
+
const availablePromptModels = promptModels.filter((pm) => (pm.Status === 'Active' || pm.Status === 'Preview') &&
|
|
207
|
+
(!configurationId || !pm.ConfigurationID || pm.ConfigurationID === configurationId));
|
|
206
208
|
if (availablePromptModels.length > 0) {
|
|
207
209
|
const models = availablePromptModels
|
|
208
210
|
.map((pm) => allModels.find((m) => m.ID === pm.ModelID && m.IsActive))
|
|
@@ -234,14 +236,14 @@ class ExecutionPlanner {
|
|
|
234
236
|
return null;
|
|
235
237
|
}
|
|
236
238
|
if (!configurationId) {
|
|
237
|
-
(0,
|
|
239
|
+
(0, global_1.LogStatus)(`No configuration ID provided for parameter lookup: ${paramName}`);
|
|
238
240
|
return null;
|
|
239
241
|
}
|
|
240
242
|
try {
|
|
241
243
|
const aiEngine = ai_engine_base_1.AIEngineBase.Instance;
|
|
242
244
|
const configParam = aiEngine.GetConfigurationParam(configurationId, paramName);
|
|
243
245
|
if (!configParam) {
|
|
244
|
-
(0,
|
|
246
|
+
(0, global_1.LogStatus)(`Configuration parameter "${paramName}" not found in configuration "${configurationId}"`);
|
|
245
247
|
return null;
|
|
246
248
|
}
|
|
247
249
|
let value = null;
|
|
@@ -249,26 +251,26 @@ class ExecutionPlanner {
|
|
|
249
251
|
case 'number':
|
|
250
252
|
value = parseFloat(configParam.Value);
|
|
251
253
|
if (isNaN(value)) {
|
|
252
|
-
(0,
|
|
254
|
+
(0, global_1.LogError)(`Failed to parse number value for configuration parameter "${paramName}": ${configParam.Value}`);
|
|
253
255
|
return null;
|
|
254
256
|
}
|
|
255
257
|
break;
|
|
256
258
|
case 'string':
|
|
257
259
|
value = parseFloat(configParam.Value);
|
|
258
260
|
if (isNaN(value)) {
|
|
259
|
-
(0,
|
|
261
|
+
(0, global_1.LogError)(`Configuration parameter "${paramName}" is a string but expected a number: ${configParam.Value}`);
|
|
260
262
|
return null;
|
|
261
263
|
}
|
|
262
264
|
break;
|
|
263
265
|
default:
|
|
264
|
-
(0,
|
|
266
|
+
(0, global_1.LogError)(`Unsupported data type for parallel count configuration parameter "${paramName}": ${configParam.Type}`);
|
|
265
267
|
return null;
|
|
266
268
|
}
|
|
267
|
-
(0,
|
|
269
|
+
(0, global_1.LogStatus)(`Retrieved configuration parameter "${paramName}" = ${value} from configuration "${configurationId}"`);
|
|
268
270
|
return value;
|
|
269
271
|
}
|
|
270
272
|
catch (error) {
|
|
271
|
-
(0,
|
|
273
|
+
(0, global_1.LogError)(`Error retrieving configuration parameter "${paramName}": ${error.message}`);
|
|
272
274
|
return null;
|
|
273
275
|
}
|
|
274
276
|
}
|
|
@@ -280,34 +282,30 @@ class ExecutionPlanner {
|
|
|
280
282
|
return JSON.parse(modelParametersJson);
|
|
281
283
|
}
|
|
282
284
|
catch (error) {
|
|
283
|
-
(0,
|
|
285
|
+
(0, global_1.LogError)(`Failed to parse model parameters JSON: ${error.message}`);
|
|
284
286
|
return undefined;
|
|
285
287
|
}
|
|
286
288
|
}
|
|
287
289
|
selectVendorForModel(model) {
|
|
288
|
-
const inferenceProviderType = aiengine_1.AIEngine.Instance.VendorTypeDefinitions.find(vt => vt.Name === 'Inference Provider');
|
|
290
|
+
const inferenceProviderType = aiengine_1.AIEngine.Instance.VendorTypeDefinitions.find((vt) => vt.Name === 'Inference Provider');
|
|
289
291
|
if (!inferenceProviderType) {
|
|
290
292
|
return {
|
|
291
293
|
vendorDriverClass: model.DriverClass,
|
|
292
|
-
vendorApiName: model.APIName
|
|
294
|
+
vendorApiName: model.APIName,
|
|
293
295
|
};
|
|
294
296
|
}
|
|
295
|
-
const modelVendors = aiengine_1.AIEngine.Instance.ModelVendors
|
|
296
|
-
.filter(mv => mv.ModelID === model.ID &&
|
|
297
|
-
mv.Status === 'Active' &&
|
|
298
|
-
mv.TypeID === inferenceProviderType.ID)
|
|
299
|
-
.sort((a, b) => b.Priority - a.Priority);
|
|
297
|
+
const modelVendors = aiengine_1.AIEngine.Instance.ModelVendors.filter((mv) => mv.ModelID === model.ID && mv.Status === 'Active' && mv.TypeID === inferenceProviderType.ID).sort((a, b) => b.Priority - a.Priority);
|
|
300
298
|
if (modelVendors.length === 0) {
|
|
301
299
|
return {
|
|
302
300
|
vendorDriverClass: model.DriverClass,
|
|
303
|
-
vendorApiName: model.APIName
|
|
301
|
+
vendorApiName: model.APIName,
|
|
304
302
|
};
|
|
305
303
|
}
|
|
306
304
|
const selectedVendor = modelVendors[0];
|
|
307
305
|
return {
|
|
308
306
|
vendorId: selectedVendor.VendorID,
|
|
309
307
|
vendorDriverClass: selectedVendor.DriverClass || model.DriverClass,
|
|
310
|
-
vendorApiName: selectedVendor.APIName || model.APIName
|
|
308
|
+
vendorApiName: selectedVendor.APIName || model.APIName,
|
|
311
309
|
};
|
|
312
310
|
}
|
|
313
311
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionPlanner.js","sourceRoot":"","sources":["../src/ExecutionPlanner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExecutionPlanner.js","sourceRoot":"","sources":["../src/ExecutionPlanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { AIPromptEntityExtended, AIPromptModelEntity, AIModelEntityExtended, AIPromptRunEntityExtended } from '@memberjunction/core-entities';
|
|
3
|
-
import { UserInfo } from '@memberjunction/
|
|
3
|
+
import { UserInfo } from '@memberjunction/global';
|
|
4
4
|
import { ValidationResult } from '@memberjunction/global';
|
|
5
5
|
import { ChatResult, ChatMessage, StreamingChatCallbacks } from '@memberjunction/ai';
|
|
6
6
|
export interface ExecutionTask {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallelExecution.d.ts","sourceRoot":"","sources":["../src/ParallelExecution.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ParallelExecution.d.ts","sourceRoot":"","sources":["../src/ParallelExecution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallelExecutionCoordinator.d.ts","sourceRoot":"","sources":["../src/ParallelExecutionCoordinator.ts"],"names":[],"mappings":";AAIA,OAAO,EACL,aAAa,EACb,mBAAmB,EAEnB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EAE1B,MAAM,qBAAqB,CAAC;AAM7B,UAAU,0BAA0B;IAClC,kBAAkB,CAAC,EAAE,MAAM;QACzB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE;YACV,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;YAChG,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;SACpE,CAAC;KACH,CAAC;CACH;AAyGD,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,SAAS,CAAW;;IA+Bf,sBAAsB,CACjC,KAAK,EAAE,aAAa,EAAE,EACtB,MAAM,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACzC,iBAAiB,CAAC,EAAE,MAAM,EAC1B,iBAAiB,CAAC,EAAE,WAAW,EAC/B,iBAAiB,CAAC,EAAE,0BAA0B,EAC9C,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ParallelExecutionCoordinator.d.ts","sourceRoot":"","sources":["../src/ParallelExecutionCoordinator.ts"],"names":[],"mappings":";AAIA,OAAO,EACL,aAAa,EACb,mBAAmB,EAEnB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EAE1B,MAAM,qBAAqB,CAAC;AAM7B,UAAU,0BAA0B;IAClC,kBAAkB,CAAC,EAAE,MAAM;QACzB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE;YACV,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;YAChG,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;SACpE,CAAC;KACH,CAAC;CACH;AAyGD,qBAAa,4BAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IACzD,OAAO,CAAC,SAAS,CAAW;;IA+Bf,sBAAsB,CACjC,KAAK,EAAE,aAAa,EAAE,EACtB,MAAM,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,EACzC,iBAAiB,CAAC,EAAE,MAAM,EAC1B,iBAAiB,CAAC,EAAE,WAAW,EAC/B,iBAAiB,CAAC,EAAE,0BAA0B,EAC9C,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC;IAqFtB,gBAAgB,CAC3B,OAAO,EAAE,mBAAmB,EAAE,EAC9B,MAAM,EAAE,qBAAqB,EAC7B,iBAAiB,CAAC,EAAE,MAAM,EAC1B,iBAAiB,CAAC,EAAE,WAAW,GAC9B,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAqCtC,OAAO,CAAC,0BAA0B;YA0CpB,yBAAyB;YAiEzB,sBAAsB;YA8EtB,WAAW;YAwEX,iBAAiB;IAyI/B,OAAO,CAAC,gBAAgB;IAiDxB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,kBAAkB;YAaZ,sBAAsB;IAiHpC,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,sBAAsB;IAmB9B,OAAO,CAAC,qBAAqB;IA2B7B,OAAO,CAAC,iBAAiB;YAmDX,oBAAoB;YAqEpB,oBAAoB;YA2CpB,6BAA6B;IA4C3C,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -24,8 +24,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.ParallelExecutionCoordinator = void 0;
|
|
27
|
-
const core_1 = require("@memberjunction/core");
|
|
28
27
|
const global_1 = require("@memberjunction/global");
|
|
28
|
+
const global_2 = require("@memberjunction/global");
|
|
29
29
|
const ai_1 = require("@memberjunction/ai");
|
|
30
30
|
const aiengine_1 = require("@memberjunction/aiengine");
|
|
31
31
|
class ParallelProgressTracker {
|
|
@@ -105,7 +105,7 @@ class ParallelProgressTracker {
|
|
|
105
105
|
}
|
|
106
106
|
class ParallelExecutionCoordinator {
|
|
107
107
|
constructor() {
|
|
108
|
-
this._metadata = new
|
|
108
|
+
this._metadata = new global_1.Metadata();
|
|
109
109
|
this._defaultConfig = {
|
|
110
110
|
maxConcurrentExecutions: 5,
|
|
111
111
|
taskTimeoutMS: 30000,
|
|
@@ -119,7 +119,7 @@ class ParallelExecutionCoordinator {
|
|
|
119
119
|
const startTime = new Date();
|
|
120
120
|
const executionConfig = { ...this._defaultConfig, ...config };
|
|
121
121
|
if (cancellationToken?.aborted) {
|
|
122
|
-
(0,
|
|
122
|
+
(0, global_1.LogStatus)('Parallel execution cancelled before starting');
|
|
123
123
|
return {
|
|
124
124
|
success: false,
|
|
125
125
|
taskResults: [],
|
|
@@ -134,7 +134,7 @@ class ParallelExecutionCoordinator {
|
|
|
134
134
|
endTime: new Date(),
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
|
-
(0,
|
|
137
|
+
(0, global_1.LogStatus)(`Starting parallel execution of ${tasks.length} tasks with config: ${JSON.stringify(executionConfig)}`);
|
|
138
138
|
try {
|
|
139
139
|
if (cancellationToken) {
|
|
140
140
|
tasks.forEach((task) => {
|
|
@@ -145,11 +145,11 @@ class ParallelExecutionCoordinator {
|
|
|
145
145
|
const progressTracker = new ParallelProgressTracker(tasks.length, executionGroups.length, progressCallbacks);
|
|
146
146
|
const allResults = await this.executeGroupsSequentially(executionGroups, executionConfig, parentPromptRunId, cancellationToken, progressTracker, agentRunId);
|
|
147
147
|
const result = this.aggregateResults(allResults, startTime, new Date());
|
|
148
|
-
(0,
|
|
148
|
+
(0, global_1.LogStatus)(`Parallel execution completed: ${result.successCount}/${tasks.length} tasks successful, ${result.failureCount} failed, ${result.cancelledCount} cancelled`);
|
|
149
149
|
return result;
|
|
150
150
|
}
|
|
151
151
|
catch (error) {
|
|
152
|
-
(0,
|
|
152
|
+
(0, global_1.LogError)(`Parallel execution failed: ${error.message}`);
|
|
153
153
|
return {
|
|
154
154
|
success: false,
|
|
155
155
|
taskResults: [],
|
|
@@ -172,7 +172,7 @@ class ParallelExecutionCoordinator {
|
|
|
172
172
|
if (results.length === 1) {
|
|
173
173
|
return results[0];
|
|
174
174
|
}
|
|
175
|
-
(0,
|
|
175
|
+
(0, global_1.LogStatus)(`Selecting best result from ${results.length} candidates using method: ${config.method}`);
|
|
176
176
|
switch (config.method) {
|
|
177
177
|
case 'First':
|
|
178
178
|
return this.selectFirstResult(results);
|
|
@@ -183,7 +183,7 @@ class ParallelExecutionCoordinator {
|
|
|
183
183
|
case 'Consensus':
|
|
184
184
|
return this.selectConsensusResult(results);
|
|
185
185
|
default:
|
|
186
|
-
(0,
|
|
186
|
+
(0, global_1.LogError)(`Unknown result selection method: ${config.method}`);
|
|
187
187
|
return results[0];
|
|
188
188
|
}
|
|
189
189
|
}
|
|
@@ -205,14 +205,14 @@ class ParallelExecutionCoordinator {
|
|
|
205
205
|
});
|
|
206
206
|
}
|
|
207
207
|
groups.sort((a, b) => a.groupNumber - b.groupNumber);
|
|
208
|
-
(0,
|
|
208
|
+
(0, global_1.LogStatus)(`Grouped ${tasks.length} tasks into ${groups.length} execution groups`);
|
|
209
209
|
return groups;
|
|
210
210
|
}
|
|
211
211
|
async executeGroupsSequentially(groups, config, parentPromptRunId, cancellationToken, progressTracker, agentRunId) {
|
|
212
212
|
const allResults = [];
|
|
213
213
|
for (const group of groups) {
|
|
214
214
|
if (cancellationToken?.aborted) {
|
|
215
|
-
(0,
|
|
215
|
+
(0, global_1.LogStatus)(`Group execution cancelled at group ${group.groupNumber}`);
|
|
216
216
|
const cancelledResults = group.tasks.map((task) => ({
|
|
217
217
|
task,
|
|
218
218
|
success: false,
|
|
@@ -225,13 +225,13 @@ class ParallelExecutionCoordinator {
|
|
|
225
225
|
allResults.push(...cancelledResults);
|
|
226
226
|
break;
|
|
227
227
|
}
|
|
228
|
-
(0,
|
|
228
|
+
(0, global_1.LogStatus)(`Executing group ${group.groupNumber} with ${group.tasks.length} tasks`);
|
|
229
229
|
progressTracker?.updateProgress(group.groupNumber);
|
|
230
230
|
const groupResults = await this.executeGroupInParallel(group, config, parentPromptRunId, cancellationToken, progressTracker, agentRunId);
|
|
231
231
|
allResults.push(...groupResults);
|
|
232
232
|
if (config.failFast && groupResults.some((r) => !r.success)) {
|
|
233
233
|
const failedTasks = groupResults.filter((r) => !r.success);
|
|
234
|
-
(0,
|
|
234
|
+
(0, global_1.LogError)(`Failing fast due to ${failedTasks.length} failed tasks in group ${group.groupNumber}`);
|
|
235
235
|
break;
|
|
236
236
|
}
|
|
237
237
|
}
|
|
@@ -245,7 +245,7 @@ class ParallelExecutionCoordinator {
|
|
|
245
245
|
let executionOrder = 0;
|
|
246
246
|
while (taskIndex < group.tasks.length || executing.length > 0) {
|
|
247
247
|
if (cancellationToken?.aborted) {
|
|
248
|
-
(0,
|
|
248
|
+
(0, global_1.LogStatus)(`Task execution cancelled in group ${group.groupNumber}`);
|
|
249
249
|
while (taskIndex < group.tasks.length) {
|
|
250
250
|
const task = group.tasks[taskIndex++];
|
|
251
251
|
results.push({
|
|
@@ -278,7 +278,7 @@ class ParallelExecutionCoordinator {
|
|
|
278
278
|
}
|
|
279
279
|
const successfulResults = results.filter((r) => r.success);
|
|
280
280
|
const cancelledResults = results.filter((r) => r.cancelled);
|
|
281
|
-
(0,
|
|
281
|
+
(0, global_1.LogStatus)(`Group ${group.groupNumber} completed: ${successfulResults.length}/${results.length} successful, ${cancelledResults.length} cancelled`);
|
|
282
282
|
return results;
|
|
283
283
|
}
|
|
284
284
|
async executeTask(task, config, parentPromptRunId, executionOrder, agentRunId) {
|
|
@@ -288,7 +288,7 @@ class ParallelExecutionCoordinator {
|
|
|
288
288
|
try {
|
|
289
289
|
if (task.cancellationToken?.aborted) {
|
|
290
290
|
const endTime = new Date();
|
|
291
|
-
(0,
|
|
291
|
+
(0, global_1.LogStatus)(`Task ${task.taskId} cancelled before attempt ${attempt + 1}`);
|
|
292
292
|
return {
|
|
293
293
|
task,
|
|
294
294
|
success: false,
|
|
@@ -301,7 +301,7 @@ class ParallelExecutionCoordinator {
|
|
|
301
301
|
}
|
|
302
302
|
if (attempt > 0) {
|
|
303
303
|
await this.delay(config.retryDelayMS * attempt);
|
|
304
|
-
(0,
|
|
304
|
+
(0, global_1.LogStatus)(`Retrying task ${task.taskId}, attempt ${attempt + 1}/${config.maxRetries + 1}`);
|
|
305
305
|
}
|
|
306
306
|
const result = await this.executeSingleTask(task, config.taskTimeoutMS, parentPromptRunId, executionOrder, agentRunId);
|
|
307
307
|
result.startTime = startTime;
|
|
@@ -310,7 +310,7 @@ class ParallelExecutionCoordinator {
|
|
|
310
310
|
}
|
|
311
311
|
catch (error) {
|
|
312
312
|
lastError = error;
|
|
313
|
-
(0,
|
|
313
|
+
(0, global_1.LogError)(`Task ${task.taskId} attempt ${attempt + 1} failed: ${error.message}`);
|
|
314
314
|
if (attempt === config.maxRetries) {
|
|
315
315
|
break;
|
|
316
316
|
}
|
|
@@ -339,7 +339,7 @@ class ParallelExecutionCoordinator {
|
|
|
339
339
|
throw new Error(`No driver class available for model ${task.model.Name}. Vendor selection may have failed.`);
|
|
340
340
|
}
|
|
341
341
|
const apiKey = (0, ai_1.GetAIAPIKey)(driverClass);
|
|
342
|
-
const llm =
|
|
342
|
+
const llm = global_2.MJGlobal.Instance.ClassFactory.CreateInstance(ai_1.BaseLLM, driverClass, apiKey);
|
|
343
343
|
const params = new ai_1.ChatParams();
|
|
344
344
|
params.model = apiName;
|
|
345
345
|
params.cancellationToken = task.cancellationToken;
|
|
@@ -466,7 +466,7 @@ class ParallelExecutionCoordinator {
|
|
|
466
466
|
await aiengine_1.AIEngine.Instance.Config(false);
|
|
467
467
|
const judgePrompt = aiengine_1.AIEngine.Instance.Prompts.find((p) => p.ID === selectorPromptId);
|
|
468
468
|
if (!judgePrompt) {
|
|
469
|
-
(0,
|
|
469
|
+
(0, global_1.LogError)(`Judge prompt with ID ${selectorPromptId} not found`);
|
|
470
470
|
return results[0];
|
|
471
471
|
}
|
|
472
472
|
const judgeData = this.formatResultsForJudge(results);
|
|
@@ -504,12 +504,12 @@ class ParallelExecutionCoordinator {
|
|
|
504
504
|
await resultSelectorPromptRun.Save();
|
|
505
505
|
}
|
|
506
506
|
if (!judgeResult.success || !judgeResult.rawResult) {
|
|
507
|
-
(0,
|
|
507
|
+
(0, global_1.LogError)(`Judge prompt execution failed: ${judgeResult.errorMessage}`);
|
|
508
508
|
return results[0];
|
|
509
509
|
}
|
|
510
510
|
const rankings = this.parseJudgeResult(judgeResult.rawResult);
|
|
511
511
|
if (!rankings || rankings.length === 0) {
|
|
512
|
-
(0,
|
|
512
|
+
(0, global_1.LogError)('Failed to parse judge rankings');
|
|
513
513
|
return results[0];
|
|
514
514
|
}
|
|
515
515
|
this.applyRankingsToResults(results, rankings);
|
|
@@ -521,11 +521,11 @@ class ParallelExecutionCoordinator {
|
|
|
521
521
|
judgeExecutionTimeMS,
|
|
522
522
|
judgeTokensUsed: judgeResult.tokensUsed,
|
|
523
523
|
};
|
|
524
|
-
(0,
|
|
524
|
+
(0, global_1.LogStatus)(`Judge selected candidate ${bestCandidateId} as the best result`);
|
|
525
525
|
return bestResult;
|
|
526
526
|
}
|
|
527
527
|
catch (error) {
|
|
528
|
-
(0,
|
|
528
|
+
(0, global_1.LogError)(`Error in AI judge selection: ${error.message}`);
|
|
529
529
|
return results[0];
|
|
530
530
|
}
|
|
531
531
|
}
|
|
@@ -559,11 +559,11 @@ class ParallelExecutionCoordinator {
|
|
|
559
559
|
rationale: ranking.rationale || 'No rationale provided',
|
|
560
560
|
}));
|
|
561
561
|
}
|
|
562
|
-
(0,
|
|
562
|
+
(0, global_1.LogError)('Judge result does not contain valid rankings array');
|
|
563
563
|
return null;
|
|
564
564
|
}
|
|
565
565
|
catch (error) {
|
|
566
|
-
(0,
|
|
566
|
+
(0, global_1.LogError)(`Failed to parse judge result: ${error.message}`);
|
|
567
567
|
return null;
|
|
568
568
|
}
|
|
569
569
|
}
|
|
@@ -654,13 +654,13 @@ class ParallelExecutionCoordinator {
|
|
|
654
654
|
const saveResult = await promptRun.Save();
|
|
655
655
|
if (!saveResult) {
|
|
656
656
|
const error = `Failed to save child AIPromptRun: ${promptRun.LatestResult?.Message || 'Unknown error'}`;
|
|
657
|
-
(0,
|
|
657
|
+
(0, global_1.LogError)(error);
|
|
658
658
|
throw new Error(error);
|
|
659
659
|
}
|
|
660
660
|
return promptRun;
|
|
661
661
|
}
|
|
662
662
|
catch (error) {
|
|
663
|
-
(0,
|
|
663
|
+
(0, global_1.LogError)(`Error creating child prompt run record: ${error.message}`);
|
|
664
664
|
throw error;
|
|
665
665
|
}
|
|
666
666
|
}
|
|
@@ -683,11 +683,11 @@ class ParallelExecutionCoordinator {
|
|
|
683
683
|
}
|
|
684
684
|
const saveResult = await promptRun.Save();
|
|
685
685
|
if (!saveResult) {
|
|
686
|
-
(0,
|
|
686
|
+
(0, global_1.LogError)(`Failed to update child AIPromptRun with results: ${promptRun.LatestResult?.Message || 'Unknown error'}`);
|
|
687
687
|
}
|
|
688
688
|
}
|
|
689
689
|
catch (error) {
|
|
690
|
-
(0,
|
|
690
|
+
(0, global_1.LogError)(`Error updating child prompt run: ${error.message}`);
|
|
691
691
|
}
|
|
692
692
|
}
|
|
693
693
|
async createResultSelectorPromptRun(judgePrompt, judgeData, parentPromptRunId, executionOrder) {
|
|
@@ -708,13 +708,13 @@ class ParallelExecutionCoordinator {
|
|
|
708
708
|
const saveResult = await promptRun.Save();
|
|
709
709
|
if (!saveResult) {
|
|
710
710
|
const error = `Failed to save ResultSelector AIPromptRun: ${promptRun.LatestResult?.Message || 'Unknown error'}`;
|
|
711
|
-
(0,
|
|
711
|
+
(0, global_1.LogError)(error);
|
|
712
712
|
throw new Error(error);
|
|
713
713
|
}
|
|
714
714
|
return promptRun;
|
|
715
715
|
}
|
|
716
716
|
catch (error) {
|
|
717
|
-
(0,
|
|
717
|
+
(0, global_1.LogError)(`Error creating result selector prompt run record: ${error.message}`);
|
|
718
718
|
throw error;
|
|
719
719
|
}
|
|
720
720
|
}
|