@pydantic/genai-prices 0.0.41 → 0.0.43
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/cli.js +1082 -353
- package/dist/index.cjs +3 -3
- package/dist/index.js +955 -226
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -47,6 +47,28 @@ const x = [
|
|
|
47
47
|
required: !0
|
|
48
48
|
}
|
|
49
49
|
]
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
api_flavor: "chat",
|
|
53
|
+
root: "usage",
|
|
54
|
+
model_path: "model",
|
|
55
|
+
mappings: [
|
|
56
|
+
{
|
|
57
|
+
path: "prompt_tokens",
|
|
58
|
+
dest: "input_tokens",
|
|
59
|
+
required: !0
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
path: "cached_tokens",
|
|
63
|
+
dest: "cache_read_tokens",
|
|
64
|
+
required: !1
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
path: "completion_tokens",
|
|
68
|
+
dest: "output_tokens",
|
|
69
|
+
required: !0
|
|
70
|
+
}
|
|
71
|
+
]
|
|
50
72
|
}
|
|
51
73
|
],
|
|
52
74
|
models: [
|
|
@@ -254,64 +276,820 @@ const x = [
|
|
|
254
276
|
equals: "claude-opus-4"
|
|
255
277
|
},
|
|
256
278
|
{
|
|
257
|
-
equals: "claude-opus-4-20250514"
|
|
279
|
+
equals: "claude-opus-4-20250514"
|
|
280
|
+
}
|
|
281
|
+
]
|
|
282
|
+
},
|
|
283
|
+
context_window: 2e5,
|
|
284
|
+
prices: {
|
|
285
|
+
input_mtok: 15,
|
|
286
|
+
cache_write_mtok: 18.75,
|
|
287
|
+
cache_read_mtok: 1.5,
|
|
288
|
+
output_mtok: 75
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
id: "claude-opus-4-1",
|
|
293
|
+
name: "Claude Opus 4.1",
|
|
294
|
+
description: "Most intelligent model for complex tasks",
|
|
295
|
+
match: {
|
|
296
|
+
or: [
|
|
297
|
+
{
|
|
298
|
+
starts_with: "claude-opus-4-1"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
starts_with: "claude-opus-4.1"
|
|
302
|
+
}
|
|
303
|
+
]
|
|
304
|
+
},
|
|
305
|
+
context_window: 2e5,
|
|
306
|
+
prices: {
|
|
307
|
+
input_mtok: 15,
|
|
308
|
+
cache_write_mtok: 18.75,
|
|
309
|
+
cache_read_mtok: 1.5,
|
|
310
|
+
output_mtok: 75
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
id: "claude-sonnet-4-0",
|
|
315
|
+
name: "Claude Sonnet 4",
|
|
316
|
+
description: "Optimal balance of intelligence, cost, and speed",
|
|
317
|
+
match: {
|
|
318
|
+
or: [
|
|
319
|
+
{
|
|
320
|
+
starts_with: "claude-sonnet-4-2025"
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
starts_with: "claude-sonnet-4-0"
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
starts_with: "claude-sonnet-4@"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
equals: "claude-sonnet-4"
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
starts_with: "claude-4-sonnet"
|
|
333
|
+
}
|
|
334
|
+
]
|
|
335
|
+
},
|
|
336
|
+
context_window: 2e5,
|
|
337
|
+
prices: {
|
|
338
|
+
input_mtok: 3,
|
|
339
|
+
cache_write_mtok: 3.75,
|
|
340
|
+
cache_read_mtok: 0.3,
|
|
341
|
+
output_mtok: 15
|
|
342
|
+
}
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
id: "claude-sonnet-4-5",
|
|
346
|
+
name: "Claude Sonnet 4.5",
|
|
347
|
+
description: "Most intelligent model for building agents and coding",
|
|
348
|
+
match: {
|
|
349
|
+
or: [
|
|
350
|
+
{
|
|
351
|
+
starts_with: "claude-sonnet-4-5"
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
starts_with: "claude-sonnet-4.5"
|
|
355
|
+
}
|
|
356
|
+
]
|
|
357
|
+
},
|
|
358
|
+
context_window: 1e6,
|
|
359
|
+
prices: {
|
|
360
|
+
input_mtok: {
|
|
361
|
+
base: 3,
|
|
362
|
+
tiers: [
|
|
363
|
+
{
|
|
364
|
+
start: 2e5,
|
|
365
|
+
price: 6
|
|
366
|
+
}
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
cache_write_mtok: {
|
|
370
|
+
base: 3.75,
|
|
371
|
+
tiers: [
|
|
372
|
+
{
|
|
373
|
+
start: 2e5,
|
|
374
|
+
price: 7.5
|
|
375
|
+
}
|
|
376
|
+
]
|
|
377
|
+
},
|
|
378
|
+
cache_read_mtok: {
|
|
379
|
+
base: 0.3,
|
|
380
|
+
tiers: [
|
|
381
|
+
{
|
|
382
|
+
start: 2e5,
|
|
383
|
+
price: 0.6
|
|
384
|
+
}
|
|
385
|
+
]
|
|
386
|
+
},
|
|
387
|
+
output_mtok: {
|
|
388
|
+
base: 15,
|
|
389
|
+
tiers: [
|
|
390
|
+
{
|
|
391
|
+
start: 2e5,
|
|
392
|
+
price: 22.5
|
|
393
|
+
}
|
|
394
|
+
]
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
id: "claude-v1",
|
|
400
|
+
description: "Retired, here to match price sources",
|
|
401
|
+
match: {
|
|
402
|
+
equals: "claude-v1"
|
|
403
|
+
},
|
|
404
|
+
prices: {
|
|
405
|
+
input_mtok: 8,
|
|
406
|
+
output_mtok: 24
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
]
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
id: "avian",
|
|
413
|
+
name: "Avian",
|
|
414
|
+
pricing_urls: ["https://avian.io/pricing/"],
|
|
415
|
+
api_pattern: "https://api\\.avian\\.io",
|
|
416
|
+
models: [
|
|
417
|
+
{
|
|
418
|
+
id: "Meta-Llama-3.1-405B-Instruct",
|
|
419
|
+
match: {
|
|
420
|
+
equals: "Meta-Llama-3.1-405B-Instruct"
|
|
421
|
+
},
|
|
422
|
+
prices: {
|
|
423
|
+
input_mtok: 1.5,
|
|
424
|
+
output_mtok: 1.5
|
|
425
|
+
}
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
id: "Meta-Llama-3.1-70B-Instruct",
|
|
429
|
+
match: {
|
|
430
|
+
equals: "Meta-Llama-3.1-70B-Instruct"
|
|
431
|
+
},
|
|
432
|
+
prices: {
|
|
433
|
+
input_mtok: 0.45,
|
|
434
|
+
output_mtok: 0.45
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
id: "Meta-Llama-3.1-8B-Instruct",
|
|
439
|
+
match: {
|
|
440
|
+
equals: "Meta-Llama-3.1-8B-Instruct"
|
|
441
|
+
},
|
|
442
|
+
prices: {
|
|
443
|
+
input_mtok: 0.1,
|
|
444
|
+
output_mtok: 0.1
|
|
445
|
+
}
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
id: "Meta-Llama-3.3-70B-Instruct",
|
|
449
|
+
match: {
|
|
450
|
+
equals: "Meta-Llama-3.3-70B-Instruct"
|
|
451
|
+
},
|
|
452
|
+
prices: {
|
|
453
|
+
input_mtok: 0.45,
|
|
454
|
+
output_mtok: 0.45
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
]
|
|
458
|
+
},
|
|
459
|
+
{
|
|
460
|
+
id: "aws",
|
|
461
|
+
name: "AWS Bedrock",
|
|
462
|
+
pricing_urls: ["https://aws.amazon.com/bedrock/pricing/"],
|
|
463
|
+
api_pattern: "https://bedrock-runtime\\.[a-z0-9-]+\\.amazonaws\\.com/",
|
|
464
|
+
provider_match: {
|
|
465
|
+
contains: "bedrock"
|
|
466
|
+
},
|
|
467
|
+
extractors: [
|
|
468
|
+
{
|
|
469
|
+
api_flavor: "default",
|
|
470
|
+
root: "usage",
|
|
471
|
+
model_path: "model",
|
|
472
|
+
mappings: [
|
|
473
|
+
{
|
|
474
|
+
path: "inputTokens",
|
|
475
|
+
dest: "input_tokens",
|
|
476
|
+
required: !0
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
path: "outputTokens",
|
|
480
|
+
dest: "output_tokens",
|
|
481
|
+
required: !0
|
|
482
|
+
}
|
|
483
|
+
]
|
|
484
|
+
},
|
|
485
|
+
{
|
|
486
|
+
api_flavor: "anthropic",
|
|
487
|
+
root: "usage",
|
|
488
|
+
model_path: "model",
|
|
489
|
+
mappings: [
|
|
490
|
+
{
|
|
491
|
+
path: "input_tokens",
|
|
492
|
+
dest: "input_tokens",
|
|
493
|
+
required: !0
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
path: "cache_creation_input_tokens",
|
|
497
|
+
dest: "input_tokens",
|
|
498
|
+
required: !1
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
path: "cache_read_input_tokens",
|
|
502
|
+
dest: "input_tokens",
|
|
503
|
+
required: !1
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
path: "cache_creation_input_tokens",
|
|
507
|
+
dest: "cache_write_tokens",
|
|
508
|
+
required: !1
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
path: "cache_read_input_tokens",
|
|
512
|
+
dest: "cache_read_tokens",
|
|
513
|
+
required: !1
|
|
514
|
+
},
|
|
515
|
+
{
|
|
516
|
+
path: "output_tokens",
|
|
517
|
+
dest: "output_tokens",
|
|
518
|
+
required: !0
|
|
519
|
+
}
|
|
520
|
+
]
|
|
521
|
+
}
|
|
522
|
+
],
|
|
523
|
+
models: [
|
|
524
|
+
{
|
|
525
|
+
id: "amazon.nova-lite-v1:0",
|
|
526
|
+
name: "Nova Lite",
|
|
527
|
+
description: "Amazon Nova Lite 1.0 is a very low-cost multimodal model from Amazon that focused on fast processing of image, video, and text inputs to generate text output. Amazon Nova Lite can handle real-time customer interactions, document analysis, and visual question-answering tasks with high accuracy.",
|
|
528
|
+
match: {
|
|
529
|
+
contains: "nova-lite"
|
|
530
|
+
},
|
|
531
|
+
prices: {
|
|
532
|
+
input_mtok: 0.06,
|
|
533
|
+
cache_read_mtok: 0.015,
|
|
534
|
+
output_mtok: 0.24
|
|
535
|
+
}
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
id: "amazon.nova-micro-v1:0",
|
|
539
|
+
name: "Nova Micro",
|
|
540
|
+
description: "Amazon Nova Micro 1.0 is a text-only model that delivers the lowest latency responses in the Amazon Nova family of models at a very low cost. With a context length of 128K tokens and optimized for speed and cost, Amazon Nova Micro excels at tasks such as text summarization, translation, content classification, interactive chat, and brainstorming. It has simple mathematical reasoning and coding abilities.",
|
|
541
|
+
match: {
|
|
542
|
+
contains: "nova-micro"
|
|
543
|
+
},
|
|
544
|
+
prices: {
|
|
545
|
+
input_mtok: 0.035,
|
|
546
|
+
cache_read_mtok: 875e-5,
|
|
547
|
+
output_mtok: 0.14
|
|
548
|
+
}
|
|
549
|
+
},
|
|
550
|
+
{
|
|
551
|
+
id: "amazon.nova-premier-v1:0",
|
|
552
|
+
name: "Nova Premier",
|
|
553
|
+
match: {
|
|
554
|
+
contains: "nova-premier"
|
|
555
|
+
},
|
|
556
|
+
prices: {
|
|
557
|
+
input_mtok: 2.5,
|
|
558
|
+
cache_read_mtok: 0.625,
|
|
559
|
+
output_mtok: 12.5
|
|
560
|
+
}
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
id: "amazon.nova-pro-v1:0",
|
|
564
|
+
name: "Nova Pro",
|
|
565
|
+
description: "Amazon Nova Pro 1.0 is a capable multimodal model from Amazon focused on providing a combination of accuracy, speed, and cost for a wide range of tasks. As of December 2024, it achieves state-of-the-art performance on key benchmarks including visual question answering (TextVQA) and video understanding (VATEX).",
|
|
566
|
+
match: {
|
|
567
|
+
contains: "nova-pro"
|
|
568
|
+
},
|
|
569
|
+
prices: {
|
|
570
|
+
input_mtok: 0.8,
|
|
571
|
+
cache_read_mtok: 0.2,
|
|
572
|
+
output_mtok: 3.2
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
{
|
|
576
|
+
id: "amazon.nova-sonic-v1:0",
|
|
577
|
+
name: "Nova Sonic",
|
|
578
|
+
match: {
|
|
579
|
+
contains: "nova-sonic"
|
|
580
|
+
},
|
|
581
|
+
prices: {
|
|
582
|
+
input_mtok: 0.06,
|
|
583
|
+
output_mtok: 0.24,
|
|
584
|
+
input_audio_mtok: 3.4,
|
|
585
|
+
output_audio_mtok: 13.6
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
id: "amazon.titan-embed-text-v1",
|
|
590
|
+
name: "Titan Embeddings G1 - Text",
|
|
591
|
+
match: {
|
|
592
|
+
contains: "titan-embed-text"
|
|
593
|
+
},
|
|
594
|
+
prices: {
|
|
595
|
+
input_mtok: 0.1
|
|
596
|
+
}
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
id: "amazon.titan-text-express-v1",
|
|
600
|
+
name: "Titan Text G1 - Express",
|
|
601
|
+
match: {
|
|
602
|
+
contains: "titan-text-express"
|
|
603
|
+
},
|
|
604
|
+
prices: {
|
|
605
|
+
input_mtok: 0.2,
|
|
606
|
+
output_mtok: 0.6
|
|
607
|
+
}
|
|
608
|
+
},
|
|
609
|
+
{
|
|
610
|
+
id: "amazon.titan-text-lite-v1",
|
|
611
|
+
name: "Titan Text G1 - Lite",
|
|
612
|
+
match: {
|
|
613
|
+
contains: "titan-text-lite"
|
|
614
|
+
},
|
|
615
|
+
prices: {
|
|
616
|
+
input_mtok: 0.15,
|
|
617
|
+
output_mtok: 0.2
|
|
618
|
+
}
|
|
619
|
+
},
|
|
620
|
+
{
|
|
621
|
+
id: "deepseek.r1-v1:0",
|
|
622
|
+
name: "DeepSeek-R1",
|
|
623
|
+
match: {
|
|
624
|
+
contains: "r1"
|
|
625
|
+
},
|
|
626
|
+
prices: {
|
|
627
|
+
input_mtok: 1.35,
|
|
628
|
+
output_mtok: 5.4
|
|
629
|
+
}
|
|
630
|
+
},
|
|
631
|
+
{
|
|
632
|
+
id: "global.anthropic.claude-haiku-4-5-20251001-v1:0",
|
|
633
|
+
match: {
|
|
634
|
+
starts_with: "global.anthropic.claude-haiku-4-5-20251001-v1"
|
|
635
|
+
},
|
|
636
|
+
prices: {
|
|
637
|
+
input_mtok: 1,
|
|
638
|
+
cache_write_mtok: 1.25,
|
|
639
|
+
cache_read_mtok: 0.1,
|
|
640
|
+
output_mtok: 5
|
|
641
|
+
}
|
|
642
|
+
},
|
|
643
|
+
{
|
|
644
|
+
id: "global.anthropic.claude-sonnet-4-20250514-v1:0",
|
|
645
|
+
match: {
|
|
646
|
+
starts_with: "global.anthropic.claude-sonnet-4-20250514-v1"
|
|
647
|
+
},
|
|
648
|
+
prices: {
|
|
649
|
+
input_mtok: 3,
|
|
650
|
+
cache_write_mtok: 3.75,
|
|
651
|
+
cache_read_mtok: 0.3,
|
|
652
|
+
output_mtok: 15
|
|
653
|
+
}
|
|
654
|
+
},
|
|
655
|
+
{
|
|
656
|
+
id: "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
|
|
657
|
+
match: {
|
|
658
|
+
starts_with: "global.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
659
|
+
},
|
|
660
|
+
prices: {
|
|
661
|
+
input_mtok: 3,
|
|
662
|
+
cache_write_mtok: 3.75,
|
|
663
|
+
cache_read_mtok: 0.3,
|
|
664
|
+
output_mtok: 15
|
|
665
|
+
}
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
id: "meta.llama3-1-70b-instruct-v1:0",
|
|
669
|
+
name: "Llama 3.1 70B Instruct",
|
|
670
|
+
match: {
|
|
671
|
+
contains: "llama3-1-70b-instruct"
|
|
672
|
+
},
|
|
673
|
+
prices: {
|
|
674
|
+
input_mtok: 0.72,
|
|
675
|
+
output_mtok: 0.72
|
|
676
|
+
}
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
id: "meta.llama3-1-8b-instruct-v1:0",
|
|
680
|
+
name: "Llama 3.1 8B Instruct",
|
|
681
|
+
match: {
|
|
682
|
+
contains: "llama3-1-8b-instruct"
|
|
683
|
+
},
|
|
684
|
+
prices: {
|
|
685
|
+
input_mtok: 0.22,
|
|
686
|
+
output_mtok: 0.22
|
|
687
|
+
}
|
|
688
|
+
},
|
|
689
|
+
{
|
|
690
|
+
id: "meta.llama3-2-11b-instruct-v1:0",
|
|
691
|
+
name: "Llama 3.2 11B Instruct",
|
|
692
|
+
match: {
|
|
693
|
+
contains: "llama3-2-11b-instruct"
|
|
694
|
+
},
|
|
695
|
+
prices: {
|
|
696
|
+
input_mtok: 0.16,
|
|
697
|
+
output_mtok: 0.16
|
|
698
|
+
}
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
id: "meta.llama3-2-1b-instruct-v1:0",
|
|
702
|
+
name: "Llama 3.2 1B Instruct",
|
|
703
|
+
match: {
|
|
704
|
+
contains: "llama3-2-1b-instruct"
|
|
705
|
+
},
|
|
706
|
+
prices: {
|
|
707
|
+
input_mtok: 0.1,
|
|
708
|
+
output_mtok: 0.1
|
|
709
|
+
}
|
|
710
|
+
},
|
|
711
|
+
{
|
|
712
|
+
id: "meta.llama3-2-3b-instruct-v1:0",
|
|
713
|
+
name: "Llama 3.2 3B Instruct",
|
|
714
|
+
match: {
|
|
715
|
+
contains: "llama3-2-3b-instruct"
|
|
716
|
+
},
|
|
717
|
+
prices: {
|
|
718
|
+
input_mtok: 0.15,
|
|
719
|
+
output_mtok: 0.15
|
|
720
|
+
}
|
|
721
|
+
},
|
|
722
|
+
{
|
|
723
|
+
id: "meta.llama3-2-90b-instruct-v1:0",
|
|
724
|
+
name: "Llama 3.2 90B Instruct",
|
|
725
|
+
match: {
|
|
726
|
+
contains: "llama3-2-90b-instruct"
|
|
727
|
+
},
|
|
728
|
+
prices: {
|
|
729
|
+
input_mtok: 0.72,
|
|
730
|
+
output_mtok: 0.72
|
|
731
|
+
}
|
|
732
|
+
},
|
|
733
|
+
{
|
|
734
|
+
id: "meta.llama3-3-70b-instruct-v1:0",
|
|
735
|
+
name: "Llama 3.3 70B Instruct",
|
|
736
|
+
match: {
|
|
737
|
+
contains: "llama3-3-70b-instruct"
|
|
738
|
+
},
|
|
739
|
+
prices: {
|
|
740
|
+
input_mtok: 0.72,
|
|
741
|
+
output_mtok: 0.72
|
|
742
|
+
}
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
id: "meta.llama3-70b-instruct-v1:0",
|
|
746
|
+
name: "Llama 3 70B Instruct",
|
|
747
|
+
match: {
|
|
748
|
+
contains: "llama3-70b-instruct"
|
|
749
|
+
},
|
|
750
|
+
prices: {
|
|
751
|
+
input_mtok: 2.65,
|
|
752
|
+
output_mtok: 3.5
|
|
753
|
+
}
|
|
754
|
+
},
|
|
755
|
+
{
|
|
756
|
+
id: "meta.llama3-8b-instruct-v1:0",
|
|
757
|
+
name: "Llama 3 8B Instruct",
|
|
758
|
+
match: {
|
|
759
|
+
contains: "llama3-8b-instruct"
|
|
760
|
+
},
|
|
761
|
+
prices: {
|
|
762
|
+
input_mtok: 0.3,
|
|
763
|
+
output_mtok: 0.6
|
|
764
|
+
}
|
|
765
|
+
},
|
|
766
|
+
{
|
|
767
|
+
id: "meta.llama4-maverick-17b-instruct-v1:0",
|
|
768
|
+
name: "Llama 4 Maverick 17B Instruct",
|
|
769
|
+
match: {
|
|
770
|
+
contains: "llama4-maverick-17b-instruct"
|
|
771
|
+
},
|
|
772
|
+
prices: {
|
|
773
|
+
input_mtok: 0.24,
|
|
774
|
+
output_mtok: 0.97
|
|
775
|
+
}
|
|
776
|
+
},
|
|
777
|
+
{
|
|
778
|
+
id: "meta.llama4-scout-17b-instruct-v1:0",
|
|
779
|
+
name: "Llama 4 Scout 17B Instruct",
|
|
780
|
+
match: {
|
|
781
|
+
contains: "llama4-scout-17b-instruct"
|
|
782
|
+
},
|
|
783
|
+
prices: {
|
|
784
|
+
input_mtok: 0.17,
|
|
785
|
+
output_mtok: 0.66
|
|
786
|
+
}
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
id: "mistral.mistral-7b-instruct-v0:2",
|
|
790
|
+
name: "Mistral 7B Instruct",
|
|
791
|
+
match: {
|
|
792
|
+
contains: "mistral-7b-instruct"
|
|
793
|
+
},
|
|
794
|
+
prices: {
|
|
795
|
+
input_mtok: 0.15,
|
|
796
|
+
output_mtok: 0.2
|
|
797
|
+
}
|
|
798
|
+
},
|
|
799
|
+
{
|
|
800
|
+
id: "mistral.mistral-large-2402-v1:0",
|
|
801
|
+
name: "Mistral Large (24.02)",
|
|
802
|
+
match: {
|
|
803
|
+
contains: "mistral-large-2402"
|
|
804
|
+
},
|
|
805
|
+
prices: {
|
|
806
|
+
input_mtok: 4,
|
|
807
|
+
output_mtok: 12
|
|
808
|
+
}
|
|
809
|
+
},
|
|
810
|
+
{
|
|
811
|
+
id: "mistral.mistral-small-2402-v1:0",
|
|
812
|
+
name: "Mistral Small (24.02)",
|
|
813
|
+
match: {
|
|
814
|
+
contains: "mistral-small-2402"
|
|
815
|
+
},
|
|
816
|
+
prices: {
|
|
817
|
+
input_mtok: 1,
|
|
818
|
+
output_mtok: 3
|
|
819
|
+
}
|
|
820
|
+
},
|
|
821
|
+
{
|
|
822
|
+
id: "mistral.mixtral-8x7b-instruct-v0:1",
|
|
823
|
+
name: "Mixtral 8x7B Instruct",
|
|
824
|
+
match: {
|
|
825
|
+
contains: "mixtral-8x7b-instruct"
|
|
826
|
+
},
|
|
827
|
+
prices: {
|
|
828
|
+
input_mtok: 0.45,
|
|
829
|
+
output_mtok: 0.7
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
{
|
|
833
|
+
id: "mistral.pixtral-large-2502-v1:0",
|
|
834
|
+
name: "Pixtral Large (25.02)",
|
|
835
|
+
match: {
|
|
836
|
+
contains: "pixtral-large-2502"
|
|
837
|
+
},
|
|
838
|
+
prices: {
|
|
839
|
+
input_mtok: 2,
|
|
840
|
+
output_mtok: 6
|
|
841
|
+
}
|
|
842
|
+
},
|
|
843
|
+
{
|
|
844
|
+
id: "openai.gpt-oss-120b-1:0",
|
|
845
|
+
name: "gpt-oss-120b",
|
|
846
|
+
match: {
|
|
847
|
+
contains: "gpt-oss-120b"
|
|
848
|
+
},
|
|
849
|
+
prices: {
|
|
850
|
+
input_mtok: 0.15,
|
|
851
|
+
output_mtok: 0.6
|
|
852
|
+
}
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
id: "openai.gpt-oss-20b-1:0",
|
|
856
|
+
name: "gpt-oss-20b",
|
|
857
|
+
match: {
|
|
858
|
+
contains: "gpt-oss-20b"
|
|
859
|
+
},
|
|
860
|
+
prices: {
|
|
861
|
+
input_mtok: 0.07,
|
|
862
|
+
output_mtok: 0.3
|
|
863
|
+
}
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
id: "qwen.qwen3-32b-v1:0",
|
|
867
|
+
name: "Qwen3 32B (dense)",
|
|
868
|
+
match: {
|
|
869
|
+
contains: "qwen3-32b"
|
|
870
|
+
},
|
|
871
|
+
prices: {
|
|
872
|
+
input_mtok: 0.15,
|
|
873
|
+
output_mtok: 0.6
|
|
874
|
+
}
|
|
875
|
+
},
|
|
876
|
+
{
|
|
877
|
+
id: "qwen.qwen3-coder-30b-a3b-v1:0",
|
|
878
|
+
name: "Qwen3-Coder-30B-A3B-Instruct",
|
|
879
|
+
match: {
|
|
880
|
+
contains: "qwen3-coder-30b-a3b"
|
|
881
|
+
},
|
|
882
|
+
prices: {
|
|
883
|
+
input_mtok: 0.15,
|
|
884
|
+
output_mtok: 0.6
|
|
885
|
+
}
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
id: "regional.anthropic.claude-3-5-haiku-20241022-v1:0",
|
|
889
|
+
match: {
|
|
890
|
+
or: [
|
|
891
|
+
{
|
|
892
|
+
starts_with: "us.anthropic.claude-3-5-haiku-20241022-v1"
|
|
893
|
+
},
|
|
894
|
+
{
|
|
895
|
+
starts_with: "au.anthropic.claude-3-5-haiku-20241022-v1"
|
|
896
|
+
},
|
|
897
|
+
{
|
|
898
|
+
starts_with: "apac.anthropic.claude-3-5-haiku-20241022-v1"
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
starts_with: "eu.anthropic.claude-3-5-haiku-20241022-v1"
|
|
902
|
+
},
|
|
903
|
+
{
|
|
904
|
+
starts_with: "us-gov.anthropic.claude-3-5-haiku-20241022-v1"
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
starts_with: "jp.anthropic.claude-3-5-haiku-20241022-v1"
|
|
908
|
+
}
|
|
909
|
+
]
|
|
910
|
+
},
|
|
911
|
+
prices: {
|
|
912
|
+
input_mtok: 0.8,
|
|
913
|
+
cache_write_mtok: 1,
|
|
914
|
+
cache_read_mtok: 0.08,
|
|
915
|
+
output_mtok: 4
|
|
916
|
+
}
|
|
917
|
+
},
|
|
918
|
+
{
|
|
919
|
+
id: "regional.anthropic.claude-3-5-sonnet-20240620-v1:0",
|
|
920
|
+
match: {
|
|
921
|
+
or: [
|
|
922
|
+
{
|
|
923
|
+
starts_with: "us.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
924
|
+
},
|
|
925
|
+
{
|
|
926
|
+
starts_with: "au.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
927
|
+
},
|
|
928
|
+
{
|
|
929
|
+
starts_with: "apac.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
930
|
+
},
|
|
931
|
+
{
|
|
932
|
+
starts_with: "eu.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
933
|
+
},
|
|
934
|
+
{
|
|
935
|
+
starts_with: "us-gov.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
starts_with: "jp.anthropic.claude-3-5-sonnet-20240620-v1"
|
|
939
|
+
}
|
|
940
|
+
]
|
|
941
|
+
},
|
|
942
|
+
prices: {
|
|
943
|
+
input_mtok: 3,
|
|
944
|
+
cache_write_mtok: 3.75,
|
|
945
|
+
cache_read_mtok: 0.3,
|
|
946
|
+
output_mtok: 15
|
|
947
|
+
}
|
|
948
|
+
},
|
|
949
|
+
{
|
|
950
|
+
id: "regional.anthropic.claude-3-5-sonnet-20241022-v2:0",
|
|
951
|
+
match: {
|
|
952
|
+
or: [
|
|
953
|
+
{
|
|
954
|
+
starts_with: "us.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
955
|
+
},
|
|
956
|
+
{
|
|
957
|
+
starts_with: "au.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
958
|
+
},
|
|
959
|
+
{
|
|
960
|
+
starts_with: "apac.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
961
|
+
},
|
|
962
|
+
{
|
|
963
|
+
starts_with: "eu.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
964
|
+
},
|
|
965
|
+
{
|
|
966
|
+
starts_with: "us-gov.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
967
|
+
},
|
|
968
|
+
{
|
|
969
|
+
starts_with: "jp.anthropic.claude-3-5-sonnet-20241022-v2"
|
|
970
|
+
}
|
|
971
|
+
]
|
|
972
|
+
},
|
|
973
|
+
prices: {
|
|
974
|
+
input_mtok: 3,
|
|
975
|
+
cache_write_mtok: 3.75,
|
|
976
|
+
cache_read_mtok: 0.3,
|
|
977
|
+
output_mtok: 15
|
|
978
|
+
}
|
|
979
|
+
},
|
|
980
|
+
{
|
|
981
|
+
id: "regional.anthropic.claude-3-7-sonnet-20250219-v1:0",
|
|
982
|
+
match: {
|
|
983
|
+
or: [
|
|
984
|
+
{
|
|
985
|
+
starts_with: "us.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
986
|
+
},
|
|
987
|
+
{
|
|
988
|
+
starts_with: "au.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
starts_with: "apac.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
992
|
+
},
|
|
993
|
+
{
|
|
994
|
+
starts_with: "eu.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
995
|
+
},
|
|
996
|
+
{
|
|
997
|
+
starts_with: "us-gov.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
998
|
+
},
|
|
999
|
+
{
|
|
1000
|
+
starts_with: "jp.anthropic.claude-3-7-sonnet-20250219-v1"
|
|
1001
|
+
}
|
|
1002
|
+
]
|
|
1003
|
+
},
|
|
1004
|
+
prices: {
|
|
1005
|
+
input_mtok: 3,
|
|
1006
|
+
cache_write_mtok: 3.75,
|
|
1007
|
+
cache_read_mtok: 0.3,
|
|
1008
|
+
output_mtok: 15
|
|
1009
|
+
}
|
|
1010
|
+
},
|
|
1011
|
+
{
|
|
1012
|
+
id: "regional.anthropic.claude-3-haiku-20240307-v1:0",
|
|
1013
|
+
match: {
|
|
1014
|
+
or: [
|
|
1015
|
+
{
|
|
1016
|
+
starts_with: "us.anthropic.claude-3-haiku-20240307-v1"
|
|
1017
|
+
},
|
|
1018
|
+
{
|
|
1019
|
+
starts_with: "au.anthropic.claude-3-haiku-20240307-v1"
|
|
1020
|
+
},
|
|
1021
|
+
{
|
|
1022
|
+
starts_with: "apac.anthropic.claude-3-haiku-20240307-v1"
|
|
1023
|
+
},
|
|
1024
|
+
{
|
|
1025
|
+
starts_with: "eu.anthropic.claude-3-haiku-20240307-v1"
|
|
1026
|
+
},
|
|
1027
|
+
{
|
|
1028
|
+
starts_with: "us-gov.anthropic.claude-3-haiku-20240307-v1"
|
|
1029
|
+
},
|
|
1030
|
+
{
|
|
1031
|
+
starts_with: "jp.anthropic.claude-3-haiku-20240307-v1"
|
|
258
1032
|
}
|
|
259
1033
|
]
|
|
260
1034
|
},
|
|
261
|
-
context_window: 2e5,
|
|
262
1035
|
prices: {
|
|
263
|
-
input_mtok:
|
|
264
|
-
|
|
265
|
-
cache_read_mtok: 1.5,
|
|
266
|
-
output_mtok: 75
|
|
1036
|
+
input_mtok: 0.25,
|
|
1037
|
+
output_mtok: 1.25
|
|
267
1038
|
}
|
|
268
1039
|
},
|
|
269
1040
|
{
|
|
270
|
-
id: "claude-opus-
|
|
271
|
-
name: "Claude Opus 4.1",
|
|
272
|
-
description: "Most intelligent model for complex tasks",
|
|
1041
|
+
id: "regional.anthropic.claude-3-opus-20240229-v1:0",
|
|
273
1042
|
match: {
|
|
274
1043
|
or: [
|
|
275
1044
|
{
|
|
276
|
-
starts_with: "claude-opus-
|
|
1045
|
+
starts_with: "us.anthropic.claude-3-opus-20240229-v1"
|
|
277
1046
|
},
|
|
278
1047
|
{
|
|
279
|
-
starts_with: "claude-opus-
|
|
1048
|
+
starts_with: "au.anthropic.claude-3-opus-20240229-v1"
|
|
1049
|
+
},
|
|
1050
|
+
{
|
|
1051
|
+
starts_with: "apac.anthropic.claude-3-opus-20240229-v1"
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
starts_with: "eu.anthropic.claude-3-opus-20240229-v1"
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
starts_with: "us-gov.anthropic.claude-3-opus-20240229-v1"
|
|
1058
|
+
},
|
|
1059
|
+
{
|
|
1060
|
+
starts_with: "jp.anthropic.claude-3-opus-20240229-v1"
|
|
280
1061
|
}
|
|
281
1062
|
]
|
|
282
1063
|
},
|
|
283
|
-
context_window: 2e5,
|
|
284
1064
|
prices: {
|
|
285
1065
|
input_mtok: 15,
|
|
286
|
-
cache_write_mtok: 18.75,
|
|
287
|
-
cache_read_mtok: 1.5,
|
|
288
1066
|
output_mtok: 75
|
|
289
1067
|
}
|
|
290
1068
|
},
|
|
291
1069
|
{
|
|
292
|
-
id: "claude-sonnet-
|
|
293
|
-
name: "Claude Sonnet 4",
|
|
294
|
-
description: "Optimal balance of intelligence, cost, and speed",
|
|
1070
|
+
id: "regional.anthropic.claude-3-sonnet-20240229-v1:0",
|
|
295
1071
|
match: {
|
|
296
1072
|
or: [
|
|
297
1073
|
{
|
|
298
|
-
starts_with: "claude-sonnet-
|
|
1074
|
+
starts_with: "us.anthropic.claude-3-sonnet-20240229-v1"
|
|
299
1075
|
},
|
|
300
1076
|
{
|
|
301
|
-
starts_with: "claude-sonnet-
|
|
1077
|
+
starts_with: "au.anthropic.claude-3-sonnet-20240229-v1"
|
|
302
1078
|
},
|
|
303
1079
|
{
|
|
304
|
-
starts_with: "claude-sonnet-
|
|
1080
|
+
starts_with: "apac.anthropic.claude-3-sonnet-20240229-v1"
|
|
305
1081
|
},
|
|
306
1082
|
{
|
|
307
|
-
|
|
1083
|
+
starts_with: "eu.anthropic.claude-3-sonnet-20240229-v1"
|
|
308
1084
|
},
|
|
309
1085
|
{
|
|
310
|
-
starts_with: "claude-
|
|
1086
|
+
starts_with: "us-gov.anthropic.claude-3-sonnet-20240229-v1"
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
starts_with: "jp.anthropic.claude-3-sonnet-20240229-v1"
|
|
311
1090
|
}
|
|
312
1091
|
]
|
|
313
1092
|
},
|
|
314
|
-
context_window: 2e5,
|
|
315
1093
|
prices: {
|
|
316
1094
|
input_mtok: 3,
|
|
317
1095
|
cache_write_mtok: 3.75,
|
|
@@ -320,207 +1098,158 @@ const x = [
|
|
|
320
1098
|
}
|
|
321
1099
|
},
|
|
322
1100
|
{
|
|
323
|
-
id: "claude-
|
|
324
|
-
name: "Claude Sonnet 4.5",
|
|
325
|
-
description: "Most intelligent model for building agents and coding",
|
|
1101
|
+
id: "regional.anthropic.claude-haiku-4-5-20251001-v1:0",
|
|
326
1102
|
match: {
|
|
327
1103
|
or: [
|
|
328
1104
|
{
|
|
329
|
-
starts_with: "claude-
|
|
1105
|
+
starts_with: "us.anthropic.claude-haiku-4-5-20251001-v1"
|
|
330
1106
|
},
|
|
331
1107
|
{
|
|
332
|
-
starts_with: "claude-
|
|
1108
|
+
starts_with: "au.anthropic.claude-haiku-4-5-20251001-v1"
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
starts_with: "apac.anthropic.claude-haiku-4-5-20251001-v1"
|
|
1112
|
+
},
|
|
1113
|
+
{
|
|
1114
|
+
starts_with: "eu.anthropic.claude-haiku-4-5-20251001-v1"
|
|
1115
|
+
},
|
|
1116
|
+
{
|
|
1117
|
+
starts_with: "us-gov.anthropic.claude-haiku-4-5-20251001-v1"
|
|
1118
|
+
},
|
|
1119
|
+
{
|
|
1120
|
+
starts_with: "jp.anthropic.claude-haiku-4-5-20251001-v1"
|
|
333
1121
|
}
|
|
334
1122
|
]
|
|
335
1123
|
},
|
|
336
|
-
context_window: 1e6,
|
|
337
|
-
prices: {
|
|
338
|
-
input_mtok: {
|
|
339
|
-
base: 3,
|
|
340
|
-
tiers: [
|
|
341
|
-
{
|
|
342
|
-
start: 2e5,
|
|
343
|
-
price: 6
|
|
344
|
-
}
|
|
345
|
-
]
|
|
346
|
-
},
|
|
347
|
-
cache_write_mtok: {
|
|
348
|
-
base: 3.75,
|
|
349
|
-
tiers: [
|
|
350
|
-
{
|
|
351
|
-
start: 2e5,
|
|
352
|
-
price: 7.5
|
|
353
|
-
}
|
|
354
|
-
]
|
|
355
|
-
},
|
|
356
|
-
cache_read_mtok: {
|
|
357
|
-
base: 0.3,
|
|
358
|
-
tiers: [
|
|
359
|
-
{
|
|
360
|
-
start: 2e5,
|
|
361
|
-
price: 0.6
|
|
362
|
-
}
|
|
363
|
-
]
|
|
364
|
-
},
|
|
365
|
-
output_mtok: {
|
|
366
|
-
base: 15,
|
|
367
|
-
tiers: [
|
|
368
|
-
{
|
|
369
|
-
start: 2e5,
|
|
370
|
-
price: 22.5
|
|
371
|
-
}
|
|
372
|
-
]
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
},
|
|
376
|
-
{
|
|
377
|
-
id: "claude-v1",
|
|
378
|
-
description: "Retired, here to match price sources",
|
|
379
|
-
match: {
|
|
380
|
-
equals: "claude-v1"
|
|
381
|
-
},
|
|
382
|
-
prices: {
|
|
383
|
-
input_mtok: 8,
|
|
384
|
-
output_mtok: 24
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
|
-
]
|
|
388
|
-
},
|
|
389
|
-
{
|
|
390
|
-
id: "avian",
|
|
391
|
-
name: "Avian",
|
|
392
|
-
pricing_urls: ["https://avian.io/pricing/"],
|
|
393
|
-
api_pattern: "https://api\\.avian\\.io",
|
|
394
|
-
models: [
|
|
395
|
-
{
|
|
396
|
-
id: "Meta-Llama-3.1-405B-Instruct",
|
|
397
|
-
match: {
|
|
398
|
-
equals: "Meta-Llama-3.1-405B-Instruct"
|
|
399
|
-
},
|
|
400
|
-
prices: {
|
|
401
|
-
input_mtok: 1.5,
|
|
402
|
-
output_mtok: 1.5
|
|
403
|
-
}
|
|
404
|
-
},
|
|
405
|
-
{
|
|
406
|
-
id: "Meta-Llama-3.1-70B-Instruct",
|
|
407
|
-
match: {
|
|
408
|
-
equals: "Meta-Llama-3.1-70B-Instruct"
|
|
409
|
-
},
|
|
410
|
-
prices: {
|
|
411
|
-
input_mtok: 0.45,
|
|
412
|
-
output_mtok: 0.45
|
|
413
|
-
}
|
|
414
|
-
},
|
|
415
|
-
{
|
|
416
|
-
id: "Meta-Llama-3.1-8B-Instruct",
|
|
417
|
-
match: {
|
|
418
|
-
equals: "Meta-Llama-3.1-8B-Instruct"
|
|
419
|
-
},
|
|
420
1124
|
prices: {
|
|
421
|
-
input_mtok:
|
|
422
|
-
|
|
1125
|
+
input_mtok: 1.1,
|
|
1126
|
+
cache_write_mtok: 1.375,
|
|
1127
|
+
cache_read_mtok: 0.11,
|
|
1128
|
+
output_mtok: 5.5
|
|
423
1129
|
}
|
|
424
1130
|
},
|
|
425
1131
|
{
|
|
426
|
-
id: "
|
|
427
|
-
match: {
|
|
428
|
-
equals: "Meta-Llama-3.3-70B-Instruct"
|
|
429
|
-
},
|
|
430
|
-
prices: {
|
|
431
|
-
input_mtok: 0.45,
|
|
432
|
-
output_mtok: 0.45
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
]
|
|
436
|
-
},
|
|
437
|
-
{
|
|
438
|
-
id: "aws",
|
|
439
|
-
name: "AWS Bedrock",
|
|
440
|
-
pricing_urls: ["https://aws.amazon.com/bedrock/pricing/"],
|
|
441
|
-
api_pattern: "https://bedrock-runtime\\.[a-z0-9-]+\\.amazonaws\\.com/",
|
|
442
|
-
provider_match: {
|
|
443
|
-
contains: "bedrock"
|
|
444
|
-
},
|
|
445
|
-
extractors: [
|
|
446
|
-
{
|
|
447
|
-
api_flavor: "default",
|
|
448
|
-
root: "usage",
|
|
449
|
-
model_path: "model",
|
|
450
|
-
mappings: [
|
|
451
|
-
{
|
|
452
|
-
path: "inputTokens",
|
|
453
|
-
dest: "input_tokens",
|
|
454
|
-
required: !0
|
|
455
|
-
},
|
|
456
|
-
{
|
|
457
|
-
path: "outputTokens",
|
|
458
|
-
dest: "output_tokens",
|
|
459
|
-
required: !0
|
|
460
|
-
}
|
|
461
|
-
]
|
|
462
|
-
}
|
|
463
|
-
],
|
|
464
|
-
models: [
|
|
465
|
-
{
|
|
466
|
-
id: "meta.llama3-8b-instruct-v1:0",
|
|
1132
|
+
id: "regional.anthropic.claude-opus-4-1-20250805-v1:0",
|
|
467
1133
|
match: {
|
|
468
|
-
|
|
1134
|
+
or: [
|
|
1135
|
+
{
|
|
1136
|
+
starts_with: "us.anthropic.claude-opus-4-1-20250805-v1"
|
|
1137
|
+
},
|
|
1138
|
+
{
|
|
1139
|
+
starts_with: "au.anthropic.claude-opus-4-1-20250805-v1"
|
|
1140
|
+
},
|
|
1141
|
+
{
|
|
1142
|
+
starts_with: "apac.anthropic.claude-opus-4-1-20250805-v1"
|
|
1143
|
+
},
|
|
1144
|
+
{
|
|
1145
|
+
starts_with: "eu.anthropic.claude-opus-4-1-20250805-v1"
|
|
1146
|
+
},
|
|
1147
|
+
{
|
|
1148
|
+
starts_with: "us-gov.anthropic.claude-opus-4-1-20250805-v1"
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
starts_with: "jp.anthropic.claude-opus-4-1-20250805-v1"
|
|
1152
|
+
}
|
|
1153
|
+
]
|
|
469
1154
|
},
|
|
470
1155
|
prices: {
|
|
471
|
-
input_mtok:
|
|
472
|
-
|
|
1156
|
+
input_mtok: 15,
|
|
1157
|
+
cache_write_mtok: 18.75,
|
|
1158
|
+
cache_read_mtok: 1.5,
|
|
1159
|
+
output_mtok: 75
|
|
473
1160
|
}
|
|
474
1161
|
},
|
|
475
1162
|
{
|
|
476
|
-
id: "
|
|
477
|
-
name: "Nova Lite 1.0",
|
|
478
|
-
description: "Amazon Nova Lite 1.0 is a very low-cost multimodal model from Amazon that focused on fast processing of image, video, and text inputs to generate text output. Amazon Nova Lite can handle real-time customer interactions, document analysis, and visual question-answering tasks with high accuracy.",
|
|
1163
|
+
id: "regional.anthropic.claude-opus-4-20250514-v1:0",
|
|
479
1164
|
match: {
|
|
480
1165
|
or: [
|
|
481
1166
|
{
|
|
482
|
-
|
|
1167
|
+
starts_with: "us.anthropic.claude-opus-4-20250514-v1"
|
|
1168
|
+
},
|
|
1169
|
+
{
|
|
1170
|
+
starts_with: "au.anthropic.claude-opus-4-20250514-v1"
|
|
1171
|
+
},
|
|
1172
|
+
{
|
|
1173
|
+
starts_with: "apac.anthropic.claude-opus-4-20250514-v1"
|
|
1174
|
+
},
|
|
1175
|
+
{
|
|
1176
|
+
starts_with: "eu.anthropic.claude-opus-4-20250514-v1"
|
|
1177
|
+
},
|
|
1178
|
+
{
|
|
1179
|
+
starts_with: "us-gov.anthropic.claude-opus-4-20250514-v1"
|
|
1180
|
+
},
|
|
1181
|
+
{
|
|
1182
|
+
starts_with: "jp.anthropic.claude-opus-4-20250514-v1"
|
|
483
1183
|
}
|
|
484
1184
|
]
|
|
485
1185
|
},
|
|
486
1186
|
prices: {
|
|
487
|
-
input_mtok:
|
|
488
|
-
|
|
489
|
-
|
|
1187
|
+
input_mtok: 15,
|
|
1188
|
+
cache_write_mtok: 18.75,
|
|
1189
|
+
cache_read_mtok: 1.5,
|
|
1190
|
+
output_mtok: 75
|
|
490
1191
|
}
|
|
491
1192
|
},
|
|
492
1193
|
{
|
|
493
|
-
id: "
|
|
494
|
-
name: "Nova Micro 1.0",
|
|
495
|
-
description: "Amazon Nova Micro 1.0 is a text-only model that delivers the lowest latency responses in the Amazon Nova family of models at a very low cost. With a context length of 128K tokens and optimized for speed and cost, Amazon Nova Micro excels at tasks such as text summarization, translation, content classification, interactive chat, and brainstorming. It has simple mathematical reasoning and coding abilities.",
|
|
1194
|
+
id: "regional.anthropic.claude-sonnet-4-20250514-v1:0",
|
|
496
1195
|
match: {
|
|
497
1196
|
or: [
|
|
498
1197
|
{
|
|
499
|
-
|
|
1198
|
+
starts_with: "us.anthropic.claude-sonnet-4-20250514-v1"
|
|
1199
|
+
},
|
|
1200
|
+
{
|
|
1201
|
+
starts_with: "au.anthropic.claude-sonnet-4-20250514-v1"
|
|
1202
|
+
},
|
|
1203
|
+
{
|
|
1204
|
+
starts_with: "apac.anthropic.claude-sonnet-4-20250514-v1"
|
|
1205
|
+
},
|
|
1206
|
+
{
|
|
1207
|
+
starts_with: "eu.anthropic.claude-sonnet-4-20250514-v1"
|
|
1208
|
+
},
|
|
1209
|
+
{
|
|
1210
|
+
starts_with: "us-gov.anthropic.claude-sonnet-4-20250514-v1"
|
|
1211
|
+
},
|
|
1212
|
+
{
|
|
1213
|
+
starts_with: "jp.anthropic.claude-sonnet-4-20250514-v1"
|
|
500
1214
|
}
|
|
501
1215
|
]
|
|
502
1216
|
},
|
|
503
1217
|
prices: {
|
|
504
|
-
input_mtok:
|
|
505
|
-
|
|
506
|
-
|
|
1218
|
+
input_mtok: 3,
|
|
1219
|
+
cache_write_mtok: 3.75,
|
|
1220
|
+
cache_read_mtok: 0.3,
|
|
1221
|
+
output_mtok: 15
|
|
507
1222
|
}
|
|
508
1223
|
},
|
|
509
1224
|
{
|
|
510
|
-
id: "
|
|
511
|
-
name: "Nova Pro 1.0",
|
|
512
|
-
description: "Amazon Nova Pro 1.0 is a capable multimodal model from Amazon focused on providing a combination of accuracy, speed, and cost for a wide range of tasks. As of December 2024, it achieves state-of-the-art performance on key benchmarks including visual question answering (TextVQA) and video understanding (VATEX).",
|
|
1225
|
+
id: "regional.anthropic.claude-sonnet-4-5-20250929-v1:0",
|
|
513
1226
|
match: {
|
|
514
1227
|
or: [
|
|
515
1228
|
{
|
|
516
|
-
|
|
1229
|
+
starts_with: "us.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
1230
|
+
},
|
|
1231
|
+
{
|
|
1232
|
+
starts_with: "au.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
1233
|
+
},
|
|
1234
|
+
{
|
|
1235
|
+
starts_with: "apac.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
1236
|
+
},
|
|
1237
|
+
{
|
|
1238
|
+
starts_with: "eu.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
1239
|
+
},
|
|
1240
|
+
{
|
|
1241
|
+
starts_with: "us-gov.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
1242
|
+
},
|
|
1243
|
+
{
|
|
1244
|
+
starts_with: "jp.anthropic.claude-sonnet-4-5-20250929-v1"
|
|
517
1245
|
}
|
|
518
1246
|
]
|
|
519
1247
|
},
|
|
520
1248
|
prices: {
|
|
521
|
-
input_mtok:
|
|
522
|
-
|
|
523
|
-
|
|
1249
|
+
input_mtok: 3.3,
|
|
1250
|
+
cache_write_mtok: 4.125,
|
|
1251
|
+
cache_read_mtok: 0.33,
|
|
1252
|
+
output_mtok: 16.5
|
|
524
1253
|
}
|
|
525
1254
|
}
|
|
526
1255
|
]
|
|
@@ -11925,34 +12654,34 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
11925
12654
|
function M(t, e) {
|
|
11926
12655
|
if (e <= 0) return 0;
|
|
11927
12656
|
let a = 0;
|
|
11928
|
-
const i = [...t.tiers].sort((
|
|
11929
|
-
a +=
|
|
11930
|
-
for (let
|
|
11931
|
-
const s = i[
|
|
12657
|
+
const i = [...t.tiers].sort((m, s) => m.start - s.start), o = i[0]?.start ?? e, r = Math.min(e, o);
|
|
12658
|
+
a += r * t.base / 1e6;
|
|
12659
|
+
for (let m = 0; m < i.length; m++) {
|
|
12660
|
+
const s = i[m], n = i[m + 1]?.start ?? 1 / 0, u = Math.max(0, Math.min(e, n) - s.start);
|
|
11932
12661
|
u > 0 && (a += u * s.price / 1e6);
|
|
11933
12662
|
}
|
|
11934
12663
|
return a;
|
|
11935
12664
|
}
|
|
11936
|
-
function
|
|
12665
|
+
function c(t, e, a) {
|
|
11937
12666
|
return t === void 0 || e === void 0 ? 0 : typeof t == "number" ? t * e / 1e6 : M(t, e);
|
|
11938
12667
|
}
|
|
11939
12668
|
function I(t, e) {
|
|
11940
12669
|
let a = 0, i = 0;
|
|
11941
|
-
const o = t.cache_read_tokens ?? 0,
|
|
12670
|
+
const o = t.cache_read_tokens ?? 0, r = t.cache_write_tokens ?? 0, m = t.cache_audio_read_tokens ?? 0, s = t.output_audio_tokens ?? 0;
|
|
11942
12671
|
let n = t.input_audio_tokens ?? 0;
|
|
11943
|
-
if (n -=
|
|
12672
|
+
if (n -= m, n < 0)
|
|
11944
12673
|
throw new Error("cache_audio_read_tokens cannot be greater than input_audio_tokens");
|
|
11945
12674
|
let u = t.input_tokens ?? 0;
|
|
11946
|
-
if (u -= o, u -=
|
|
12675
|
+
if (u -= o, u -= r, u -= n, u < 0)
|
|
11947
12676
|
throw new Error("Uncached text input tokens cannot be negative");
|
|
11948
12677
|
let p = o;
|
|
11949
|
-
if (p -=
|
|
12678
|
+
if (p -= m, p < 0)
|
|
11950
12679
|
throw new Error("cache_audio_read_tokens cannot be greater than cache_read_tokens");
|
|
11951
|
-
a +=
|
|
11952
|
-
let
|
|
11953
|
-
if (
|
|
12680
|
+
a += c(e.input_mtok, u), a += c(e.cache_read_mtok, p), a += c(e.cache_write_mtok, r), a += c(e.input_audio_mtok, n), a += c(e.cache_audio_read_mtok, m);
|
|
12681
|
+
let _ = t.output_tokens ?? 0;
|
|
12682
|
+
if (_ -= s, _ < 0)
|
|
11954
12683
|
throw new Error("output_audio_tokens cannot be greater than output_tokens");
|
|
11955
|
-
i +=
|
|
12684
|
+
i += c(e.output_mtok, _), i += c(e.output_audio_mtok, t.output_audio_tokens);
|
|
11956
12685
|
let w = a + i;
|
|
11957
12686
|
return e.requests_kcount !== void 0 && (w += e.requests_kcount / 1e3), {
|
|
11958
12687
|
input_price: a,
|
|
@@ -11960,7 +12689,7 @@ function I(t, e) {
|
|
|
11960
12689
|
total_price: w
|
|
11961
12690
|
};
|
|
11962
12691
|
}
|
|
11963
|
-
function
|
|
12692
|
+
function L(t, e) {
|
|
11964
12693
|
if (!Array.isArray(t.prices))
|
|
11965
12694
|
return t.prices;
|
|
11966
12695
|
for (let a = t.prices.length - 1; a >= 0; a--) {
|
|
@@ -11971,11 +12700,11 @@ function P(t, e) {
|
|
|
11971
12700
|
if (e >= new Date(o.start_date))
|
|
11972
12701
|
return i.prices;
|
|
11973
12702
|
} else {
|
|
11974
|
-
const
|
|
11975
|
-
if (s <
|
|
11976
|
-
if (
|
|
12703
|
+
const r = e.toISOString().slice(11, 19), m = o.start_time, s = o.end_time;
|
|
12704
|
+
if (s < m) {
|
|
12705
|
+
if (r >= m || r < s)
|
|
11977
12706
|
return i.prices;
|
|
11978
|
-
} else if (
|
|
12707
|
+
} else if (r >= m && r < s)
|
|
11979
12708
|
return i.prices;
|
|
11980
12709
|
}
|
|
11981
12710
|
}
|
|
@@ -11984,13 +12713,13 @@ function P(t, e) {
|
|
|
11984
12713
|
function h(t, e) {
|
|
11985
12714
|
return "or" in t ? t.or.some((a) => h(a, e)) : "and" in t ? t.and.every((a) => h(a, e)) : "equals" in t ? e === t.equals : "starts_with" in t ? e.startsWith(t.starts_with) : "ends_with" in t ? e.endsWith(t.ends_with) : "contains" in t ? e.includes(t.contains) : "regex" in t ? new RegExp(t.regex).test(e) : !1;
|
|
11986
12715
|
}
|
|
11987
|
-
function
|
|
12716
|
+
function P(t, e) {
|
|
11988
12717
|
const a = e.toLowerCase().trim(), i = t.find((o) => o.id === a);
|
|
11989
12718
|
return i || t.find((o) => o.provider_match && h(o.provider_match, a));
|
|
11990
12719
|
}
|
|
11991
12720
|
function B(t, { modelId: e, providerApiUrl: a, providerId: i }) {
|
|
11992
12721
|
if (i)
|
|
11993
|
-
return
|
|
12722
|
+
return P(t, i);
|
|
11994
12723
|
if (a)
|
|
11995
12724
|
return t.find((o) => new RegExp(o.api_pattern).test(a));
|
|
11996
12725
|
if (e)
|
|
@@ -12023,12 +12752,12 @@ function O(t, e, a) {
|
|
|
12023
12752
|
f?.();
|
|
12024
12753
|
const i = e.toLowerCase().trim(), o = a?.provider ?? B(g, { modelId: i, providerApiUrl: a?.providerApiUrl, providerId: a?.providerId });
|
|
12025
12754
|
if (!o) return null;
|
|
12026
|
-
const
|
|
12027
|
-
if (!
|
|
12028
|
-
const
|
|
12755
|
+
const r = T(o.models, i);
|
|
12756
|
+
if (!r) return null;
|
|
12757
|
+
const m = a?.timestamp ?? /* @__PURE__ */ new Date(), s = L(r, m), n = I(t, s);
|
|
12029
12758
|
return {
|
|
12030
12759
|
auto_update_timestamp: void 0,
|
|
12031
|
-
model:
|
|
12760
|
+
model: r,
|
|
12032
12761
|
model_price: s,
|
|
12033
12762
|
provider: o,
|
|
12034
12763
|
...n
|
|
@@ -12045,11 +12774,11 @@ function E(t, e, a) {
|
|
|
12045
12774
|
const n = t.extractors.map((u) => u.api_flavor).join(", ");
|
|
12046
12775
|
throw new Error(`Unknown apiFlavor '${a}', allowed values: ${n}`);
|
|
12047
12776
|
}
|
|
12048
|
-
if (!
|
|
12049
|
-
throw new Error(`Expected response data to be a mapping object, got ${
|
|
12050
|
-
const o = q(i.model_path, e, R, !1, []),
|
|
12777
|
+
if (!k.guard(e))
|
|
12778
|
+
throw new Error(`Expected response data to be a mapping object, got ${l(e)}`);
|
|
12779
|
+
const o = q(i.model_path, e, R, !1, []), r = y(i.root), m = q(r, e, k, !0, []), s = {};
|
|
12051
12780
|
for (const n of i.mappings) {
|
|
12052
|
-
const u = q(n.path,
|
|
12781
|
+
const u = q(n.path, m, z, n.required, r);
|
|
12053
12782
|
if (u !== null) {
|
|
12054
12783
|
const p = s[n.dest] ?? 0;
|
|
12055
12784
|
s[n.dest] = p + u;
|
|
@@ -12060,55 +12789,55 @@ function E(t, e, a) {
|
|
|
12060
12789
|
return { model: o, usage: s };
|
|
12061
12790
|
}
|
|
12062
12791
|
function q(t, e, a, i, o) {
|
|
12063
|
-
const [
|
|
12064
|
-
if (typeof
|
|
12065
|
-
throw new Error(`Expected last step of path to be a string, got ${
|
|
12066
|
-
|
|
12792
|
+
const [r, ...m] = y(t).reverse();
|
|
12793
|
+
if (typeof r != "string")
|
|
12794
|
+
throw new Error(`Expected last step of path to be a string, got ${l(r)}`);
|
|
12795
|
+
m.reverse();
|
|
12067
12796
|
let s = e;
|
|
12068
12797
|
const n = [];
|
|
12069
|
-
for (const p of
|
|
12798
|
+
for (const p of m) {
|
|
12070
12799
|
if (n.push(p), typeof p == "object")
|
|
12071
12800
|
if (Array.isArray(s))
|
|
12072
12801
|
s = A(p, s);
|
|
12073
12802
|
else {
|
|
12074
12803
|
if (i)
|
|
12075
|
-
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${
|
|
12804
|
+
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${l(s)}`);
|
|
12076
12805
|
return null;
|
|
12077
12806
|
}
|
|
12078
|
-
else if (
|
|
12807
|
+
else if (k.guard(s))
|
|
12079
12808
|
s = s[p];
|
|
12080
12809
|
else {
|
|
12081
12810
|
if (i)
|
|
12082
|
-
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${
|
|
12811
|
+
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${l(s)}`);
|
|
12083
12812
|
return null;
|
|
12084
12813
|
}
|
|
12085
12814
|
if (typeof s > "u")
|
|
12086
12815
|
if (i) {
|
|
12087
|
-
const
|
|
12088
|
-
throw new Error(`${
|
|
12816
|
+
const _ = typeof p == "object" ? "Unable to find item" : "Missing value";
|
|
12817
|
+
throw new Error(`${_} at \`${d(o, n)}\``);
|
|
12089
12818
|
} else
|
|
12090
12819
|
return null;
|
|
12091
12820
|
}
|
|
12092
|
-
if (!
|
|
12821
|
+
if (!k.guard(s)) {
|
|
12093
12822
|
if (i)
|
|
12094
|
-
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${
|
|
12823
|
+
throw new Error(`Expected \`${d(o, n)}\` value to be a mapping, got ${l(s)}`);
|
|
12095
12824
|
return null;
|
|
12096
12825
|
}
|
|
12097
|
-
const u = s[
|
|
12826
|
+
const u = s[r];
|
|
12098
12827
|
if (typeof u > "u") {
|
|
12099
12828
|
if (i)
|
|
12100
|
-
throw n.push(
|
|
12829
|
+
throw n.push(r), new Error(`Missing value at \`${d(o, n)}\``);
|
|
12101
12830
|
return null;
|
|
12102
12831
|
}
|
|
12103
12832
|
if (a.guard(u))
|
|
12104
12833
|
return u;
|
|
12105
12834
|
if (i)
|
|
12106
|
-
throw n.push(
|
|
12835
|
+
throw n.push(r), new Error(`Expected \`${d(o, n)}\` value to be a ${a.name}, got ${l(u)}`);
|
|
12107
12836
|
return null;
|
|
12108
12837
|
}
|
|
12109
12838
|
function A(t, e) {
|
|
12110
12839
|
for (const a of e)
|
|
12111
|
-
if (
|
|
12840
|
+
if (k.guard(a)) {
|
|
12112
12841
|
const i = a[t.field];
|
|
12113
12842
|
if (typeof i == "string" && h(t.match, i))
|
|
12114
12843
|
return a;
|
|
@@ -12117,11 +12846,11 @@ function A(t, e) {
|
|
|
12117
12846
|
function y(t) {
|
|
12118
12847
|
return Array.isArray(t) ? [...t] : [t];
|
|
12119
12848
|
}
|
|
12120
|
-
function
|
|
12849
|
+
function l(t) {
|
|
12121
12850
|
return t === null ? "null" : Array.isArray(t) ? "array" : typeof t == "object" ? "mapping" : typeof t;
|
|
12122
12851
|
}
|
|
12123
|
-
const
|
|
12124
|
-
guard: (t) =>
|
|
12852
|
+
const k = {
|
|
12853
|
+
guard: (t) => l(t) === "mapping",
|
|
12125
12854
|
name: "mapping"
|
|
12126
12855
|
}, R = {
|
|
12127
12856
|
guard: (t) => typeof t == "string",
|