@mate-academy/llm-gateway 7.1.5 → 7.2.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.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseXmlToolCalls = exports.stripThinkingTags = exports.sanitizeJsonResponse = exports.LLMAPIJsonFixer = void 0;
3
+ exports.buildSchemaInstruction = exports.buildLLMAPIResponseFormat = exports.parseXmlToolCalls = exports.stripThinkingTags = exports.sanitizeJsonResponse = exports.LLMAPIJsonFixer = void 0;
4
4
  var LLMAPIJsonFixer_1 = require("./LLMAPIJsonFixer");
5
5
  Object.defineProperty(exports, "LLMAPIJsonFixer", { enumerable: true, get: function () { return LLMAPIJsonFixer_1.LLMAPIJsonFixer; } });
6
6
  Object.defineProperty(exports, "sanitizeJsonResponse", { enumerable: true, get: function () { return LLMAPIJsonFixer_1.sanitizeJsonResponse; } });
@@ -8,4 +8,7 @@ var stripThinkingTags_1 = require("./stripThinkingTags");
8
8
  Object.defineProperty(exports, "stripThinkingTags", { enumerable: true, get: function () { return stripThinkingTags_1.stripThinkingTags; } });
9
9
  var parseXmlToolCalls_1 = require("./parseXmlToolCalls");
10
10
  Object.defineProperty(exports, "parseXmlToolCalls", { enumerable: true, get: function () { return parseXmlToolCalls_1.parseXmlToolCalls; } });
11
+ var structuredOutput_1 = require("./structuredOutput");
12
+ Object.defineProperty(exports, "buildLLMAPIResponseFormat", { enumerable: true, get: function () { return structuredOutput_1.buildLLMAPIResponseFormat; } });
13
+ Object.defineProperty(exports, "buildSchemaInstruction", { enumerable: true, get: function () { return structuredOutput_1.buildSchemaInstruction; } });
11
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/LLMAPI/utilities/index.ts"],"names":[],"mappings":";;;AAAA,qDAG2B;AAFzB,kHAAA,eAAe,OAAA;AACf,uHAAA,oBAAoB,OAAA;AAEtB,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/LLMAPI/utilities/index.ts"],"names":[],"mappings":";;;AAAA,qDAG2B;AAFzB,kHAAA,eAAe,OAAA;AACf,uHAAA,oBAAoB,OAAA;AAEtB,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,uDAI4B;AAF1B,6HAAA,yBAAyB,OAAA;AACzB,0HAAA,sBAAsB,OAAA"}
@@ -0,0 +1,13 @@
1
+ import type { LLMModel, LLMProviders } from '../../../LLMService.typedefs';
2
+ export type LLMAPIResponseFormat = {
3
+ type: 'json_object';
4
+ } | {
5
+ type: 'json_schema';
6
+ json_schema: {
7
+ name: string;
8
+ strict: boolean;
9
+ schema: Record<string, unknown>;
10
+ };
11
+ };
12
+ export declare function buildSchemaInstruction(jsonSchema: Record<string, unknown>): string;
13
+ export declare function buildLLMAPIResponseFormat(model: LLMModel<LLMProviders.LLMAPI>, jsonSchema: Record<string, unknown>): LLMAPIResponseFormat | undefined;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildSchemaInstruction = buildSchemaInstruction;
4
+ exports.buildLLMAPIResponseFormat = buildLLMAPIResponseFormat;
5
+ const promptBuilder_1 = require("../../../utilities/promptBuilder");
6
+ const STRUCTURED_RESPONSE_NAME = 'structured_response';
7
+ const SCHEMA_INSTRUCTION_TEMPLATE = (0, promptBuilder_1.createPromptTemplate)('You MUST respond with a valid JSON object matching this JSON schema:\n{{schema}}');
8
+ function buildSchemaInstruction(jsonSchema) {
9
+ return SCHEMA_INSTRUCTION_TEMPLATE({
10
+ schema: JSON.stringify(jsonSchema, null, 2),
11
+ });
12
+ }
13
+ function buildLLMAPIResponseFormat(model, jsonSchema) {
14
+ if (model.capabilities?.structuredOutputs === true) {
15
+ return {
16
+ type: 'json_schema',
17
+ json_schema: {
18
+ name: STRUCTURED_RESPONSE_NAME,
19
+ strict: true,
20
+ schema: jsonSchema,
21
+ },
22
+ };
23
+ }
24
+ if (model.capabilities?.jsonOutput === true) {
25
+ return { type: 'json_object' };
26
+ }
27
+ return undefined;
28
+ }
29
+ //# sourceMappingURL=structuredOutput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structuredOutput.js","sourceRoot":"","sources":["../../../../src/providers/LLMAPI/utilities/structuredOutput.ts"],"names":[],"mappings":";;AAoBA,wDAMC;AAED,8DAoBC;AA/CD,6DAAiE;AAajE,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAEvD,MAAM,2BAA2B,GAAG,IAAA,oCAAoB,EACtD,kFAAkF,CACnF,CAAC;AAEF,SAAgB,sBAAsB,CACpC,UAAmC;IAEnC,OAAO,2BAA2B,CAAC;QACjC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,yBAAyB,CACvC,KAAoC,EACpC,UAAmC;IAEnC,IAAI,KAAK,CAAC,YAAY,EAAE,iBAAiB,KAAK,IAAI,EAAE,CAAC;QACnD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE;gBACX,IAAI,EAAE,wBAAwB;gBAC9B,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,UAAU;aACnB;SACF,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,EAAE,UAAU,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IACjC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -66,7 +66,7 @@ class CompletionsChatState {
66
66
  chat.messages.push({
67
67
  role: 'tool',
68
68
  tool_call_id: toolCallId,
69
- content,
69
+ content: content || 'No output.',
70
70
  });
71
71
  }
72
72
  getMessages(chatId) {
@@ -1 +1 @@
1
- {"version":3,"file":"CompletionsChatState.js","sourceRoot":"","sources":["../../../src/services/chatState/CompletionsChatState.ts"],"names":[],"mappings":";;;AAYA,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,EAC1C,gBAAyB;QAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAA+B;YAC1C,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,SAAS;YACrB,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI;gBACpC,iBAAiB,EAAE,gBAAgB;aACpC,CAAC;SACH,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,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;AAvHD,oDAuHC"}
1
+ {"version":3,"file":"CompletionsChatState.js","sourceRoot":"","sources":["../../../src/services/chatState/CompletionsChatState.ts"],"names":[],"mappings":";;;AAYA,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,EAC1C,gBAAyB;QAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAA+B;YAC1C,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,SAAS;YACrB,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI;gBACpC,iBAAiB,EAAE,gBAAgB;aACpC,CAAC;SACH,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,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,EAAE,OAAO,IAAI,YAAY;SACjC,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;AAvHD,oDAuHC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mate-academy/llm-gateway",
3
- "version": "7.1.5",
3
+ "version": "7.2.1",
4
4
  "description": "A gateway package for LLM services.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",