@mate-academy/llm-gateway 7.2.0 → 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.
@@ -364,6 +364,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
364
364
  },
365
365
  config: {
366
366
  temperature: 1,
367
+ reasoning_effort: 'minimal',
368
+ verbosity: 'medium',
367
369
  },
368
370
  pricing: {
369
371
  getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000,
@@ -389,6 +391,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
389
391
  },
390
392
  config: {
391
393
  temperature: 1,
394
+ reasoning_effort: 'minimal',
395
+ verbosity: 'medium',
392
396
  },
393
397
  pricing: {
394
398
  getPriceForTextInput: (tokens) => 0.25 * tokens / 1_000_000,
@@ -414,6 +418,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
414
418
  },
415
419
  config: {
416
420
  temperature: 1,
421
+ reasoning_effort: 'minimal',
422
+ verbosity: 'medium',
417
423
  },
418
424
  pricing: {
419
425
  getPriceForTextInput: (tokens) => 0.05 * tokens / 1_000_000,
@@ -489,6 +495,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
489
495
  },
490
496
  config: {
491
497
  temperature: 1,
498
+ reasoning_effort: 'none',
499
+ verbosity: 'medium',
492
500
  },
493
501
  pricing: {
494
502
  getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000,
@@ -589,6 +597,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
589
597
  },
590
598
  config: {
591
599
  temperature: 1,
600
+ reasoning_effort: 'none',
601
+ verbosity: 'medium',
592
602
  },
593
603
  pricing: {
594
604
  getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000,
@@ -689,6 +699,8 @@ exports.LLMAPI_AVAILABLE_MODELS = {
689
699
  },
690
700
  config: {
691
701
  temperature: 1,
702
+ reasoning_effort: 'none',
703
+ verbosity: 'medium',
692
704
  },
693
705
  pricing: {
694
706
  getPriceForTextInput: (tokens) => 2.5 * tokens / 1_000_000,
@@ -5279,170 +5291,338 @@ exports.LLMAPI_AVAILABLE_MODELS = {
5279
5291
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_OPENAI]: {
5280
5292
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_OPENAI,
5281
5293
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5282
- config: { temperature: 1 },
5294
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5283
5295
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5284
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5296
+ capabilities: {
5297
+ vision: true,
5298
+ tools: true,
5299
+ reasoning: true,
5300
+ webSearch: true,
5301
+ jsonOutput: true,
5302
+ structuredOutputs: true,
5303
+ },
5285
5304
  },
5286
5305
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_AZURE]: {
5287
5306
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_AZURE,
5288
5307
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5289
- config: { temperature: 1 },
5308
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5290
5309
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5291
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5310
+ capabilities: {
5311
+ vision: true,
5312
+ tools: true,
5313
+ reasoning: true,
5314
+ webSearch: true,
5315
+ jsonOutput: true,
5316
+ structuredOutputs: true,
5317
+ },
5292
5318
  },
5293
5319
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_MINI_OPENAI]: {
5294
5320
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_MINI_OPENAI,
5295
5321
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5296
- config: { temperature: 1 },
5322
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5297
5323
  pricing: { getPriceForTextInput: (tokens) => 0.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5298
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5324
+ capabilities: {
5325
+ vision: true,
5326
+ tools: true,
5327
+ reasoning: true,
5328
+ webSearch: true,
5329
+ jsonOutput: true,
5330
+ structuredOutputs: true,
5331
+ },
5299
5332
  },
5300
5333
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_MINI_AZURE]: {
5301
5334
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_MINI_AZURE,
5302
5335
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5303
- config: { temperature: 1 },
5336
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5304
5337
  pricing: { getPriceForTextInput: (tokens) => 0.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5305
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5338
+ capabilities: {
5339
+ vision: true,
5340
+ tools: true,
5341
+ reasoning: true,
5342
+ webSearch: true,
5343
+ jsonOutput: true,
5344
+ structuredOutputs: true,
5345
+ },
5306
5346
  },
5307
5347
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_NANO_OPENAI]: {
5308
5348
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_NANO_OPENAI,
5309
5349
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5310
- config: { temperature: 1 },
5350
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5311
5351
  pricing: { getPriceForTextInput: (tokens) => 0.05 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 0.4 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5312
- capabilities: { vision: false, tools: true, reasoning: true, webSearch: true },
5352
+ capabilities: {
5353
+ vision: false,
5354
+ tools: true,
5355
+ reasoning: true,
5356
+ webSearch: true,
5357
+ jsonOutput: true,
5358
+ structuredOutputs: true,
5359
+ },
5313
5360
  },
5314
5361
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_NANO_AZURE]: {
5315
5362
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_NANO_AZURE,
5316
5363
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5317
- config: { temperature: 1 },
5364
+ config: { temperature: 1, reasoning_effort: 'minimal', verbosity: 'medium' },
5318
5365
  pricing: { getPriceForTextInput: (tokens) => 0.05 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 0.4 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5319
- capabilities: { vision: false, tools: true, reasoning: true, webSearch: true },
5366
+ capabilities: {
5367
+ vision: false,
5368
+ tools: true,
5369
+ reasoning: true,
5370
+ webSearch: true,
5371
+ jsonOutput: true,
5372
+ structuredOutputs: true,
5373
+ },
5320
5374
  },
5321
5375
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_PRO_OPENAI]: {
5322
5376
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_PRO_OPENAI,
5323
5377
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5324
5378
  config: { temperature: 1 },
5325
5379
  pricing: { getPriceForTextInput: (tokens) => 15 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 120 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5326
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5380
+ capabilities: {
5381
+ vision: true,
5382
+ tools: true,
5383
+ reasoning: true,
5384
+ webSearch: true,
5385
+ jsonOutput: true,
5386
+ structuredOutputs: true,
5387
+ },
5327
5388
  },
5328
5389
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_PRO_AZURE]: {
5329
5390
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_PRO_AZURE,
5330
5391
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5331
5392
  config: { temperature: 1 },
5332
5393
  pricing: { getPriceForTextInput: (tokens) => 15 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 120 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5333
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5394
+ capabilities: {
5395
+ vision: true,
5396
+ tools: true,
5397
+ reasoning: true,
5398
+ webSearch: true,
5399
+ jsonOutput: true,
5400
+ structuredOutputs: true,
5401
+ },
5334
5402
  },
5335
5403
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_OPENAI]: {
5336
5404
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_OPENAI,
5337
5405
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5338
- config: { temperature: 1 },
5406
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5339
5407
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5340
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5408
+ capabilities: {
5409
+ vision: true,
5410
+ tools: true,
5411
+ reasoning: true,
5412
+ webSearch: true,
5413
+ jsonOutput: true,
5414
+ structuredOutputs: true,
5415
+ },
5341
5416
  },
5342
5417
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_AZURE]: {
5343
5418
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_AZURE,
5344
5419
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5345
- config: { temperature: 1 },
5420
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5346
5421
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5347
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5422
+ capabilities: {
5423
+ vision: true,
5424
+ tools: true,
5425
+ reasoning: true,
5426
+ webSearch: true,
5427
+ jsonOutput: true,
5428
+ structuredOutputs: true,
5429
+ },
5348
5430
  },
5349
5431
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_OPENAI]: {
5350
5432
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_OPENAI,
5351
5433
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5352
5434
  config: { temperature: 1 },
5353
5435
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5354
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5436
+ capabilities: {
5437
+ vision: true,
5438
+ tools: true,
5439
+ reasoning: true,
5440
+ webSearch: true,
5441
+ jsonOutput: true,
5442
+ structuredOutputs: true,
5443
+ },
5355
5444
  },
5356
5445
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_AZURE]: {
5357
5446
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_AZURE,
5358
5447
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5359
5448
  config: { temperature: 1 },
5360
5449
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5361
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5450
+ capabilities: {
5451
+ vision: true,
5452
+ tools: true,
5453
+ reasoning: true,
5454
+ webSearch: true,
5455
+ jsonOutput: true,
5456
+ structuredOutputs: true,
5457
+ },
5362
5458
  },
5363
5459
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_MINI_OPENAI]: {
5364
5460
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_MINI_OPENAI,
5365
5461
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5366
5462
  config: { temperature: 1 },
5367
5463
  pricing: { getPriceForTextInput: (tokens) => 0.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5368
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5464
+ capabilities: {
5465
+ vision: true,
5466
+ tools: true,
5467
+ reasoning: true,
5468
+ webSearch: true,
5469
+ jsonOutput: true,
5470
+ structuredOutputs: true,
5471
+ },
5369
5472
  },
5370
5473
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_MINI_AZURE]: {
5371
5474
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_1_CODEX_MINI_AZURE,
5372
5475
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5373
5476
  config: { temperature: 1 },
5374
5477
  pricing: { getPriceForTextInput: (tokens) => 0.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5375
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5478
+ capabilities: {
5479
+ vision: true,
5480
+ tools: true,
5481
+ reasoning: true,
5482
+ webSearch: true,
5483
+ jsonOutput: true,
5484
+ structuredOutputs: true,
5485
+ },
5376
5486
  },
5377
5487
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_OPENAI]: {
5378
5488
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_OPENAI,
5379
5489
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5380
- config: { temperature: 1 },
5490
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5381
5491
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5382
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5492
+ capabilities: {
5493
+ vision: true,
5494
+ tools: true,
5495
+ reasoning: true,
5496
+ webSearch: true,
5497
+ jsonOutput: true,
5498
+ structuredOutputs: true,
5499
+ },
5383
5500
  },
5384
5501
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_AZURE]: {
5385
5502
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_AZURE,
5386
5503
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5387
- config: { temperature: 1 },
5504
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5388
5505
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5389
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5506
+ capabilities: {
5507
+ vision: true,
5508
+ tools: true,
5509
+ reasoning: true,
5510
+ webSearch: true,
5511
+ jsonOutput: true,
5512
+ structuredOutputs: true,
5513
+ },
5390
5514
  },
5391
5515
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_CODEX_OPENAI]: {
5392
5516
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_CODEX_OPENAI,
5393
5517
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5394
5518
  config: { temperature: 1 },
5395
5519
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5396
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5520
+ capabilities: {
5521
+ vision: true,
5522
+ tools: true,
5523
+ reasoning: true,
5524
+ webSearch: true,
5525
+ jsonOutput: true,
5526
+ structuredOutputs: true,
5527
+ },
5397
5528
  },
5398
5529
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_CODEX_AZURE]: {
5399
5530
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_2_CODEX_AZURE,
5400
5531
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5401
5532
  config: { temperature: 1 },
5402
5533
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5403
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5534
+ capabilities: {
5535
+ vision: true,
5536
+ tools: true,
5537
+ reasoning: true,
5538
+ webSearch: true,
5539
+ jsonOutput: true,
5540
+ structuredOutputs: true,
5541
+ },
5404
5542
  },
5405
5543
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_3_CODEX_OPENAI]: {
5406
5544
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_3_CODEX_OPENAI,
5407
5545
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5408
5546
  config: { temperature: 1 },
5409
5547
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5410
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5548
+ capabilities: {
5549
+ vision: true,
5550
+ tools: true,
5551
+ reasoning: true,
5552
+ webSearch: true,
5553
+ jsonOutput: true,
5554
+ structuredOutputs: true,
5555
+ },
5411
5556
  },
5412
5557
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_3_CODEX_AZURE]: {
5413
5558
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_3_CODEX_AZURE,
5414
5559
  limits: { maxInputTokens: 400_000, maxOutputTokens: 128_000 },
5415
5560
  config: { temperature: 1 },
5416
5561
  pricing: { getPriceForTextInput: (tokens) => 1.75 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 14 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5417
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5562
+ capabilities: {
5563
+ vision: true,
5564
+ tools: true,
5565
+ reasoning: true,
5566
+ webSearch: true,
5567
+ jsonOutput: true,
5568
+ structuredOutputs: true,
5569
+ },
5418
5570
  },
5419
5571
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_OPENAI]: {
5420
5572
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_OPENAI,
5421
5573
  limits: { maxInputTokens: 1_050_000, maxOutputTokens: 128_000 },
5422
- config: { temperature: 1 },
5574
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5423
5575
  pricing: { getPriceForTextInput: (tokens) => 2.5 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 15 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5424
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5576
+ capabilities: {
5577
+ vision: true,
5578
+ tools: true,
5579
+ reasoning: true,
5580
+ webSearch: true,
5581
+ jsonOutput: true,
5582
+ structuredOutputs: true,
5583
+ },
5425
5584
  },
5426
5585
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_AZURE]: {
5427
5586
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_AZURE,
5428
5587
  limits: { maxInputTokens: 1_050_000, maxOutputTokens: 128_000 },
5429
- config: { temperature: 1 },
5588
+ config: { temperature: 1, reasoning_effort: 'none', verbosity: 'medium' },
5430
5589
  pricing: { getPriceForTextInput: (tokens) => 2.5 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 15 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5431
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5590
+ capabilities: {
5591
+ vision: true,
5592
+ tools: true,
5593
+ reasoning: true,
5594
+ webSearch: true,
5595
+ jsonOutput: true,
5596
+ structuredOutputs: true,
5597
+ },
5432
5598
  },
5433
5599
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_PRO_OPENAI]: {
5434
5600
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_PRO_OPENAI,
5435
5601
  limits: { maxInputTokens: 1_050_000, maxOutputTokens: 128_000 },
5436
5602
  config: { temperature: 1 },
5437
5603
  pricing: { getPriceForTextInput: (tokens) => 30 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 180 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5438
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5604
+ capabilities: {
5605
+ vision: true,
5606
+ tools: true,
5607
+ reasoning: true,
5608
+ webSearch: true,
5609
+ jsonOutput: true,
5610
+ structuredOutputs: true,
5611
+ },
5439
5612
  },
5440
5613
  [LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_PRO_AZURE]: {
5441
5614
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GPT_5_4_PRO_AZURE,
5442
5615
  limits: { maxInputTokens: 1_050_000, maxOutputTokens: 128_000 },
5443
5616
  config: { temperature: 1 },
5444
5617
  pricing: { getPriceForTextInput: (tokens) => 30 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 180 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5445
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5618
+ capabilities: {
5619
+ vision: true,
5620
+ tools: true,
5621
+ reasoning: true,
5622
+ webSearch: true,
5623
+ jsonOutput: true,
5624
+ structuredOutputs: true,
5625
+ },
5446
5626
  },
5447
5627
  // ─── Gemini explicit provider variants ────────────────────────
5448
5628
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_PRO_GOOGLE_AI_STUDIO]: {
@@ -5450,84 +5630,168 @@ exports.LLMAPI_AVAILABLE_MODELS = {
5450
5630
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5451
5631
  config: { temperature: 0.2 },
5452
5632
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5453
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5633
+ capabilities: {
5634
+ vision: true,
5635
+ tools: true,
5636
+ reasoning: true,
5637
+ webSearch: true,
5638
+ jsonOutput: true,
5639
+ structuredOutputs: true,
5640
+ },
5454
5641
  },
5455
5642
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_PRO_GOOGLE_VERTEX]: {
5456
5643
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_PRO_GOOGLE_VERTEX,
5457
5644
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5458
5645
  config: { temperature: 0.2 },
5459
5646
  pricing: { getPriceForTextInput: (tokens) => 1.25 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 10 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5460
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5647
+ capabilities: {
5648
+ vision: true,
5649
+ tools: true,
5650
+ reasoning: true,
5651
+ webSearch: true,
5652
+ jsonOutput: true,
5653
+ structuredOutputs: true,
5654
+ },
5461
5655
  },
5462
5656
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_GOOGLE_AI_STUDIO]: {
5463
5657
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_GOOGLE_AI_STUDIO,
5464
5658
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5465
5659
  config: { temperature: 0.2 },
5466
5660
  pricing: { getPriceForTextInput: (tokens) => 0.3 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2.5 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5467
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5661
+ capabilities: {
5662
+ vision: true,
5663
+ tools: true,
5664
+ reasoning: true,
5665
+ webSearch: true,
5666
+ jsonOutput: true,
5667
+ structuredOutputs: true,
5668
+ },
5468
5669
  },
5469
5670
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_GOOGLE_VERTEX]: {
5470
5671
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_GOOGLE_VERTEX,
5471
5672
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5472
5673
  config: { temperature: 0.2 },
5473
5674
  pricing: { getPriceForTextInput: (tokens) => 0.3 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 2.5 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5474
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5675
+ capabilities: {
5676
+ vision: true,
5677
+ tools: true,
5678
+ reasoning: true,
5679
+ webSearch: true,
5680
+ jsonOutput: true,
5681
+ structuredOutputs: true,
5682
+ },
5475
5683
  },
5476
5684
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_LITE_GOOGLE_AI_STUDIO]: {
5477
5685
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_LITE_GOOGLE_AI_STUDIO,
5478
5686
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5479
5687
  config: { temperature: 0.2 },
5480
5688
  pricing: { getPriceForTextInput: (tokens) => 0.1 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 0.4 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5481
- capabilities: { vision: true, tools: true, reasoning: false, webSearch: false },
5689
+ capabilities: {
5690
+ vision: true,
5691
+ tools: true,
5692
+ reasoning: false,
5693
+ webSearch: false,
5694
+ jsonOutput: true,
5695
+ structuredOutputs: true,
5696
+ },
5482
5697
  },
5483
5698
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_LITE_GOOGLE_VERTEX]: {
5484
5699
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_LITE_GOOGLE_VERTEX,
5485
5700
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5486
5701
  config: { temperature: 0.2 },
5487
5702
  pricing: { getPriceForTextInput: (tokens) => 0.1 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 0.4 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5488
- capabilities: { vision: true, tools: true, reasoning: false, webSearch: false },
5703
+ capabilities: {
5704
+ vision: true,
5705
+ tools: true,
5706
+ reasoning: false,
5707
+ webSearch: false,
5708
+ jsonOutput: true,
5709
+ structuredOutputs: true,
5710
+ },
5489
5711
  },
5490
5712
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_1_PRO_PREVIEW_GOOGLE_AI_STUDIO]: {
5491
5713
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_1_PRO_PREVIEW_GOOGLE_AI_STUDIO,
5492
5714
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5493
5715
  config: { temperature: 0.2 },
5494
5716
  pricing: { getPriceForTextInput: (tokens) => 2 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 12 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5495
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5717
+ capabilities: {
5718
+ vision: true,
5719
+ tools: true,
5720
+ reasoning: true,
5721
+ webSearch: true,
5722
+ jsonOutput: true,
5723
+ structuredOutputs: true,
5724
+ },
5496
5725
  },
5497
5726
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_1_PRO_PREVIEW_GOOGLE_VERTEX]: {
5498
5727
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_1_PRO_PREVIEW_GOOGLE_VERTEX,
5499
5728
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5500
5729
  config: { temperature: 0.2 },
5501
5730
  pricing: { getPriceForTextInput: (tokens) => 2 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 12 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5502
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5731
+ capabilities: {
5732
+ vision: true,
5733
+ tools: true,
5734
+ reasoning: true,
5735
+ webSearch: true,
5736
+ jsonOutput: true,
5737
+ structuredOutputs: true,
5738
+ },
5503
5739
  },
5504
5740
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_FLASH_PREVIEW_GOOGLE_AI_STUDIO]: {
5505
5741
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_FLASH_PREVIEW_GOOGLE_AI_STUDIO,
5506
5742
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5507
5743
  config: { temperature: 0.2 },
5508
5744
  pricing: { getPriceForTextInput: (tokens) => 0.5 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 3 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5509
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5745
+ capabilities: {
5746
+ vision: true,
5747
+ tools: true,
5748
+ reasoning: true,
5749
+ webSearch: true,
5750
+ jsonOutput: true,
5751
+ structuredOutputs: true,
5752
+ },
5510
5753
  },
5511
5754
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_FLASH_PREVIEW_GOOGLE_VERTEX]: {
5512
5755
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_3_FLASH_PREVIEW_GOOGLE_VERTEX,
5513
5756
  limits: { maxInputTokens: 1_048_576, maxOutputTokens: 65_536 },
5514
5757
  config: { temperature: 0.2 },
5515
5758
  pricing: { getPriceForTextInput: (tokens) => 0.5 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 3 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5516
- capabilities: { vision: true, tools: true, reasoning: true, webSearch: true },
5759
+ capabilities: {
5760
+ vision: true,
5761
+ tools: true,
5762
+ reasoning: true,
5763
+ webSearch: true,
5764
+ jsonOutput: true,
5765
+ structuredOutputs: true,
5766
+ },
5517
5767
  },
5518
5768
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_IMAGE_GOOGLE_AI_STUDIO]: {
5519
5769
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_IMAGE_GOOGLE_AI_STUDIO,
5520
5770
  limits: { maxInputTokens: 32_768, maxOutputTokens: 65_536 },
5521
5771
  config: { temperature: 0.2 },
5522
5772
  pricing: { getPriceForTextInput: (tokens) => 0.3 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 30 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5523
- capabilities: { vision: true, tools: false, reasoning: false, webSearch: false },
5773
+ capabilities: {
5774
+ vision: true,
5775
+ tools: false,
5776
+ reasoning: false,
5777
+ webSearch: false,
5778
+ jsonOutput: true,
5779
+ structuredOutputs: true,
5780
+ },
5524
5781
  },
5525
5782
  [LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_IMAGE_GOOGLE_VERTEX]: {
5526
5783
  name: LLMAPI_typedefs_1.LLMAPIModelNames.GEMINI_2_5_FLASH_IMAGE_GOOGLE_VERTEX,
5527
5784
  limits: { maxInputTokens: 32_768, maxOutputTokens: 65_536 },
5528
5785
  config: { temperature: 0.2 },
5529
5786
  pricing: { getPriceForTextInput: (tokens) => 0.3 * tokens / 1_000_000, getPriceForTextOutput: (tokens) => 30 * tokens / 1_000_000, getPriceForAudioInput: () => 0, getPriceForAudioOutput: () => 0, currency: 'USD' },
5530
- capabilities: { vision: true, tools: false, reasoning: false, webSearch: false },
5787
+ capabilities: {
5788
+ vision: true,
5789
+ tools: false,
5790
+ reasoning: false,
5791
+ webSearch: false,
5792
+ jsonOutput: true,
5793
+ structuredOutputs: true,
5794
+ },
5531
5795
  },
5532
5796
  };
5533
5797
  const LLMAPI_COMPLETION_MODELS = exports.LLMAPI_AVAILABLE_MODELS;