@mate-academy/llm-gateway 2.3.0 → 2.4.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.
Files changed (53) hide show
  1. package/README.md +159 -0
  2. package/dist/LLMService.typedefs.d.ts +9 -0
  3. package/dist/LLMService.typedefs.js.map +1 -1
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.js +1 -1
  8. package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.js.map +1 -1
  9. package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.d.ts +4 -0
  10. package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.js +2 -1
  11. package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.js.map +1 -1
  12. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.d.ts +7 -1
  13. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js +77 -1
  14. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map +1 -1
  15. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.d.ts +7 -1
  16. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js +79 -2
  17. package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js.map +1 -1
  18. package/dist/providers/OpenAI/OpenAI.constants.js +1 -1
  19. package/dist/providers/OpenAI/OpenAI.constants.js.map +1 -1
  20. package/dist/providers/OpenAI/services/OpenAIAssistance.service.d.ts +7 -1
  21. package/dist/providers/OpenAI/services/OpenAIAssistance.service.js +117 -3
  22. package/dist/providers/OpenAI/services/OpenAIAssistance.service.js.map +1 -1
  23. package/dist/providers/OpenAI/services/OpenAICompletion.service.d.ts +7 -1
  24. package/dist/providers/OpenAI/services/OpenAICompletion.service.js +86 -2
  25. package/dist/providers/OpenAI/services/OpenAICompletion.service.js.map +1 -1
  26. package/dist/services/LLMAssistanceService.abstract.d.ts +8 -1
  27. package/dist/services/LLMAssistanceService.abstract.js.map +1 -1
  28. package/dist/services/LLMCompletionService.abstract.d.ts +8 -1
  29. package/dist/services/LLMCompletionService.abstract.js.map +1 -1
  30. package/dist/utilities/functional.utils.js.map +1 -0
  31. package/dist/utilities/index.d.ts +3 -0
  32. package/dist/utilities/index.js +22 -0
  33. package/dist/utilities/index.js.map +1 -0
  34. package/dist/utilities/promptBuilder.js.map +1 -0
  35. package/dist/utilities/schema/AbstractSchemaBuilder.d.ts +50 -0
  36. package/dist/utilities/schema/AbstractSchemaBuilder.js +11 -0
  37. package/dist/utilities/schema/AbstractSchemaBuilder.js.map +1 -0
  38. package/dist/utilities/schema/LLMSchema.d.ts +119 -0
  39. package/dist/utilities/schema/LLMSchema.js +286 -0
  40. package/dist/utilities/schema/LLMSchema.js.map +1 -0
  41. package/dist/utilities/schema/LLMSchemaInterface.d.ts +47 -0
  42. package/dist/utilities/schema/LLMSchemaInterface.js +3 -0
  43. package/dist/utilities/schema/LLMSchemaInterface.js.map +1 -0
  44. package/dist/utilities/schema/index.d.ts +3 -0
  45. package/dist/utilities/schema/index.js +11 -0
  46. package/dist/utilities/schema/index.js.map +1 -0
  47. package/package.json +19 -11
  48. package/dist/functional.utils.js.map +0 -1
  49. package/dist/promptBuilder.js.map +0 -1
  50. /package/dist/{functional.utils.d.ts → utilities/functional.utils.d.ts} +0 -0
  51. /package/dist/{functional.utils.js → utilities/functional.utils.js} +0 -0
  52. /package/dist/{promptBuilder.d.ts → utilities/promptBuilder.d.ts} +0 -0
  53. /package/dist/{promptBuilder.js → utilities/promptBuilder.js} +0 -0
package/README.md CHANGED
@@ -15,6 +15,7 @@ npm install @mate-academy/llm-gateway
15
15
  ## Features
16
16
 
17
17
  - Support for multiple LLM providers (OpenAI, Google Generative AI)
18
+ - **Structured Output**: Type-safe JSON responses with schema validation
18
19
  - Standardized completion service interface
19
20
  - Standardized assistance service interface with file handling
20
21
  - Speech-to-text transcription capabilities
@@ -25,6 +26,7 @@ npm install @mate-academy/llm-gateway
25
26
  - Factory pattern for easy provider selection
26
27
  - Consistent logging across all providers
27
28
  - Comprehensive testing suite with integration tests
29
+ - Full backward compatibility
28
30
 
29
31
  ## Usage
30
32
 
@@ -43,6 +45,7 @@ import {
43
45
  LLMUploadFileMimeTypes,
44
46
  LLMCompletionMessage,
45
47
  LLMModel,
48
+ LLMSchema,
46
49
  createPromptTemplate,
47
50
  } from '@mate-academy/llm-gateway';
48
51
 
@@ -221,6 +224,162 @@ const result = await completionService.sendMessage({
221
224
  console.log(result.text); // AI response
222
225
  ```
223
226
 
227
+ ### Structured Output
228
+
229
+ The LLM Gateway supports structured output, allowing you to request type-safe, validated JSON responses from LLM providers.
230
+
231
+ #### Basic Structured Output
232
+
233
+ ```typescript
234
+ import { LLMSchema } from '@mate-academy/llm-gateway';
235
+
236
+ // Define your output schema
237
+ const personSchema = LLMSchema.object({
238
+ name: LLMSchema.string(),
239
+ age: LLMSchema.number().min(1),
240
+ email: LLMSchema.string().email(),
241
+ isActive: LLMSchema.boolean(),
242
+ });
243
+
244
+ // Request structured output
245
+ const result = await completionService.sendMessage({
246
+ message: {
247
+ role: LLMRoles.User,
248
+ content: [{
249
+ type: LLMMessageContentType.TEXT,
250
+ text: 'Create a person profile for John Smith, 30 years old, email john@example.com'
251
+ }]
252
+ },
253
+ model: preferredModel,
254
+ schema: personSchema // Add schema for structured output
255
+ });
256
+
257
+ // Type-safe access to structured data
258
+ if (result.data) {
259
+ console.log(result.data.name); // string
260
+ console.log(result.data.age); // number
261
+ console.log(result.data.email); // string
262
+ console.log(result.data.isActive); // boolean
263
+ }
264
+
265
+ // Always available as text fallback
266
+ console.log(result.text);
267
+ ```
268
+
269
+ #### Complex Schema Example
270
+
271
+ ```typescript
272
+ const analysisSchema = LLMSchema.object({
273
+ sentiment: LLMSchema.enum(['positive', 'negative', 'neutral']),
274
+ confidence: LLMSchema.number().min(0).max(1),
275
+ keywords: LLMSchema.array(LLMSchema.string()),
276
+ summary: LLMSchema.string(),
277
+ metadata: LLMSchema.object({
278
+ processedAt: LLMSchema.string(),
279
+ modelVersion: LLMSchema.string(),
280
+ }),
281
+ });
282
+
283
+ const result = await completionService.sendMessage({
284
+ message: {
285
+ role: LLMRoles.User,
286
+ content: [{
287
+ type: LLMMessageContentType.TEXT,
288
+ text: 'Analyze this text: "I love this new feature!"'
289
+ }]
290
+ },
291
+ model: preferredModel,
292
+ schema: analysisSchema
293
+ });
294
+
295
+ // Fully type-safe access
296
+ if (result.data) {
297
+ console.log(result.data.sentiment); // 'positive' | 'negative' | 'neutral'
298
+ console.log(result.data.confidence); // number (0-1)
299
+ console.log(result.data.keywords); // string[]
300
+ console.log(result.data.summary); // string
301
+ console.log(result.data.metadata.processedAt); // string
302
+ }
303
+ ```
304
+
305
+ #### Schema API Reference
306
+
307
+ The `LLMSchema` builder provides a fluent API for defining output schemas:
308
+
309
+ **Basic Types:**
310
+ - `LLMSchema.string()` - String values
311
+ - `LLMSchema.number()` - Numeric values
312
+ - `LLMSchema.boolean()` - Boolean values
313
+ - `LLMSchema.array(itemSchema)` - Arrays of items
314
+ - `LLMSchema.object({ ... })` - Object with specified properties
315
+ - `LLMSchema.enum(['option1', 'option2'])` - Enumerated values
316
+ - `LLMSchema.literal('exact_value')` - Exact literal values
317
+
318
+ **Modifiers:**
319
+ - `.optional()` - Makes field optional (Note: OpenAI strict mode requires all fields)
320
+ - `.nullable()` - Allows null values
321
+ - `.default(value)` - Sets default value
322
+ - `.describe(text)` - Adds description
323
+
324
+ **String Modifiers:**
325
+ - `.min(length)` - Minimum string length
326
+ - `.max(length)` - Maximum string length
327
+ - `.email()` - Email validation
328
+ - `.url()` - URL validation
329
+ - `.uuid()` - UUID validation
330
+
331
+ **Number Modifiers:**
332
+ - `.int()` - Integer values only
333
+ - `.positive()` - Positive numbers (Note: Use `.min(1)` for better OpenAI compatibility)
334
+ - `.negative()` - Negative numbers
335
+ - `.min(value)` - Minimum value
336
+ - `.max(value)` - Maximum value
337
+
338
+ #### Error Handling
339
+
340
+ ```typescript
341
+ const result = await completionService.sendMessage({
342
+ message: { /* ... */ },
343
+ model: preferredModel,
344
+ schema: mySchema
345
+ });
346
+
347
+ if (result.data) {
348
+ // Successfully parsed structured output
349
+ console.log('Structured data:', result.data);
350
+ } else if (result.parseError) {
351
+ // Parsing failed, but text is still available
352
+ console.error('Parse error:', result.parseError);
353
+ console.log('Raw text:', result.text);
354
+ } else if (result.error) {
355
+ // Request failed entirely
356
+ console.error('Request error:', result.error);
357
+ }
358
+ ```
359
+
360
+ #### Provider Support
361
+
362
+ - **OpenAI**: Uses native `response_format` with `json_schema` for optimal performance
363
+ - **Google Generative AI**: Uses native `responseSchema` parameter for structured output
364
+ - **Backward Compatibility**: All existing code continues to work unchanged
365
+
366
+ #### Provider Compatibility Notes
367
+
368
+ **OpenAI Structured Output Requirements:**
369
+ - All properties must be required (no truly optional fields in strict mode)
370
+ - Use `.min(1)` instead of `.positive()` for better compatibility
371
+ - Nested objects and arrays are fully supported
372
+
373
+ **Google Generative AI:**
374
+ - Supports optional fields correctly
375
+ - Handles all schema types and modifiers
376
+ - More flexible with schema variations
377
+
378
+ **Best Practices for Cross-Provider Compatibility:**
379
+ - Make all fields required when possible
380
+ - Use `.min()` and `.max()` instead of `.positive()`, `.negative()`
381
+ - Test schemas with both providers if cross-compatibility is important
382
+
224
383
  #### File-based Assistance
225
384
 
226
385
  ```typescript
@@ -206,6 +206,15 @@ export interface LLMSendMessageOptions<Provider extends LLMProviders> extends LL
206
206
  history?: LLMCompletionMessage[];
207
207
  instructions?: string;
208
208
  }
209
+ /**
210
+ * Result type for structured output from LLM providers.
211
+ * @template T - The type of the structured data
212
+ */
213
+ export type LLMStructuredResult<T = any> = LLMRequestResult<{
214
+ text: string;
215
+ data?: T;
216
+ parseError?: string;
217
+ }>;
209
218
  /**
210
219
  * Limits for files that can be uploaded to LLM services.
211
220
  */
@@ -1 +1 @@
1
- {"version":3,"file":"LLMService.typedefs.js","sourceRoot":"","sources":["../src/LLMService.typedefs.ts"],"names":[],"mappings":";;;AAkBA;;GAEG;AACH,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,yDAAyC,CAAA;AAC3C,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAkBD;;GAEG;AACH,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,wCAAyB,CAAA;IACzB,8CAA+B,CAAA;IAC/B,8CAA+B,CAAA;AACjC,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAyFD;;GAEG;AACH,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAED;;GAEG;AACH,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,sCAAa,CAAA;IACb,gDAAuB,CAAA;IACvB,kDAAyB,CAAA;IACzB,kDAAyB,CAAA;AAC3B,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AAkHD;;GAEG;AACH,IAAY,sBAeX;AAfD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,yDAA+B,CAAA;IAC/B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,oDAA0B,CAAA;IAC1B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;AACzB,CAAC,EAfW,sBAAsB,sCAAtB,sBAAsB,QAejC"}
1
+ {"version":3,"file":"LLMService.typedefs.js","sourceRoot":"","sources":["../src/LLMService.typedefs.ts"],"names":[],"mappings":";;;AAkBA;;GAEG;AACH,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,yDAAyC,CAAA;AAC3C,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAkBD;;GAEG;AACH,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,wCAAyB,CAAA;IACzB,8CAA+B,CAAA;IAC/B,8CAA+B,CAAA;AACjC,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAyFD;;GAEG;AACH,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,mCAAuB,CAAA;AACzB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAED;;GAEG;AACH,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,sCAAa,CAAA;IACb,gDAAuB,CAAA;IACvB,kDAAyB,CAAA;IACzB,kDAAyB,CAAA;AAC3B,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AA4HD;;GAEG;AACH,IAAY,sBAeX;AAfD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,yDAA+B,CAAA;IAC/B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,oDAA0B,CAAA;IAC1B,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;AACzB,CAAC,EAfW,sBAAsB,sCAAtB,sBAAsB,QAejC"}
package/dist/index.d.ts CHANGED
@@ -3,4 +3,4 @@ export * from './LLMService.factory';
3
3
  export * from './LLMService.typedefs';
4
4
  export * from './providers';
5
5
  export * from './services';
6
- export * from './promptBuilder';
6
+ export * from './utilities';
package/dist/index.js CHANGED
@@ -19,5 +19,5 @@ __exportStar(require("./LLMService.factory"), exports);
19
19
  __exportStar(require("./LLMService.typedefs"), exports);
20
20
  __exportStar(require("./providers"), exports);
21
21
  __exportStar(require("./services"), exports);
22
- __exportStar(require("./promptBuilder"), exports);
22
+ __exportStar(require("./utilities"), exports);
23
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC,8CAA4B;AAC5B,6CAA2B;AAC3B,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,uDAAqC;AACrC,wDAAsC;AACtC,8CAA4B;AAC5B,6CAA2B;AAC3B,8CAA4B"}
@@ -4,7 +4,7 @@ exports.GOOGLE_AI_SERVICE_BUILDERS = exports.GOOGLE_AI_MODELS = exports.MIN_CACH
4
4
  const LLMService_typedefs_1 = require("../../LLMService.typedefs");
5
5
  const GoogleGenerativeAI_typedefs_1 = require("./GoogleGenerativeAI.typedefs");
6
6
  const services_1 = require("../../providers/GoogleGenerativeAI/services");
7
- const functional_utils_1 = require("../../functional.utils");
7
+ const functional_utils_1 = require("../../utilities/functional.utils");
8
8
  exports.MIN_CACHE_CONTENT_LENGTH = 32_768;
9
9
  const GOOGLE_AI_AVAILABLE_MODELS = {
10
10
  [GoogleGenerativeAI_typedefs_1.GoogleGenerativeAIModelNames.GEMINI_1_5_FLASH]: {
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGenerativeAI.constants.js","sourceRoot":"","sources":["../../../src/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleGenerativeAI.constants.js","sourceRoot":"","sources":["../../../src/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ export declare class GoogleGenerativeAIEntity {
7
7
  messages: Content[];
8
8
  instructions?: string;
9
9
  abortSignal?: AbortSignal;
10
+ responseConfig?: {
11
+ responseMimeType?: string;
12
+ responseSchema?: any;
13
+ };
10
14
  }): GenerateContentParameters;
11
15
  static getFileDataParts(uploadedFiles: LLMUploadedFile[]): Pick<Part, 'fileData'>[];
12
16
  static getTextParts(messages: string[]): Pick<Part, 'text'>[];
@@ -8,7 +8,7 @@ const axios_1 = __importDefault(require("axios"));
8
8
  const LLMService_typedefs_1 = require("../../LLMService.typedefs");
9
9
  class GoogleGenerativeAIEntity {
10
10
  static getContentParameters(options) {
11
- const { model, messages, instructions, abortSignal, } = options;
11
+ const { model, messages, instructions, abortSignal, responseConfig, } = options;
12
12
  return {
13
13
  model: model.name,
14
14
  contents: messages,
@@ -16,6 +16,7 @@ class GoogleGenerativeAIEntity {
16
16
  systemInstruction: instructions,
17
17
  temperature: model.config.temperature,
18
18
  abortSignal,
19
+ ...responseConfig,
19
20
  },
20
21
  };
21
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGenerativeAI.entity.js","sourceRoot":"","sources":["../../../src/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleGenerativeAI.entity.js","sourceRoot":"","sources":["../../../src/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAU1B,+DAY+B;AAE/B,MAAa,wBAAwB;IACnC,MAAM,CAAC,oBAAoB,CAAC,OAS3B;QACC,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,cAAc,GACf,GAAG,OAAO,CAAC;QAEZ,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE;gBACN,iBAAiB,EAAE,YAAY;gBAC/B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW;gBACrC,WAAW;gBACX,GAAG,cAAc;aAClB;SACF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,aAAgC;QAEhC,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClC,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,CAAC,YAAY,CACjB,QAAkB;QAElB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,OAAoD,EACpD,QAAqB,EACrB,MAAc;QAEd,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,8BAAQ,CAAC,SAAS;YAC9C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAEjB,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1C,QAAQ,WAAW,CAAC,IAAI,EAAE,CAAC;gBACzB,KAAK,2CAAqB,CAAC,IAAI;oBAC7B,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI,EAAE,WAAW,CAAC,IAAI;qBACvB,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,2CAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;oBACrC,MAAM,IAAI,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;2BACvD,4CAAsB,CAAC,SAAS,CAAC;oBACtC,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE;wBAC1D,YAAY,EAAE,aAAa;qBAC5B,CAAC,CAAC;oBAEH,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAE/C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAEtD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;wBAC/C,IAAI,EAAE,IAAI;qBACX,CAAC,CAAC;oBAEH,KAAK,CAAC,IAAI,CAAC;wBACT,QAAQ,EAAE;4BACR,OAAO,EAAE,YAAY,CAAC,GAAG;4BACzB,QAAQ;yBACT;qBACF,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBAED,KAAK,2CAAqB,CAAC,UAAU;oBACnC,KAAK,CAAC,IAAI,CAAC;wBACT,QAAQ,EAAE;4BACR,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI;4BACpC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,SAAS;yBAC3C;qBACF,CAAC,CAAC;oBACH,MAAM;gBAER;oBACE,MAAM;yBACH,KAAK,CAAC,qCAAqC,CAAC;yBAC5C,IAAI,CAAC,0CAA0C,EAAE;wBAChD,WAAW;qBACZ,CAAC,CAAC;oBACL,MAAM;YACV,CAAC;QACH,CAAC;QAED,IACE,aAAa,IAAI,OAAO;eACrB,OAAO,CAAC,WAAW,EACtB,CAAC;YACD,KAAK,CAAC,IAAI,CACR,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,CAC9C,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI;YACJ,KAAK;SACN,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,QAAqB;QAErB,MAAM,cAAc,GAAG,CAAC,OAA6B,EAAsB,EAAE,CAAC,OAAO,CACnF,OAAO;eACJ,OAAO,OAAO,KAAK,QAAQ;eAC3B,MAAM,IAAI,OAAO;eACjB,OAAO,IAAI,OAAO,CACtB,CAAC;QAEF,OAAO,KAAK,EACV,aAA+B,EAC/B,KAAgD,EAC/B,EAAE;YACnB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,CAAC,CAAC;YACX,CAAC;YAED,MAAM,aAAa,GAAc,EAAE,CAAC;YAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjC,aAAa,CAAC,IAAI,CAChB,GAAG,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CACxC,CAAC;YACJ,CAAC;iBAAM,IAAI,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;YAED,MAAM,yBAAyB,GAAG,aAAa,CAAC,MAAM,CACpD,CAAC,OAAO,EAAE,EAAE,CAAC,CACX,OAAO;mBACJ,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;mBAChC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAChC,CACF,CAAC;YAEF,IAAI,yBAAyB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,CAAC;YACX,CAAC;YAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;gBACxD,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,QAAQ,EAAE,yBAAyB;aACpC,CAAC,CAAC;YAEH,OAAO,WAAW,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,EACpC,YAAY,GAAG,EAAE,EACjB,OAAO,GAAG,EAAE,EACZ,OAAO,EACP,KAAK,EACL,aAAa,EACb,QAAQ,EACR,MAAM,GAIP;QACC,MAAM,mBAAmB,GAAc,MAAM,OAAO,CAAC,GAAG,CACtD,YAAY,CAAC,GAAG,CACd,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAC1E,CACF,CAAC;QAEF,MAAM,cAAc,GAAc,MAAM,OAAO,CAAC,GAAG,CACjD,OAAO,CAAC,GAAG,CACT,CAAC,OAAO,EAAE,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAC5E,CACF,CAAC;QAEF,MAAM,oCAAoC,GAAyB;YACjE,IAAI,EAAE,8BAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;QACF,MAAM,qBAAqB,GAAY,MAAM,wBAAwB;aAClE,UAAU,CAAC,oCAAoC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEtE,MAAM,aAAa,GAAc;YAC/B,GAAG,mBAAmB;YACtB,qBAAqB;SACtB,CAAC;QAEF,MAAM,6BAA6B,GAAc;YAC/C,GAAG,cAAc;SAClB,CAAC,OAAO,EAAE,CAAC;QAEZ,IAAI,iBAAiB,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAEvE,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,KAAK,MAAM,UAAU,IAAI,6BAA6B,EAAE,CAAC;YACvD,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAEtE,IAAI,iBAAiB,GAAG,iBAAiB,IAAI,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBACzE,aAAa,IAAI,CAAC,CAAC;gBAEnB,aAAa,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;gBAEpD,iBAAiB,IAAI,iBAAiB,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,MAAM;YACR,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,KAAK,gBAAgB;QACzB,OAAO;YACL,WAAW,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO;YACrC,kBAAkB,EAAE;gBAClB,4CAAsB,CAAC,SAAS;gBAChC,4CAAsB,CAAC,SAAS;gBAChC,4CAAsB,CAAC,UAAU;gBACjC,4CAAsB,CAAC,UAAU;gBACjC,4CAAsB,CAAC,SAAS;aACjC;SACF,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,sBAAsB;QAC/B,OAAO,oCAAoC,CAAC;IAC9C,CAAC;CACF;AA5PD,4DA4PC"}
@@ -1,7 +1,8 @@
1
1
  import { type Logger } from '@mate-academy/core';
2
2
  import { GoogleGenAI } from '@google/genai';
3
- import { type LLMAssistanceOptions, type LLMAssistanceResult, type LLMAssistanceMessage, type LLMCreateAssistantOptions, type LLMCreateAssistantResult, type LLMCreateChatOptions, type LLMCreateChatResult, type LLMCreateFileStorageOptions, type LLMCreateFileStorageResult, type LLMInstanceOptions, type LLMModel, LLMProviders, type LLMUploadFileOptions, type LLMUploadFileResult } from '../../../LLMService.typedefs';
3
+ import { type LLMAssistanceOptions, type LLMAssistanceResult, type LLMAssistanceMessage, type LLMCreateAssistantOptions, type LLMCreateAssistantResult, type LLMCreateChatOptions, type LLMCreateChatResult, type LLMCreateFileStorageOptions, type LLMCreateFileStorageResult, type LLMInstanceOptions, type LLMModel, LLMProviders, type LLMUploadFileOptions, type LLMUploadFileResult, type LLMStructuredResult } from '../../../LLMService.typedefs';
4
4
  import { LLMAssistanceService } from '../../../services';
5
+ import { type LLMSchemaInterface, type InferSchema } from '../../../utilities/schema';
5
6
  export declare class GoogleGenerativeAIAssistanceService extends LLMAssistanceService<LLMProviders.GoogleGenerativeAI> {
6
7
  #private;
7
8
  private cachedContent;
@@ -18,6 +19,11 @@ export declare class GoogleGenerativeAIAssistanceService extends LLMAssistanceSe
18
19
  deleteChat(chatId: string): Promise<void>;
19
20
  createAssistant(options: LLMCreateAssistantOptions<LLMProviders.GoogleGenerativeAI>): Promise<LLMCreateAssistantResult>;
20
21
  deleteAssistant(): Promise<void>;
22
+ assistInChat<S extends LLMSchemaInterface>(options: LLMAssistanceOptions & {
23
+ schema: S;
24
+ }): Promise<LLMStructuredResult<InferSchema<S>>>;
21
25
  assistInChat(options: LLMAssistanceOptions): Promise<LLMAssistanceResult>;
26
+ private assistInChatText;
27
+ private assistInChatStructured;
22
28
  countTokens(messages: LLMAssistanceMessage[], model: LLMModel<LLMProviders.GoogleGenerativeAI>): Promise<number>;
23
29
  }
@@ -240,6 +240,12 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
240
240
  return Promise.resolve();
241
241
  }
242
242
  async assistInChat(options) {
243
+ if (options.schema) {
244
+ return this.assistInChatStructured(options);
245
+ }
246
+ return this.assistInChatText(options);
247
+ }
248
+ async assistInChatText(options) {
243
249
  try {
244
250
  const { message, chatId, abortSignal, } = options;
245
251
  const chatSession = this.chatSessions.get(chatId);
@@ -267,7 +273,7 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
267
273
  }
268
274
  catch (error) {
269
275
  this.logger
270
- .child('assistInChat')
276
+ .child('assistInChatText')
271
277
  .error('Error assisting in chat', {
272
278
  error,
273
279
  options,
@@ -275,6 +281,76 @@ class GoogleGenerativeAIAssistanceService extends services_1.LLMAssistanceServic
275
281
  return { error };
276
282
  }
277
283
  }
284
+ async assistInChatStructured(options) {
285
+ try {
286
+ const { message, chatId, abortSignal, schema, } = options;
287
+ const chatSession = this.chatSessions.get(chatId);
288
+ if (!chatSession) {
289
+ throw new Error('Chat session not found');
290
+ }
291
+ abortSignal?.throwIfAborted();
292
+ const messageContent = await GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity.getContent(message, this.instance, this.logger);
293
+ abortSignal?.throwIfAborted();
294
+ if (!messageContent.parts) {
295
+ return {
296
+ text: '',
297
+ parseError: 'No message parts available',
298
+ };
299
+ }
300
+ // Convert schema to Google format for structured output
301
+ const googleSchema = schema._toGoogleSchema();
302
+ const chatResponse = await chatSession.sendMessage({
303
+ message: messageContent.parts,
304
+ config: {
305
+ abortSignal,
306
+ responseMimeType: 'application/json',
307
+ responseSchema: googleSchema,
308
+ },
309
+ });
310
+ abortSignal?.throwIfAborted();
311
+ const content = chatResponse.text ?? '';
312
+ if (!content) {
313
+ return {
314
+ text: '',
315
+ parseError: 'Empty response from Google Generative AI Assistant',
316
+ };
317
+ }
318
+ try {
319
+ const parsed = JSON.parse(content);
320
+ const validation = schema._parse(parsed);
321
+ return {
322
+ text: content,
323
+ data: validation.data,
324
+ parseError: validation.error,
325
+ };
326
+ }
327
+ catch (parseError) {
328
+ this.logger
329
+ .child('assistInChatStructured')
330
+ .warn('Failed to parse JSON response', {
331
+ content,
332
+ parseError: parseError.message,
333
+ });
334
+ return {
335
+ text: content,
336
+ parseError: `JSON parsing failed: ${parseError.message}`,
337
+ };
338
+ }
339
+ }
340
+ catch (error) {
341
+ this.logger
342
+ .child('assistInChatStructured')
343
+ .error('Error assisting in chat with structured output', {
344
+ error,
345
+ options,
346
+ });
347
+ return {
348
+ text: '',
349
+ error,
350
+ parseError: 'Failed to get structured response from Google Generative AI Assistant',
351
+ };
352
+ }
353
+ }
278
354
  async countTokens(messages, model) {
279
355
  const countTokensFn = GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity
280
356
  .getCountTokensFn(this.instance);
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleGenerativeAIAssistance.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,16 @@
1
1
  import { type Logger } from '@mate-academy/core';
2
2
  import { GoogleGenAI } from '@google/genai';
3
- import { type LLMCompletionResult, type LLMInstanceOptions, LLMProviders, type LLMSendMessageOptions } from '../../../LLMService.typedefs';
3
+ import { type LLMCompletionResult, type LLMInstanceOptions, LLMProviders, type LLMSendMessageOptions, type LLMStructuredResult } from '../../../LLMService.typedefs';
4
4
  import { LLMCompletionService } from '../../../services';
5
+ import { type LLMSchemaInterface, type InferSchema } from '../../../utilities/schema';
5
6
  export declare class GoogleGenerativeAICompletionService extends LLMCompletionService<LLMProviders.GoogleGenerativeAI> {
6
7
  #private;
7
8
  constructor(logger: Logger, options: LLMInstanceOptions[LLMProviders.GoogleGenerativeAI]);
8
9
  get instance(): GoogleGenAI;
10
+ sendMessage<S extends LLMSchemaInterface>(options: LLMSendMessageOptions<typeof this.provider> & {
11
+ schema: S;
12
+ }): Promise<LLMStructuredResult<InferSchema<S>>>;
9
13
  sendMessage(options: LLMSendMessageOptions<typeof this.provider>): Promise<LLMCompletionResult>;
14
+ private sendTextMessage;
15
+ private sendStructuredMessage;
10
16
  }
@@ -19,6 +19,12 @@ class GoogleGenerativeAICompletionService extends services_1.LLMCompletionServic
19
19
  return this.#instance;
20
20
  }
21
21
  async sendMessage(options) {
22
+ if (options.schema) {
23
+ return this.sendStructuredMessage(options);
24
+ }
25
+ return this.sendTextMessage(options);
26
+ }
27
+ async sendTextMessage(options) {
22
28
  try {
23
29
  const { model, message, history = [], instructions, abortSignal, } = options;
24
30
  const countTokensFn = GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity
@@ -46,14 +52,85 @@ class GoogleGenerativeAICompletionService extends services_1.LLMCompletionServic
46
52
  }
47
53
  catch (error) {
48
54
  this.logger
49
- .child('sendMessage')
50
- .error('Error sending message', {
55
+ .child('sendTextMessage')
56
+ .error('Error sending text message', {
51
57
  error,
52
58
  options,
53
59
  });
54
60
  return { error };
55
61
  }
56
62
  }
63
+ async sendStructuredMessage(options) {
64
+ try {
65
+ const { model, message, history = [], instructions, abortSignal, schema, } = options;
66
+ const countTokensFn = GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity
67
+ .getCountTokensFn(this.instance);
68
+ abortSignal?.throwIfAborted();
69
+ const combinedMessages = await GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity.combineMessagesWithLimit({
70
+ history,
71
+ message,
72
+ model,
73
+ countTokensFn,
74
+ instance: this.instance,
75
+ logger: this.logger,
76
+ });
77
+ abortSignal?.throwIfAborted();
78
+ // Convert schema to Google's format
79
+ const googleSchema = schema._toGoogleSchema();
80
+ const result = await this.instance.models.generateContent(GoogleGenerativeAI_entity_1.GoogleGenerativeAIEntity.getContentParameters({
81
+ model,
82
+ messages: combinedMessages,
83
+ instructions,
84
+ abortSignal,
85
+ responseConfig: {
86
+ responseMimeType: 'application/json',
87
+ responseSchema: googleSchema,
88
+ },
89
+ }));
90
+ abortSignal?.throwIfAborted();
91
+ const content = result.text ?? '';
92
+ if (!content) {
93
+ return {
94
+ text: '',
95
+ parseError: 'Empty response from Google Generative AI',
96
+ };
97
+ }
98
+ try {
99
+ const parsed = JSON.parse(content);
100
+ const validation = schema._parse(parsed);
101
+ return {
102
+ text: content,
103
+ data: validation.data,
104
+ parseError: validation.error,
105
+ };
106
+ }
107
+ catch (parseError) {
108
+ this.logger
109
+ .child('sendStructuredMessage')
110
+ .warn('Failed to parse JSON response', {
111
+ content,
112
+ parseError: parseError.message,
113
+ });
114
+ return {
115
+ text: content,
116
+ parseError: `JSON parsing failed: ${parseError.message}`,
117
+ };
118
+ }
119
+ }
120
+ catch (error) {
121
+ this.logger
122
+ .child('sendStructuredMessage')
123
+ .error('Error sending structured message', {
124
+ error,
125
+ options,
126
+ });
127
+ return {
128
+ text: '',
129
+ error,
130
+ parseError: 'Failed to get structured response from Google Generative AI',
131
+ };
132
+ }
133
+ }
57
134
  }
58
135
  exports.GoogleGenerativeAICompletionService = GoogleGenerativeAICompletionService;
59
136
  //# sourceMappingURL=GoogleGenerativeAICompletion.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleGenerativeAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAC5C,+DAK+B;AAC/B,yCAEoB;AACpB,wGAAoG;AAEpG,MAAa,mCACX,SAAQ,+BAAqD;IAC7D,SAAS,GAAuB,IAAI,CAAC;IAErC,YACE,MAAc,EACd,OAA4D;QAE5D,KAAK,CAAC,kCAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAW,CAAC;gBAC/B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAAoD;QAEpD,IAAI,CAAC;YACH,MAAM,EACJ,KAAK,EACL,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,YAAY,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;YAEZ,MAAM,aAAa,GAAG,oDAAwB;iBAC3C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEnC,WAAW,EAAE,cAAc,EAAE,CAAC;YAE9B,MAAM,gBAAgB,GAAG,MAAM,oDAAwB,CAAC,wBAAwB,CAAC;gBAC/E,OAAO;gBACP,OAAO;gBACP,KAAK;gBACL,aAAa;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;YAEH,WAAW,EAAE,cAAc,EAAE,CAAC;YAE9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CACvD,oDAAwB,CAAC,oBAAoB,CAAC;gBAC5C,KAAK;gBACL,QAAQ,EAAE,gBAAgB;gBAC1B,YAAY;gBACZ,WAAW;aACZ,CAAC,CACH,CAAC;YAEF,WAAW,EAAE,cAAc,EAAE,CAAC;YAE9B,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;aACxB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM;iBACR,KAAK,CAAC,aAAa,CAAC;iBACpB,KAAK,CAAC,uBAAuB,EAAE;gBAC9B,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YAEL,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AA1ED,kFA0EC"}
1
+ {"version":3,"file":"GoogleGenerativeAICompletion.service.js","sourceRoot":"","sources":["../../../../src/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ exports.OPEN_AI_SERVICE_BUILDERS = exports.OPEN_AI_MODELS = void 0;
4
4
  const LLMService_typedefs_1 = require("../../LLMService.typedefs");
5
5
  const OpenAI_typedefs_1 = require("../../providers/OpenAI/OpenAI.typedefs");
6
6
  const services_1 = require("./services");
7
- const functional_utils_1 = require("../../functional.utils");
7
+ const functional_utils_1 = require("../../utilities/functional.utils");
8
8
  const OPEN_AI_AVAILABLE_MODELS = {
9
9
  [OpenAI_typedefs_1.OpenAIModelNames.GPT_4_OMNI]: {
10
10
  name: OpenAI_typedefs_1.OpenAIModelNames.GPT_4_OMNI,
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAI.constants.js","sourceRoot":"","sources":["../../../src/providers/OpenAI/OpenAI.constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAI.constants.js","sourceRoot":"","sources":["../../../src/providers/OpenAI/OpenAI.constants.ts"],"names":[],"mappings":"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"}