@pydantic/genai-prices 0.0.67 → 0.0.69
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 +359 -27
- package/dist/index.cjs +5 -5
- package/dist/index.js +338 -6
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -105,7 +105,7 @@ class Ve {
|
|
|
105
105
|
number: void 0,
|
|
106
106
|
__: void 0,
|
|
107
107
|
key: void 0
|
|
108
|
-
}, u), r = Ee(o), _ = typeof o == "string", h =
|
|
108
|
+
}, u), r = Ee(o), _ = typeof o == "string", h = Fe(Object.assign(/* @__PURE__ */ Object.create(null), s.alias)), k = Object.assign({
|
|
109
109
|
"boolean-negation": !0,
|
|
110
110
|
"camel-case-expansion": !0,
|
|
111
111
|
"combine-arrays": !1,
|
|
@@ -171,15 +171,15 @@ class Ve {
|
|
|
171
171
|
});
|
|
172
172
|
let L = null;
|
|
173
173
|
Ae();
|
|
174
|
-
let
|
|
174
|
+
let D = [];
|
|
175
175
|
const b = Object.assign(/* @__PURE__ */ Object.create(null), { _: [] }), se = {};
|
|
176
176
|
for (let e = 0; e < r.length; e++) {
|
|
177
177
|
const a = r[e], c = a.replace(/^-{3,}/, "---");
|
|
178
178
|
let n, t, l, p, d, v;
|
|
179
179
|
if (a !== "--" && /^-/.test(a) && $(a))
|
|
180
|
-
|
|
180
|
+
Z(a);
|
|
181
181
|
else if (c.match(/^---+(=|$)/)) {
|
|
182
|
-
|
|
182
|
+
Z(a);
|
|
183
183
|
continue;
|
|
184
184
|
} else if (a.match(/^--.+=/) || !k["short-option-groups"] && a.match(/^-.+=/))
|
|
185
185
|
p = a.match(/^--?([^=]+)=([\s\S]*)$/), p !== null && Array.isArray(p) && p.length >= 3 && (g(p[1], m.arrays) ? e = K(e, p[1], r, p[2]) : g(p[1], m.nargs) !== !1 ? e = j(e, p[1], r, p[2]) : f(p[1], p[2], !0));
|
|
@@ -216,24 +216,24 @@ class Ve {
|
|
|
216
216
|
} else if (a.match(/^-[0-9]$/) && a.match(y) && g(a.slice(1), m.bools))
|
|
217
217
|
t = a.slice(1), f(t, N(t));
|
|
218
218
|
else if (a === "--") {
|
|
219
|
-
|
|
219
|
+
D = r.slice(e + 1);
|
|
220
220
|
break;
|
|
221
221
|
} else if (k["halt-at-non-option"]) {
|
|
222
|
-
|
|
222
|
+
D = r.slice(e);
|
|
223
223
|
break;
|
|
224
224
|
} else
|
|
225
|
-
|
|
225
|
+
Z(a);
|
|
226
226
|
}
|
|
227
227
|
me(b, !0), me(b, !1), we(b), fe(), ue(b, m.aliases, q, !0), be(b), k["set-placeholder-key"] && ve(b), Object.keys(m.counts).forEach(function(e) {
|
|
228
228
|
O(b, e.split(".")) || f(e, 0);
|
|
229
|
-
}), G &&
|
|
229
|
+
}), G && D.length && (b[M] = []), D.forEach(function(e) {
|
|
230
230
|
b[M].push(e);
|
|
231
231
|
}), k["camel-case-expansion"] && k["strip-dashed"] && Object.keys(b).filter((e) => e !== "--" && e.includes("-")).forEach((e) => {
|
|
232
232
|
delete b[e];
|
|
233
233
|
}), k["strip-aliased"] && [].concat(...Object.keys(h).map((e) => h[e])).forEach((e) => {
|
|
234
234
|
k["camel-case-expansion"] && e.includes("-") && delete b[e.split(".").map((a) => U(a)).join(".")], delete b[e];
|
|
235
235
|
});
|
|
236
|
-
function
|
|
236
|
+
function Z(e) {
|
|
237
237
|
const a = H("_", e);
|
|
238
238
|
(typeof a == "string" || typeof a == "number") && b._.push(a);
|
|
239
239
|
}
|
|
@@ -265,9 +265,9 @@ class Ve {
|
|
|
265
265
|
t = Array.isArray(d) ? d : [d];
|
|
266
266
|
}
|
|
267
267
|
} else {
|
|
268
|
-
S(n) || t.push(
|
|
268
|
+
S(n) || t.push(Y(a, n, !0));
|
|
269
269
|
for (let d = e + 1; d < c.length && !(!k["greedy-arrays"] && t.length > 0 || p && typeof p == "number" && t.length >= p || (l = c[d], /^-/.test(l) && !y.test(l) && !$(l))); d++)
|
|
270
|
-
e = d, t.push(
|
|
270
|
+
e = d, t.push(Y(a, l, _));
|
|
271
271
|
}
|
|
272
272
|
return typeof p == "number" && (p && t.length < p || isNaN(p) && t.length === 0) && (L = Error(I("Not enough arguments following: %s", a))), f(a, t), e;
|
|
273
273
|
}
|
|
@@ -278,7 +278,7 @@ class Ve {
|
|
|
278
278
|
}).join(".");
|
|
279
279
|
re(e, l);
|
|
280
280
|
}
|
|
281
|
-
const n =
|
|
281
|
+
const n = Y(e, a, c), t = e.split(".");
|
|
282
282
|
E(b, t, n), m.aliases[e] && m.aliases[e].forEach(function(l) {
|
|
283
283
|
const p = l.split(".");
|
|
284
284
|
E(b, p, n);
|
|
@@ -301,8 +301,8 @@ class Ve {
|
|
|
301
301
|
function re(e, a) {
|
|
302
302
|
m.aliases[e] && m.aliases[e].length || (m.aliases[e] = [a], T[a] = !0), m.aliases[a] && m.aliases[a].length || re(a, e);
|
|
303
303
|
}
|
|
304
|
-
function
|
|
305
|
-
c && (a =
|
|
304
|
+
function Y(e, a, c) {
|
|
305
|
+
c && (a = De(a)), (g(e, m.bools) || g(e, m.counts)) && typeof a == "string" && (a = a === "true");
|
|
306
306
|
let n = Array.isArray(a) ? a.map(function(t) {
|
|
307
307
|
return H(e, t);
|
|
308
308
|
}) : H(e, a);
|
|
@@ -494,7 +494,7 @@ class Ve {
|
|
|
494
494
|
};
|
|
495
495
|
}
|
|
496
496
|
}
|
|
497
|
-
function
|
|
497
|
+
function Fe(i) {
|
|
498
498
|
const o = [], u = /* @__PURE__ */ Object.create(null);
|
|
499
499
|
let s = !0;
|
|
500
500
|
for (Object.keys(i).forEach(function(r) {
|
|
@@ -524,7 +524,7 @@ function X(i) {
|
|
|
524
524
|
function pe(i) {
|
|
525
525
|
return i === "__proto__" ? "___proto___" : i;
|
|
526
526
|
}
|
|
527
|
-
function
|
|
527
|
+
function De(i) {
|
|
528
528
|
return typeof i == "string" && (i[0] === "'" || i[0] === '"') && i[i.length - 1] === i[0] ? i.substring(1, i.length - 1) : i;
|
|
529
529
|
}
|
|
530
530
|
/**
|
|
@@ -1305,6 +1305,51 @@ const ne = [
|
|
|
1305
1305
|
}
|
|
1306
1306
|
]
|
|
1307
1307
|
},
|
|
1308
|
+
{
|
|
1309
|
+
id: "claude-sonnet-5",
|
|
1310
|
+
name: "Claude Sonnet 5",
|
|
1311
|
+
description: "Our most agentic Sonnet model, approaching Opus 4.8 capability at lower cost",
|
|
1312
|
+
match: {
|
|
1313
|
+
or: [
|
|
1314
|
+
{
|
|
1315
|
+
starts_with: "claude-sonnet-5"
|
|
1316
|
+
},
|
|
1317
|
+
{
|
|
1318
|
+
starts_with: "claude-sonnet-5.0"
|
|
1319
|
+
},
|
|
1320
|
+
{
|
|
1321
|
+
starts_with: "claude-5-sonnet"
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
starts_with: "claude-5.0-sonnet"
|
|
1325
|
+
}
|
|
1326
|
+
]
|
|
1327
|
+
},
|
|
1328
|
+
context_window: 1e6,
|
|
1329
|
+
price_comments: "Flat pricing across full 1M context window (no tiered pricing). Introductory pricing ($2/$10 per MTok) applies through 2026-08-31; standard pricing ($3/$15) applies from 2026-09-01. Ref: https://www.anthropic.com/news/claude-sonnet-5",
|
|
1330
|
+
prices: [
|
|
1331
|
+
{
|
|
1332
|
+
prices: {
|
|
1333
|
+
input_mtok: 2,
|
|
1334
|
+
cache_write_mtok: 2.5,
|
|
1335
|
+
cache_read_mtok: 0.2,
|
|
1336
|
+
output_mtok: 10
|
|
1337
|
+
}
|
|
1338
|
+
},
|
|
1339
|
+
{
|
|
1340
|
+
constraint: {
|
|
1341
|
+
start_date: "2026-09-01",
|
|
1342
|
+
type: "start_date"
|
|
1343
|
+
},
|
|
1344
|
+
prices: {
|
|
1345
|
+
input_mtok: 3,
|
|
1346
|
+
cache_write_mtok: 3.75,
|
|
1347
|
+
cache_read_mtok: 0.3,
|
|
1348
|
+
output_mtok: 15
|
|
1349
|
+
}
|
|
1350
|
+
}
|
|
1351
|
+
]
|
|
1352
|
+
},
|
|
1308
1353
|
{
|
|
1309
1354
|
id: "claude-v1",
|
|
1310
1355
|
description: "Retired, here to match price sources",
|
|
@@ -1742,6 +1787,35 @@ const ne = [
|
|
|
1742
1787
|
}
|
|
1743
1788
|
}
|
|
1744
1789
|
},
|
|
1790
|
+
{
|
|
1791
|
+
id: "global.anthropic.claude-sonnet-5-v1:0",
|
|
1792
|
+
match: {
|
|
1793
|
+
contains: "global.anthropic.claude-sonnet-5"
|
|
1794
|
+
},
|
|
1795
|
+
price_comments: "Flat pricing across full 1M context window (no tiered pricing). Promotional launch pricing ($2/$10 per MTok) through 2026-08-31; standard ($3/$15) from 2026-09-01. Ref: https://aws.amazon.com/bedrock/pricing/",
|
|
1796
|
+
prices: [
|
|
1797
|
+
{
|
|
1798
|
+
prices: {
|
|
1799
|
+
input_mtok: 2,
|
|
1800
|
+
cache_write_mtok: 2.5,
|
|
1801
|
+
cache_read_mtok: 0.2,
|
|
1802
|
+
output_mtok: 10
|
|
1803
|
+
}
|
|
1804
|
+
},
|
|
1805
|
+
{
|
|
1806
|
+
constraint: {
|
|
1807
|
+
start_date: "2026-09-01",
|
|
1808
|
+
type: "start_date"
|
|
1809
|
+
},
|
|
1810
|
+
prices: {
|
|
1811
|
+
input_mtok: 3,
|
|
1812
|
+
cache_write_mtok: 3.75,
|
|
1813
|
+
cache_read_mtok: 0.3,
|
|
1814
|
+
output_mtok: 15
|
|
1815
|
+
}
|
|
1816
|
+
}
|
|
1817
|
+
]
|
|
1818
|
+
},
|
|
1745
1819
|
{
|
|
1746
1820
|
id: "google.gemma-3-12b-it",
|
|
1747
1821
|
name: "Gemma 3 12B IT",
|
|
@@ -2072,6 +2146,30 @@ const ne = [
|
|
|
2072
2146
|
output_mtok: 0.65
|
|
2073
2147
|
}
|
|
2074
2148
|
},
|
|
2149
|
+
{
|
|
2150
|
+
id: "openai.gpt-5.4",
|
|
2151
|
+
name: "GPT-5.4",
|
|
2152
|
+
match: {
|
|
2153
|
+
equals: "openai.gpt-5.4"
|
|
2154
|
+
},
|
|
2155
|
+
prices: {
|
|
2156
|
+
input_mtok: 2.75,
|
|
2157
|
+
cache_read_mtok: 0.275,
|
|
2158
|
+
output_mtok: 16.5
|
|
2159
|
+
}
|
|
2160
|
+
},
|
|
2161
|
+
{
|
|
2162
|
+
id: "openai.gpt-5.5",
|
|
2163
|
+
name: "GPT-5.5",
|
|
2164
|
+
match: {
|
|
2165
|
+
equals: "openai.gpt-5.5"
|
|
2166
|
+
},
|
|
2167
|
+
prices: {
|
|
2168
|
+
input_mtok: 5.5,
|
|
2169
|
+
cache_read_mtok: 0.55,
|
|
2170
|
+
output_mtok: 33
|
|
2171
|
+
}
|
|
2172
|
+
},
|
|
2075
2173
|
{
|
|
2076
2174
|
id: "openai.gpt-oss-120b-1:0",
|
|
2077
2175
|
name: "gpt-oss-120b",
|
|
@@ -2699,6 +2797,60 @@ const ne = [
|
|
|
2699
2797
|
]
|
|
2700
2798
|
}
|
|
2701
2799
|
}
|
|
2800
|
+
},
|
|
2801
|
+
{
|
|
2802
|
+
id: "regional.anthropic.claude-sonnet-5-v1:0",
|
|
2803
|
+
match: {
|
|
2804
|
+
or: [
|
|
2805
|
+
{
|
|
2806
|
+
starts_with: "anthropic.claude-sonnet-5"
|
|
2807
|
+
},
|
|
2808
|
+
{
|
|
2809
|
+
starts_with: "claude-sonnet-5"
|
|
2810
|
+
},
|
|
2811
|
+
{
|
|
2812
|
+
contains: "us.anthropic.claude-sonnet-5"
|
|
2813
|
+
},
|
|
2814
|
+
{
|
|
2815
|
+
contains: "au.anthropic.claude-sonnet-5"
|
|
2816
|
+
},
|
|
2817
|
+
{
|
|
2818
|
+
contains: "apac.anthropic.claude-sonnet-5"
|
|
2819
|
+
},
|
|
2820
|
+
{
|
|
2821
|
+
contains: "eu.anthropic.claude-sonnet-5"
|
|
2822
|
+
},
|
|
2823
|
+
{
|
|
2824
|
+
contains: "us-gov.anthropic.claude-sonnet-5"
|
|
2825
|
+
},
|
|
2826
|
+
{
|
|
2827
|
+
contains: "jp.anthropic.claude-sonnet-5"
|
|
2828
|
+
}
|
|
2829
|
+
]
|
|
2830
|
+
},
|
|
2831
|
+
price_comments: "Regional/cross-region endpoints carry a 10% premium over global (AWS published only the global promo rate; regional computed as global +10%, per the documented regional premium). Promotional launch pricing through 2026-08-31; standard from 2026-09-01. Ref: https://aws.amazon.com/bedrock/pricing/",
|
|
2832
|
+
prices: [
|
|
2833
|
+
{
|
|
2834
|
+
prices: {
|
|
2835
|
+
input_mtok: 2.2,
|
|
2836
|
+
cache_write_mtok: 2.75,
|
|
2837
|
+
cache_read_mtok: 0.22,
|
|
2838
|
+
output_mtok: 11
|
|
2839
|
+
}
|
|
2840
|
+
},
|
|
2841
|
+
{
|
|
2842
|
+
constraint: {
|
|
2843
|
+
start_date: "2026-09-01",
|
|
2844
|
+
type: "start_date"
|
|
2845
|
+
},
|
|
2846
|
+
prices: {
|
|
2847
|
+
input_mtok: 3.3,
|
|
2848
|
+
cache_write_mtok: 4.125,
|
|
2849
|
+
cache_read_mtok: 0.33,
|
|
2850
|
+
output_mtok: 16.5
|
|
2851
|
+
}
|
|
2852
|
+
}
|
|
2853
|
+
]
|
|
2702
2854
|
}
|
|
2703
2855
|
]
|
|
2704
2856
|
},
|
|
@@ -3991,6 +4143,20 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
3991
4143
|
output_mtok: 4.4
|
|
3992
4144
|
}
|
|
3993
4145
|
},
|
|
4146
|
+
{
|
|
4147
|
+
id: "glm-5p2",
|
|
4148
|
+
name: "GLM-5.2",
|
|
4149
|
+
description: "GLM-5.2 introduces a robust 1M-token context and advanced, multi-effort coding capabilities to significantly enhance performance on long-horizon tasks. Features a new IndexShare architecture and improved MTP layer for greater efficiency. 743B parameter MoE model from Z.ai.",
|
|
4150
|
+
match: {
|
|
4151
|
+
equals: "accounts/fireworks/models/glm-5p2"
|
|
4152
|
+
},
|
|
4153
|
+
context_window: 104e4,
|
|
4154
|
+
prices: {
|
|
4155
|
+
input_mtok: 1.4,
|
|
4156
|
+
cache_read_mtok: 0.14,
|
|
4157
|
+
output_mtok: 4.4
|
|
4158
|
+
}
|
|
4159
|
+
},
|
|
3994
4160
|
{
|
|
3995
4161
|
id: "gpt-oss-120b",
|
|
3996
4162
|
name: "OpenAI gpt-oss-120b",
|
|
@@ -4045,6 +4211,20 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
4045
4211
|
output_mtok: 4
|
|
4046
4212
|
}
|
|
4047
4213
|
},
|
|
4214
|
+
{
|
|
4215
|
+
id: "kimi-k2p7-code",
|
|
4216
|
+
name: "Kimi K2.7 Code",
|
|
4217
|
+
description: "Kimi K2.7 Code is a coding-focused agentic model built upon Kimi K2.6, delivering substantial improvements on real-world long-horizon coding tasks while reducing thinking tokens by roughly 30% compared to its predecessor.",
|
|
4218
|
+
match: {
|
|
4219
|
+
equals: "accounts/fireworks/models/kimi-k2p7-code"
|
|
4220
|
+
},
|
|
4221
|
+
context_window: 262144,
|
|
4222
|
+
prices: {
|
|
4223
|
+
input_mtok: 0.95,
|
|
4224
|
+
cache_read_mtok: 0.19,
|
|
4225
|
+
output_mtok: 4
|
|
4226
|
+
}
|
|
4227
|
+
},
|
|
4048
4228
|
{
|
|
4049
4229
|
id: "llama-v3p1-8b-instruct",
|
|
4050
4230
|
name: "Llama 3.1 8B Instruct",
|
|
@@ -4111,6 +4291,20 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
4111
4291
|
output_mtok: 1.2
|
|
4112
4292
|
}
|
|
4113
4293
|
},
|
|
4294
|
+
{
|
|
4295
|
+
id: "nemotron-3-ultra-nvfp4",
|
|
4296
|
+
name: "NVIDIA Nemotron 3 Ultra NVFP4",
|
|
4297
|
+
description: "Frontier-scale LLM from NVIDIA using a hybrid Latent Mixture-of-Experts (LatentMoE) architecture with interleaved Mamba-2 and MoE layers plus select Attention layers. Features 55B active parameters out of 550B total and Multi-Token Prediction layers for faster generation, optimized for complex multi-step agents, long-context analysis, and high-accuracy reasoning over code, math, and science.",
|
|
4298
|
+
match: {
|
|
4299
|
+
equals: "accounts/fireworks/models/nemotron-3-ultra-nvfp4"
|
|
4300
|
+
},
|
|
4301
|
+
context_window: 262e3,
|
|
4302
|
+
prices: {
|
|
4303
|
+
input_mtok: 0.6,
|
|
4304
|
+
cache_read_mtok: 0.12,
|
|
4305
|
+
output_mtok: 2.4
|
|
4306
|
+
}
|
|
4307
|
+
},
|
|
4114
4308
|
{
|
|
4115
4309
|
id: "qwen2p5-vl-72b-instruct",
|
|
4116
4310
|
name: "Qwen2.5-VL 72B Instruct",
|
|
@@ -4149,6 +4343,20 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
4149
4343
|
cache_read_mtok: 0.1,
|
|
4150
4344
|
output_mtok: 3
|
|
4151
4345
|
}
|
|
4346
|
+
},
|
|
4347
|
+
{
|
|
4348
|
+
id: "qwen3p7-plus",
|
|
4349
|
+
name: "Qwen3.7 Plus",
|
|
4350
|
+
description: "Qwen3.7 Plus is Alibaba's latest flagship closed model, available exclusively through Fireworks AI outside of Alibaba's own infrastructure.",
|
|
4351
|
+
match: {
|
|
4352
|
+
equals: "accounts/fireworks/models/qwen3p7-plus"
|
|
4353
|
+
},
|
|
4354
|
+
context_window: 262144,
|
|
4355
|
+
prices: {
|
|
4356
|
+
input_mtok: 0.4,
|
|
4357
|
+
cache_read_mtok: 0.08,
|
|
4358
|
+
output_mtok: 1.6
|
|
4359
|
+
}
|
|
4152
4360
|
}
|
|
4153
4361
|
]
|
|
4154
4362
|
},
|
|
@@ -9560,6 +9768,65 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
9560
9768
|
]
|
|
9561
9769
|
},
|
|
9562
9770
|
extractors: [
|
|
9771
|
+
{
|
|
9772
|
+
api_flavor: "default",
|
|
9773
|
+
root: "usage",
|
|
9774
|
+
model_path: "model",
|
|
9775
|
+
mappings: [
|
|
9776
|
+
{
|
|
9777
|
+
path: "input_tokens",
|
|
9778
|
+
dest: "input_tokens",
|
|
9779
|
+
required: !0
|
|
9780
|
+
},
|
|
9781
|
+
{
|
|
9782
|
+
path: "cache_creation_input_tokens",
|
|
9783
|
+
dest: "input_tokens",
|
|
9784
|
+
required: !1
|
|
9785
|
+
},
|
|
9786
|
+
{
|
|
9787
|
+
path: "cache_read_input_tokens",
|
|
9788
|
+
dest: "input_tokens",
|
|
9789
|
+
required: !1
|
|
9790
|
+
},
|
|
9791
|
+
{
|
|
9792
|
+
path: "cache_creation_input_tokens",
|
|
9793
|
+
dest: "cache_write_tokens",
|
|
9794
|
+
required: !1
|
|
9795
|
+
},
|
|
9796
|
+
{
|
|
9797
|
+
path: "cache_read_input_tokens",
|
|
9798
|
+
dest: "cache_read_tokens",
|
|
9799
|
+
required: !1
|
|
9800
|
+
},
|
|
9801
|
+
{
|
|
9802
|
+
path: "output_tokens",
|
|
9803
|
+
dest: "output_tokens",
|
|
9804
|
+
required: !0
|
|
9805
|
+
}
|
|
9806
|
+
]
|
|
9807
|
+
},
|
|
9808
|
+
{
|
|
9809
|
+
api_flavor: "responses",
|
|
9810
|
+
root: "usage",
|
|
9811
|
+
model_path: "model",
|
|
9812
|
+
mappings: [
|
|
9813
|
+
{
|
|
9814
|
+
path: "input_tokens",
|
|
9815
|
+
dest: "input_tokens",
|
|
9816
|
+
required: !0
|
|
9817
|
+
},
|
|
9818
|
+
{
|
|
9819
|
+
path: ["input_tokens_details", "cached_tokens"],
|
|
9820
|
+
dest: "cache_read_tokens",
|
|
9821
|
+
required: !1
|
|
9822
|
+
},
|
|
9823
|
+
{
|
|
9824
|
+
path: "output_tokens",
|
|
9825
|
+
dest: "output_tokens",
|
|
9826
|
+
required: !0
|
|
9827
|
+
}
|
|
9828
|
+
]
|
|
9829
|
+
},
|
|
9563
9830
|
{
|
|
9564
9831
|
api_flavor: "chat",
|
|
9565
9832
|
root: "usage",
|
|
@@ -9790,6 +10057,11 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
9790
10057
|
dest: "input_tokens",
|
|
9791
10058
|
required: !0
|
|
9792
10059
|
},
|
|
10060
|
+
{
|
|
10061
|
+
path: ["prompt_tokens_details", "cached_tokens"],
|
|
10062
|
+
dest: "cache_read_tokens",
|
|
10063
|
+
required: !1
|
|
10064
|
+
},
|
|
9793
10065
|
{
|
|
9794
10066
|
path: "completion_tokens",
|
|
9795
10067
|
dest: "output_tokens",
|
|
@@ -13256,6 +13528,43 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
13256
13528
|
output_mtok: 15
|
|
13257
13529
|
}
|
|
13258
13530
|
},
|
|
13531
|
+
{
|
|
13532
|
+
id: "anthropic/claude-sonnet-5",
|
|
13533
|
+
match: {
|
|
13534
|
+
or: [
|
|
13535
|
+
{
|
|
13536
|
+
equals: "anthropic/claude-sonnet-5"
|
|
13537
|
+
},
|
|
13538
|
+
{
|
|
13539
|
+
equals: "anthropic/claude-sonnet-5:beta"
|
|
13540
|
+
}
|
|
13541
|
+
]
|
|
13542
|
+
},
|
|
13543
|
+
context_window: 1e6,
|
|
13544
|
+
price_comments: "Flat pricing across full 1M context window (no tiered pricing). Introductory pricing ($2/$10 per MTok) applies through 2026-08-31; standard ($3/$15) from 2026-09-01. OpenRouter mirrors Anthropic first-party pricing; $2/$10 verified live via the OpenRouter API on 2026-06-30. Ref: https://openrouter.ai/anthropic/claude-sonnet-5",
|
|
13545
|
+
prices: [
|
|
13546
|
+
{
|
|
13547
|
+
prices: {
|
|
13548
|
+
input_mtok: 2,
|
|
13549
|
+
cache_write_mtok: 2.5,
|
|
13550
|
+
cache_read_mtok: 0.2,
|
|
13551
|
+
output_mtok: 10
|
|
13552
|
+
}
|
|
13553
|
+
},
|
|
13554
|
+
{
|
|
13555
|
+
constraint: {
|
|
13556
|
+
start_date: "2026-09-01",
|
|
13557
|
+
type: "start_date"
|
|
13558
|
+
},
|
|
13559
|
+
prices: {
|
|
13560
|
+
input_mtok: 3,
|
|
13561
|
+
cache_write_mtok: 3.75,
|
|
13562
|
+
cache_read_mtok: 0.3,
|
|
13563
|
+
output_mtok: 15
|
|
13564
|
+
}
|
|
13565
|
+
}
|
|
13566
|
+
]
|
|
13567
|
+
},
|
|
13259
13568
|
{
|
|
13260
13569
|
id: "anubis-pro-105b-v1",
|
|
13261
13570
|
name: "Anubis Pro 105B V1",
|
|
@@ -14816,7 +15125,14 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
14816
15125
|
id: "google/gemini-3.5-flash",
|
|
14817
15126
|
name: "Gemini 3.5 Flash",
|
|
14818
15127
|
match: {
|
|
14819
|
-
|
|
15128
|
+
or: [
|
|
15129
|
+
{
|
|
15130
|
+
equals: "google/gemini-3.5-flash"
|
|
15131
|
+
},
|
|
15132
|
+
{
|
|
15133
|
+
regex: "^google/gemini-3\\.5-flash-\\d{8}$"
|
|
15134
|
+
}
|
|
15135
|
+
]
|
|
14820
15136
|
},
|
|
14821
15137
|
prices: {
|
|
14822
15138
|
input_mtok: 1.5,
|
|
@@ -19982,7 +20298,14 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
19982
20298
|
id: "x-ai/grok-4.3",
|
|
19983
20299
|
name: "Grok 4.3",
|
|
19984
20300
|
match: {
|
|
19985
|
-
|
|
20301
|
+
or: [
|
|
20302
|
+
{
|
|
20303
|
+
equals: "x-ai/grok-4.3"
|
|
20304
|
+
},
|
|
20305
|
+
{
|
|
20306
|
+
regex: "^x-ai/grok-4\\.3-\\d{8}$"
|
|
20307
|
+
}
|
|
20308
|
+
]
|
|
19986
20309
|
},
|
|
19987
20310
|
prices: {
|
|
19988
20311
|
input_mtok: 1.25,
|
|
@@ -22189,6 +22512,15 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
22189
22512
|
{
|
|
22190
22513
|
equals: "grok-4.3"
|
|
22191
22514
|
},
|
|
22515
|
+
{
|
|
22516
|
+
regex: "^grok-4\\.3-\\d{8}$"
|
|
22517
|
+
},
|
|
22518
|
+
{
|
|
22519
|
+
equals: "x-ai/grok-4.3"
|
|
22520
|
+
},
|
|
22521
|
+
{
|
|
22522
|
+
regex: "^x-ai/grok-4\\.3-\\d{8}$"
|
|
22523
|
+
},
|
|
22192
22524
|
{
|
|
22193
22525
|
equals: "grok-4.3-latest"
|
|
22194
22526
|
},
|
|
@@ -22564,7 +22896,7 @@ Compared to other leading proprietary and open-weights models Command A delivers
|
|
|
22564
22896
|
]
|
|
22565
22897
|
}
|
|
22566
22898
|
];
|
|
22567
|
-
function
|
|
22899
|
+
function Ze(i, o, u) {
|
|
22568
22900
|
if (o <= 0) return 0;
|
|
22569
22901
|
let s = i.base;
|
|
22570
22902
|
for (const r of i.tiers)
|
|
@@ -22572,9 +22904,9 @@ function Ye(i, o, u) {
|
|
|
22572
22904
|
return s * o / 1e6;
|
|
22573
22905
|
}
|
|
22574
22906
|
function C(i, o, u, s) {
|
|
22575
|
-
return i === void 0 || o === void 0 ? 0 : typeof i == "number" ? i * o / 1e6 :
|
|
22907
|
+
return i === void 0 || o === void 0 ? 0 : typeof i == "number" ? i * o / 1e6 : Ze(i, o, s);
|
|
22576
22908
|
}
|
|
22577
|
-
function
|
|
22909
|
+
function Ye(i, o) {
|
|
22578
22910
|
let u = 0, s = 0;
|
|
22579
22911
|
const r = i.input_tokens ?? 0, _ = i.cache_read_tokens ?? 0, h = i.cache_write_tokens ?? 0, k = i.cache_audio_read_tokens ?? 0, q = i.input_audio_tokens ?? 0, Q = i.output_audio_tokens ?? 0, B = o.cache_audio_read_mtok === void 0 ? 0 : k, G = o.cache_audio_read_mtok === void 0 && o.cache_read_mtok !== void 0 ? k : 0;
|
|
22580
22912
|
let M = 0;
|
|
@@ -22620,12 +22952,12 @@ function Je(i, o) {
|
|
|
22620
22952
|
}
|
|
22621
22953
|
return i.prices[0].prices;
|
|
22622
22954
|
}
|
|
22623
|
-
function
|
|
22624
|
-
return "or" in i ? i.or.some((u) =>
|
|
22955
|
+
function F(i, o) {
|
|
22956
|
+
return "or" in i ? i.or.some((u) => F(u, o)) : "and" in i ? i.and.every((u) => F(u, o)) : "equals" in i ? o.toLowerCase() === i.equals.toLowerCase() : "starts_with" in i ? o.toLowerCase().startsWith(i.starts_with.toLowerCase()) : "ends_with" in i ? o.toLowerCase().endsWith(i.ends_with.toLowerCase()) : "contains" in i ? o.toLowerCase().includes(i.contains.toLowerCase()) : "regex" in i ? new RegExp(i.regex).test(o) : !1;
|
|
22625
22957
|
}
|
|
22626
22958
|
function Xe(i, o) {
|
|
22627
22959
|
const u = o.toLowerCase().trim(), s = i.find((r) => r.id === u);
|
|
22628
|
-
return s || i.find((r) => r.provider_match &&
|
|
22960
|
+
return s || i.find((r) => r.provider_match && F(r.provider_match, u));
|
|
22629
22961
|
}
|
|
22630
22962
|
function he(i, { modelId: o, providerApiUrl: u, providerId: s }) {
|
|
22631
22963
|
if (s) {
|
|
@@ -22636,10 +22968,10 @@ function he(i, { modelId: o, providerApiUrl: u, providerId: s }) {
|
|
|
22636
22968
|
if (u)
|
|
22637
22969
|
return i.find((r) => new RegExp(r.api_pattern).test(u));
|
|
22638
22970
|
if (o)
|
|
22639
|
-
return i.find((r) => r.model_match &&
|
|
22971
|
+
return i.find((r) => r.model_match && F(r.model_match, o));
|
|
22640
22972
|
}
|
|
22641
22973
|
function et(i, o) {
|
|
22642
|
-
return i.find((u) =>
|
|
22974
|
+
return i.find((u) => F(u.match, o));
|
|
22643
22975
|
}
|
|
22644
22976
|
function qe(i, o, u) {
|
|
22645
22977
|
const s = et(i.models, o);
|
|
@@ -22665,7 +22997,7 @@ function tt(i, o, u) {
|
|
|
22665
22997
|
if (!_) return null;
|
|
22666
22998
|
const h = qe(_, s, ie);
|
|
22667
22999
|
if (!h) return null;
|
|
22668
|
-
const k = u?.timestamp ?? /* @__PURE__ */ new Date(), q = Je(h, k), Q =
|
|
23000
|
+
const k = u?.timestamp ?? /* @__PURE__ */ new Date(), q = Je(h, k), Q = Ye(i, q);
|
|
22669
23001
|
return {
|
|
22670
23002
|
auto_update_timestamp: void 0,
|
|
22671
23003
|
model: h,
|