@mate-academy/llm-gateway 6.1.0 → 6.2.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/LLMService.constants.d.ts +291 -1
- package/dist/LLMService.constants.js +2 -1
- package/dist/LLMService.constants.js.map +1 -1
- package/dist/LLMService.typedefs.d.ts +9 -0
- package/dist/LLMService.typedefs.js.map +1 -1
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.d.ts +8 -7
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js +217 -31
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map +1 -1
- package/dist/providers/LLMAPI/LLMAPI.constants.d.ts +292 -3
- package/dist/providers/LLMAPI/LLMAPI.constants.js +2 -2
- package/dist/providers/LLMAPI/LLMAPI.constants.js.map +1 -1
- package/dist/providers/LLMAPI/LLMAPI.entity.d.ts +6 -0
- package/dist/providers/LLMAPI/LLMAPI.entity.js +49 -0
- package/dist/providers/LLMAPI/LLMAPI.entity.js.map +1 -0
- package/dist/providers/LLMAPI/index.d.ts +1 -0
- package/dist/providers/LLMAPI/index.js +1 -0
- package/dist/providers/LLMAPI/index.js.map +1 -1
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.d.ts +34 -0
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js +497 -0
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js.map +1 -0
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.d.ts +3 -1
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.js +18 -2
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.js.map +1 -1
- package/dist/providers/LLMAPI/services/index.d.ts +1 -0
- package/dist/providers/LLMAPI/services/index.js +1 -0
- package/dist/providers/LLMAPI/services/index.js.map +1 -1
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.d.ts +9 -7
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js +209 -40
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js.map +1 -1
- package/dist/services/LLMAssistanceService.abstract.d.ts +8 -6
- package/dist/services/LLMAssistanceService.abstract.js +20 -0
- package/dist/services/LLMAssistanceService.abstract.js.map +1 -1
- package/dist/services/chatState/CompletionsChatState.d.ts +19 -0
- package/dist/services/chatState/CompletionsChatState.js +80 -0
- package/dist/services/chatState/CompletionsChatState.js.map +1 -0
- package/dist/services/chatState/index.d.ts +1 -0
- package/dist/services/chatState/index.js +6 -0
- package/dist/services/chatState/index.js.map +1 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.d.ts +15 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.js +172 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.js.map +1 -0
- package/dist/services/fileStorage/InMemoryFileStorage.d.ts +20 -0
- package/dist/services/fileStorage/InMemoryFileStorage.js +67 -0
- package/dist/services/fileStorage/InMemoryFileStorage.js.map +1 -0
- package/dist/services/fileStorage/fileStorageTools.d.ts +26 -0
- package/dist/services/fileStorage/fileStorageTools.js +67 -0
- package/dist/services/fileStorage/fileStorageTools.js.map +1 -0
- package/dist/services/fileStorage/index.d.ts +4 -0
- package/dist/services/fileStorage/index.js +11 -0
- package/dist/services/fileStorage/index.js.map +1 -0
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.js +1 -0
- package/dist/utilities/index.js.map +1 -1
- package/dist/utilities/tools/LLMTool.d.ts +10 -0
- package/dist/utilities/tools/LLMTool.js +10 -0
- package/dist/utilities/tools/LLMTool.js.map +1 -0
- package/dist/utilities/tools/index.d.ts +1 -0
- package/dist/utilities/tools/index.js +6 -0
- package/dist/utilities/tools/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@ exports.OpenAIAssistanceService = void 0;
|
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const openai_1 = require("openai");
|
|
6
6
|
const LLMService_typedefs_1 = require("../../../LLMService.typedefs");
|
|
7
|
+
const LLMService_constants_1 = require("../../../LLMService.constants");
|
|
7
8
|
const serializeError_1 = require("../../../utilities/serializeError");
|
|
8
9
|
const services_1 = require("../../../services");
|
|
9
10
|
const OpenAI_typedefs_1 = require("../../../providers/OpenAI/OpenAI.typedefs");
|
|
@@ -11,9 +12,8 @@ const OpenAI_entity_1 = require("../../../providers/OpenAI/OpenAI.entity");
|
|
|
11
12
|
const uuid_1 = require("uuid");
|
|
12
13
|
class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
13
14
|
uploadedFiles = new Map();
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
chatInstructions = new Map(); // chatId -> instructions
|
|
15
|
+
responseHistory = new Map();
|
|
16
|
+
chatInstructions = new Map();
|
|
17
17
|
constructor(logger, reporter, options) {
|
|
18
18
|
super(LLMService_typedefs_1.LLMProviders.OpenAI, logger, reporter, options);
|
|
19
19
|
}
|
|
@@ -205,12 +205,6 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
205
205
|
this.responseHistory.delete(chatId);
|
|
206
206
|
this.chatInstructions.delete(chatId);
|
|
207
207
|
}
|
|
208
|
-
assistInChat(options) {
|
|
209
|
-
if (options.schema) {
|
|
210
|
-
return this.assistInChatStructured(options);
|
|
211
|
-
}
|
|
212
|
-
return this.assistInChatText(options);
|
|
213
|
-
}
|
|
214
208
|
async assistInChatText(options) {
|
|
215
209
|
const { model, message, chatId, storageId, abortSignal, reporterContext, } = options;
|
|
216
210
|
const writeMetrics = this.reporter?.initWriter(reporterContext);
|
|
@@ -218,14 +212,20 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
218
212
|
abortSignal?.throwIfAborted();
|
|
219
213
|
const lastResponseId = this.responseHistory.get(chatId);
|
|
220
214
|
const messageInput = this.convertLLMMessageToResponsesInput(message);
|
|
221
|
-
const
|
|
215
|
+
const customTools = options.tools ?? [];
|
|
216
|
+
const hasCustomTools = customTools.length > 0;
|
|
217
|
+
let tools = [];
|
|
218
|
+
if (hasCustomTools) {
|
|
219
|
+
this.validateToolDefinitions(customTools);
|
|
220
|
+
tools = this.convertCustomToolsToResponsesAPI(customTools);
|
|
221
|
+
}
|
|
222
222
|
if (storageId) {
|
|
223
223
|
tools.push({
|
|
224
224
|
type: 'file_search',
|
|
225
225
|
vector_store_ids: [storageId],
|
|
226
226
|
});
|
|
227
227
|
}
|
|
228
|
-
const
|
|
228
|
+
const initialResponse = await this.instance.responses.create({
|
|
229
229
|
model: model.name,
|
|
230
230
|
input: messageInput,
|
|
231
231
|
previous_response_id: lastResponseId,
|
|
@@ -233,22 +233,54 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
233
233
|
? tools
|
|
234
234
|
: undefined,
|
|
235
235
|
instructions: this.chatInstructions.get(chatId),
|
|
236
|
-
}, {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
236
|
+
}, { signal: abortSignal });
|
|
237
|
+
this.responseHistory.set(chatId, initialResponse.id);
|
|
238
|
+
let text;
|
|
239
|
+
let inputTextTokens;
|
|
240
|
+
let inputCachedTextTokens;
|
|
241
|
+
let outputTextTokens;
|
|
242
|
+
if (hasCustomTools) {
|
|
243
|
+
const maxIterations = options.maxToolIterations
|
|
244
|
+
?? LLMService_constants_1.DEFAULT_MAX_TOOL_ITERATIONS;
|
|
245
|
+
const { response: finalResponse, totalUsage } = await this.executeToolLoop({
|
|
246
|
+
response: initialResponse,
|
|
247
|
+
tools: customTools,
|
|
248
|
+
model,
|
|
249
|
+
chatId,
|
|
250
|
+
maxIterations,
|
|
251
|
+
abortSignal,
|
|
252
|
+
allTools: tools,
|
|
253
|
+
});
|
|
254
|
+
text = finalResponse.output_text || '';
|
|
255
|
+
inputTextTokens = totalUsage.inputTokens
|
|
256
|
+
- totalUsage.cachedInputTokens;
|
|
257
|
+
inputCachedTextTokens
|
|
258
|
+
= totalUsage.cachedInputTokens;
|
|
259
|
+
outputTextTokens = totalUsage.outputTokens
|
|
260
|
+
+ totalUsage.reasoningTokens;
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
text = initialResponse.output_text || '';
|
|
264
|
+
const totalInputTokens = initialResponse.usage?.input_tokens ?? 0;
|
|
265
|
+
const cachedInputTokens = initialResponse.usage
|
|
266
|
+
?.input_tokens_details?.cached_tokens ?? 0;
|
|
267
|
+
const totalOutputTokens = initialResponse.usage?.output_tokens ?? 0;
|
|
268
|
+
const reasoningOutputTokens = initialResponse.usage
|
|
269
|
+
?.output_tokens_details
|
|
270
|
+
?.reasoning_tokens ?? 0;
|
|
271
|
+
inputTextTokens
|
|
272
|
+
= totalInputTokens - cachedInputTokens;
|
|
273
|
+
inputCachedTextTokens = cachedInputTokens;
|
|
274
|
+
outputTextTokens
|
|
275
|
+
= totalOutputTokens + reasoningOutputTokens;
|
|
276
|
+
}
|
|
245
277
|
await this.writeSuccessMetrics({
|
|
246
278
|
method: this.getMethodName(this.assistInChatText),
|
|
247
279
|
model,
|
|
248
280
|
usage: {
|
|
249
|
-
inputTextTokens
|
|
250
|
-
inputCachedTextTokens
|
|
251
|
-
outputTextTokens
|
|
281
|
+
inputTextTokens,
|
|
282
|
+
inputCachedTextTokens,
|
|
283
|
+
outputTextTokens,
|
|
252
284
|
},
|
|
253
285
|
writeMetrics,
|
|
254
286
|
});
|
|
@@ -277,16 +309,21 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
277
309
|
abortSignal?.throwIfAborted();
|
|
278
310
|
const lastResponseId = this.responseHistory.get(chatId);
|
|
279
311
|
const messageInput = this.convertLLMMessageToResponsesInput(message);
|
|
280
|
-
const
|
|
312
|
+
const customTools = options.tools ?? [];
|
|
313
|
+
const hasCustomTools = customTools.length > 0;
|
|
314
|
+
let tools = [];
|
|
315
|
+
if (hasCustomTools) {
|
|
316
|
+
this.validateToolDefinitions(customTools);
|
|
317
|
+
tools = this.convertCustomToolsToResponsesAPI(customTools);
|
|
318
|
+
}
|
|
281
319
|
if (storageId) {
|
|
282
320
|
tools.push({
|
|
283
321
|
type: 'file_search',
|
|
284
322
|
vector_store_ids: [storageId],
|
|
285
323
|
});
|
|
286
324
|
}
|
|
287
|
-
// Convert schema to OpenAI JSON Schema format
|
|
288
325
|
const jsonSchema = schema._toProviderSchema(LLMService_typedefs_1.LLMProviders.OpenAI);
|
|
289
|
-
const
|
|
326
|
+
const initialResponse = await this.instance.responses.create({
|
|
290
327
|
model: model.name,
|
|
291
328
|
input: messageInput,
|
|
292
329
|
previous_response_id: lastResponseId,
|
|
@@ -302,28 +339,69 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
302
339
|
schema: jsonSchema,
|
|
303
340
|
},
|
|
304
341
|
},
|
|
305
|
-
}, {
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
342
|
+
}, { signal: abortSignal });
|
|
343
|
+
this.responseHistory.set(chatId, initialResponse.id);
|
|
344
|
+
let content;
|
|
345
|
+
let inputTextTokens;
|
|
346
|
+
let inputCachedTextTokens;
|
|
347
|
+
let outputTextTokens;
|
|
348
|
+
if (hasCustomTools) {
|
|
349
|
+
const maxIterations = options.maxToolIterations
|
|
350
|
+
?? LLMService_constants_1.DEFAULT_MAX_TOOL_ITERATIONS;
|
|
351
|
+
const textFormat = {
|
|
352
|
+
format: {
|
|
353
|
+
type: 'json_schema',
|
|
354
|
+
name: 'structured_response',
|
|
355
|
+
strict: true,
|
|
356
|
+
schema: jsonSchema,
|
|
357
|
+
},
|
|
358
|
+
};
|
|
359
|
+
const { response: finalResponse, totalUsage } = await this.executeToolLoop({
|
|
360
|
+
response: initialResponse,
|
|
361
|
+
tools: customTools,
|
|
362
|
+
model,
|
|
363
|
+
chatId,
|
|
364
|
+
maxIterations,
|
|
365
|
+
abortSignal,
|
|
366
|
+
allTools: tools,
|
|
367
|
+
textFormat,
|
|
368
|
+
});
|
|
369
|
+
content = finalResponse.output_text || '';
|
|
370
|
+
inputTextTokens = totalUsage.inputTokens
|
|
371
|
+
- totalUsage.cachedInputTokens;
|
|
372
|
+
inputCachedTextTokens
|
|
373
|
+
= totalUsage.cachedInputTokens;
|
|
374
|
+
outputTextTokens = totalUsage.outputTokens
|
|
375
|
+
+ totalUsage.reasoningTokens;
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
content = initialResponse.output_text || '';
|
|
379
|
+
const totalInputTokens = initialResponse.usage?.input_tokens ?? 0;
|
|
380
|
+
const cachedInputTokens = initialResponse.usage
|
|
381
|
+
?.input_tokens_details?.cached_tokens ?? 0;
|
|
382
|
+
const totalOutputTokens = initialResponse.usage?.output_tokens ?? 0;
|
|
383
|
+
const reasoningOutputTokens = initialResponse.usage
|
|
384
|
+
?.output_tokens_details
|
|
385
|
+
?.reasoning_tokens ?? 0;
|
|
386
|
+
inputTextTokens
|
|
387
|
+
= totalInputTokens - cachedInputTokens;
|
|
388
|
+
inputCachedTextTokens = cachedInputTokens;
|
|
389
|
+
outputTextTokens
|
|
390
|
+
= totalOutputTokens + reasoningOutputTokens;
|
|
391
|
+
}
|
|
310
392
|
if (!content) {
|
|
311
393
|
throw new Error('Empty response from OpenAI Responses API');
|
|
312
394
|
}
|
|
313
395
|
try {
|
|
314
396
|
const parsed = JSON.parse(content);
|
|
315
397
|
const validation = schema._parse(parsed);
|
|
316
|
-
const totalInputTokens = response.usage?.input_tokens ?? 0;
|
|
317
|
-
const cachedInputTokens = response.usage?.input_tokens_details?.cached_tokens ?? 0;
|
|
318
|
-
const totalOutputTokens = response.usage?.output_tokens ?? 0;
|
|
319
|
-
const reasoningOutputTokens = response.usage?.output_tokens_details?.reasoning_tokens ?? 0;
|
|
320
398
|
await this.writeSuccessMetrics({
|
|
321
399
|
method: this.getMethodName(this.assistInChatStructured),
|
|
322
400
|
model,
|
|
323
401
|
usage: {
|
|
324
|
-
inputTextTokens
|
|
325
|
-
inputCachedTextTokens
|
|
326
|
-
outputTextTokens
|
|
402
|
+
inputTextTokens,
|
|
403
|
+
inputCachedTextTokens,
|
|
404
|
+
outputTextTokens,
|
|
327
405
|
},
|
|
328
406
|
writeMetrics,
|
|
329
407
|
});
|
|
@@ -352,17 +430,108 @@ class OpenAIAssistanceService extends services_1.LLMAssistanceService {
|
|
|
352
430
|
});
|
|
353
431
|
this.logger
|
|
354
432
|
?.child(this.getMethodName(this.assistInChatStructured))
|
|
355
|
-
.error('Error assisting in chat with structured
|
|
433
|
+
.error('Error assisting in chat with structured'
|
|
434
|
+
+ ' output using Responses API', {
|
|
356
435
|
error: (0, serializeError_1.serializeError)(error),
|
|
357
436
|
options,
|
|
358
437
|
});
|
|
359
438
|
return {
|
|
360
439
|
text: '',
|
|
361
440
|
error,
|
|
362
|
-
parseError: 'Failed to get structured response
|
|
441
|
+
parseError: 'Failed to get structured response'
|
|
442
|
+
+ ' from OpenAI Responses API',
|
|
443
|
+
};
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
convertCustomToolsToResponsesAPI(tools) {
|
|
447
|
+
return tools.map((tool) => ({
|
|
448
|
+
type: 'function',
|
|
449
|
+
name: tool.name,
|
|
450
|
+
description: tool.description,
|
|
451
|
+
parameters: tool.parameters._toProviderSchema(LLMService_typedefs_1.LLMProviders.OpenAI),
|
|
452
|
+
strict: true,
|
|
453
|
+
}));
|
|
454
|
+
}
|
|
455
|
+
async executeFunctionCall(call, toolDefinitions) {
|
|
456
|
+
const matchingTool = toolDefinitions.find((tool) => tool.name === call.name);
|
|
457
|
+
if (!matchingTool) {
|
|
458
|
+
return {
|
|
459
|
+
type: 'function_call_output',
|
|
460
|
+
call_id: call.call_id,
|
|
461
|
+
output: `Unknown tool: '${call.name}'`,
|
|
462
|
+
};
|
|
463
|
+
}
|
|
464
|
+
try {
|
|
465
|
+
const parsedArguments = JSON.parse(call.arguments);
|
|
466
|
+
const result = await matchingTool.execute(parsedArguments);
|
|
467
|
+
return {
|
|
468
|
+
type: 'function_call_output',
|
|
469
|
+
call_id: call.call_id,
|
|
470
|
+
output: result,
|
|
471
|
+
};
|
|
472
|
+
}
|
|
473
|
+
catch (error) {
|
|
474
|
+
const errorMessage = error instanceof Error
|
|
475
|
+
? error.message
|
|
476
|
+
: String(error);
|
|
477
|
+
return {
|
|
478
|
+
type: 'function_call_output',
|
|
479
|
+
call_id: call.call_id,
|
|
480
|
+
output: `Error executing tool '${call.name}':`
|
|
481
|
+
+ ` ${errorMessage}`,
|
|
363
482
|
};
|
|
364
483
|
}
|
|
365
484
|
}
|
|
485
|
+
async executeToolLoop(parameters) {
|
|
486
|
+
const { tools, model, chatId, maxIterations, abortSignal, allTools, textFormat, } = parameters;
|
|
487
|
+
let currentResponse = parameters.response;
|
|
488
|
+
const totalUsage = {
|
|
489
|
+
inputTokens: currentResponse.usage?.input_tokens ?? 0,
|
|
490
|
+
cachedInputTokens: currentResponse.usage
|
|
491
|
+
?.input_tokens_details
|
|
492
|
+
?.cached_tokens ?? 0,
|
|
493
|
+
outputTokens: currentResponse.usage?.output_tokens ?? 0,
|
|
494
|
+
reasoningTokens: currentResponse.usage
|
|
495
|
+
?.output_tokens_details
|
|
496
|
+
?.reasoning_tokens ?? 0,
|
|
497
|
+
};
|
|
498
|
+
for (let iteration = 0; iteration < maxIterations; iteration++) {
|
|
499
|
+
abortSignal?.throwIfAborted();
|
|
500
|
+
const functionCalls = this.getFunctionCallsFromResponse(currentResponse);
|
|
501
|
+
if (functionCalls.length === 0) {
|
|
502
|
+
break;
|
|
503
|
+
}
|
|
504
|
+
const outputItems = await Promise.all(functionCalls.map((call) => this.executeFunctionCall(call, tools)));
|
|
505
|
+
abortSignal?.throwIfAborted();
|
|
506
|
+
const nextResponse = await this.instance.responses.create({
|
|
507
|
+
model: model.name,
|
|
508
|
+
input: outputItems,
|
|
509
|
+
previous_response_id: currentResponse.id,
|
|
510
|
+
tools: allTools,
|
|
511
|
+
instructions: this.chatInstructions.get(chatId),
|
|
512
|
+
...(textFormat && { text: textFormat }),
|
|
513
|
+
}, { signal: abortSignal });
|
|
514
|
+
this.responseHistory.set(chatId, nextResponse.id);
|
|
515
|
+
totalUsage.inputTokens
|
|
516
|
+
+= nextResponse.usage?.input_tokens ?? 0;
|
|
517
|
+
totalUsage.cachedInputTokens
|
|
518
|
+
+= nextResponse.usage?.input_tokens_details
|
|
519
|
+
?.cached_tokens ?? 0;
|
|
520
|
+
totalUsage.outputTokens
|
|
521
|
+
+= nextResponse.usage?.output_tokens ?? 0;
|
|
522
|
+
totalUsage.reasoningTokens
|
|
523
|
+
+= nextResponse.usage?.output_tokens_details
|
|
524
|
+
?.reasoning_tokens ?? 0;
|
|
525
|
+
currentResponse = nextResponse;
|
|
526
|
+
}
|
|
527
|
+
return {
|
|
528
|
+
response: currentResponse,
|
|
529
|
+
totalUsage,
|
|
530
|
+
};
|
|
531
|
+
}
|
|
532
|
+
getFunctionCallsFromResponse(response) {
|
|
533
|
+
return response.output.filter((item) => item.type === 'function_call');
|
|
534
|
+
}
|
|
366
535
|
convertLLMMessageToResponsesInput(message) {
|
|
367
536
|
const { content, role } = message;
|
|
368
537
|
if (role === LLMService_typedefs_1.LLMRoles.Assistant) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAIAssistance.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/OpenAI/services/OpenAIAssistance.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { type LLMAssistanceOptions, type LLMAssistanceResult, type LLMAssistanceMessage, type LLMCreateChatOptions, type LLMCreateChatResult, type LLMCreateFileStorageOptions, type LLMCreateFileStorageResult, type LLMInstanceOptions, type LLMModel, type LLMProviders, LLMPurposes, type LLMUploadFileOptions, type LLMUploadFileResult, type LLMStructuredResult, type LLMUploadedFile } from '../LLMService.typedefs';
|
|
1
|
+
import { type LLMAssistanceOptions, type LLMAssistanceResult, type LLMAssistanceMessage, type LLMToolDefinition, type LLMCreateChatOptions, type LLMCreateChatResult, type LLMCreateFileStorageOptions, type LLMCreateFileStorageResult, type LLMInstanceOptions, type LLMModel, type LLMProviders, LLMPurposes, type LLMUploadFileOptions, type LLMUploadFileResult, type LLMStructuredResult, type LLMUploadedFile } from '../LLMService.typedefs';
|
|
2
2
|
import { type LLMLoggerInterface } from '../utilities/logger';
|
|
3
3
|
import { type LLMReporterInterface } from '../utilities/reporter';
|
|
4
4
|
import { LLMBaseService } from '../services';
|
|
5
5
|
import { type LLMSchemaInterface, type InferSchema } from '../utilities/schema';
|
|
6
6
|
export declare abstract class LLMAssistanceService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined> extends LLMBaseService<LLMPurposes.Assistance, Provider, Reporter> {
|
|
7
7
|
constructor(provider: Provider, logger: LLMLoggerInterface | undefined, reporter: Reporter, options?: LLMInstanceOptions[Provider]);
|
|
8
|
+
protected validateToolDefinitions(tools: LLMToolDefinition[]): void;
|
|
8
9
|
abstract uploadFile(options: LLMUploadFileOptions<Reporter>): Promise<LLMUploadFileResult>;
|
|
9
10
|
abstract getFile(path: string): Promise<LLMUploadedFile | null>;
|
|
10
11
|
abstract deleteFile(fileId: string): Promise<void>;
|
|
@@ -12,12 +13,13 @@ export declare abstract class LLMAssistanceService<Provider extends LLMProviders
|
|
|
12
13
|
abstract deleteFileStorage(fileStorageId: string): Promise<void>;
|
|
13
14
|
abstract createChat(options: LLMCreateChatOptions<Provider, Reporter>): Promise<LLMCreateChatResult>;
|
|
14
15
|
abstract deleteChat(chatId: string): Promise<void>;
|
|
15
|
-
|
|
16
|
+
assistInChat<Schema extends LLMSchemaInterface>(options: LLMAssistanceOptions<Provider, Reporter> & {
|
|
16
17
|
schema: Schema;
|
|
17
18
|
}): Promise<LLMStructuredResult<InferSchema<Schema>>>;
|
|
18
|
-
|
|
19
|
-
abstract
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
assistInChat(options: LLMAssistanceOptions<Provider, Reporter>): Promise<LLMAssistanceResult>;
|
|
20
|
+
protected abstract assistInChatText(options: LLMAssistanceOptions<Provider, Reporter>): Promise<LLMAssistanceResult>;
|
|
21
|
+
protected abstract assistInChatStructured(options: LLMAssistanceOptions<Provider, Reporter> & {
|
|
22
|
+
schema: LLMSchemaInterface;
|
|
23
|
+
}): Promise<LLMStructuredResult>;
|
|
22
24
|
abstract countTokens(messages: LLMAssistanceMessage[], model: LLMModel<Provider>): Promise<number>;
|
|
23
25
|
}
|
|
@@ -7,6 +7,26 @@ class LLMAssistanceService extends services_1.LLMBaseService {
|
|
|
7
7
|
constructor(provider, logger, reporter, options) {
|
|
8
8
|
super(provider, 'AssistanceService', LLMService_typedefs_1.LLMPurposes.Assistance, logger, reporter, options);
|
|
9
9
|
}
|
|
10
|
+
validateToolDefinitions(tools) {
|
|
11
|
+
const namePattern = /^[a-zA-Z0-9_-]+$/;
|
|
12
|
+
const names = new Set();
|
|
13
|
+
for (const tool of tools) {
|
|
14
|
+
if (!namePattern.test(tool.name)) {
|
|
15
|
+
throw new Error(`Invalid tool name "${tool.name}":`
|
|
16
|
+
+ ' must match [a-zA-Z0-9_-]+');
|
|
17
|
+
}
|
|
18
|
+
if (names.has(tool.name)) {
|
|
19
|
+
throw new Error(`Duplicate tool name "${tool.name}"`);
|
|
20
|
+
}
|
|
21
|
+
names.add(tool.name);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
assistInChat(options) {
|
|
25
|
+
if (options.schema) {
|
|
26
|
+
return this.assistInChatStructured(options);
|
|
27
|
+
}
|
|
28
|
+
return this.assistInChatText(options);
|
|
29
|
+
}
|
|
10
30
|
}
|
|
11
31
|
exports.LLMAssistanceService = LLMAssistanceService;
|
|
12
32
|
//# sourceMappingURL=LLMAssistanceService.abstract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LLMAssistanceService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMAssistanceService.abstract.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"LLMAssistanceService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMAssistanceService.abstract.ts"],"names":[],"mappings":";;;AAAA,+DAiB+B;AAG/B,yCAA4C;AAG5C,MAAsB,oBAGpB,SAAQ,yBAIP;IACD,YACE,QAAkB,EAClB,MAAsC,EACtC,QAAkB,EAClB,OAAsC;QAEtC,KAAK,CACH,QAAQ,EACR,mBAAmB,EACnB,iCAAW,CAAC,UAAU,EACtB,MAAM,EACN,QAAQ,EACR,OAAO,CACR,CAAC;IACJ,CAAC;IAES,uBAAuB,CAC/B,KAA0B;QAE1B,MAAM,WAAW,GAAG,kBAAkB,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAEhC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAC,IAAI,IAAI;sBACjC,4BAA4B,CAC/B,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,CAAC,IAAI,GAAG,CACrC,CAAC;YACJ,CAAC;YAED,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAuCD,YAAY,CACV,OACmC;QAEnC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,sBAAsB,CAChC,OACkC,CACnC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;CAeF;AAhHD,oDAgHC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ChatCompletionMessageParam, ChatCompletionMessageToolCall } from 'openai/resources/chat';
|
|
2
|
+
import type { ChatCompletionContentPart } from 'openai/resources/chat';
|
|
3
|
+
interface ChatStateEntry {
|
|
4
|
+
instructions: string | undefined;
|
|
5
|
+
storageId: string | undefined;
|
|
6
|
+
messages: ChatCompletionMessageParam[];
|
|
7
|
+
}
|
|
8
|
+
export declare class CompletionsChatState {
|
|
9
|
+
private chats;
|
|
10
|
+
createChat(chatId: string, instructions?: string, storageId?: string, history?: ChatCompletionMessageParam[]): void;
|
|
11
|
+
getChat(chatId: string): ChatStateEntry | null;
|
|
12
|
+
appendUserMessage(chatId: string, content: ChatCompletionContentPart[]): void;
|
|
13
|
+
appendAssistantMessage(chatId: string, content: string): void;
|
|
14
|
+
appendToolCallMessages(chatId: string, toolCalls: ChatCompletionMessageToolCall[]): void;
|
|
15
|
+
appendToolResult(chatId: string, toolCallId: string, content: string): void;
|
|
16
|
+
getMessages(chatId: string): ChatCompletionMessageParam[];
|
|
17
|
+
deleteChat(chatId: string): void;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CompletionsChatState = void 0;
|
|
4
|
+
class CompletionsChatState {
|
|
5
|
+
chats = new Map();
|
|
6
|
+
createChat(chatId, instructions, storageId, history) {
|
|
7
|
+
const messages = [];
|
|
8
|
+
if (instructions) {
|
|
9
|
+
messages.push({
|
|
10
|
+
role: 'system',
|
|
11
|
+
content: instructions,
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
if (history) {
|
|
15
|
+
messages.push(...history);
|
|
16
|
+
}
|
|
17
|
+
this.chats.set(chatId, {
|
|
18
|
+
instructions,
|
|
19
|
+
storageId,
|
|
20
|
+
messages,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
getChat(chatId) {
|
|
24
|
+
return this.chats.get(chatId) ?? null;
|
|
25
|
+
}
|
|
26
|
+
appendUserMessage(chatId, content) {
|
|
27
|
+
const chat = this.chats.get(chatId);
|
|
28
|
+
if (!chat) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
chat.messages.push({
|
|
32
|
+
role: 'user',
|
|
33
|
+
content,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
appendAssistantMessage(chatId, content) {
|
|
37
|
+
const chat = this.chats.get(chatId);
|
|
38
|
+
if (!chat) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
chat.messages.push({
|
|
42
|
+
role: 'assistant',
|
|
43
|
+
content,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
appendToolCallMessages(chatId, toolCalls) {
|
|
47
|
+
const chat = this.chats.get(chatId);
|
|
48
|
+
if (!chat) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
chat.messages.push({
|
|
52
|
+
role: 'assistant',
|
|
53
|
+
content: null,
|
|
54
|
+
tool_calls: toolCalls,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
appendToolResult(chatId, toolCallId, content) {
|
|
58
|
+
const chat = this.chats.get(chatId);
|
|
59
|
+
if (!chat) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
chat.messages.push({
|
|
63
|
+
role: 'tool',
|
|
64
|
+
tool_call_id: toolCallId,
|
|
65
|
+
content,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
getMessages(chatId) {
|
|
69
|
+
const chat = this.chats.get(chatId);
|
|
70
|
+
if (!chat) {
|
|
71
|
+
return [];
|
|
72
|
+
}
|
|
73
|
+
return chat.messages;
|
|
74
|
+
}
|
|
75
|
+
deleteChat(chatId) {
|
|
76
|
+
this.chats.delete(chatId);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.CompletionsChatState = CompletionsChatState;
|
|
80
|
+
//# sourceMappingURL=CompletionsChatState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CompletionsChatState.js","sourceRoot":"","sources":["../../../src/services/chatState/CompletionsChatState.ts"],"names":[],"mappings":";;;AAcA,MAAa,oBAAoB;IACvB,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;IAElD,UAAU,CACR,MAAc,EACd,YAAqB,EACrB,SAAkB,EAClB,OAAsC;QAEtC,MAAM,QAAQ,GAAiC,EAAE,CAAC;QAElD,IAAI,YAAY,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE;YACrB,YAAY;YACZ,SAAS;YACT,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,MAAc;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,iBAAiB,CACf,MAAc,EACd,OAAoC;QAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,MAAM;YACZ,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,sBAAsB,CACpB,MAAc,EACd,OAAe;QAEf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,WAAW;YACjB,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,sBAAsB,CACpB,MAAc,EACd,SAA0C;QAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CACd,MAAc,EACd,UAAkB,EAClB,OAAe;QAEf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,MAAM;YACZ,YAAY,EAAE,UAAU;YACxB,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CAAC,MAAc;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,UAAU,CAAC,MAAc;QACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CACF;AAjHD,oDAiHC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { CompletionsChatState } from './CompletionsChatState';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CompletionsChatState = void 0;
|
|
4
|
+
var CompletionsChatState_1 = require("./CompletionsChatState");
|
|
5
|
+
Object.defineProperty(exports, "CompletionsChatState", { enumerable: true, get: function () { return CompletionsChatState_1.CompletionsChatState; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/chatState/index.ts"],"names":[],"mappings":";;;AAAA,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type InMemoryFileStorage } from './InMemoryFileStorage';
|
|
2
|
+
export declare class FileStorageToolExecutor {
|
|
3
|
+
private storage;
|
|
4
|
+
constructor(storage: InMemoryFileStorage);
|
|
5
|
+
execute(storageId: string, toolName: string, rawArguments: string): string;
|
|
6
|
+
private listFiles;
|
|
7
|
+
private searchFiles;
|
|
8
|
+
private mergeContextRanges;
|
|
9
|
+
private readFile;
|
|
10
|
+
private readFileLines;
|
|
11
|
+
private resolveLineRange;
|
|
12
|
+
private findFileByPath;
|
|
13
|
+
private fileNotFoundMessage;
|
|
14
|
+
private formatLinesWithNumbers;
|
|
15
|
+
}
|