@agentproto/model-catalog 0.8.3 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/access/index.d.ts +3 -3
- package/dist/access/index.mjs +5 -2
- package/dist/catalog-Cg0AJJZ7.d.ts +1608 -0
- package/dist/{chunk-2SKZUBMM.mjs → chunk-BR4ZEPA7.mjs} +21 -10
- package/dist/chunk-BR4ZEPA7.mjs.map +1 -0
- package/dist/{chunk-S4FSGGYM.mjs → chunk-CBP4SNOX.mjs} +1125 -1042
- package/dist/chunk-CBP4SNOX.mjs.map +1 -0
- package/dist/{chunk-5HQRMBGT.mjs → chunk-FTHTPPAY.mjs} +4 -4
- package/dist/{chunk-5HQRMBGT.mjs.map → chunk-FTHTPPAY.mjs.map} +1 -1
- package/dist/{chunk-BTH4CCPA.mjs → chunk-GEXPCKCK.mjs} +2063 -498
- package/dist/chunk-GEXPCKCK.mjs.map +1 -0
- package/dist/{chunk-HRRG2RZO.mjs → chunk-NSTJSCCC.mjs} +3 -3
- package/dist/{chunk-HRRG2RZO.mjs.map → chunk-NSTJSCCC.mjs.map} +1 -1
- package/dist/{chunk-QSNCRU56.mjs → chunk-RCQRQD3A.mjs} +4 -4
- package/dist/{chunk-QSNCRU56.mjs.map → chunk-RCQRQD3A.mjs.map} +1 -1
- package/dist/{chunk-WTHHXXIK.mjs → chunk-W7HLNKXV.mjs} +6 -4
- package/dist/chunk-W7HLNKXV.mjs.map +1 -0
- package/dist/{chunk-O7TXHU5W.mjs → chunk-ZTTWZ7PL.mjs} +19 -3
- package/dist/chunk-ZTTWZ7PL.mjs.map +1 -0
- package/dist/cost/index.mjs +6 -6
- package/dist/curation/index.d.ts +2 -2
- package/dist/curation/index.mjs +6 -6
- package/dist/{evaluate-B8acQr7z.d.ts → evaluate-D3gXrAg-.d.ts} +1 -1
- package/dist/{index-BWygVxw8.d.ts → index-BZfxAdXA.d.ts} +10 -2
- package/dist/{index-Czs4wISu.d.ts → index-DC8jecem.d.ts} +2 -2
- package/dist/index.d.ts +5 -5
- package/dist/index.mjs +10 -10
- package/dist/llm/index.d.ts +12 -2
- package/dist/llm/index.mjs +2 -2
- package/dist/overlay/index.d.ts +1 -1
- package/dist/picker/index.d.ts +4 -4
- package/dist/route-identity/index.d.ts +1 -1
- package/dist/route-identity/index.mjs +2 -2
- package/package.json +2 -2
- package/dist/catalog-BbfjJxKT.d.ts +0 -866
- package/dist/chunk-2SKZUBMM.mjs.map +0 -1
- package/dist/chunk-BTH4CCPA.mjs.map +0 -1
- package/dist/chunk-O7TXHU5W.mjs.map +0 -1
- package/dist/chunk-S4FSGGYM.mjs.map +0 -1
- package/dist/chunk-WTHHXXIK.mjs.map +0 -1
|
@@ -8,16 +8,11 @@ import { pricingRegistry, CC_USD_RATE } from './chunk-QHELXPSL.mjs';
|
|
|
8
8
|
|
|
9
9
|
// src/llm/openrouter-routes.generated.ts
|
|
10
10
|
var OPENROUTER_ROUTES = {
|
|
11
|
-
"ai21/jamba-large-1.7": {
|
|
12
|
-
inputPer1M: 2,
|
|
13
|
-
outputPer1M: 8,
|
|
14
|
-
vendor: "ai21",
|
|
15
|
-
provider: "openrouter"
|
|
16
|
-
},
|
|
17
11
|
"aion-labs/aion-2.0": {
|
|
18
12
|
inputPer1M: 0.8,
|
|
19
13
|
outputPer1M: 1.6,
|
|
20
14
|
cacheReadMultiplier: 0.25,
|
|
15
|
+
addedAt: "2026-02-23",
|
|
21
16
|
vendor: "aion-labs",
|
|
22
17
|
provider: "openrouter"
|
|
23
18
|
},
|
|
@@ -25,6 +20,7 @@ var OPENROUTER_ROUTES = {
|
|
|
25
20
|
inputPer1M: 3,
|
|
26
21
|
outputPer1M: 6,
|
|
27
22
|
cacheReadMultiplier: 0.25,
|
|
23
|
+
addedAt: "2026-07-07",
|
|
28
24
|
vendor: "aion-labs",
|
|
29
25
|
provider: "openrouter"
|
|
30
26
|
},
|
|
@@ -32,36 +28,35 @@ var OPENROUTER_ROUTES = {
|
|
|
32
28
|
inputPer1M: 0.7,
|
|
33
29
|
outputPer1M: 1.4,
|
|
34
30
|
cacheReadMultiplier: 0.257143,
|
|
31
|
+
addedAt: "2026-07-07",
|
|
35
32
|
vendor: "aion-labs",
|
|
36
33
|
provider: "openrouter"
|
|
37
34
|
},
|
|
38
35
|
"aion-labs/aion-rp-llama-3.1-8b": {
|
|
39
36
|
inputPer1M: 0.8,
|
|
40
37
|
outputPer1M: 1.6,
|
|
38
|
+
addedAt: "2025-02-04",
|
|
41
39
|
vendor: "aion-labs",
|
|
42
40
|
provider: "openrouter"
|
|
43
41
|
},
|
|
44
|
-
"allenai/olmo-3-32b-think": {
|
|
45
|
-
inputPer1M: 0.15,
|
|
46
|
-
outputPer1M: 0.5,
|
|
47
|
-
vendor: "allenai",
|
|
48
|
-
provider: "openrouter"
|
|
49
|
-
},
|
|
50
42
|
"amazon/nova-2-lite-v1": {
|
|
51
43
|
inputPer1M: 0.3,
|
|
52
44
|
outputPer1M: 2.5,
|
|
45
|
+
addedAt: "2025-12-02",
|
|
53
46
|
vendor: "amazon",
|
|
54
47
|
provider: "openrouter"
|
|
55
48
|
},
|
|
56
49
|
"amazon/nova-lite-v1": {
|
|
57
50
|
inputPer1M: 0.06,
|
|
58
51
|
outputPer1M: 0.24,
|
|
52
|
+
addedAt: "2024-12-05",
|
|
59
53
|
vendor: "amazon",
|
|
60
54
|
provider: "openrouter"
|
|
61
55
|
},
|
|
62
56
|
"amazon/nova-micro-v1": {
|
|
63
57
|
inputPer1M: 0.035,
|
|
64
58
|
outputPer1M: 0.14,
|
|
59
|
+
addedAt: "2024-12-05",
|
|
65
60
|
vendor: "amazon",
|
|
66
61
|
provider: "openrouter"
|
|
67
62
|
},
|
|
@@ -69,18 +64,21 @@ var OPENROUTER_ROUTES = {
|
|
|
69
64
|
inputPer1M: 2.5,
|
|
70
65
|
outputPer1M: 12.5,
|
|
71
66
|
cacheReadMultiplier: 0.25,
|
|
67
|
+
addedAt: "2025-10-31",
|
|
72
68
|
vendor: "amazon",
|
|
73
69
|
provider: "openrouter"
|
|
74
70
|
},
|
|
75
71
|
"amazon/nova-pro-v1": {
|
|
76
72
|
inputPer1M: 0.8,
|
|
77
73
|
outputPer1M: 3.2,
|
|
74
|
+
addedAt: "2024-12-05",
|
|
78
75
|
vendor: "amazon",
|
|
79
76
|
provider: "openrouter"
|
|
80
77
|
},
|
|
81
78
|
"anthracite-org/magnum-v4-72b": {
|
|
82
79
|
inputPer1M: 3,
|
|
83
80
|
outputPer1M: 5,
|
|
81
|
+
addedAt: "2024-10-22",
|
|
84
82
|
vendor: "anthracite-org",
|
|
85
83
|
provider: "openrouter"
|
|
86
84
|
},
|
|
@@ -89,6 +87,7 @@ var OPENROUTER_ROUTES = {
|
|
|
89
87
|
outputPer1M: 1.25,
|
|
90
88
|
cacheReadMultiplier: 0.12,
|
|
91
89
|
cacheWriteMultiplier: 1.2,
|
|
90
|
+
addedAt: "2024-03-13",
|
|
92
91
|
vendor: "anthropic",
|
|
93
92
|
provider: "openrouter"
|
|
94
93
|
},
|
|
@@ -97,6 +96,7 @@ var OPENROUTER_ROUTES = {
|
|
|
97
96
|
outputPer1M: 50,
|
|
98
97
|
cacheReadMultiplier: 0.1,
|
|
99
98
|
cacheWriteMultiplier: 1.25,
|
|
99
|
+
addedAt: "2026-06-09",
|
|
100
100
|
vendor: "anthropic",
|
|
101
101
|
provider: "openrouter"
|
|
102
102
|
},
|
|
@@ -105,6 +105,7 @@ var OPENROUTER_ROUTES = {
|
|
|
105
105
|
outputPer1M: 25,
|
|
106
106
|
cacheReadMultiplier: 0.1,
|
|
107
107
|
cacheWriteMultiplier: 1.25,
|
|
108
|
+
addedAt: "2026-06-09",
|
|
108
109
|
vendor: "anthropic",
|
|
109
110
|
provider: "openrouter"
|
|
110
111
|
},
|
|
@@ -113,6 +114,7 @@ var OPENROUTER_ROUTES = {
|
|
|
113
114
|
outputPer1M: 5,
|
|
114
115
|
cacheReadMultiplier: 0.1,
|
|
115
116
|
cacheWriteMultiplier: 1.25,
|
|
117
|
+
addedAt: "2025-10-15",
|
|
116
118
|
vendor: "anthropic",
|
|
117
119
|
provider: "openrouter"
|
|
118
120
|
},
|
|
@@ -121,6 +123,7 @@ var OPENROUTER_ROUTES = {
|
|
|
121
123
|
outputPer1M: 2.5,
|
|
122
124
|
cacheReadMultiplier: 0.1,
|
|
123
125
|
cacheWriteMultiplier: 1.25,
|
|
126
|
+
addedAt: "2025-10-15",
|
|
124
127
|
vendor: "anthropic",
|
|
125
128
|
provider: "openrouter"
|
|
126
129
|
},
|
|
@@ -129,6 +132,7 @@ var OPENROUTER_ROUTES = {
|
|
|
129
132
|
outputPer1M: 75,
|
|
130
133
|
cacheReadMultiplier: 0.1,
|
|
131
134
|
cacheWriteMultiplier: 1.25,
|
|
135
|
+
addedAt: "2025-05-22",
|
|
132
136
|
vendor: "anthropic",
|
|
133
137
|
provider: "openrouter"
|
|
134
138
|
},
|
|
@@ -137,6 +141,7 @@ var OPENROUTER_ROUTES = {
|
|
|
137
141
|
outputPer1M: 75,
|
|
138
142
|
cacheReadMultiplier: 0.1,
|
|
139
143
|
cacheWriteMultiplier: 1.25,
|
|
144
|
+
addedAt: "2025-08-05",
|
|
140
145
|
vendor: "anthropic",
|
|
141
146
|
provider: "openrouter"
|
|
142
147
|
},
|
|
@@ -145,6 +150,7 @@ var OPENROUTER_ROUTES = {
|
|
|
145
150
|
outputPer1M: 37.5,
|
|
146
151
|
cacheReadMultiplier: 0.1,
|
|
147
152
|
cacheWriteMultiplier: 1.25,
|
|
153
|
+
addedAt: "2025-08-05",
|
|
148
154
|
vendor: "anthropic",
|
|
149
155
|
provider: "openrouter"
|
|
150
156
|
},
|
|
@@ -153,6 +159,7 @@ var OPENROUTER_ROUTES = {
|
|
|
153
159
|
outputPer1M: 25,
|
|
154
160
|
cacheReadMultiplier: 0.1,
|
|
155
161
|
cacheWriteMultiplier: 1.25,
|
|
162
|
+
addedAt: "2025-11-24",
|
|
156
163
|
vendor: "anthropic",
|
|
157
164
|
provider: "openrouter"
|
|
158
165
|
},
|
|
@@ -161,6 +168,7 @@ var OPENROUTER_ROUTES = {
|
|
|
161
168
|
outputPer1M: 12.5,
|
|
162
169
|
cacheReadMultiplier: 0.1,
|
|
163
170
|
cacheWriteMultiplier: 1.25,
|
|
171
|
+
addedAt: "2025-11-24",
|
|
164
172
|
vendor: "anthropic",
|
|
165
173
|
provider: "openrouter"
|
|
166
174
|
},
|
|
@@ -169,6 +177,7 @@ var OPENROUTER_ROUTES = {
|
|
|
169
177
|
outputPer1M: 25,
|
|
170
178
|
cacheReadMultiplier: 0.1,
|
|
171
179
|
cacheWriteMultiplier: 1.25,
|
|
180
|
+
addedAt: "2026-02-04",
|
|
172
181
|
vendor: "anthropic",
|
|
173
182
|
provider: "openrouter"
|
|
174
183
|
},
|
|
@@ -177,6 +186,7 @@ var OPENROUTER_ROUTES = {
|
|
|
177
186
|
outputPer1M: 12.5,
|
|
178
187
|
cacheReadMultiplier: 0.1,
|
|
179
188
|
cacheWriteMultiplier: 1.25,
|
|
189
|
+
addedAt: "2026-02-04",
|
|
180
190
|
vendor: "anthropic",
|
|
181
191
|
provider: "openrouter"
|
|
182
192
|
},
|
|
@@ -185,6 +195,7 @@ var OPENROUTER_ROUTES = {
|
|
|
185
195
|
outputPer1M: 25,
|
|
186
196
|
cacheReadMultiplier: 0.1,
|
|
187
197
|
cacheWriteMultiplier: 1.25,
|
|
198
|
+
addedAt: "2026-04-16",
|
|
188
199
|
vendor: "anthropic",
|
|
189
200
|
provider: "openrouter"
|
|
190
201
|
},
|
|
@@ -193,6 +204,7 @@ var OPENROUTER_ROUTES = {
|
|
|
193
204
|
outputPer1M: 150,
|
|
194
205
|
cacheReadMultiplier: 0.1,
|
|
195
206
|
cacheWriteMultiplier: 1.25,
|
|
207
|
+
addedAt: "2026-05-12",
|
|
196
208
|
vendor: "anthropic",
|
|
197
209
|
provider: "openrouter"
|
|
198
210
|
},
|
|
@@ -201,6 +213,7 @@ var OPENROUTER_ROUTES = {
|
|
|
201
213
|
outputPer1M: 12.5,
|
|
202
214
|
cacheReadMultiplier: 0.1,
|
|
203
215
|
cacheWriteMultiplier: 1.25,
|
|
216
|
+
addedAt: "2026-04-16",
|
|
204
217
|
vendor: "anthropic",
|
|
205
218
|
provider: "openrouter"
|
|
206
219
|
},
|
|
@@ -209,6 +222,7 @@ var OPENROUTER_ROUTES = {
|
|
|
209
222
|
outputPer1M: 25,
|
|
210
223
|
cacheReadMultiplier: 0.1,
|
|
211
224
|
cacheWriteMultiplier: 1.25,
|
|
225
|
+
addedAt: "2026-05-27",
|
|
212
226
|
vendor: "anthropic",
|
|
213
227
|
provider: "openrouter"
|
|
214
228
|
},
|
|
@@ -217,6 +231,7 @@ var OPENROUTER_ROUTES = {
|
|
|
217
231
|
outputPer1M: 50,
|
|
218
232
|
cacheReadMultiplier: 0.1,
|
|
219
233
|
cacheWriteMultiplier: 1.25,
|
|
234
|
+
addedAt: "2026-05-27",
|
|
220
235
|
vendor: "anthropic",
|
|
221
236
|
provider: "openrouter"
|
|
222
237
|
},
|
|
@@ -225,6 +240,7 @@ var OPENROUTER_ROUTES = {
|
|
|
225
240
|
outputPer1M: 12.5,
|
|
226
241
|
cacheReadMultiplier: 0.1,
|
|
227
242
|
cacheWriteMultiplier: 1.25,
|
|
243
|
+
addedAt: "2026-05-27",
|
|
228
244
|
vendor: "anthropic",
|
|
229
245
|
provider: "openrouter"
|
|
230
246
|
},
|
|
@@ -233,6 +249,7 @@ var OPENROUTER_ROUTES = {
|
|
|
233
249
|
outputPer1M: 25,
|
|
234
250
|
cacheReadMultiplier: 0.1,
|
|
235
251
|
cacheWriteMultiplier: 1.25,
|
|
252
|
+
addedAt: "2026-07-24",
|
|
236
253
|
vendor: "anthropic",
|
|
237
254
|
provider: "openrouter"
|
|
238
255
|
},
|
|
@@ -241,6 +258,7 @@ var OPENROUTER_ROUTES = {
|
|
|
241
258
|
outputPer1M: 50,
|
|
242
259
|
cacheReadMultiplier: 0.1,
|
|
243
260
|
cacheWriteMultiplier: 1.25,
|
|
261
|
+
addedAt: "2026-07-24",
|
|
244
262
|
vendor: "anthropic",
|
|
245
263
|
provider: "openrouter"
|
|
246
264
|
},
|
|
@@ -249,6 +267,7 @@ var OPENROUTER_ROUTES = {
|
|
|
249
267
|
outputPer1M: 12.5,
|
|
250
268
|
cacheReadMultiplier: 0.1,
|
|
251
269
|
cacheWriteMultiplier: 1.25,
|
|
270
|
+
addedAt: "2026-07-24",
|
|
252
271
|
vendor: "anthropic",
|
|
253
272
|
provider: "openrouter"
|
|
254
273
|
},
|
|
@@ -257,6 +276,7 @@ var OPENROUTER_ROUTES = {
|
|
|
257
276
|
outputPer1M: 15,
|
|
258
277
|
cacheReadMultiplier: 0.1,
|
|
259
278
|
cacheWriteMultiplier: 1.25,
|
|
279
|
+
addedAt: "2025-05-22",
|
|
260
280
|
vendor: "anthropic",
|
|
261
281
|
provider: "openrouter"
|
|
262
282
|
},
|
|
@@ -265,6 +285,7 @@ var OPENROUTER_ROUTES = {
|
|
|
265
285
|
outputPer1M: 15,
|
|
266
286
|
cacheReadMultiplier: 0.1,
|
|
267
287
|
cacheWriteMultiplier: 1.25,
|
|
288
|
+
addedAt: "2025-09-29",
|
|
268
289
|
vendor: "anthropic",
|
|
269
290
|
provider: "openrouter"
|
|
270
291
|
},
|
|
@@ -273,6 +294,7 @@ var OPENROUTER_ROUTES = {
|
|
|
273
294
|
outputPer1M: 7.5,
|
|
274
295
|
cacheReadMultiplier: 0.1,
|
|
275
296
|
cacheWriteMultiplier: 1.25,
|
|
297
|
+
addedAt: "2025-09-29",
|
|
276
298
|
vendor: "anthropic",
|
|
277
299
|
provider: "openrouter"
|
|
278
300
|
},
|
|
@@ -281,6 +303,7 @@ var OPENROUTER_ROUTES = {
|
|
|
281
303
|
outputPer1M: 15,
|
|
282
304
|
cacheReadMultiplier: 0.1,
|
|
283
305
|
cacheWriteMultiplier: 1.25,
|
|
306
|
+
addedAt: "2026-02-17",
|
|
284
307
|
vendor: "anthropic",
|
|
285
308
|
provider: "openrouter"
|
|
286
309
|
},
|
|
@@ -289,6 +312,7 @@ var OPENROUTER_ROUTES = {
|
|
|
289
312
|
outputPer1M: 7.5,
|
|
290
313
|
cacheReadMultiplier: 0.1,
|
|
291
314
|
cacheWriteMultiplier: 1.25,
|
|
315
|
+
addedAt: "2026-02-17",
|
|
292
316
|
vendor: "anthropic",
|
|
293
317
|
provider: "openrouter"
|
|
294
318
|
},
|
|
@@ -297,6 +321,7 @@ var OPENROUTER_ROUTES = {
|
|
|
297
321
|
outputPer1M: 10,
|
|
298
322
|
cacheReadMultiplier: 0.1,
|
|
299
323
|
cacheWriteMultiplier: 1.25,
|
|
324
|
+
addedAt: "2026-06-30",
|
|
300
325
|
vendor: "anthropic",
|
|
301
326
|
provider: "openrouter"
|
|
302
327
|
},
|
|
@@ -305,49 +330,64 @@ var OPENROUTER_ROUTES = {
|
|
|
305
330
|
outputPer1M: 5,
|
|
306
331
|
cacheReadMultiplier: 0.1,
|
|
307
332
|
cacheWriteMultiplier: 1.25,
|
|
333
|
+
addedAt: "2026-06-30",
|
|
308
334
|
vendor: "anthropic",
|
|
309
335
|
provider: "openrouter"
|
|
310
336
|
},
|
|
311
337
|
"arcee-ai/trinity-large-thinking": {
|
|
312
|
-
inputPer1M: 0.
|
|
313
|
-
outputPer1M: 0.
|
|
314
|
-
cacheReadMultiplier: 0.
|
|
315
|
-
|
|
316
|
-
provider: "openrouter"
|
|
317
|
-
},
|
|
318
|
-
"arcee-ai/virtuoso-large": {
|
|
319
|
-
inputPer1M: 0.75,
|
|
320
|
-
outputPer1M: 1.2,
|
|
338
|
+
inputPer1M: 0.25,
|
|
339
|
+
outputPer1M: 0.8,
|
|
340
|
+
cacheReadMultiplier: 0.24,
|
|
341
|
+
addedAt: "2026-04-01",
|
|
321
342
|
vendor: "arcee-ai",
|
|
322
343
|
provider: "openrouter"
|
|
323
344
|
},
|
|
324
345
|
"baidu/ernie-4.5-vl-424b-a47b": {
|
|
325
346
|
inputPer1M: 0.42,
|
|
326
347
|
outputPer1M: 1.25,
|
|
348
|
+
addedAt: "2025-06-30",
|
|
327
349
|
vendor: "baidu",
|
|
328
350
|
provider: "openrouter"
|
|
329
351
|
},
|
|
330
352
|
"bytedance-seed/seed-1.6": {
|
|
331
353
|
inputPer1M: 0.25,
|
|
332
354
|
outputPer1M: 2,
|
|
355
|
+
addedAt: "2025-12-23",
|
|
333
356
|
vendor: "bytedance-seed",
|
|
334
357
|
provider: "openrouter"
|
|
335
358
|
},
|
|
336
359
|
"bytedance-seed/seed-1.6-flash": {
|
|
337
360
|
inputPer1M: 0.075,
|
|
338
361
|
outputPer1M: 0.3,
|
|
362
|
+
addedAt: "2025-12-23",
|
|
363
|
+
vendor: "bytedance-seed",
|
|
364
|
+
provider: "openrouter"
|
|
365
|
+
},
|
|
366
|
+
"bytedance-seed/seed-2-1-turbo": {
|
|
367
|
+
inputPer1M: 0.5,
|
|
368
|
+
outputPer1M: 2.5,
|
|
369
|
+
addedAt: "2026-08-12",
|
|
370
|
+
vendor: "bytedance-seed",
|
|
371
|
+
provider: "openrouter"
|
|
372
|
+
},
|
|
373
|
+
"bytedance-seed/seed-2.0-code": {
|
|
374
|
+
inputPer1M: 0.5,
|
|
375
|
+
outputPer1M: 3,
|
|
376
|
+
addedAt: "2026-08-12",
|
|
339
377
|
vendor: "bytedance-seed",
|
|
340
378
|
provider: "openrouter"
|
|
341
379
|
},
|
|
342
380
|
"bytedance-seed/seed-2.0-lite": {
|
|
343
381
|
inputPer1M: 0.25,
|
|
344
382
|
outputPer1M: 2,
|
|
383
|
+
addedAt: "2026-03-10",
|
|
345
384
|
vendor: "bytedance-seed",
|
|
346
385
|
provider: "openrouter"
|
|
347
386
|
},
|
|
348
387
|
"bytedance-seed/seed-2.0-mini": {
|
|
349
388
|
inputPer1M: 0.1,
|
|
350
389
|
outputPer1M: 0.4,
|
|
390
|
+
addedAt: "2026-02-26",
|
|
351
391
|
vendor: "bytedance-seed",
|
|
352
392
|
provider: "openrouter"
|
|
353
393
|
},
|
|
@@ -355,68 +395,71 @@ var OPENROUTER_ROUTES = {
|
|
|
355
395
|
inputPer1M: 0.1,
|
|
356
396
|
outputPer1M: 0.2,
|
|
357
397
|
cacheReadMultiplier: 1,
|
|
398
|
+
addedAt: "2025-07-22",
|
|
358
399
|
vendor: "bytedance",
|
|
359
400
|
provider: "openrouter"
|
|
360
401
|
},
|
|
361
402
|
"cognitivecomputations/dolphin-mistral-24b-venice-edition": {
|
|
362
403
|
inputPer1M: 0.2,
|
|
363
404
|
outputPer1M: 0.9,
|
|
405
|
+
addedAt: "2025-07-09",
|
|
364
406
|
vendor: "cognitivecomputations",
|
|
365
407
|
provider: "openrouter"
|
|
366
408
|
},
|
|
367
409
|
"cohere/command-a": {
|
|
368
410
|
inputPer1M: 2.5,
|
|
369
411
|
outputPer1M: 10,
|
|
412
|
+
addedAt: "2025-03-13",
|
|
370
413
|
vendor: "cohere",
|
|
371
414
|
provider: "openrouter"
|
|
372
415
|
},
|
|
373
416
|
"cohere/command-r-08-2024": {
|
|
374
417
|
inputPer1M: 0.15,
|
|
375
418
|
outputPer1M: 0.6,
|
|
419
|
+
addedAt: "2024-08-30",
|
|
376
420
|
vendor: "cohere",
|
|
377
421
|
provider: "openrouter"
|
|
378
422
|
},
|
|
379
423
|
"cohere/command-r-plus-08-2024": {
|
|
380
424
|
inputPer1M: 2.5,
|
|
381
425
|
outputPer1M: 10,
|
|
426
|
+
addedAt: "2024-08-30",
|
|
382
427
|
vendor: "cohere",
|
|
383
428
|
provider: "openrouter"
|
|
384
429
|
},
|
|
385
430
|
"cohere/command-r7b-12-2024": {
|
|
386
431
|
inputPer1M: 0.0375,
|
|
387
432
|
outputPer1M: 0.15,
|
|
433
|
+
addedAt: "2024-12-14",
|
|
388
434
|
vendor: "cohere",
|
|
389
435
|
provider: "openrouter"
|
|
390
436
|
},
|
|
391
|
-
"deepcogito/cogito-v2.1-671b": {
|
|
392
|
-
inputPer1M: 1.25,
|
|
393
|
-
outputPer1M: 1.25,
|
|
394
|
-
vendor: "deepcogito",
|
|
395
|
-
provider: "openrouter"
|
|
396
|
-
},
|
|
397
437
|
"deepseek/deepseek-chat": {
|
|
398
438
|
inputPer1M: 0.2574,
|
|
399
439
|
outputPer1M: 1.0287,
|
|
440
|
+
addedAt: "2024-12-26",
|
|
400
441
|
vendor: "deepseek",
|
|
401
442
|
provider: "openrouter"
|
|
402
443
|
},
|
|
403
444
|
"deepseek/deepseek-chat-v3-0324": {
|
|
404
|
-
inputPer1M: 0.
|
|
405
|
-
outputPer1M: 1
|
|
406
|
-
|
|
445
|
+
inputPer1M: 0.25,
|
|
446
|
+
outputPer1M: 1,
|
|
447
|
+
addedAt: "2025-03-24",
|
|
407
448
|
vendor: "deepseek",
|
|
408
449
|
provider: "openrouter"
|
|
409
450
|
},
|
|
410
451
|
"deepseek/deepseek-chat-v3.1": {
|
|
411
|
-
inputPer1M: 0.
|
|
412
|
-
outputPer1M:
|
|
413
|
-
cacheReadMultiplier:
|
|
452
|
+
inputPer1M: 0.55,
|
|
453
|
+
outputPer1M: 1.65,
|
|
454
|
+
cacheReadMultiplier: 1,
|
|
455
|
+
addedAt: "2025-08-21",
|
|
414
456
|
vendor: "deepseek",
|
|
415
457
|
provider: "openrouter"
|
|
416
458
|
},
|
|
417
459
|
"deepseek/deepseek-r1": {
|
|
418
460
|
inputPer1M: 0.7,
|
|
419
461
|
outputPer1M: 2.5,
|
|
462
|
+
addedAt: "2025-01-20",
|
|
420
463
|
vendor: "deepseek",
|
|
421
464
|
provider: "openrouter"
|
|
422
465
|
},
|
|
@@ -424,12 +467,14 @@ var OPENROUTER_ROUTES = {
|
|
|
424
467
|
inputPer1M: 0.5,
|
|
425
468
|
outputPer1M: 2.15,
|
|
426
469
|
cacheReadMultiplier: 0.7,
|
|
470
|
+
addedAt: "2025-05-28",
|
|
427
471
|
vendor: "deepseek",
|
|
428
472
|
provider: "openrouter"
|
|
429
473
|
},
|
|
430
474
|
"deepseek/deepseek-r1-distill-llama-70b": {
|
|
431
475
|
inputPer1M: 0.8,
|
|
432
476
|
outputPer1M: 0.8,
|
|
477
|
+
addedAt: "2025-01-23",
|
|
433
478
|
vendor: "deepseek",
|
|
434
479
|
provider: "openrouter"
|
|
435
480
|
},
|
|
@@ -437,6 +482,7 @@ var OPENROUTER_ROUTES = {
|
|
|
437
482
|
inputPer1M: 0.27,
|
|
438
483
|
outputPer1M: 1,
|
|
439
484
|
cacheReadMultiplier: 0.5,
|
|
485
|
+
addedAt: "2025-09-22",
|
|
440
486
|
vendor: "deepseek",
|
|
441
487
|
provider: "openrouter"
|
|
442
488
|
},
|
|
@@ -444,33 +490,70 @@ var OPENROUTER_ROUTES = {
|
|
|
444
490
|
inputPer1M: 0.269,
|
|
445
491
|
outputPer1M: 0.4,
|
|
446
492
|
cacheReadMultiplier: 0.5,
|
|
493
|
+
addedAt: "2025-12-01",
|
|
447
494
|
vendor: "deepseek",
|
|
448
495
|
provider: "openrouter"
|
|
449
496
|
},
|
|
450
497
|
"deepseek/deepseek-v3.2-exp": {
|
|
451
498
|
inputPer1M: 0.27,
|
|
452
499
|
outputPer1M: 0.41,
|
|
500
|
+
addedAt: "2025-09-29",
|
|
453
501
|
vendor: "deepseek",
|
|
454
502
|
provider: "openrouter"
|
|
455
503
|
},
|
|
456
504
|
"deepseek/deepseek-v4-flash": {
|
|
457
|
-
inputPer1M: 0.
|
|
458
|
-
outputPer1M: 0.
|
|
459
|
-
cacheReadMultiplier: 0.
|
|
505
|
+
inputPer1M: 0.088606,
|
|
506
|
+
outputPer1M: 0.177212,
|
|
507
|
+
cacheReadMultiplier: 0.199998,
|
|
508
|
+
addedAt: "2026-04-24",
|
|
460
509
|
vendor: "deepseek",
|
|
461
510
|
provider: "openrouter"
|
|
462
511
|
},
|
|
463
512
|
"deepseek/deepseek-v4-flash-0731": {
|
|
464
|
-
inputPer1M: 0.
|
|
513
|
+
inputPer1M: 0.065,
|
|
465
514
|
outputPer1M: 0.18,
|
|
466
|
-
cacheReadMultiplier: 0.
|
|
515
|
+
cacheReadMultiplier: 0.246154,
|
|
516
|
+
addedAt: "2026-07-31",
|
|
517
|
+
vendor: "deepseek",
|
|
518
|
+
provider: "openrouter"
|
|
519
|
+
},
|
|
520
|
+
"deepseek/deepseek-v4-flash-0731:batch": {
|
|
521
|
+
inputPer1M: 0.14,
|
|
522
|
+
outputPer1M: 0.28,
|
|
523
|
+
cacheReadMultiplier: 0.214286,
|
|
524
|
+
addedAt: "2026-07-31",
|
|
525
|
+
vendor: "deepseek",
|
|
526
|
+
provider: "openrouter"
|
|
527
|
+
},
|
|
528
|
+
"deepseek/deepseek-v4-flash-vision-exp": {
|
|
529
|
+
inputPer1M: 0.22,
|
|
530
|
+
outputPer1M: 0.66,
|
|
531
|
+
cacheReadMultiplier: 0.031818,
|
|
532
|
+
addedAt: "2026-08-21",
|
|
467
533
|
vendor: "deepseek",
|
|
468
534
|
provider: "openrouter"
|
|
469
535
|
},
|
|
470
536
|
"deepseek/deepseek-v4-pro": {
|
|
471
|
-
inputPer1M:
|
|
472
|
-
outputPer1M:
|
|
473
|
-
cacheReadMultiplier: 0.
|
|
537
|
+
inputPer1M: 1.04226,
|
|
538
|
+
outputPer1M: 2.08452,
|
|
539
|
+
cacheReadMultiplier: 0.083333,
|
|
540
|
+
addedAt: "2026-04-24",
|
|
541
|
+
vendor: "deepseek",
|
|
542
|
+
provider: "openrouter"
|
|
543
|
+
},
|
|
544
|
+
"deepseek/deepseek-v4-pro-0813": {
|
|
545
|
+
inputPer1M: 0.66,
|
|
546
|
+
outputPer1M: 1.98,
|
|
547
|
+
cacheReadMultiplier: 0.033333,
|
|
548
|
+
addedAt: "2026-08-12",
|
|
549
|
+
vendor: "deepseek",
|
|
550
|
+
provider: "openrouter"
|
|
551
|
+
},
|
|
552
|
+
"deepseek/deepseek-v4-pro-0813:batch": {
|
|
553
|
+
inputPer1M: 1.32,
|
|
554
|
+
outputPer1M: 3.96,
|
|
555
|
+
cacheReadMultiplier: 0.098485,
|
|
556
|
+
addedAt: "2026-08-12",
|
|
474
557
|
vendor: "deepseek",
|
|
475
558
|
provider: "openrouter"
|
|
476
559
|
},
|
|
@@ -479,6 +562,7 @@ var OPENROUTER_ROUTES = {
|
|
|
479
562
|
outputPer1M: 2.5,
|
|
480
563
|
cacheReadMultiplier: 0.1,
|
|
481
564
|
cacheWriteMultiplier: 0.277777,
|
|
565
|
+
addedAt: "2025-06-17",
|
|
482
566
|
vendor: "google",
|
|
483
567
|
provider: "openrouter"
|
|
484
568
|
},
|
|
@@ -487,6 +571,7 @@ var OPENROUTER_ROUTES = {
|
|
|
487
571
|
outputPer1M: 2.5,
|
|
488
572
|
cacheReadMultiplier: 0.1,
|
|
489
573
|
cacheWriteMultiplier: 0.277777,
|
|
574
|
+
addedAt: "2025-10-07",
|
|
490
575
|
vendor: "google",
|
|
491
576
|
provider: "openrouter"
|
|
492
577
|
},
|
|
@@ -495,6 +580,7 @@ var OPENROUTER_ROUTES = {
|
|
|
495
580
|
outputPer1M: 0.4,
|
|
496
581
|
cacheReadMultiplier: 0.1,
|
|
497
582
|
cacheWriteMultiplier: 0.83333,
|
|
583
|
+
addedAt: "2025-07-22",
|
|
498
584
|
vendor: "google",
|
|
499
585
|
provider: "openrouter"
|
|
500
586
|
},
|
|
@@ -502,6 +588,7 @@ var OPENROUTER_ROUTES = {
|
|
|
502
588
|
inputPer1M: 0.05,
|
|
503
589
|
outputPer1M: 0.2,
|
|
504
590
|
cacheReadMultiplier: 0.2,
|
|
591
|
+
addedAt: "2025-07-22",
|
|
505
592
|
vendor: "google",
|
|
506
593
|
provider: "openrouter"
|
|
507
594
|
},
|
|
@@ -509,6 +596,7 @@ var OPENROUTER_ROUTES = {
|
|
|
509
596
|
inputPer1M: 0.15,
|
|
510
597
|
outputPer1M: 1.25,
|
|
511
598
|
cacheReadMultiplier: 0.2,
|
|
599
|
+
addedAt: "2025-06-17",
|
|
512
600
|
vendor: "google",
|
|
513
601
|
provider: "openrouter"
|
|
514
602
|
},
|
|
@@ -517,6 +605,7 @@ var OPENROUTER_ROUTES = {
|
|
|
517
605
|
outputPer1M: 10,
|
|
518
606
|
cacheReadMultiplier: 0.1,
|
|
519
607
|
cacheWriteMultiplier: 0.3,
|
|
608
|
+
addedAt: "2025-06-17",
|
|
520
609
|
vendor: "google",
|
|
521
610
|
provider: "openrouter"
|
|
522
611
|
},
|
|
@@ -525,6 +614,7 @@ var OPENROUTER_ROUTES = {
|
|
|
525
614
|
outputPer1M: 10,
|
|
526
615
|
cacheReadMultiplier: 0.1,
|
|
527
616
|
cacheWriteMultiplier: 0.3,
|
|
617
|
+
addedAt: "2025-06-05",
|
|
528
618
|
vendor: "google",
|
|
529
619
|
provider: "openrouter"
|
|
530
620
|
},
|
|
@@ -533,6 +623,7 @@ var OPENROUTER_ROUTES = {
|
|
|
533
623
|
outputPer1M: 10,
|
|
534
624
|
cacheReadMultiplier: 0.1,
|
|
535
625
|
cacheWriteMultiplier: 0.3,
|
|
626
|
+
addedAt: "2025-05-07",
|
|
536
627
|
vendor: "google",
|
|
537
628
|
provider: "openrouter"
|
|
538
629
|
},
|
|
@@ -540,6 +631,7 @@ var OPENROUTER_ROUTES = {
|
|
|
540
631
|
inputPer1M: 0.625,
|
|
541
632
|
outputPer1M: 5,
|
|
542
633
|
cacheReadMultiplier: 0.2,
|
|
634
|
+
addedAt: "2025-06-17",
|
|
543
635
|
vendor: "google",
|
|
544
636
|
provider: "openrouter"
|
|
545
637
|
},
|
|
@@ -548,12 +640,14 @@ var OPENROUTER_ROUTES = {
|
|
|
548
640
|
outputPer1M: 3,
|
|
549
641
|
cacheReadMultiplier: 0.1,
|
|
550
642
|
cacheWriteMultiplier: 0.166666,
|
|
643
|
+
addedAt: "2025-12-17",
|
|
551
644
|
vendor: "google",
|
|
552
645
|
provider: "openrouter"
|
|
553
646
|
},
|
|
554
647
|
"google/gemini-3-flash-preview:batch": {
|
|
555
648
|
inputPer1M: 0.25,
|
|
556
649
|
outputPer1M: 1.5,
|
|
650
|
+
addedAt: "2025-12-17",
|
|
557
651
|
vendor: "google",
|
|
558
652
|
provider: "openrouter"
|
|
559
653
|
},
|
|
@@ -562,6 +656,7 @@ var OPENROUTER_ROUTES = {
|
|
|
562
656
|
outputPer1M: 12,
|
|
563
657
|
cacheReadMultiplier: 0.1,
|
|
564
658
|
cacheWriteMultiplier: 0.1875,
|
|
659
|
+
addedAt: "2026-06-18",
|
|
565
660
|
vendor: "google",
|
|
566
661
|
provider: "openrouter"
|
|
567
662
|
},
|
|
@@ -570,18 +665,21 @@ var OPENROUTER_ROUTES = {
|
|
|
570
665
|
outputPer1M: 12,
|
|
571
666
|
cacheReadMultiplier: 0.1,
|
|
572
667
|
cacheWriteMultiplier: 0.1875,
|
|
668
|
+
addedAt: "2025-11-20",
|
|
573
669
|
vendor: "google",
|
|
574
670
|
provider: "openrouter"
|
|
575
671
|
},
|
|
576
672
|
"google/gemini-3.1-flash-image": {
|
|
577
673
|
inputPer1M: 0.5,
|
|
578
674
|
outputPer1M: 3,
|
|
675
|
+
addedAt: "2026-06-18",
|
|
579
676
|
vendor: "google",
|
|
580
677
|
provider: "openrouter"
|
|
581
678
|
},
|
|
582
679
|
"google/gemini-3.1-flash-image-preview": {
|
|
583
680
|
inputPer1M: 0.5,
|
|
584
681
|
outputPer1M: 3,
|
|
682
|
+
addedAt: "2026-02-26",
|
|
585
683
|
vendor: "google",
|
|
586
684
|
provider: "openrouter"
|
|
587
685
|
},
|
|
@@ -590,12 +688,14 @@ var OPENROUTER_ROUTES = {
|
|
|
590
688
|
outputPer1M: 1.5,
|
|
591
689
|
cacheReadMultiplier: 0.1,
|
|
592
690
|
cacheWriteMultiplier: 0.333332,
|
|
691
|
+
addedAt: "2026-05-07",
|
|
593
692
|
vendor: "google",
|
|
594
693
|
provider: "openrouter"
|
|
595
694
|
},
|
|
596
695
|
"google/gemini-3.1-flash-lite-image": {
|
|
597
696
|
inputPer1M: 0.25,
|
|
598
697
|
outputPer1M: 1.5,
|
|
698
|
+
addedAt: "2026-06-30",
|
|
599
699
|
vendor: "google",
|
|
600
700
|
provider: "openrouter"
|
|
601
701
|
},
|
|
@@ -604,6 +704,7 @@ var OPENROUTER_ROUTES = {
|
|
|
604
704
|
outputPer1M: 1.5,
|
|
605
705
|
cacheReadMultiplier: 0.1,
|
|
606
706
|
cacheWriteMultiplier: 0.333332,
|
|
707
|
+
addedAt: "2026-03-03",
|
|
607
708
|
vendor: "google",
|
|
608
709
|
provider: "openrouter"
|
|
609
710
|
},
|
|
@@ -611,6 +712,7 @@ var OPENROUTER_ROUTES = {
|
|
|
611
712
|
inputPer1M: 0.125,
|
|
612
713
|
outputPer1M: 0.75,
|
|
613
714
|
cacheReadMultiplier: 0.1,
|
|
715
|
+
addedAt: "2026-05-07",
|
|
614
716
|
vendor: "google",
|
|
615
717
|
provider: "openrouter"
|
|
616
718
|
},
|
|
@@ -619,6 +721,7 @@ var OPENROUTER_ROUTES = {
|
|
|
619
721
|
outputPer1M: 12,
|
|
620
722
|
cacheReadMultiplier: 0.1,
|
|
621
723
|
cacheWriteMultiplier: 0.1875,
|
|
724
|
+
addedAt: "2026-02-19",
|
|
622
725
|
vendor: "google",
|
|
623
726
|
provider: "openrouter"
|
|
624
727
|
},
|
|
@@ -627,12 +730,14 @@ var OPENROUTER_ROUTES = {
|
|
|
627
730
|
outputPer1M: 12,
|
|
628
731
|
cacheReadMultiplier: 0.1,
|
|
629
732
|
cacheWriteMultiplier: 0.1875,
|
|
733
|
+
addedAt: "2026-02-25",
|
|
630
734
|
vendor: "google",
|
|
631
735
|
provider: "openrouter"
|
|
632
736
|
},
|
|
633
737
|
"google/gemini-3.1-pro-preview:batch": {
|
|
634
738
|
inputPer1M: 1,
|
|
635
739
|
outputPer1M: 6,
|
|
740
|
+
addedAt: "2026-02-19",
|
|
636
741
|
vendor: "google",
|
|
637
742
|
provider: "openrouter"
|
|
638
743
|
},
|
|
@@ -641,6 +746,7 @@ var OPENROUTER_ROUTES = {
|
|
|
641
746
|
outputPer1M: 9,
|
|
642
747
|
cacheReadMultiplier: 0.1,
|
|
643
748
|
cacheWriteMultiplier: 0.055555,
|
|
749
|
+
addedAt: "2026-05-19",
|
|
644
750
|
vendor: "google",
|
|
645
751
|
provider: "openrouter"
|
|
646
752
|
},
|
|
@@ -649,6 +755,7 @@ var OPENROUTER_ROUTES = {
|
|
|
649
755
|
outputPer1M: 2.5,
|
|
650
756
|
cacheReadMultiplier: 0.1,
|
|
651
757
|
cacheWriteMultiplier: 0.277777,
|
|
758
|
+
addedAt: "2026-07-21",
|
|
652
759
|
vendor: "google",
|
|
653
760
|
provider: "openrouter"
|
|
654
761
|
},
|
|
@@ -656,6 +763,7 @@ var OPENROUTER_ROUTES = {
|
|
|
656
763
|
inputPer1M: 0.15,
|
|
657
764
|
outputPer1M: 1.25,
|
|
658
765
|
cacheReadMultiplier: 0.1,
|
|
766
|
+
addedAt: "2026-07-21",
|
|
659
767
|
vendor: "google",
|
|
660
768
|
provider: "openrouter"
|
|
661
769
|
},
|
|
@@ -663,34 +771,57 @@ var OPENROUTER_ROUTES = {
|
|
|
663
771
|
inputPer1M: 0.75,
|
|
664
772
|
outputPer1M: 4.5,
|
|
665
773
|
cacheReadMultiplier: 0.1,
|
|
774
|
+
addedAt: "2026-05-19",
|
|
666
775
|
vendor: "google",
|
|
667
776
|
provider: "openrouter"
|
|
668
777
|
},
|
|
669
778
|
"google/gemini-3.6-flash": {
|
|
670
|
-
inputPer1M:
|
|
671
|
-
outputPer1M:
|
|
779
|
+
inputPer1M: 0.75,
|
|
780
|
+
outputPer1M: 3.75,
|
|
672
781
|
cacheReadMultiplier: 0.1,
|
|
673
|
-
cacheWriteMultiplier: 0.
|
|
782
|
+
cacheWriteMultiplier: 0.055556,
|
|
783
|
+
addedAt: "2026-07-21",
|
|
674
784
|
vendor: "google",
|
|
675
785
|
provider: "openrouter"
|
|
676
786
|
},
|
|
677
787
|
"google/gemini-3.6-flash:batch": {
|
|
788
|
+
inputPer1M: 0.375,
|
|
789
|
+
outputPer1M: 1.875,
|
|
790
|
+
cacheReadMultiplier: 0.1,
|
|
791
|
+
cacheWriteMultiplier: 0.111112,
|
|
792
|
+
addedAt: "2026-07-21",
|
|
793
|
+
vendor: "google",
|
|
794
|
+
provider: "openrouter"
|
|
795
|
+
},
|
|
796
|
+
"google/gemini-3.7-flash": {
|
|
678
797
|
inputPer1M: 0.75,
|
|
679
798
|
outputPer1M: 3.75,
|
|
680
799
|
cacheReadMultiplier: 0.1,
|
|
681
|
-
cacheWriteMultiplier: 0.
|
|
800
|
+
cacheWriteMultiplier: 0.055556,
|
|
801
|
+
addedAt: "2026-08-13",
|
|
802
|
+
vendor: "google",
|
|
803
|
+
provider: "openrouter"
|
|
804
|
+
},
|
|
805
|
+
"google/gemini-3.7-flash:batch": {
|
|
806
|
+
inputPer1M: 0.1875,
|
|
807
|
+
outputPer1M: 0.9375,
|
|
808
|
+
cacheReadMultiplier: 0.1,
|
|
809
|
+
cacheWriteMultiplier: 0.111109,
|
|
810
|
+
addedAt: "2026-08-13",
|
|
682
811
|
vendor: "google",
|
|
683
812
|
provider: "openrouter"
|
|
684
813
|
},
|
|
685
814
|
"google/gemma-2-27b-it": {
|
|
686
815
|
inputPer1M: 0.65,
|
|
687
816
|
outputPer1M: 0.65,
|
|
817
|
+
addedAt: "2024-07-13",
|
|
688
818
|
vendor: "google",
|
|
689
819
|
provider: "openrouter"
|
|
690
820
|
},
|
|
691
821
|
"google/gemma-3-12b-it": {
|
|
692
822
|
inputPer1M: 0.05,
|
|
693
823
|
outputPer1M: 0.15,
|
|
824
|
+
addedAt: "2025-03-13",
|
|
694
825
|
vendor: "google",
|
|
695
826
|
provider: "openrouter"
|
|
696
827
|
},
|
|
@@ -698,44 +829,50 @@ var OPENROUTER_ROUTES = {
|
|
|
698
829
|
inputPer1M: 0.08,
|
|
699
830
|
outputPer1M: 0.45,
|
|
700
831
|
cacheReadMultiplier: 0.5,
|
|
832
|
+
addedAt: "2025-03-12",
|
|
701
833
|
vendor: "google",
|
|
702
834
|
provider: "openrouter"
|
|
703
835
|
},
|
|
704
836
|
"google/gemma-3-4b-it": {
|
|
705
837
|
inputPer1M: 0.05,
|
|
706
838
|
outputPer1M: 0.1,
|
|
707
|
-
|
|
708
|
-
provider: "openrouter"
|
|
709
|
-
},
|
|
710
|
-
"google/gemma-3n-e4b-it": {
|
|
711
|
-
inputPer1M: 0.06,
|
|
712
|
-
outputPer1M: 0.12,
|
|
839
|
+
addedAt: "2025-03-13",
|
|
713
840
|
vendor: "google",
|
|
714
841
|
provider: "openrouter"
|
|
715
842
|
},
|
|
716
843
|
"google/gemma-4-26b-a4b-it": {
|
|
717
|
-
inputPer1M: 0.
|
|
718
|
-
outputPer1M: 0.
|
|
719
|
-
|
|
844
|
+
inputPer1M: 0.07,
|
|
845
|
+
outputPer1M: 0.34,
|
|
846
|
+
addedAt: "2026-04-03",
|
|
720
847
|
vendor: "google",
|
|
721
848
|
provider: "openrouter"
|
|
722
849
|
},
|
|
723
850
|
"google/gemma-4-31b-it": {
|
|
724
|
-
inputPer1M: 0.
|
|
851
|
+
inputPer1M: 0.09,
|
|
725
852
|
outputPer1M: 0.34,
|
|
726
|
-
cacheReadMultiplier:
|
|
853
|
+
cacheReadMultiplier: 0.555556,
|
|
854
|
+
addedAt: "2026-04-02",
|
|
855
|
+
vendor: "google",
|
|
856
|
+
provider: "openrouter"
|
|
857
|
+
},
|
|
858
|
+
"google/gemma-4-31b-it:batch": {
|
|
859
|
+
inputPer1M: 0.39,
|
|
860
|
+
outputPer1M: 0.97,
|
|
861
|
+
addedAt: "2026-04-02",
|
|
727
862
|
vendor: "google",
|
|
728
863
|
provider: "openrouter"
|
|
729
864
|
},
|
|
730
865
|
"gryphe/mythomax-l2-13b": {
|
|
731
866
|
inputPer1M: 0.06,
|
|
732
867
|
outputPer1M: 0.06,
|
|
868
|
+
addedAt: "2023-07-02",
|
|
733
869
|
vendor: "gryphe",
|
|
734
870
|
provider: "openrouter"
|
|
735
871
|
},
|
|
736
872
|
"ibm-granite/granite-4.0-h-micro": {
|
|
737
873
|
inputPer1M: 0.017,
|
|
738
874
|
outputPer1M: 0.112,
|
|
875
|
+
addedAt: "2025-10-20",
|
|
739
876
|
vendor: "ibm-granite",
|
|
740
877
|
provider: "openrouter"
|
|
741
878
|
},
|
|
@@ -743,6 +880,7 @@ var OPENROUTER_ROUTES = {
|
|
|
743
880
|
inputPer1M: 0.05,
|
|
744
881
|
outputPer1M: 0.1,
|
|
745
882
|
cacheReadMultiplier: 1,
|
|
883
|
+
addedAt: "2026-04-30",
|
|
746
884
|
vendor: "ibm-granite",
|
|
747
885
|
provider: "openrouter"
|
|
748
886
|
},
|
|
@@ -750,34 +888,15 @@ var OPENROUTER_ROUTES = {
|
|
|
750
888
|
inputPer1M: 0.25,
|
|
751
889
|
outputPer1M: 0.75,
|
|
752
890
|
cacheReadMultiplier: 0.1,
|
|
891
|
+
addedAt: "2026-03-04",
|
|
753
892
|
vendor: "inception",
|
|
754
893
|
provider: "openrouter"
|
|
755
894
|
},
|
|
756
|
-
"inclusionai/ling-2.6-1t": {
|
|
757
|
-
inputPer1M: 0.075,
|
|
758
|
-
outputPer1M: 0.625,
|
|
759
|
-
cacheReadMultiplier: 0.2,
|
|
760
|
-
vendor: "inclusionai",
|
|
761
|
-
provider: "openrouter"
|
|
762
|
-
},
|
|
763
|
-
"inclusionai/ling-2.6-flash": {
|
|
764
|
-
inputPer1M: 0.01,
|
|
765
|
-
outputPer1M: 0.03,
|
|
766
|
-
cacheReadMultiplier: 0.2,
|
|
767
|
-
vendor: "inclusionai",
|
|
768
|
-
provider: "openrouter"
|
|
769
|
-
},
|
|
770
895
|
"inclusionai/ling-3.0-flash": {
|
|
771
896
|
inputPer1M: 0.021,
|
|
772
897
|
outputPer1M: 0.063,
|
|
773
898
|
cacheReadMultiplier: 0.2,
|
|
774
|
-
|
|
775
|
-
provider: "openrouter"
|
|
776
|
-
},
|
|
777
|
-
"inclusionai/ring-2.6-1t": {
|
|
778
|
-
inputPer1M: 0.075,
|
|
779
|
-
outputPer1M: 0.625,
|
|
780
|
-
cacheReadMultiplier: 0.2,
|
|
899
|
+
addedAt: "2026-07-23",
|
|
781
900
|
vendor: "inclusionai",
|
|
782
901
|
provider: "openrouter"
|
|
783
902
|
},
|
|
@@ -785,6 +904,7 @@ var OPENROUTER_ROUTES = {
|
|
|
785
904
|
inputPer1M: 0.15,
|
|
786
905
|
outputPer1M: 0.6,
|
|
787
906
|
cacheReadMultiplier: 0.2,
|
|
907
|
+
addedAt: "2026-07-10",
|
|
788
908
|
vendor: "kwaipilot",
|
|
789
909
|
provider: "openrouter"
|
|
790
910
|
},
|
|
@@ -792,6 +912,7 @@ var OPENROUTER_ROUTES = {
|
|
|
792
912
|
inputPer1M: 0.3,
|
|
793
913
|
outputPer1M: 1.2,
|
|
794
914
|
cacheReadMultiplier: 0.2,
|
|
915
|
+
addedAt: "2026-03-27",
|
|
795
916
|
vendor: "kwaipilot",
|
|
796
917
|
provider: "openrouter"
|
|
797
918
|
},
|
|
@@ -799,12 +920,14 @@ var OPENROUTER_ROUTES = {
|
|
|
799
920
|
inputPer1M: 0.74,
|
|
800
921
|
outputPer1M: 2.96,
|
|
801
922
|
cacheReadMultiplier: 0.202703,
|
|
923
|
+
addedAt: "2026-07-10",
|
|
802
924
|
vendor: "kwaipilot",
|
|
803
925
|
provider: "openrouter"
|
|
804
926
|
},
|
|
805
927
|
"mancer/weaver": {
|
|
806
928
|
inputPer1M: 0.5,
|
|
807
929
|
outputPer1M: 0.75,
|
|
930
|
+
addedAt: "2023-08-02",
|
|
808
931
|
vendor: "mancer",
|
|
809
932
|
provider: "openrouter"
|
|
810
933
|
},
|
|
@@ -812,12 +935,14 @@ var OPENROUTER_ROUTES = {
|
|
|
812
935
|
inputPer1M: 0.3,
|
|
813
936
|
outputPer1M: 1.2,
|
|
814
937
|
cacheReadMultiplier: 0.02,
|
|
938
|
+
addedAt: "2026-07-20",
|
|
815
939
|
vendor: "meituan",
|
|
816
940
|
provider: "openrouter"
|
|
817
941
|
},
|
|
818
942
|
"meta-llama/llama-3.1-70b-instruct": {
|
|
819
943
|
inputPer1M: 0.4,
|
|
820
944
|
outputPer1M: 0.4,
|
|
945
|
+
addedAt: "2024-07-23",
|
|
821
946
|
vendor: "meta-llama",
|
|
822
947
|
provider: "openrouter"
|
|
823
948
|
},
|
|
@@ -825,49 +950,67 @@ var OPENROUTER_ROUTES = {
|
|
|
825
950
|
inputPer1M: 0.05,
|
|
826
951
|
outputPer1M: 0.08,
|
|
827
952
|
cacheReadMultiplier: 0.5,
|
|
953
|
+
addedAt: "2024-07-23",
|
|
828
954
|
vendor: "meta-llama",
|
|
829
955
|
provider: "openrouter"
|
|
830
956
|
},
|
|
831
957
|
"meta-llama/llama-3.2-1b-instruct": {
|
|
832
958
|
inputPer1M: 0.027,
|
|
833
959
|
outputPer1M: 0.201,
|
|
960
|
+
addedAt: "2024-09-25",
|
|
834
961
|
vendor: "meta-llama",
|
|
835
962
|
provider: "openrouter"
|
|
836
963
|
},
|
|
837
964
|
"meta-llama/llama-3.2-3b-instruct": {
|
|
838
965
|
inputPer1M: 0.05,
|
|
839
966
|
outputPer1M: 0.33,
|
|
967
|
+
addedAt: "2024-09-25",
|
|
840
968
|
vendor: "meta-llama",
|
|
841
969
|
provider: "openrouter"
|
|
842
970
|
},
|
|
843
971
|
"meta-llama/llama-3.3-70b-instruct": {
|
|
844
|
-
inputPer1M: 0.
|
|
845
|
-
outputPer1M: 0.
|
|
972
|
+
inputPer1M: 0.71,
|
|
973
|
+
outputPer1M: 0.71,
|
|
974
|
+
cacheReadMultiplier: 1,
|
|
975
|
+
addedAt: "2024-12-06",
|
|
846
976
|
vendor: "meta-llama",
|
|
847
977
|
provider: "openrouter"
|
|
848
978
|
},
|
|
849
979
|
"meta-llama/llama-4-maverick": {
|
|
850
980
|
inputPer1M: 0.2,
|
|
851
981
|
outputPer1M: 0.696,
|
|
982
|
+
addedAt: "2025-04-05",
|
|
852
983
|
vendor: "meta-llama",
|
|
853
984
|
provider: "openrouter"
|
|
854
985
|
},
|
|
855
986
|
"meta-llama/llama-4-scout": {
|
|
856
|
-
inputPer1M: 0.
|
|
857
|
-
outputPer1M: 0.
|
|
987
|
+
inputPer1M: 0.11,
|
|
988
|
+
outputPer1M: 0.34,
|
|
989
|
+
cacheReadMultiplier: 0.5,
|
|
990
|
+
addedAt: "2025-04-05",
|
|
858
991
|
vendor: "meta-llama",
|
|
859
992
|
provider: "openrouter"
|
|
860
993
|
},
|
|
861
994
|
"meta-llama/llama-guard-4-12b": {
|
|
862
995
|
inputPer1M: 0.18,
|
|
863
996
|
outputPer1M: 0.18,
|
|
997
|
+
addedAt: "2025-04-30",
|
|
864
998
|
vendor: "meta-llama",
|
|
865
999
|
provider: "openrouter"
|
|
866
1000
|
},
|
|
867
1001
|
"meta/muse-glimmer-30b": {
|
|
1002
|
+
inputPer1M: 0.3,
|
|
1003
|
+
outputPer1M: 1.2,
|
|
1004
|
+
cacheReadMultiplier: 0.133333,
|
|
1005
|
+
addedAt: "2026-08-09",
|
|
1006
|
+
vendor: "meta",
|
|
1007
|
+
provider: "openrouter"
|
|
1008
|
+
},
|
|
1009
|
+
"meta/muse-glimmer-30b:batch": {
|
|
868
1010
|
inputPer1M: 0.35,
|
|
869
1011
|
outputPer1M: 1.5,
|
|
870
1012
|
cacheReadMultiplier: 0.114286,
|
|
1013
|
+
addedAt: "2026-08-09",
|
|
871
1014
|
vendor: "meta",
|
|
872
1015
|
provider: "openrouter"
|
|
873
1016
|
},
|
|
@@ -875,6 +1018,7 @@ var OPENROUTER_ROUTES = {
|
|
|
875
1018
|
inputPer1M: 1.25,
|
|
876
1019
|
outputPer1M: 4.25,
|
|
877
1020
|
cacheReadMultiplier: 0.12,
|
|
1021
|
+
addedAt: "2026-07-16",
|
|
878
1022
|
vendor: "meta",
|
|
879
1023
|
provider: "openrouter"
|
|
880
1024
|
},
|
|
@@ -882,36 +1026,50 @@ var OPENROUTER_ROUTES = {
|
|
|
882
1026
|
inputPer1M: 1.25,
|
|
883
1027
|
outputPer1M: 4.25,
|
|
884
1028
|
cacheReadMultiplier: 0.12,
|
|
1029
|
+
addedAt: "2026-08-05",
|
|
1030
|
+
vendor: "meta",
|
|
1031
|
+
provider: "openrouter"
|
|
1032
|
+
},
|
|
1033
|
+
"meta/muse-spark-1.2-contributor": {
|
|
1034
|
+
inputPer1M: 0.1,
|
|
1035
|
+
outputPer1M: 0.2,
|
|
1036
|
+
cacheReadMultiplier: 0.02,
|
|
1037
|
+
addedAt: "2026-08-21",
|
|
885
1038
|
vendor: "meta",
|
|
886
1039
|
provider: "openrouter"
|
|
887
1040
|
},
|
|
888
1041
|
"microsoft/phi-4": {
|
|
889
1042
|
inputPer1M: 0.07,
|
|
890
1043
|
outputPer1M: 0.14,
|
|
1044
|
+
addedAt: "2025-01-10",
|
|
891
1045
|
vendor: "microsoft",
|
|
892
1046
|
provider: "openrouter"
|
|
893
1047
|
},
|
|
894
1048
|
"microsoft/wizardlm-2-8x22b": {
|
|
895
1049
|
inputPer1M: 0.62,
|
|
896
1050
|
outputPer1M: 0.62,
|
|
1051
|
+
addedAt: "2024-04-16",
|
|
897
1052
|
vendor: "microsoft",
|
|
898
1053
|
provider: "openrouter"
|
|
899
1054
|
},
|
|
900
1055
|
"minimax/minimax-01": {
|
|
901
1056
|
inputPer1M: 0.2,
|
|
902
1057
|
outputPer1M: 1.1,
|
|
1058
|
+
addedAt: "2025-01-15",
|
|
903
1059
|
vendor: "minimax",
|
|
904
1060
|
provider: "openrouter"
|
|
905
1061
|
},
|
|
906
1062
|
"minimax/minimax-m1": {
|
|
907
1063
|
inputPer1M: 0.55,
|
|
908
1064
|
outputPer1M: 2.2,
|
|
1065
|
+
addedAt: "2025-06-17",
|
|
909
1066
|
vendor: "minimax",
|
|
910
1067
|
provider: "openrouter"
|
|
911
1068
|
},
|
|
912
1069
|
"minimax/minimax-m2": {
|
|
913
1070
|
inputPer1M: 0.255,
|
|
914
1071
|
outputPer1M: 1.02,
|
|
1072
|
+
addedAt: "2025-10-23",
|
|
915
1073
|
vendor: "minimax",
|
|
916
1074
|
provider: "openrouter"
|
|
917
1075
|
},
|
|
@@ -919,6 +1077,7 @@ var OPENROUTER_ROUTES = {
|
|
|
919
1077
|
inputPer1M: 0.3,
|
|
920
1078
|
outputPer1M: 1.2,
|
|
921
1079
|
cacheReadMultiplier: 0.1,
|
|
1080
|
+
addedAt: "2026-01-23",
|
|
922
1081
|
vendor: "minimax",
|
|
923
1082
|
provider: "openrouter"
|
|
924
1083
|
},
|
|
@@ -926,13 +1085,15 @@ var OPENROUTER_ROUTES = {
|
|
|
926
1085
|
inputPer1M: 0.3,
|
|
927
1086
|
outputPer1M: 1.2,
|
|
928
1087
|
cacheReadMultiplier: 0.1,
|
|
1088
|
+
addedAt: "2025-12-23",
|
|
929
1089
|
vendor: "minimax",
|
|
930
1090
|
provider: "openrouter"
|
|
931
1091
|
},
|
|
932
1092
|
"minimax/minimax-m2.5": {
|
|
933
|
-
inputPer1M: 0.
|
|
934
|
-
outputPer1M:
|
|
935
|
-
cacheReadMultiplier: 0.
|
|
1093
|
+
inputPer1M: 0.27,
|
|
1094
|
+
outputPer1M: 1.08,
|
|
1095
|
+
cacheReadMultiplier: 0.1,
|
|
1096
|
+
addedAt: "2026-02-12",
|
|
936
1097
|
vendor: "minimax",
|
|
937
1098
|
provider: "openrouter"
|
|
938
1099
|
},
|
|
@@ -940,6 +1101,7 @@ var OPENROUTER_ROUTES = {
|
|
|
940
1101
|
inputPer1M: 0.3,
|
|
941
1102
|
outputPer1M: 1.2,
|
|
942
1103
|
cacheReadMultiplier: 0.2,
|
|
1104
|
+
addedAt: "2026-03-18",
|
|
943
1105
|
vendor: "minimax",
|
|
944
1106
|
provider: "openrouter"
|
|
945
1107
|
},
|
|
@@ -947,13 +1109,15 @@ var OPENROUTER_ROUTES = {
|
|
|
947
1109
|
inputPer1M: 0.3,
|
|
948
1110
|
outputPer1M: 1.2,
|
|
949
1111
|
cacheReadMultiplier: 0.2,
|
|
1112
|
+
addedAt: "2026-05-31",
|
|
950
1113
|
vendor: "minimax",
|
|
951
1114
|
provider: "openrouter"
|
|
952
1115
|
},
|
|
953
1116
|
"minimax/minimax-m3:batch": {
|
|
954
|
-
inputPer1M: 0.
|
|
955
|
-
outputPer1M:
|
|
1117
|
+
inputPer1M: 0.3,
|
|
1118
|
+
outputPer1M: 1.2,
|
|
956
1119
|
cacheReadMultiplier: 0.2,
|
|
1120
|
+
addedAt: "2026-05-31",
|
|
957
1121
|
vendor: "minimax",
|
|
958
1122
|
provider: "openrouter"
|
|
959
1123
|
},
|
|
@@ -961,6 +1125,23 @@ var OPENROUTER_ROUTES = {
|
|
|
961
1125
|
inputPer1M: 0.3,
|
|
962
1126
|
outputPer1M: 0.9,
|
|
963
1127
|
cacheReadMultiplier: 0.1,
|
|
1128
|
+
addedAt: "2025-08-01",
|
|
1129
|
+
vendor: "mistralai",
|
|
1130
|
+
provider: "openrouter"
|
|
1131
|
+
},
|
|
1132
|
+
"mistralai/codestral-2508:batch": {
|
|
1133
|
+
inputPer1M: 0.3,
|
|
1134
|
+
outputPer1M: 0.9,
|
|
1135
|
+
cacheReadMultiplier: 0.1,
|
|
1136
|
+
addedAt: "2025-08-01",
|
|
1137
|
+
vendor: "mistralai",
|
|
1138
|
+
provider: "openrouter"
|
|
1139
|
+
},
|
|
1140
|
+
"mistralai/devstral-2512": {
|
|
1141
|
+
inputPer1M: 0.4,
|
|
1142
|
+
outputPer1M: 2,
|
|
1143
|
+
cacheReadMultiplier: 0.1,
|
|
1144
|
+
addedAt: "2025-12-09",
|
|
964
1145
|
vendor: "mistralai",
|
|
965
1146
|
provider: "openrouter"
|
|
966
1147
|
},
|
|
@@ -968,6 +1149,7 @@ var OPENROUTER_ROUTES = {
|
|
|
968
1149
|
inputPer1M: 0.2,
|
|
969
1150
|
outputPer1M: 0.2,
|
|
970
1151
|
cacheReadMultiplier: 0.1,
|
|
1152
|
+
addedAt: "2025-12-02",
|
|
971
1153
|
vendor: "mistralai",
|
|
972
1154
|
provider: "openrouter"
|
|
973
1155
|
},
|
|
@@ -975,6 +1157,7 @@ var OPENROUTER_ROUTES = {
|
|
|
975
1157
|
inputPer1M: 0.1,
|
|
976
1158
|
outputPer1M: 0.1,
|
|
977
1159
|
cacheReadMultiplier: 0.1,
|
|
1160
|
+
addedAt: "2025-12-02",
|
|
978
1161
|
vendor: "mistralai",
|
|
979
1162
|
provider: "openrouter"
|
|
980
1163
|
},
|
|
@@ -982,6 +1165,15 @@ var OPENROUTER_ROUTES = {
|
|
|
982
1165
|
inputPer1M: 0.15,
|
|
983
1166
|
outputPer1M: 0.15,
|
|
984
1167
|
cacheReadMultiplier: 0.1,
|
|
1168
|
+
addedAt: "2025-12-02",
|
|
1169
|
+
vendor: "mistralai",
|
|
1170
|
+
provider: "openrouter"
|
|
1171
|
+
},
|
|
1172
|
+
"mistralai/ministral-8b-2512:batch": {
|
|
1173
|
+
inputPer1M: 0.15,
|
|
1174
|
+
outputPer1M: 0.15,
|
|
1175
|
+
cacheReadMultiplier: 0.1,
|
|
1176
|
+
addedAt: "2025-12-02",
|
|
985
1177
|
vendor: "mistralai",
|
|
986
1178
|
provider: "openrouter"
|
|
987
1179
|
},
|
|
@@ -989,6 +1181,7 @@ var OPENROUTER_ROUTES = {
|
|
|
989
1181
|
inputPer1M: 2,
|
|
990
1182
|
outputPer1M: 6,
|
|
991
1183
|
cacheReadMultiplier: 0.1,
|
|
1184
|
+
addedAt: "2024-02-26",
|
|
992
1185
|
vendor: "mistralai",
|
|
993
1186
|
provider: "openrouter"
|
|
994
1187
|
},
|
|
@@ -996,6 +1189,7 @@ var OPENROUTER_ROUTES = {
|
|
|
996
1189
|
inputPer1M: 2,
|
|
997
1190
|
outputPer1M: 6,
|
|
998
1191
|
cacheReadMultiplier: 0.1,
|
|
1192
|
+
addedAt: "2024-11-19",
|
|
999
1193
|
vendor: "mistralai",
|
|
1000
1194
|
provider: "openrouter"
|
|
1001
1195
|
},
|
|
@@ -1003,6 +1197,15 @@ var OPENROUTER_ROUTES = {
|
|
|
1003
1197
|
inputPer1M: 0.5,
|
|
1004
1198
|
outputPer1M: 1.5,
|
|
1005
1199
|
cacheReadMultiplier: 0.1,
|
|
1200
|
+
addedAt: "2025-12-01",
|
|
1201
|
+
vendor: "mistralai",
|
|
1202
|
+
provider: "openrouter"
|
|
1203
|
+
},
|
|
1204
|
+
"mistralai/mistral-large-2512:batch": {
|
|
1205
|
+
inputPer1M: 0.5,
|
|
1206
|
+
outputPer1M: 1.5,
|
|
1207
|
+
cacheReadMultiplier: 0.1,
|
|
1208
|
+
addedAt: "2025-12-01",
|
|
1006
1209
|
vendor: "mistralai",
|
|
1007
1210
|
provider: "openrouter"
|
|
1008
1211
|
},
|
|
@@ -1010,12 +1213,21 @@ var OPENROUTER_ROUTES = {
|
|
|
1010
1213
|
inputPer1M: 0.4,
|
|
1011
1214
|
outputPer1M: 2,
|
|
1012
1215
|
cacheReadMultiplier: 0.1,
|
|
1216
|
+
addedAt: "2025-05-07",
|
|
1013
1217
|
vendor: "mistralai",
|
|
1014
1218
|
provider: "openrouter"
|
|
1015
1219
|
},
|
|
1016
1220
|
"mistralai/mistral-medium-3-5": {
|
|
1017
1221
|
inputPer1M: 1.5,
|
|
1018
1222
|
outputPer1M: 7.5,
|
|
1223
|
+
addedAt: "2026-04-30",
|
|
1224
|
+
vendor: "mistralai",
|
|
1225
|
+
provider: "openrouter"
|
|
1226
|
+
},
|
|
1227
|
+
"mistralai/mistral-medium-3-5:batch": {
|
|
1228
|
+
inputPer1M: 0.75,
|
|
1229
|
+
outputPer1M: 3.75,
|
|
1230
|
+
addedAt: "2026-04-30",
|
|
1019
1231
|
vendor: "mistralai",
|
|
1020
1232
|
provider: "openrouter"
|
|
1021
1233
|
},
|
|
@@ -1023,12 +1235,22 @@ var OPENROUTER_ROUTES = {
|
|
|
1023
1235
|
inputPer1M: 0.4,
|
|
1024
1236
|
outputPer1M: 2,
|
|
1025
1237
|
cacheReadMultiplier: 0.1,
|
|
1238
|
+
addedAt: "2025-08-13",
|
|
1239
|
+
vendor: "mistralai",
|
|
1240
|
+
provider: "openrouter"
|
|
1241
|
+
},
|
|
1242
|
+
"mistralai/mistral-medium-3.1:batch": {
|
|
1243
|
+
inputPer1M: 0.4,
|
|
1244
|
+
outputPer1M: 2,
|
|
1245
|
+
cacheReadMultiplier: 0.1,
|
|
1246
|
+
addedAt: "2025-08-13",
|
|
1026
1247
|
vendor: "mistralai",
|
|
1027
1248
|
provider: "openrouter"
|
|
1028
1249
|
},
|
|
1029
1250
|
"mistralai/mistral-nemo": {
|
|
1030
1251
|
inputPer1M: 0.019,
|
|
1031
1252
|
outputPer1M: 0.03,
|
|
1253
|
+
addedAt: "2024-07-19",
|
|
1032
1254
|
vendor: "mistralai",
|
|
1033
1255
|
provider: "openrouter"
|
|
1034
1256
|
},
|
|
@@ -1036,12 +1258,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1036
1258
|
inputPer1M: 0.2,
|
|
1037
1259
|
outputPer1M: 0.6,
|
|
1038
1260
|
cacheReadMultiplier: 0.1,
|
|
1261
|
+
addedAt: "2025-02-17",
|
|
1039
1262
|
vendor: "mistralai",
|
|
1040
1263
|
provider: "openrouter"
|
|
1041
1264
|
},
|
|
1042
1265
|
"mistralai/mistral-small-24b-instruct-2501": {
|
|
1043
1266
|
inputPer1M: 0.05,
|
|
1044
1267
|
outputPer1M: 0.08,
|
|
1268
|
+
addedAt: "2025-01-30",
|
|
1045
1269
|
vendor: "mistralai",
|
|
1046
1270
|
provider: "openrouter"
|
|
1047
1271
|
},
|
|
@@ -1049,18 +1273,29 @@ var OPENROUTER_ROUTES = {
|
|
|
1049
1273
|
inputPer1M: 0.15,
|
|
1050
1274
|
outputPer1M: 0.6,
|
|
1051
1275
|
cacheReadMultiplier: 0.1,
|
|
1276
|
+
addedAt: "2026-03-16",
|
|
1277
|
+
vendor: "mistralai",
|
|
1278
|
+
provider: "openrouter"
|
|
1279
|
+
},
|
|
1280
|
+
"mistralai/mistral-small-2603:batch": {
|
|
1281
|
+
inputPer1M: 0.15,
|
|
1282
|
+
outputPer1M: 0.6,
|
|
1283
|
+
cacheReadMultiplier: 0.1,
|
|
1284
|
+
addedAt: "2026-03-16",
|
|
1052
1285
|
vendor: "mistralai",
|
|
1053
1286
|
provider: "openrouter"
|
|
1054
1287
|
},
|
|
1055
1288
|
"mistralai/mistral-small-3.1-24b-instruct": {
|
|
1056
1289
|
inputPer1M: 0.351,
|
|
1057
1290
|
outputPer1M: 0.555,
|
|
1291
|
+
addedAt: "2025-03-17",
|
|
1058
1292
|
vendor: "mistralai",
|
|
1059
1293
|
provider: "openrouter"
|
|
1060
1294
|
},
|
|
1061
1295
|
"mistralai/mistral-small-3.2-24b-instruct": {
|
|
1062
|
-
inputPer1M: 0.
|
|
1063
|
-
outputPer1M: 0.
|
|
1296
|
+
inputPer1M: 0.075,
|
|
1297
|
+
outputPer1M: 0.2,
|
|
1298
|
+
addedAt: "2025-06-20",
|
|
1064
1299
|
vendor: "mistralai",
|
|
1065
1300
|
provider: "openrouter"
|
|
1066
1301
|
},
|
|
@@ -1068,6 +1303,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1068
1303
|
inputPer1M: 2,
|
|
1069
1304
|
outputPer1M: 6,
|
|
1070
1305
|
cacheReadMultiplier: 0.1,
|
|
1306
|
+
addedAt: "2024-04-17",
|
|
1071
1307
|
vendor: "mistralai",
|
|
1072
1308
|
provider: "openrouter"
|
|
1073
1309
|
},
|
|
@@ -1075,18 +1311,21 @@ var OPENROUTER_ROUTES = {
|
|
|
1075
1311
|
inputPer1M: 0.1,
|
|
1076
1312
|
outputPer1M: 0.3,
|
|
1077
1313
|
cacheReadMultiplier: 0.1,
|
|
1314
|
+
addedAt: "2025-10-30",
|
|
1078
1315
|
vendor: "mistralai",
|
|
1079
1316
|
provider: "openrouter"
|
|
1080
1317
|
},
|
|
1081
1318
|
"moonshotai/kimi-k2": {
|
|
1082
1319
|
inputPer1M: 0.57,
|
|
1083
1320
|
outputPer1M: 2.3,
|
|
1321
|
+
addedAt: "2025-07-11",
|
|
1084
1322
|
vendor: "moonshotai",
|
|
1085
1323
|
provider: "openrouter"
|
|
1086
1324
|
},
|
|
1087
1325
|
"moonshotai/kimi-k2-0905": {
|
|
1088
1326
|
inputPer1M: 0.6,
|
|
1089
1327
|
outputPer1M: 2.5,
|
|
1328
|
+
addedAt: "2025-09-04",
|
|
1090
1329
|
vendor: "moonshotai",
|
|
1091
1330
|
provider: "openrouter"
|
|
1092
1331
|
},
|
|
@@ -1094,53 +1333,61 @@ var OPENROUTER_ROUTES = {
|
|
|
1094
1333
|
inputPer1M: 0.6,
|
|
1095
1334
|
outputPer1M: 2.5,
|
|
1096
1335
|
cacheReadMultiplier: 0.25,
|
|
1336
|
+
addedAt: "2025-11-06",
|
|
1097
1337
|
vendor: "moonshotai",
|
|
1098
1338
|
provider: "openrouter"
|
|
1099
1339
|
},
|
|
1100
1340
|
"moonshotai/kimi-k2.5": {
|
|
1101
|
-
inputPer1M: 0.
|
|
1102
|
-
outputPer1M: 2.
|
|
1103
|
-
cacheReadMultiplier: 0.
|
|
1341
|
+
inputPer1M: 0.45,
|
|
1342
|
+
outputPer1M: 2.25,
|
|
1343
|
+
cacheReadMultiplier: 0.155556,
|
|
1344
|
+
addedAt: "2026-01-27",
|
|
1104
1345
|
vendor: "moonshotai",
|
|
1105
1346
|
provider: "openrouter"
|
|
1106
1347
|
},
|
|
1107
1348
|
"moonshotai/kimi-k2.6": {
|
|
1108
|
-
inputPer1M: 0.
|
|
1109
|
-
outputPer1M:
|
|
1349
|
+
inputPer1M: 0.95,
|
|
1350
|
+
outputPer1M: 4,
|
|
1110
1351
|
cacheReadMultiplier: 0.168421,
|
|
1352
|
+
addedAt: "2026-04-20",
|
|
1111
1353
|
vendor: "moonshotai",
|
|
1112
1354
|
provider: "openrouter"
|
|
1113
1355
|
},
|
|
1114
1356
|
"moonshotai/kimi-k2.7-code": {
|
|
1115
|
-
inputPer1M: 0.
|
|
1116
|
-
outputPer1M: 3.
|
|
1117
|
-
cacheReadMultiplier: 0.
|
|
1357
|
+
inputPer1M: 0.66,
|
|
1358
|
+
outputPer1M: 3.4,
|
|
1359
|
+
cacheReadMultiplier: 0.272727,
|
|
1360
|
+
addedAt: "2026-06-12",
|
|
1118
1361
|
vendor: "moonshotai",
|
|
1119
1362
|
provider: "openrouter"
|
|
1120
1363
|
},
|
|
1121
|
-
"moonshotai/kimi-
|
|
1122
|
-
inputPer1M:
|
|
1123
|
-
outputPer1M:
|
|
1124
|
-
cacheReadMultiplier: 0.
|
|
1364
|
+
"moonshotai/kimi-k3": {
|
|
1365
|
+
inputPer1M: 3,
|
|
1366
|
+
outputPer1M: 15,
|
|
1367
|
+
cacheReadMultiplier: 0.1,
|
|
1368
|
+
addedAt: "2026-07-16",
|
|
1125
1369
|
vendor: "moonshotai",
|
|
1126
1370
|
provider: "openrouter"
|
|
1127
1371
|
},
|
|
1128
|
-
"moonshotai/kimi-k3": {
|
|
1372
|
+
"moonshotai/kimi-k3:batch": {
|
|
1129
1373
|
inputPer1M: 3,
|
|
1130
1374
|
outputPer1M: 15,
|
|
1131
1375
|
cacheReadMultiplier: 0.1,
|
|
1376
|
+
addedAt: "2026-07-16",
|
|
1132
1377
|
vendor: "moonshotai",
|
|
1133
1378
|
provider: "openrouter"
|
|
1134
1379
|
},
|
|
1135
1380
|
"morph/morph-v3-fast": {
|
|
1136
1381
|
inputPer1M: 0.8,
|
|
1137
1382
|
outputPer1M: 1.2,
|
|
1383
|
+
addedAt: "2025-07-07",
|
|
1138
1384
|
vendor: "morph",
|
|
1139
1385
|
provider: "openrouter"
|
|
1140
1386
|
},
|
|
1141
1387
|
"morph/morph-v3-large": {
|
|
1142
1388
|
inputPer1M: 0.9,
|
|
1143
1389
|
outputPer1M: 1.9,
|
|
1390
|
+
addedAt: "2025-07-07",
|
|
1144
1391
|
vendor: "morph",
|
|
1145
1392
|
provider: "openrouter"
|
|
1146
1393
|
},
|
|
@@ -1148,6 +1395,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1148
1395
|
inputPer1M: 0.025,
|
|
1149
1396
|
outputPer1M: 0.1,
|
|
1150
1397
|
cacheReadMultiplier: 0.1,
|
|
1398
|
+
addedAt: "2026-06-24",
|
|
1151
1399
|
vendor: "nex-agi",
|
|
1152
1400
|
provider: "openrouter"
|
|
1153
1401
|
},
|
|
@@ -1155,30 +1403,35 @@ var OPENROUTER_ROUTES = {
|
|
|
1155
1403
|
inputPer1M: 0.25,
|
|
1156
1404
|
outputPer1M: 1,
|
|
1157
1405
|
cacheReadMultiplier: 0.1,
|
|
1406
|
+
addedAt: "2026-06-08",
|
|
1158
1407
|
vendor: "nex-agi",
|
|
1159
1408
|
provider: "openrouter"
|
|
1160
1409
|
},
|
|
1161
1410
|
"nousresearch/hermes-3-llama-3.1-405b": {
|
|
1162
1411
|
inputPer1M: 1,
|
|
1163
1412
|
outputPer1M: 1,
|
|
1413
|
+
addedAt: "2024-08-16",
|
|
1164
1414
|
vendor: "nousresearch",
|
|
1165
1415
|
provider: "openrouter"
|
|
1166
1416
|
},
|
|
1167
1417
|
"nousresearch/hermes-3-llama-3.1-70b": {
|
|
1168
1418
|
inputPer1M: 0.7,
|
|
1169
1419
|
outputPer1M: 0.7,
|
|
1420
|
+
addedAt: "2024-08-18",
|
|
1170
1421
|
vendor: "nousresearch",
|
|
1171
1422
|
provider: "openrouter"
|
|
1172
1423
|
},
|
|
1173
1424
|
"nousresearch/hermes-4-405b": {
|
|
1174
1425
|
inputPer1M: 1,
|
|
1175
1426
|
outputPer1M: 3,
|
|
1427
|
+
addedAt: "2025-08-26",
|
|
1176
1428
|
vendor: "nousresearch",
|
|
1177
1429
|
provider: "openrouter"
|
|
1178
1430
|
},
|
|
1179
1431
|
"nousresearch/hermes-4-70b": {
|
|
1180
1432
|
inputPer1M: 0.13,
|
|
1181
1433
|
outputPer1M: 0.4,
|
|
1434
|
+
addedAt: "2025-08-26",
|
|
1182
1435
|
vendor: "nousresearch",
|
|
1183
1436
|
provider: "openrouter"
|
|
1184
1437
|
},
|
|
@@ -1186,80 +1439,87 @@ var OPENROUTER_ROUTES = {
|
|
|
1186
1439
|
inputPer1M: 0.05,
|
|
1187
1440
|
outputPer1M: 0.2,
|
|
1188
1441
|
cacheReadMultiplier: 0.5,
|
|
1442
|
+
addedAt: "2025-12-14",
|
|
1189
1443
|
vendor: "nvidia",
|
|
1190
1444
|
provider: "openrouter"
|
|
1191
1445
|
},
|
|
1192
1446
|
"nvidia/nemotron-3-super-120b-a12b": {
|
|
1193
1447
|
inputPer1M: 0.085,
|
|
1194
1448
|
outputPer1M: 0.4,
|
|
1449
|
+
addedAt: "2026-03-11",
|
|
1195
1450
|
vendor: "nvidia",
|
|
1196
1451
|
provider: "openrouter"
|
|
1197
1452
|
},
|
|
1198
1453
|
"nvidia/nemotron-3-ultra-550b-a55b": {
|
|
1454
|
+
inputPer1M: 0.5,
|
|
1455
|
+
outputPer1M: 2.2,
|
|
1456
|
+
cacheReadMultiplier: 0.2,
|
|
1457
|
+
addedAt: "2026-06-04",
|
|
1458
|
+
vendor: "nvidia",
|
|
1459
|
+
provider: "openrouter"
|
|
1460
|
+
},
|
|
1461
|
+
"nvidia/nemotron-3-ultra-550b-a55b:batch": {
|
|
1199
1462
|
inputPer1M: 0.6,
|
|
1200
1463
|
outputPer1M: 3.6,
|
|
1201
1464
|
cacheReadMultiplier: 0.333333,
|
|
1465
|
+
addedAt: "2026-06-04",
|
|
1202
1466
|
vendor: "nvidia",
|
|
1203
1467
|
provider: "openrouter"
|
|
1204
1468
|
},
|
|
1205
|
-
"nvidia/nemotron-3-
|
|
1206
|
-
inputPer1M: 0.
|
|
1207
|
-
outputPer1M:
|
|
1208
|
-
cacheReadMultiplier: 0.
|
|
1469
|
+
"nvidia/nemotron-3.5-lightning": {
|
|
1470
|
+
inputPer1M: 0.08,
|
|
1471
|
+
outputPer1M: 0.2,
|
|
1472
|
+
cacheReadMultiplier: 0.5,
|
|
1473
|
+
addedAt: "2026-08-11",
|
|
1209
1474
|
vendor: "nvidia",
|
|
1210
1475
|
provider: "openrouter"
|
|
1211
1476
|
},
|
|
1212
1477
|
"openai/gpt-3.5-turbo": {
|
|
1213
1478
|
inputPer1M: 0.5,
|
|
1214
1479
|
outputPer1M: 1.5,
|
|
1480
|
+
addedAt: "2023-05-28",
|
|
1215
1481
|
vendor: "openai",
|
|
1216
1482
|
provider: "openrouter"
|
|
1217
1483
|
},
|
|
1218
1484
|
"openai/gpt-3.5-turbo-0613": {
|
|
1219
1485
|
inputPer1M: 1,
|
|
1220
1486
|
outputPer1M: 2,
|
|
1487
|
+
addedAt: "2024-01-25",
|
|
1221
1488
|
vendor: "openai",
|
|
1222
1489
|
provider: "openrouter"
|
|
1223
1490
|
},
|
|
1224
1491
|
"openai/gpt-3.5-turbo-16k": {
|
|
1225
1492
|
inputPer1M: 3,
|
|
1226
1493
|
outputPer1M: 4,
|
|
1494
|
+
addedAt: "2023-08-28",
|
|
1227
1495
|
vendor: "openai",
|
|
1228
1496
|
provider: "openrouter"
|
|
1229
1497
|
},
|
|
1230
1498
|
"openai/gpt-3.5-turbo-instruct": {
|
|
1231
1499
|
inputPer1M: 1.5,
|
|
1232
1500
|
outputPer1M: 2,
|
|
1233
|
-
|
|
1234
|
-
provider: "openrouter"
|
|
1235
|
-
},
|
|
1236
|
-
"openai/gpt-3.5-turbo:batch": {
|
|
1237
|
-
inputPer1M: 0.25,
|
|
1238
|
-
outputPer1M: 0.75,
|
|
1501
|
+
addedAt: "2023-09-28",
|
|
1239
1502
|
vendor: "openai",
|
|
1240
1503
|
provider: "openrouter"
|
|
1241
1504
|
},
|
|
1242
1505
|
"openai/gpt-4": {
|
|
1243
1506
|
inputPer1M: 30,
|
|
1244
1507
|
outputPer1M: 60,
|
|
1508
|
+
addedAt: "2023-05-28",
|
|
1245
1509
|
vendor: "openai",
|
|
1246
1510
|
provider: "openrouter"
|
|
1247
1511
|
},
|
|
1248
1512
|
"openai/gpt-4-turbo": {
|
|
1249
1513
|
inputPer1M: 10,
|
|
1250
1514
|
outputPer1M: 30,
|
|
1515
|
+
addedAt: "2024-04-09",
|
|
1251
1516
|
vendor: "openai",
|
|
1252
1517
|
provider: "openrouter"
|
|
1253
1518
|
},
|
|
1254
1519
|
"openai/gpt-4-turbo-preview": {
|
|
1255
1520
|
inputPer1M: 10,
|
|
1256
1521
|
outputPer1M: 30,
|
|
1257
|
-
|
|
1258
|
-
provider: "openrouter"
|
|
1259
|
-
},
|
|
1260
|
-
"openai/gpt-4-turbo:batch": {
|
|
1261
|
-
inputPer1M: 5,
|
|
1262
|
-
outputPer1M: 15,
|
|
1522
|
+
addedAt: "2024-01-25",
|
|
1263
1523
|
vendor: "openai",
|
|
1264
1524
|
provider: "openrouter"
|
|
1265
1525
|
},
|
|
@@ -1267,6 +1527,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1267
1527
|
inputPer1M: 2,
|
|
1268
1528
|
outputPer1M: 8,
|
|
1269
1529
|
cacheReadMultiplier: 0.25,
|
|
1530
|
+
addedAt: "2025-04-14",
|
|
1270
1531
|
vendor: "openai",
|
|
1271
1532
|
provider: "openrouter"
|
|
1272
1533
|
},
|
|
@@ -1274,13 +1535,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1274
1535
|
inputPer1M: 0.4,
|
|
1275
1536
|
outputPer1M: 1.6,
|
|
1276
1537
|
cacheReadMultiplier: 0.25,
|
|
1277
|
-
|
|
1278
|
-
provider: "openrouter"
|
|
1279
|
-
},
|
|
1280
|
-
"openai/gpt-4.1-mini:batch": {
|
|
1281
|
-
inputPer1M: 0.2,
|
|
1282
|
-
outputPer1M: 0.8,
|
|
1283
|
-
cacheReadMultiplier: 0.25,
|
|
1538
|
+
addedAt: "2025-04-14",
|
|
1284
1539
|
vendor: "openai",
|
|
1285
1540
|
provider: "openrouter"
|
|
1286
1541
|
},
|
|
@@ -1288,20 +1543,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1288
1543
|
inputPer1M: 0.1,
|
|
1289
1544
|
outputPer1M: 0.4,
|
|
1290
1545
|
cacheReadMultiplier: 0.25,
|
|
1291
|
-
|
|
1292
|
-
provider: "openrouter"
|
|
1293
|
-
},
|
|
1294
|
-
"openai/gpt-4.1-nano:batch": {
|
|
1295
|
-
inputPer1M: 0.05,
|
|
1296
|
-
outputPer1M: 0.2,
|
|
1297
|
-
cacheReadMultiplier: 0.25,
|
|
1298
|
-
vendor: "openai",
|
|
1299
|
-
provider: "openrouter"
|
|
1300
|
-
},
|
|
1301
|
-
"openai/gpt-4.1:batch": {
|
|
1302
|
-
inputPer1M: 1,
|
|
1303
|
-
outputPer1M: 4,
|
|
1304
|
-
cacheReadMultiplier: 0.25,
|
|
1546
|
+
addedAt: "2025-04-14",
|
|
1305
1547
|
vendor: "openai",
|
|
1306
1548
|
provider: "openrouter"
|
|
1307
1549
|
},
|
|
@@ -1309,12 +1551,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1309
1551
|
inputPer1M: 2.5,
|
|
1310
1552
|
outputPer1M: 10,
|
|
1311
1553
|
cacheReadMultiplier: 0.5,
|
|
1554
|
+
addedAt: "2024-05-13",
|
|
1312
1555
|
vendor: "openai",
|
|
1313
1556
|
provider: "openrouter"
|
|
1314
1557
|
},
|
|
1315
1558
|
"openai/gpt-4o-2024-05-13": {
|
|
1316
1559
|
inputPer1M: 5,
|
|
1317
1560
|
outputPer1M: 15,
|
|
1561
|
+
addedAt: "2024-05-13",
|
|
1318
1562
|
vendor: "openai",
|
|
1319
1563
|
provider: "openrouter"
|
|
1320
1564
|
},
|
|
@@ -1322,6 +1566,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1322
1566
|
inputPer1M: 2.5,
|
|
1323
1567
|
outputPer1M: 10,
|
|
1324
1568
|
cacheReadMultiplier: 0.5,
|
|
1569
|
+
addedAt: "2024-08-06",
|
|
1325
1570
|
vendor: "openai",
|
|
1326
1571
|
provider: "openrouter"
|
|
1327
1572
|
},
|
|
@@ -1329,6 +1574,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1329
1574
|
inputPer1M: 2.5,
|
|
1330
1575
|
outputPer1M: 10,
|
|
1331
1576
|
cacheReadMultiplier: 0.5,
|
|
1577
|
+
addedAt: "2024-11-20",
|
|
1332
1578
|
vendor: "openai",
|
|
1333
1579
|
provider: "openrouter"
|
|
1334
1580
|
},
|
|
@@ -1336,6 +1582,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1336
1582
|
inputPer1M: 0.15,
|
|
1337
1583
|
outputPer1M: 0.6,
|
|
1338
1584
|
cacheReadMultiplier: 0.5,
|
|
1585
|
+
addedAt: "2024-07-18",
|
|
1339
1586
|
vendor: "openai",
|
|
1340
1587
|
provider: "openrouter"
|
|
1341
1588
|
},
|
|
@@ -1343,20 +1590,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1343
1590
|
inputPer1M: 0.15,
|
|
1344
1591
|
outputPer1M: 0.6,
|
|
1345
1592
|
cacheReadMultiplier: 0.5,
|
|
1346
|
-
|
|
1347
|
-
provider: "openrouter"
|
|
1348
|
-
},
|
|
1349
|
-
"openai/gpt-4o-mini:batch": {
|
|
1350
|
-
inputPer1M: 0.075,
|
|
1351
|
-
outputPer1M: 0.3,
|
|
1352
|
-
cacheReadMultiplier: 0.5,
|
|
1353
|
-
vendor: "openai",
|
|
1354
|
-
provider: "openrouter"
|
|
1355
|
-
},
|
|
1356
|
-
"openai/gpt-4o:batch": {
|
|
1357
|
-
inputPer1M: 1.25,
|
|
1358
|
-
outputPer1M: 5,
|
|
1359
|
-
cacheReadMultiplier: 0.5,
|
|
1593
|
+
addedAt: "2024-07-18",
|
|
1360
1594
|
vendor: "openai",
|
|
1361
1595
|
provider: "openrouter"
|
|
1362
1596
|
},
|
|
@@ -1364,13 +1598,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1364
1598
|
inputPer1M: 1.25,
|
|
1365
1599
|
outputPer1M: 10,
|
|
1366
1600
|
cacheReadMultiplier: 0.1,
|
|
1367
|
-
|
|
1368
|
-
provider: "openrouter"
|
|
1369
|
-
},
|
|
1370
|
-
"openai/gpt-5-codex:batch": {
|
|
1371
|
-
inputPer1M: 0.625,
|
|
1372
|
-
outputPer1M: 5,
|
|
1373
|
-
cacheReadMultiplier: 0.1,
|
|
1601
|
+
addedAt: "2025-08-07",
|
|
1374
1602
|
vendor: "openai",
|
|
1375
1603
|
provider: "openrouter"
|
|
1376
1604
|
},
|
|
@@ -1378,6 +1606,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1378
1606
|
inputPer1M: 10,
|
|
1379
1607
|
outputPer1M: 10,
|
|
1380
1608
|
cacheReadMultiplier: 0.125,
|
|
1609
|
+
addedAt: "2025-10-14",
|
|
1381
1610
|
vendor: "openai",
|
|
1382
1611
|
provider: "openrouter"
|
|
1383
1612
|
},
|
|
@@ -1385,6 +1614,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1385
1614
|
inputPer1M: 2.5,
|
|
1386
1615
|
outputPer1M: 2,
|
|
1387
1616
|
cacheReadMultiplier: 0.1,
|
|
1617
|
+
addedAt: "2025-10-16",
|
|
1388
1618
|
vendor: "openai",
|
|
1389
1619
|
provider: "openrouter"
|
|
1390
1620
|
},
|
|
@@ -1392,13 +1622,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1392
1622
|
inputPer1M: 0.25,
|
|
1393
1623
|
outputPer1M: 2,
|
|
1394
1624
|
cacheReadMultiplier: 0.1,
|
|
1395
|
-
|
|
1396
|
-
provider: "openrouter"
|
|
1397
|
-
},
|
|
1398
|
-
"openai/gpt-5-mini:batch": {
|
|
1399
|
-
inputPer1M: 0.125,
|
|
1400
|
-
outputPer1M: 1,
|
|
1401
|
-
cacheReadMultiplier: 0.1,
|
|
1625
|
+
addedAt: "2025-08-07",
|
|
1402
1626
|
vendor: "openai",
|
|
1403
1627
|
provider: "openrouter"
|
|
1404
1628
|
},
|
|
@@ -1406,25 +1630,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1406
1630
|
inputPer1M: 0.05,
|
|
1407
1631
|
outputPer1M: 0.4,
|
|
1408
1632
|
cacheReadMultiplier: 0.1,
|
|
1409
|
-
|
|
1410
|
-
provider: "openrouter"
|
|
1411
|
-
},
|
|
1412
|
-
"openai/gpt-5-nano:batch": {
|
|
1413
|
-
inputPer1M: 0.025,
|
|
1414
|
-
outputPer1M: 0.2,
|
|
1415
|
-
cacheReadMultiplier: 0.1,
|
|
1633
|
+
addedAt: "2025-08-07",
|
|
1416
1634
|
vendor: "openai",
|
|
1417
1635
|
provider: "openrouter"
|
|
1418
1636
|
},
|
|
1419
1637
|
"openai/gpt-5-pro": {
|
|
1420
1638
|
inputPer1M: 15,
|
|
1421
1639
|
outputPer1M: 120,
|
|
1422
|
-
|
|
1423
|
-
provider: "openrouter"
|
|
1424
|
-
},
|
|
1425
|
-
"openai/gpt-5-pro:batch": {
|
|
1426
|
-
inputPer1M: 7.5,
|
|
1427
|
-
outputPer1M: 60,
|
|
1640
|
+
addedAt: "2025-10-06",
|
|
1428
1641
|
vendor: "openai",
|
|
1429
1642
|
provider: "openrouter"
|
|
1430
1643
|
},
|
|
@@ -1432,6 +1645,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1432
1645
|
inputPer1M: 1.25,
|
|
1433
1646
|
outputPer1M: 10,
|
|
1434
1647
|
cacheReadMultiplier: 0.1,
|
|
1648
|
+
addedAt: "2025-11-13",
|
|
1435
1649
|
vendor: "openai",
|
|
1436
1650
|
provider: "openrouter"
|
|
1437
1651
|
},
|
|
@@ -1439,6 +1653,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1439
1653
|
inputPer1M: 1.25,
|
|
1440
1654
|
outputPer1M: 10,
|
|
1441
1655
|
cacheReadMultiplier: 0.104,
|
|
1656
|
+
addedAt: "2025-11-13",
|
|
1442
1657
|
vendor: "openai",
|
|
1443
1658
|
provider: "openrouter"
|
|
1444
1659
|
},
|
|
@@ -1446,6 +1661,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1446
1661
|
inputPer1M: 1.25,
|
|
1447
1662
|
outputPer1M: 10,
|
|
1448
1663
|
cacheReadMultiplier: 0.1,
|
|
1664
|
+
addedAt: "2025-12-04",
|
|
1449
1665
|
vendor: "openai",
|
|
1450
1666
|
provider: "openrouter"
|
|
1451
1667
|
},
|
|
@@ -1453,13 +1669,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1453
1669
|
inputPer1M: 0.25,
|
|
1454
1670
|
outputPer1M: 2,
|
|
1455
1671
|
cacheReadMultiplier: 0.12,
|
|
1456
|
-
|
|
1457
|
-
provider: "openrouter"
|
|
1458
|
-
},
|
|
1459
|
-
"openai/gpt-5.1:batch": {
|
|
1460
|
-
inputPer1M: 0.625,
|
|
1461
|
-
outputPer1M: 5,
|
|
1462
|
-
cacheReadMultiplier: 0.1,
|
|
1672
|
+
addedAt: "2025-11-13",
|
|
1463
1673
|
vendor: "openai",
|
|
1464
1674
|
provider: "openrouter"
|
|
1465
1675
|
},
|
|
@@ -1467,6 +1677,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1467
1677
|
inputPer1M: 1.75,
|
|
1468
1678
|
outputPer1M: 14,
|
|
1469
1679
|
cacheReadMultiplier: 0.1,
|
|
1680
|
+
addedAt: "2025-12-10",
|
|
1470
1681
|
vendor: "openai",
|
|
1471
1682
|
provider: "openrouter"
|
|
1472
1683
|
},
|
|
@@ -1474,6 +1685,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1474
1685
|
inputPer1M: 1.75,
|
|
1475
1686
|
outputPer1M: 14,
|
|
1476
1687
|
cacheReadMultiplier: 0.1,
|
|
1688
|
+
addedAt: "2025-12-10",
|
|
1477
1689
|
vendor: "openai",
|
|
1478
1690
|
provider: "openrouter"
|
|
1479
1691
|
},
|
|
@@ -1481,25 +1693,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1481
1693
|
inputPer1M: 1.75,
|
|
1482
1694
|
outputPer1M: 14,
|
|
1483
1695
|
cacheReadMultiplier: 0.1,
|
|
1696
|
+
addedAt: "2026-01-14",
|
|
1484
1697
|
vendor: "openai",
|
|
1485
1698
|
provider: "openrouter"
|
|
1486
1699
|
},
|
|
1487
1700
|
"openai/gpt-5.2-pro": {
|
|
1488
1701
|
inputPer1M: 21,
|
|
1489
1702
|
outputPer1M: 168,
|
|
1490
|
-
|
|
1491
|
-
provider: "openrouter"
|
|
1492
|
-
},
|
|
1493
|
-
"openai/gpt-5.2-pro:batch": {
|
|
1494
|
-
inputPer1M: 10.5,
|
|
1495
|
-
outputPer1M: 84,
|
|
1496
|
-
vendor: "openai",
|
|
1497
|
-
provider: "openrouter"
|
|
1498
|
-
},
|
|
1499
|
-
"openai/gpt-5.2:batch": {
|
|
1500
|
-
inputPer1M: 0.875,
|
|
1501
|
-
outputPer1M: 7,
|
|
1502
|
-
cacheReadMultiplier: 0.1,
|
|
1703
|
+
addedAt: "2025-12-10",
|
|
1503
1704
|
vendor: "openai",
|
|
1504
1705
|
provider: "openrouter"
|
|
1505
1706
|
},
|
|
@@ -1507,6 +1708,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1507
1708
|
inputPer1M: 1.75,
|
|
1508
1709
|
outputPer1M: 14,
|
|
1509
1710
|
cacheReadMultiplier: 0.1,
|
|
1711
|
+
addedAt: "2026-02-24",
|
|
1510
1712
|
vendor: "openai",
|
|
1511
1713
|
provider: "openrouter"
|
|
1512
1714
|
},
|
|
@@ -1514,6 +1716,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1514
1716
|
inputPer1M: 2.5,
|
|
1515
1717
|
outputPer1M: 15,
|
|
1516
1718
|
cacheReadMultiplier: 0.1,
|
|
1719
|
+
addedAt: "2026-03-05",
|
|
1517
1720
|
vendor: "openai",
|
|
1518
1721
|
provider: "openrouter"
|
|
1519
1722
|
},
|
|
@@ -1521,6 +1724,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1521
1724
|
inputPer1M: 8,
|
|
1522
1725
|
outputPer1M: 15,
|
|
1523
1726
|
cacheReadMultiplier: 0.25,
|
|
1727
|
+
addedAt: "2026-04-21",
|
|
1524
1728
|
vendor: "openai",
|
|
1525
1729
|
provider: "openrouter"
|
|
1526
1730
|
},
|
|
@@ -1528,13 +1732,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1528
1732
|
inputPer1M: 0.75,
|
|
1529
1733
|
outputPer1M: 4.5,
|
|
1530
1734
|
cacheReadMultiplier: 0.1,
|
|
1531
|
-
|
|
1532
|
-
provider: "openrouter"
|
|
1533
|
-
},
|
|
1534
|
-
"openai/gpt-5.4-mini:batch": {
|
|
1535
|
-
inputPer1M: 0.375,
|
|
1536
|
-
outputPer1M: 2.25,
|
|
1537
|
-
cacheReadMultiplier: 0.1,
|
|
1735
|
+
addedAt: "2026-03-17",
|
|
1538
1736
|
vendor: "openai",
|
|
1539
1737
|
provider: "openrouter"
|
|
1540
1738
|
},
|
|
@@ -1542,32 +1740,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1542
1740
|
inputPer1M: 0.2,
|
|
1543
1741
|
outputPer1M: 1.25,
|
|
1544
1742
|
cacheReadMultiplier: 0.1,
|
|
1545
|
-
|
|
1546
|
-
provider: "openrouter"
|
|
1547
|
-
},
|
|
1548
|
-
"openai/gpt-5.4-nano:batch": {
|
|
1549
|
-
inputPer1M: 0.1,
|
|
1550
|
-
outputPer1M: 0.625,
|
|
1551
|
-
cacheReadMultiplier: 0.1,
|
|
1743
|
+
addedAt: "2026-03-17",
|
|
1552
1744
|
vendor: "openai",
|
|
1553
1745
|
provider: "openrouter"
|
|
1554
1746
|
},
|
|
1555
1747
|
"openai/gpt-5.4-pro": {
|
|
1556
1748
|
inputPer1M: 30,
|
|
1557
1749
|
outputPer1M: 180,
|
|
1558
|
-
|
|
1559
|
-
provider: "openrouter"
|
|
1560
|
-
},
|
|
1561
|
-
"openai/gpt-5.4-pro:batch": {
|
|
1562
|
-
inputPer1M: 15,
|
|
1563
|
-
outputPer1M: 90,
|
|
1564
|
-
vendor: "openai",
|
|
1565
|
-
provider: "openrouter"
|
|
1566
|
-
},
|
|
1567
|
-
"openai/gpt-5.4:batch": {
|
|
1568
|
-
inputPer1M: 1.25,
|
|
1569
|
-
outputPer1M: 7.5,
|
|
1570
|
-
cacheReadMultiplier: 0.1,
|
|
1750
|
+
addedAt: "2026-03-05",
|
|
1571
1751
|
vendor: "openai",
|
|
1572
1752
|
provider: "openrouter"
|
|
1573
1753
|
},
|
|
@@ -1575,134 +1755,82 @@ var OPENROUTER_ROUTES = {
|
|
|
1575
1755
|
inputPer1M: 5,
|
|
1576
1756
|
outputPer1M: 30,
|
|
1577
1757
|
cacheReadMultiplier: 0.1,
|
|
1758
|
+
addedAt: "2026-04-24",
|
|
1578
1759
|
vendor: "openai",
|
|
1579
1760
|
provider: "openrouter"
|
|
1580
1761
|
},
|
|
1581
1762
|
"openai/gpt-5.5-pro": {
|
|
1582
1763
|
inputPer1M: 30,
|
|
1583
1764
|
outputPer1M: 180,
|
|
1584
|
-
|
|
1585
|
-
provider: "openrouter"
|
|
1586
|
-
},
|
|
1587
|
-
"openai/gpt-5.5-pro:batch": {
|
|
1588
|
-
inputPer1M: 15,
|
|
1589
|
-
outputPer1M: 90,
|
|
1590
|
-
vendor: "openai",
|
|
1591
|
-
provider: "openrouter"
|
|
1592
|
-
},
|
|
1593
|
-
"openai/gpt-5.5:batch": {
|
|
1594
|
-
inputPer1M: 2.5,
|
|
1595
|
-
outputPer1M: 15,
|
|
1596
|
-
cacheReadMultiplier: 0.1,
|
|
1765
|
+
addedAt: "2026-04-24",
|
|
1597
1766
|
vendor: "openai",
|
|
1598
1767
|
provider: "openrouter"
|
|
1599
1768
|
},
|
|
1600
1769
|
"openai/gpt-5.6-luna": {
|
|
1601
|
-
inputPer1M: 0.
|
|
1602
|
-
outputPer1M:
|
|
1770
|
+
inputPer1M: 0.2,
|
|
1771
|
+
outputPer1M: 1.2,
|
|
1603
1772
|
cacheReadMultiplier: 0.1,
|
|
1604
1773
|
cacheWriteMultiplier: 1.25,
|
|
1774
|
+
addedAt: "2026-07-09",
|
|
1605
1775
|
vendor: "openai",
|
|
1606
1776
|
provider: "openrouter"
|
|
1607
1777
|
},
|
|
1608
1778
|
"openai/gpt-5.6-luna-pro": {
|
|
1609
|
-
inputPer1M: 0.
|
|
1610
|
-
outputPer1M:
|
|
1779
|
+
inputPer1M: 0.2,
|
|
1780
|
+
outputPer1M: 1.2,
|
|
1611
1781
|
cacheReadMultiplier: 0.1,
|
|
1612
1782
|
cacheWriteMultiplier: 1.25,
|
|
1613
|
-
|
|
1614
|
-
provider: "openrouter"
|
|
1615
|
-
},
|
|
1616
|
-
"openai/gpt-5.6-luna-pro:batch": {
|
|
1617
|
-
inputPer1M: 0.1,
|
|
1618
|
-
outputPer1M: 0.6,
|
|
1619
|
-
cacheReadMultiplier: 0.1,
|
|
1620
|
-
vendor: "openai",
|
|
1621
|
-
provider: "openrouter"
|
|
1622
|
-
},
|
|
1623
|
-
"openai/gpt-5.6-luna:batch": {
|
|
1624
|
-
inputPer1M: 0.1,
|
|
1625
|
-
outputPer1M: 0.6,
|
|
1626
|
-
cacheReadMultiplier: 0.1,
|
|
1783
|
+
addedAt: "2026-07-09",
|
|
1627
1784
|
vendor: "openai",
|
|
1628
1785
|
provider: "openrouter"
|
|
1629
1786
|
},
|
|
1630
1787
|
"openai/gpt-5.6-sol": {
|
|
1631
|
-
inputPer1M:
|
|
1632
|
-
outputPer1M:
|
|
1788
|
+
inputPer1M: 2,
|
|
1789
|
+
outputPer1M: 10,
|
|
1633
1790
|
cacheReadMultiplier: 0.1,
|
|
1634
1791
|
cacheWriteMultiplier: 1.25,
|
|
1792
|
+
addedAt: "2026-07-09",
|
|
1635
1793
|
vendor: "openai",
|
|
1636
1794
|
provider: "openrouter"
|
|
1637
1795
|
},
|
|
1638
1796
|
"openai/gpt-5.6-sol-pro": {
|
|
1639
|
-
inputPer1M:
|
|
1640
|
-
outputPer1M:
|
|
1797
|
+
inputPer1M: 2,
|
|
1798
|
+
outputPer1M: 10,
|
|
1641
1799
|
cacheReadMultiplier: 0.1,
|
|
1642
1800
|
cacheWriteMultiplier: 1.25,
|
|
1643
|
-
|
|
1644
|
-
provider: "openrouter"
|
|
1645
|
-
},
|
|
1646
|
-
"openai/gpt-5.6-sol-pro:batch": {
|
|
1647
|
-
inputPer1M: 2.5,
|
|
1648
|
-
outputPer1M: 15,
|
|
1649
|
-
cacheReadMultiplier: 0.1,
|
|
1650
|
-
vendor: "openai",
|
|
1651
|
-
provider: "openrouter"
|
|
1652
|
-
},
|
|
1653
|
-
"openai/gpt-5.6-sol:batch": {
|
|
1654
|
-
inputPer1M: 2.5,
|
|
1655
|
-
outputPer1M: 15,
|
|
1656
|
-
cacheReadMultiplier: 0.1,
|
|
1801
|
+
addedAt: "2026-07-09",
|
|
1657
1802
|
vendor: "openai",
|
|
1658
1803
|
provider: "openrouter"
|
|
1659
1804
|
},
|
|
1660
1805
|
"openai/gpt-5.6-terra": {
|
|
1661
|
-
inputPer1M:
|
|
1662
|
-
outputPer1M:
|
|
1806
|
+
inputPer1M: 2,
|
|
1807
|
+
outputPer1M: 12,
|
|
1663
1808
|
cacheReadMultiplier: 0.1,
|
|
1664
1809
|
cacheWriteMultiplier: 1.25,
|
|
1810
|
+
addedAt: "2026-07-09",
|
|
1665
1811
|
vendor: "openai",
|
|
1666
1812
|
provider: "openrouter"
|
|
1667
1813
|
},
|
|
1668
1814
|
"openai/gpt-5.6-terra-pro": {
|
|
1669
|
-
inputPer1M:
|
|
1670
|
-
outputPer1M:
|
|
1815
|
+
inputPer1M: 2,
|
|
1816
|
+
outputPer1M: 12,
|
|
1671
1817
|
cacheReadMultiplier: 0.1,
|
|
1672
1818
|
cacheWriteMultiplier: 1.25,
|
|
1673
|
-
|
|
1674
|
-
provider: "openrouter"
|
|
1675
|
-
},
|
|
1676
|
-
"openai/gpt-5.6-terra-pro:batch": {
|
|
1677
|
-
inputPer1M: 1,
|
|
1678
|
-
outputPer1M: 6,
|
|
1679
|
-
cacheReadMultiplier: 0.1,
|
|
1680
|
-
vendor: "openai",
|
|
1681
|
-
provider: "openrouter"
|
|
1682
|
-
},
|
|
1683
|
-
"openai/gpt-5.6-terra:batch": {
|
|
1684
|
-
inputPer1M: 1,
|
|
1685
|
-
outputPer1M: 6,
|
|
1686
|
-
cacheReadMultiplier: 0.1,
|
|
1687
|
-
vendor: "openai",
|
|
1688
|
-
provider: "openrouter"
|
|
1689
|
-
},
|
|
1690
|
-
"openai/gpt-5:batch": {
|
|
1691
|
-
inputPer1M: 0.625,
|
|
1692
|
-
outputPer1M: 5,
|
|
1693
|
-
cacheReadMultiplier: 0.1,
|
|
1819
|
+
addedAt: "2026-07-09",
|
|
1694
1820
|
vendor: "openai",
|
|
1695
1821
|
provider: "openrouter"
|
|
1696
1822
|
},
|
|
1697
1823
|
"openai/gpt-audio": {
|
|
1698
1824
|
inputPer1M: 2.5,
|
|
1699
1825
|
outputPer1M: 10,
|
|
1826
|
+
addedAt: "2026-01-19",
|
|
1700
1827
|
vendor: "openai",
|
|
1701
1828
|
provider: "openrouter"
|
|
1702
1829
|
},
|
|
1703
1830
|
"openai/gpt-audio-mini": {
|
|
1704
1831
|
inputPer1M: 0.6,
|
|
1705
1832
|
outputPer1M: 2.4,
|
|
1833
|
+
addedAt: "2026-01-19",
|
|
1706
1834
|
vendor: "openai",
|
|
1707
1835
|
provider: "openrouter"
|
|
1708
1836
|
},
|
|
@@ -1710,12 +1838,21 @@ var OPENROUTER_ROUTES = {
|
|
|
1710
1838
|
inputPer1M: 5,
|
|
1711
1839
|
outputPer1M: 30,
|
|
1712
1840
|
cacheReadMultiplier: 0.1,
|
|
1841
|
+
addedAt: "2026-05-05",
|
|
1713
1842
|
vendor: "openai",
|
|
1714
1843
|
provider: "openrouter"
|
|
1715
1844
|
},
|
|
1716
1845
|
"openai/gpt-oss-120b": {
|
|
1717
1846
|
inputPer1M: 0.037,
|
|
1718
1847
|
outputPer1M: 0.17,
|
|
1848
|
+
addedAt: "2025-08-05",
|
|
1849
|
+
vendor: "openai",
|
|
1850
|
+
provider: "openrouter"
|
|
1851
|
+
},
|
|
1852
|
+
"openai/gpt-oss-120b:batch": {
|
|
1853
|
+
inputPer1M: 0.15,
|
|
1854
|
+
outputPer1M: 0.6,
|
|
1855
|
+
addedAt: "2025-08-05",
|
|
1719
1856
|
vendor: "openai",
|
|
1720
1857
|
provider: "openrouter"
|
|
1721
1858
|
},
|
|
@@ -1723,6 +1860,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1723
1860
|
inputPer1M: 0.03,
|
|
1724
1861
|
outputPer1M: 0.13,
|
|
1725
1862
|
cacheReadMultiplier: 1,
|
|
1863
|
+
addedAt: "2025-08-05",
|
|
1864
|
+
vendor: "openai",
|
|
1865
|
+
provider: "openrouter"
|
|
1866
|
+
},
|
|
1867
|
+
"openai/gpt-oss-20b:batch": {
|
|
1868
|
+
inputPer1M: 0.05,
|
|
1869
|
+
outputPer1M: 0.2,
|
|
1870
|
+
addedAt: "2025-08-05",
|
|
1726
1871
|
vendor: "openai",
|
|
1727
1872
|
provider: "openrouter"
|
|
1728
1873
|
},
|
|
@@ -1730,6 +1875,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1730
1875
|
inputPer1M: 0.075,
|
|
1731
1876
|
outputPer1M: 0.3,
|
|
1732
1877
|
cacheReadMultiplier: 0.5,
|
|
1878
|
+
addedAt: "2025-10-29",
|
|
1733
1879
|
vendor: "openai",
|
|
1734
1880
|
provider: "openrouter"
|
|
1735
1881
|
},
|
|
@@ -1737,25 +1883,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1737
1883
|
inputPer1M: 15,
|
|
1738
1884
|
outputPer1M: 60,
|
|
1739
1885
|
cacheReadMultiplier: 0.5,
|
|
1886
|
+
addedAt: "2024-12-17",
|
|
1740
1887
|
vendor: "openai",
|
|
1741
1888
|
provider: "openrouter"
|
|
1742
1889
|
},
|
|
1743
1890
|
"openai/o1-pro": {
|
|
1744
1891
|
inputPer1M: 150,
|
|
1745
1892
|
outputPer1M: 600,
|
|
1746
|
-
|
|
1747
|
-
provider: "openrouter"
|
|
1748
|
-
},
|
|
1749
|
-
"openai/o1-pro:batch": {
|
|
1750
|
-
inputPer1M: 75,
|
|
1751
|
-
outputPer1M: 300,
|
|
1752
|
-
vendor: "openai",
|
|
1753
|
-
provider: "openrouter"
|
|
1754
|
-
},
|
|
1755
|
-
"openai/o1:batch": {
|
|
1756
|
-
inputPer1M: 7.5,
|
|
1757
|
-
outputPer1M: 30,
|
|
1758
|
-
cacheReadMultiplier: 0.5,
|
|
1893
|
+
addedAt: "2025-03-19",
|
|
1759
1894
|
vendor: "openai",
|
|
1760
1895
|
provider: "openrouter"
|
|
1761
1896
|
},
|
|
@@ -1763,6 +1898,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1763
1898
|
inputPer1M: 2,
|
|
1764
1899
|
outputPer1M: 8,
|
|
1765
1900
|
cacheReadMultiplier: 0.25,
|
|
1901
|
+
addedAt: "2025-04-16",
|
|
1766
1902
|
vendor: "openai",
|
|
1767
1903
|
provider: "openrouter"
|
|
1768
1904
|
},
|
|
@@ -1770,6 +1906,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1770
1906
|
inputPer1M: 1.1,
|
|
1771
1907
|
outputPer1M: 4.4,
|
|
1772
1908
|
cacheReadMultiplier: 0.5,
|
|
1909
|
+
addedAt: "2025-01-31",
|
|
1773
1910
|
vendor: "openai",
|
|
1774
1911
|
provider: "openrouter"
|
|
1775
1912
|
},
|
|
@@ -1777,39 +1914,14 @@ var OPENROUTER_ROUTES = {
|
|
|
1777
1914
|
inputPer1M: 1.1,
|
|
1778
1915
|
outputPer1M: 4.4,
|
|
1779
1916
|
cacheReadMultiplier: 0.5,
|
|
1780
|
-
|
|
1781
|
-
provider: "openrouter"
|
|
1782
|
-
},
|
|
1783
|
-
"openai/o3-mini-high:batch": {
|
|
1784
|
-
inputPer1M: 0.55,
|
|
1785
|
-
outputPer1M: 2.2,
|
|
1786
|
-
cacheReadMultiplier: 0.5,
|
|
1787
|
-
vendor: "openai",
|
|
1788
|
-
provider: "openrouter"
|
|
1789
|
-
},
|
|
1790
|
-
"openai/o3-mini:batch": {
|
|
1791
|
-
inputPer1M: 0.55,
|
|
1792
|
-
outputPer1M: 2.2,
|
|
1793
|
-
cacheReadMultiplier: 0.5,
|
|
1917
|
+
addedAt: "2025-02-12",
|
|
1794
1918
|
vendor: "openai",
|
|
1795
1919
|
provider: "openrouter"
|
|
1796
1920
|
},
|
|
1797
1921
|
"openai/o3-pro": {
|
|
1798
1922
|
inputPer1M: 20,
|
|
1799
1923
|
outputPer1M: 80,
|
|
1800
|
-
|
|
1801
|
-
provider: "openrouter"
|
|
1802
|
-
},
|
|
1803
|
-
"openai/o3-pro:batch": {
|
|
1804
|
-
inputPer1M: 10,
|
|
1805
|
-
outputPer1M: 40,
|
|
1806
|
-
vendor: "openai",
|
|
1807
|
-
provider: "openrouter"
|
|
1808
|
-
},
|
|
1809
|
-
"openai/o3:batch": {
|
|
1810
|
-
inputPer1M: 1,
|
|
1811
|
-
outputPer1M: 4,
|
|
1812
|
-
cacheReadMultiplier: 0.25,
|
|
1924
|
+
addedAt: "2025-06-10",
|
|
1813
1925
|
vendor: "openai",
|
|
1814
1926
|
provider: "openrouter"
|
|
1815
1927
|
},
|
|
@@ -1817,6 +1929,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1817
1929
|
inputPer1M: 1.1,
|
|
1818
1930
|
outputPer1M: 4.4,
|
|
1819
1931
|
cacheReadMultiplier: 0.25,
|
|
1932
|
+
addedAt: "2025-04-16",
|
|
1820
1933
|
vendor: "openai",
|
|
1821
1934
|
provider: "openrouter"
|
|
1822
1935
|
},
|
|
@@ -1824,86 +1937,84 @@ var OPENROUTER_ROUTES = {
|
|
|
1824
1937
|
inputPer1M: 1.1,
|
|
1825
1938
|
outputPer1M: 4.4,
|
|
1826
1939
|
cacheReadMultiplier: 0.25,
|
|
1827
|
-
|
|
1828
|
-
provider: "openrouter"
|
|
1829
|
-
},
|
|
1830
|
-
"openai/o4-mini-high:batch": {
|
|
1831
|
-
inputPer1M: 0.55,
|
|
1832
|
-
outputPer1M: 2.2,
|
|
1833
|
-
cacheReadMultiplier: 0.25,
|
|
1834
|
-
vendor: "openai",
|
|
1835
|
-
provider: "openrouter"
|
|
1836
|
-
},
|
|
1837
|
-
"openai/o4-mini:batch": {
|
|
1838
|
-
inputPer1M: 0.55,
|
|
1839
|
-
outputPer1M: 2.2,
|
|
1840
|
-
cacheReadMultiplier: 0.25,
|
|
1940
|
+
addedAt: "2025-04-16",
|
|
1841
1941
|
vendor: "openai",
|
|
1842
1942
|
provider: "openrouter"
|
|
1843
1943
|
},
|
|
1844
1944
|
"openrouter/auto": {
|
|
1845
1945
|
inputPer1M: -1e6,
|
|
1846
1946
|
outputPer1M: -1e6,
|
|
1947
|
+
addedAt: "2023-11-08",
|
|
1847
1948
|
vendor: "openrouter",
|
|
1848
1949
|
provider: "openrouter"
|
|
1849
1950
|
},
|
|
1850
1951
|
"openrouter/auto-beta": {
|
|
1851
1952
|
inputPer1M: -1e6,
|
|
1852
1953
|
outputPer1M: -1e6,
|
|
1954
|
+
addedAt: "2026-07-17",
|
|
1853
1955
|
vendor: "openrouter",
|
|
1854
1956
|
provider: "openrouter"
|
|
1855
1957
|
},
|
|
1856
1958
|
"openrouter/bodybuilder": {
|
|
1857
1959
|
inputPer1M: -1e6,
|
|
1858
1960
|
outputPer1M: -1e6,
|
|
1961
|
+
addedAt: "2025-12-05",
|
|
1859
1962
|
vendor: "openrouter",
|
|
1860
1963
|
provider: "openrouter"
|
|
1861
1964
|
},
|
|
1862
1965
|
"openrouter/fusion": {
|
|
1863
1966
|
inputPer1M: -1e6,
|
|
1864
1967
|
outputPer1M: -1e6,
|
|
1968
|
+
addedAt: "2026-06-13",
|
|
1865
1969
|
vendor: "openrouter",
|
|
1866
1970
|
provider: "openrouter"
|
|
1867
1971
|
},
|
|
1868
1972
|
"openrouter/pareto-code": {
|
|
1869
1973
|
inputPer1M: -1e6,
|
|
1870
1974
|
outputPer1M: -1e6,
|
|
1975
|
+
addedAt: "2026-04-21",
|
|
1871
1976
|
vendor: "openrouter",
|
|
1872
1977
|
provider: "openrouter"
|
|
1873
1978
|
},
|
|
1874
1979
|
"perceptron/perceptron-mk1": {
|
|
1875
1980
|
inputPer1M: 0.15,
|
|
1876
1981
|
outputPer1M: 1.5,
|
|
1982
|
+
addedAt: "2026-05-12",
|
|
1877
1983
|
vendor: "perceptron",
|
|
1878
1984
|
provider: "openrouter"
|
|
1879
1985
|
},
|
|
1880
1986
|
"perplexity/sonar": {
|
|
1881
1987
|
inputPer1M: 1,
|
|
1882
1988
|
outputPer1M: 1,
|
|
1989
|
+
addedAt: "2025-01-27",
|
|
1883
1990
|
vendor: "perplexity",
|
|
1884
1991
|
provider: "openrouter"
|
|
1885
1992
|
},
|
|
1886
1993
|
"perplexity/sonar-deep-research": {
|
|
1887
1994
|
inputPer1M: 2,
|
|
1888
1995
|
outputPer1M: 8,
|
|
1996
|
+
addedAt: "2025-03-07",
|
|
1889
1997
|
vendor: "perplexity",
|
|
1890
1998
|
provider: "openrouter"
|
|
1891
1999
|
},
|
|
1892
2000
|
"perplexity/sonar-pro": {
|
|
1893
2001
|
inputPer1M: 3,
|
|
1894
2002
|
outputPer1M: 15,
|
|
2003
|
+
addedAt: "2025-03-07",
|
|
1895
2004
|
vendor: "perplexity",
|
|
1896
2005
|
provider: "openrouter"
|
|
1897
2006
|
},
|
|
1898
2007
|
"perplexity/sonar-pro-search": {
|
|
1899
2008
|
inputPer1M: 3,
|
|
1900
2009
|
outputPer1M: 15,
|
|
2010
|
+
addedAt: "2025-10-30",
|
|
1901
2011
|
vendor: "perplexity",
|
|
1902
2012
|
provider: "openrouter"
|
|
1903
2013
|
},
|
|
1904
2014
|
"perplexity/sonar-reasoning-pro": {
|
|
1905
2015
|
inputPer1M: 2,
|
|
1906
2016
|
outputPer1M: 8,
|
|
2017
|
+
addedAt: "2025-03-07",
|
|
1907
2018
|
vendor: "perplexity",
|
|
1908
2019
|
provider: "openrouter"
|
|
1909
2020
|
},
|
|
@@ -1911,6 +2022,7 @@ var OPENROUTER_ROUTES = {
|
|
|
1911
2022
|
inputPer1M: 0.09,
|
|
1912
2023
|
outputPer1M: 0.18,
|
|
1913
2024
|
cacheReadMultiplier: 0.1,
|
|
2025
|
+
addedAt: "2026-07-21",
|
|
1914
2026
|
vendor: "poolside",
|
|
1915
2027
|
provider: "openrouter"
|
|
1916
2028
|
},
|
|
@@ -1918,24 +2030,28 @@ var OPENROUTER_ROUTES = {
|
|
|
1918
2030
|
inputPer1M: 0.06,
|
|
1919
2031
|
outputPer1M: 0.12,
|
|
1920
2032
|
cacheReadMultiplier: 0.5,
|
|
2033
|
+
addedAt: "2026-07-02",
|
|
1921
2034
|
vendor: "poolside",
|
|
1922
2035
|
provider: "openrouter"
|
|
1923
2036
|
},
|
|
1924
2037
|
"qwen/qwen-2.5-72b-instruct": {
|
|
1925
2038
|
inputPer1M: 0.36,
|
|
1926
2039
|
outputPer1M: 0.4,
|
|
2040
|
+
addedAt: "2024-09-19",
|
|
1927
2041
|
vendor: "qwen",
|
|
1928
2042
|
provider: "openrouter"
|
|
1929
2043
|
},
|
|
1930
2044
|
"qwen/qwen-2.5-7b-instruct": {
|
|
1931
2045
|
inputPer1M: 0.1,
|
|
1932
2046
|
outputPer1M: 0.2,
|
|
2047
|
+
addedAt: "2024-10-16",
|
|
1933
2048
|
vendor: "qwen",
|
|
1934
2049
|
provider: "openrouter"
|
|
1935
2050
|
},
|
|
1936
2051
|
"qwen/qwen-2.5-coder-32b-instruct": {
|
|
1937
2052
|
inputPer1M: 0.66,
|
|
1938
2053
|
outputPer1M: 1,
|
|
2054
|
+
addedAt: "2024-11-11",
|
|
1939
2055
|
vendor: "qwen",
|
|
1940
2056
|
provider: "openrouter"
|
|
1941
2057
|
},
|
|
@@ -1944,79 +2060,85 @@ var OPENROUTER_ROUTES = {
|
|
|
1944
2060
|
outputPer1M: 0.78,
|
|
1945
2061
|
cacheReadMultiplier: 0.2,
|
|
1946
2062
|
cacheWriteMultiplier: 1.25,
|
|
2063
|
+
addedAt: "2025-02-01",
|
|
1947
2064
|
vendor: "qwen",
|
|
1948
2065
|
provider: "openrouter"
|
|
1949
2066
|
},
|
|
1950
2067
|
"qwen/qwen-plus-2025-07-28": {
|
|
1951
2068
|
inputPer1M: 0.26,
|
|
1952
2069
|
outputPer1M: 0.78,
|
|
1953
|
-
|
|
1954
|
-
provider: "openrouter"
|
|
1955
|
-
},
|
|
1956
|
-
"qwen/qwen-plus-2025-07-28:thinking": {
|
|
1957
|
-
inputPer1M: 0.4,
|
|
1958
|
-
outputPer1M: 1.2,
|
|
1959
|
-
cacheWriteMultiplier: 1.25,
|
|
2070
|
+
addedAt: "2025-09-08",
|
|
1960
2071
|
vendor: "qwen",
|
|
1961
2072
|
provider: "openrouter"
|
|
1962
2073
|
},
|
|
1963
2074
|
"qwen/qwen2.5-vl-72b-instruct": {
|
|
1964
2075
|
inputPer1M: 0.25,
|
|
1965
2076
|
outputPer1M: 0.75,
|
|
2077
|
+
addedAt: "2025-02-01",
|
|
1966
2078
|
vendor: "qwen",
|
|
1967
2079
|
provider: "openrouter"
|
|
1968
2080
|
},
|
|
1969
2081
|
"qwen/qwen3-14b": {
|
|
1970
2082
|
inputPer1M: 0.12,
|
|
1971
2083
|
outputPer1M: 0.24,
|
|
2084
|
+
addedAt: "2025-04-28",
|
|
1972
2085
|
vendor: "qwen",
|
|
1973
2086
|
provider: "openrouter"
|
|
1974
2087
|
},
|
|
1975
2088
|
"qwen/qwen3-235b-a22b": {
|
|
1976
2089
|
inputPer1M: 0.455,
|
|
1977
2090
|
outputPer1M: 1.82,
|
|
2091
|
+
addedAt: "2025-04-28",
|
|
1978
2092
|
vendor: "qwen",
|
|
1979
2093
|
provider: "openrouter"
|
|
1980
2094
|
},
|
|
1981
2095
|
"qwen/qwen3-235b-a22b-2507": {
|
|
1982
|
-
inputPer1M: 0.
|
|
1983
|
-
outputPer1M: 0.
|
|
2096
|
+
inputPer1M: 0.0875,
|
|
2097
|
+
outputPer1M: 0.35,
|
|
2098
|
+
cacheReadMultiplier: 0.2,
|
|
2099
|
+
addedAt: "2025-07-21",
|
|
1984
2100
|
vendor: "qwen",
|
|
1985
2101
|
provider: "openrouter"
|
|
1986
2102
|
},
|
|
1987
2103
|
"qwen/qwen3-235b-a22b-thinking-2507": {
|
|
1988
2104
|
inputPer1M: 0.23,
|
|
1989
2105
|
outputPer1M: 2.3,
|
|
2106
|
+
addedAt: "2025-07-25",
|
|
1990
2107
|
vendor: "qwen",
|
|
1991
2108
|
provider: "openrouter"
|
|
1992
2109
|
},
|
|
1993
2110
|
"qwen/qwen3-30b-a3b": {
|
|
1994
2111
|
inputPer1M: 0.12,
|
|
1995
2112
|
outputPer1M: 0.5,
|
|
2113
|
+
addedAt: "2025-04-28",
|
|
1996
2114
|
vendor: "qwen",
|
|
1997
2115
|
provider: "openrouter"
|
|
1998
2116
|
},
|
|
1999
2117
|
"qwen/qwen3-30b-a3b-instruct-2507": {
|
|
2000
2118
|
inputPer1M: 0.04815,
|
|
2001
2119
|
outputPer1M: 0.19305,
|
|
2120
|
+
addedAt: "2025-07-29",
|
|
2002
2121
|
vendor: "qwen",
|
|
2003
2122
|
provider: "openrouter"
|
|
2004
2123
|
},
|
|
2005
2124
|
"qwen/qwen3-30b-a3b-thinking-2507": {
|
|
2006
2125
|
inputPer1M: 0.2,
|
|
2007
2126
|
outputPer1M: 2.4,
|
|
2127
|
+
addedAt: "2025-08-28",
|
|
2008
2128
|
vendor: "qwen",
|
|
2009
2129
|
provider: "openrouter"
|
|
2010
2130
|
},
|
|
2011
2131
|
"qwen/qwen3-32b": {
|
|
2012
2132
|
inputPer1M: 0.08,
|
|
2013
2133
|
outputPer1M: 0.28,
|
|
2134
|
+
addedAt: "2025-04-28",
|
|
2014
2135
|
vendor: "qwen",
|
|
2015
2136
|
provider: "openrouter"
|
|
2016
2137
|
},
|
|
2017
2138
|
"qwen/qwen3-8b": {
|
|
2018
2139
|
inputPer1M: 0.117,
|
|
2019
2140
|
outputPer1M: 0.455,
|
|
2141
|
+
addedAt: "2025-04-28",
|
|
2020
2142
|
vendor: "qwen",
|
|
2021
2143
|
provider: "openrouter"
|
|
2022
2144
|
},
|
|
@@ -2024,12 +2146,14 @@ var OPENROUTER_ROUTES = {
|
|
|
2024
2146
|
inputPer1M: 0.3,
|
|
2025
2147
|
outputPer1M: 1,
|
|
2026
2148
|
cacheReadMultiplier: 0.333333,
|
|
2149
|
+
addedAt: "2025-07-23",
|
|
2027
2150
|
vendor: "qwen",
|
|
2028
2151
|
provider: "openrouter"
|
|
2029
2152
|
},
|
|
2030
2153
|
"qwen/qwen3-coder-30b-a3b-instruct": {
|
|
2031
2154
|
inputPer1M: 0.07,
|
|
2032
2155
|
outputPer1M: 0.28,
|
|
2156
|
+
addedAt: "2025-07-31",
|
|
2033
2157
|
vendor: "qwen",
|
|
2034
2158
|
provider: "openrouter"
|
|
2035
2159
|
},
|
|
@@ -2038,6 +2162,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2038
2162
|
outputPer1M: 0.975,
|
|
2039
2163
|
cacheReadMultiplier: 0.2,
|
|
2040
2164
|
cacheWriteMultiplier: 1.25,
|
|
2165
|
+
addedAt: "2025-09-17",
|
|
2041
2166
|
vendor: "qwen",
|
|
2042
2167
|
provider: "openrouter"
|
|
2043
2168
|
},
|
|
@@ -2045,6 +2170,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2045
2170
|
inputPer1M: 0.12,
|
|
2046
2171
|
outputPer1M: 0.8,
|
|
2047
2172
|
cacheReadMultiplier: 0.583333,
|
|
2173
|
+
addedAt: "2026-02-04",
|
|
2048
2174
|
vendor: "qwen",
|
|
2049
2175
|
provider: "openrouter"
|
|
2050
2176
|
},
|
|
@@ -2053,6 +2179,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2053
2179
|
outputPer1M: 3.25,
|
|
2054
2180
|
cacheReadMultiplier: 0.2,
|
|
2055
2181
|
cacheWriteMultiplier: 1.25,
|
|
2182
|
+
addedAt: "2025-09-23",
|
|
2056
2183
|
vendor: "qwen",
|
|
2057
2184
|
provider: "openrouter"
|
|
2058
2185
|
},
|
|
@@ -2061,24 +2188,28 @@ var OPENROUTER_ROUTES = {
|
|
|
2061
2188
|
outputPer1M: 3.9,
|
|
2062
2189
|
cacheReadMultiplier: 0.2,
|
|
2063
2190
|
cacheWriteMultiplier: 1.25,
|
|
2191
|
+
addedAt: "2025-09-23",
|
|
2064
2192
|
vendor: "qwen",
|
|
2065
2193
|
provider: "openrouter"
|
|
2066
2194
|
},
|
|
2067
2195
|
"qwen/qwen3-max-thinking": {
|
|
2068
2196
|
inputPer1M: 0.78,
|
|
2069
2197
|
outputPer1M: 3.9,
|
|
2198
|
+
addedAt: "2026-02-09",
|
|
2070
2199
|
vendor: "qwen",
|
|
2071
2200
|
provider: "openrouter"
|
|
2072
2201
|
},
|
|
2073
2202
|
"qwen/qwen3-next-80b-a3b-instruct": {
|
|
2074
2203
|
inputPer1M: 0.09,
|
|
2075
2204
|
outputPer1M: 1.1,
|
|
2205
|
+
addedAt: "2025-09-11",
|
|
2076
2206
|
vendor: "qwen",
|
|
2077
2207
|
provider: "openrouter"
|
|
2078
2208
|
},
|
|
2079
2209
|
"qwen/qwen3-next-80b-a3b-thinking": {
|
|
2080
2210
|
inputPer1M: 0.15,
|
|
2081
2211
|
outputPer1M: 1.2,
|
|
2212
|
+
addedAt: "2025-09-11",
|
|
2082
2213
|
vendor: "qwen",
|
|
2083
2214
|
provider: "openrouter"
|
|
2084
2215
|
},
|
|
@@ -2086,85 +2217,106 @@ var OPENROUTER_ROUTES = {
|
|
|
2086
2217
|
inputPer1M: 0.21,
|
|
2087
2218
|
outputPer1M: 1.9,
|
|
2088
2219
|
cacheReadMultiplier: 0.47619,
|
|
2220
|
+
addedAt: "2025-09-23",
|
|
2089
2221
|
vendor: "qwen",
|
|
2090
2222
|
provider: "openrouter"
|
|
2091
2223
|
},
|
|
2092
2224
|
"qwen/qwen3-vl-235b-a22b-thinking": {
|
|
2093
2225
|
inputPer1M: 0.4,
|
|
2094
2226
|
outputPer1M: 4,
|
|
2227
|
+
addedAt: "2025-09-23",
|
|
2095
2228
|
vendor: "qwen",
|
|
2096
2229
|
provider: "openrouter"
|
|
2097
2230
|
},
|
|
2098
2231
|
"qwen/qwen3-vl-30b-a3b-instruct": {
|
|
2099
2232
|
inputPer1M: 0.15,
|
|
2100
2233
|
outputPer1M: 0.6,
|
|
2234
|
+
addedAt: "2025-10-06",
|
|
2101
2235
|
vendor: "qwen",
|
|
2102
2236
|
provider: "openrouter"
|
|
2103
2237
|
},
|
|
2104
2238
|
"qwen/qwen3-vl-30b-a3b-thinking": {
|
|
2105
2239
|
inputPer1M: 0.2,
|
|
2106
2240
|
outputPer1M: 2.4,
|
|
2241
|
+
addedAt: "2025-10-06",
|
|
2107
2242
|
vendor: "qwen",
|
|
2108
2243
|
provider: "openrouter"
|
|
2109
2244
|
},
|
|
2110
2245
|
"qwen/qwen3-vl-32b-instruct": {
|
|
2111
2246
|
inputPer1M: 0.104,
|
|
2112
2247
|
outputPer1M: 0.416,
|
|
2248
|
+
addedAt: "2025-10-23",
|
|
2113
2249
|
vendor: "qwen",
|
|
2114
2250
|
provider: "openrouter"
|
|
2115
2251
|
},
|
|
2116
2252
|
"qwen/qwen3-vl-8b-instruct": {
|
|
2117
2253
|
inputPer1M: 0.117,
|
|
2118
2254
|
outputPer1M: 0.455,
|
|
2255
|
+
addedAt: "2025-10-14",
|
|
2119
2256
|
vendor: "qwen",
|
|
2120
2257
|
provider: "openrouter"
|
|
2121
2258
|
},
|
|
2122
2259
|
"qwen/qwen3-vl-8b-thinking": {
|
|
2123
2260
|
inputPer1M: 0.18,
|
|
2124
2261
|
outputPer1M: 2.1,
|
|
2262
|
+
addedAt: "2025-10-14",
|
|
2125
2263
|
vendor: "qwen",
|
|
2126
2264
|
provider: "openrouter"
|
|
2127
2265
|
},
|
|
2128
2266
|
"qwen/qwen3.5-122b-a10b": {
|
|
2129
2267
|
inputPer1M: 0.29,
|
|
2130
2268
|
outputPer1M: 2.4,
|
|
2269
|
+
addedAt: "2026-02-25",
|
|
2131
2270
|
vendor: "qwen",
|
|
2132
2271
|
provider: "openrouter"
|
|
2133
2272
|
},
|
|
2134
2273
|
"qwen/qwen3.5-27b": {
|
|
2135
2274
|
inputPer1M: 0.195,
|
|
2136
2275
|
outputPer1M: 1.56,
|
|
2276
|
+
addedAt: "2026-02-25",
|
|
2137
2277
|
vendor: "qwen",
|
|
2138
2278
|
provider: "openrouter"
|
|
2139
2279
|
},
|
|
2140
2280
|
"qwen/qwen3.5-35b-a3b": {
|
|
2141
|
-
inputPer1M: 0.
|
|
2142
|
-
outputPer1M: 1,
|
|
2281
|
+
inputPer1M: 0.25,
|
|
2282
|
+
outputPer1M: 1.25,
|
|
2283
|
+
cacheReadMultiplier: 1,
|
|
2284
|
+
addedAt: "2026-02-25",
|
|
2143
2285
|
vendor: "qwen",
|
|
2144
2286
|
provider: "openrouter"
|
|
2145
2287
|
},
|
|
2146
2288
|
"qwen/qwen3.5-397b-a17b": {
|
|
2147
|
-
inputPer1M: 0.
|
|
2148
|
-
outputPer1M:
|
|
2149
|
-
|
|
2289
|
+
inputPer1M: 0.39,
|
|
2290
|
+
outputPer1M: 2.34,
|
|
2291
|
+
addedAt: "2026-02-16",
|
|
2150
2292
|
vendor: "qwen",
|
|
2151
2293
|
provider: "openrouter"
|
|
2152
2294
|
},
|
|
2153
2295
|
"qwen/qwen3.5-9b": {
|
|
2154
2296
|
inputPer1M: 0.1,
|
|
2155
2297
|
outputPer1M: 0.15,
|
|
2298
|
+
addedAt: "2026-03-10",
|
|
2299
|
+
vendor: "qwen",
|
|
2300
|
+
provider: "openrouter"
|
|
2301
|
+
},
|
|
2302
|
+
"qwen/qwen3.5-9b:batch": {
|
|
2303
|
+
inputPer1M: 0.17,
|
|
2304
|
+
outputPer1M: 0.25,
|
|
2305
|
+
addedAt: "2026-03-10",
|
|
2156
2306
|
vendor: "qwen",
|
|
2157
2307
|
provider: "openrouter"
|
|
2158
2308
|
},
|
|
2159
2309
|
"qwen/qwen3.5-flash-02-23": {
|
|
2160
2310
|
inputPer1M: 0.065,
|
|
2161
2311
|
outputPer1M: 0.26,
|
|
2312
|
+
addedAt: "2026-02-25",
|
|
2162
2313
|
vendor: "qwen",
|
|
2163
2314
|
provider: "openrouter"
|
|
2164
2315
|
},
|
|
2165
2316
|
"qwen/qwen3.5-plus-02-15": {
|
|
2166
2317
|
inputPer1M: 0.26,
|
|
2167
2318
|
outputPer1M: 1.56,
|
|
2319
|
+
addedAt: "2026-02-16",
|
|
2168
2320
|
vendor: "qwen",
|
|
2169
2321
|
provider: "openrouter"
|
|
2170
2322
|
},
|
|
@@ -2172,6 +2324,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2172
2324
|
inputPer1M: 0.3,
|
|
2173
2325
|
outputPer1M: 1.8,
|
|
2174
2326
|
cacheWriteMultiplier: 1.25,
|
|
2327
|
+
addedAt: "2026-04-27",
|
|
2175
2328
|
vendor: "qwen",
|
|
2176
2329
|
provider: "openrouter"
|
|
2177
2330
|
},
|
|
@@ -2179,13 +2332,15 @@ var OPENROUTER_ROUTES = {
|
|
|
2179
2332
|
inputPer1M: 0.6,
|
|
2180
2333
|
outputPer1M: 3.6,
|
|
2181
2334
|
cacheReadMultiplier: 0.2,
|
|
2335
|
+
addedAt: "2026-04-27",
|
|
2182
2336
|
vendor: "qwen",
|
|
2183
2337
|
provider: "openrouter"
|
|
2184
2338
|
},
|
|
2185
2339
|
"qwen/qwen3.6-35b-a3b": {
|
|
2186
|
-
inputPer1M: 0.
|
|
2187
|
-
outputPer1M:
|
|
2188
|
-
cacheReadMultiplier: 0.
|
|
2340
|
+
inputPer1M: 0.1,
|
|
2341
|
+
outputPer1M: 0.9,
|
|
2342
|
+
cacheReadMultiplier: 0.5,
|
|
2343
|
+
addedAt: "2026-04-27",
|
|
2189
2344
|
vendor: "qwen",
|
|
2190
2345
|
provider: "openrouter"
|
|
2191
2346
|
},
|
|
@@ -2193,6 +2348,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2193
2348
|
inputPer1M: 0.1875,
|
|
2194
2349
|
outputPer1M: 1.125,
|
|
2195
2350
|
cacheWriteMultiplier: 1.25,
|
|
2351
|
+
addedAt: "2026-04-27",
|
|
2196
2352
|
vendor: "qwen",
|
|
2197
2353
|
provider: "openrouter"
|
|
2198
2354
|
},
|
|
@@ -2200,6 +2356,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2200
2356
|
inputPer1M: 1.027,
|
|
2201
2357
|
outputPer1M: 6.162,
|
|
2202
2358
|
cacheWriteMultiplier: 1.25,
|
|
2359
|
+
addedAt: "2026-04-27",
|
|
2203
2360
|
vendor: "qwen",
|
|
2204
2361
|
provider: "openrouter"
|
|
2205
2362
|
},
|
|
@@ -2207,6 +2364,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2207
2364
|
inputPer1M: 0.325,
|
|
2208
2365
|
outputPer1M: 1.95,
|
|
2209
2366
|
cacheWriteMultiplier: 1.25,
|
|
2367
|
+
addedAt: "2026-04-02",
|
|
2210
2368
|
vendor: "qwen",
|
|
2211
2369
|
provider: "openrouter"
|
|
2212
2370
|
},
|
|
@@ -2215,6 +2373,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2215
2373
|
outputPer1M: 0.13,
|
|
2216
2374
|
cacheReadMultiplier: 0.2,
|
|
2217
2375
|
cacheWriteMultiplier: 1.266667,
|
|
2376
|
+
addedAt: "2026-07-27",
|
|
2218
2377
|
vendor: "qwen",
|
|
2219
2378
|
provider: "openrouter"
|
|
2220
2379
|
},
|
|
@@ -2223,6 +2382,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2223
2382
|
outputPer1M: 4.425,
|
|
2224
2383
|
cacheReadMultiplier: 0.2,
|
|
2225
2384
|
cacheWriteMultiplier: 1.25,
|
|
2385
|
+
addedAt: "2026-05-21",
|
|
2226
2386
|
vendor: "qwen",
|
|
2227
2387
|
provider: "openrouter"
|
|
2228
2388
|
},
|
|
@@ -2231,6 +2391,41 @@ var OPENROUTER_ROUTES = {
|
|
|
2231
2391
|
outputPer1M: 1.28,
|
|
2232
2392
|
cacheReadMultiplier: 0.2,
|
|
2233
2393
|
cacheWriteMultiplier: 1.25,
|
|
2394
|
+
addedAt: "2026-06-03",
|
|
2395
|
+
vendor: "qwen",
|
|
2396
|
+
provider: "openrouter"
|
|
2397
|
+
},
|
|
2398
|
+
"qwen/qwen3.8-2.4t-a95b": {
|
|
2399
|
+
inputPer1M: 2,
|
|
2400
|
+
outputPer1M: 6,
|
|
2401
|
+
cacheReadMultiplier: 0.125,
|
|
2402
|
+
addedAt: "2026-08-12",
|
|
2403
|
+
vendor: "qwen",
|
|
2404
|
+
provider: "openrouter"
|
|
2405
|
+
},
|
|
2406
|
+
"qwen/qwen3.8-2.4t-a95b:batch": {
|
|
2407
|
+
inputPer1M: 2.5,
|
|
2408
|
+
outputPer1M: 6.25,
|
|
2409
|
+
cacheReadMultiplier: 0.2,
|
|
2410
|
+
addedAt: "2026-08-12",
|
|
2411
|
+
vendor: "qwen",
|
|
2412
|
+
provider: "openrouter"
|
|
2413
|
+
},
|
|
2414
|
+
"qwen/qwen3.8-27b": {
|
|
2415
|
+
inputPer1M: 0.425,
|
|
2416
|
+
outputPer1M: 2.55,
|
|
2417
|
+
cacheReadMultiplier: 0.2,
|
|
2418
|
+
cacheWriteMultiplier: 1.25,
|
|
2419
|
+
addedAt: "2026-08-14",
|
|
2420
|
+
vendor: "qwen",
|
|
2421
|
+
provider: "openrouter"
|
|
2422
|
+
},
|
|
2423
|
+
"qwen/qwen3.8-flash": {
|
|
2424
|
+
inputPer1M: 0.15,
|
|
2425
|
+
outputPer1M: 0.47,
|
|
2426
|
+
cacheReadMultiplier: 0.106667,
|
|
2427
|
+
cacheWriteMultiplier: 1.333333,
|
|
2428
|
+
addedAt: "2026-08-26",
|
|
2234
2429
|
vendor: "qwen",
|
|
2235
2430
|
provider: "openrouter"
|
|
2236
2431
|
},
|
|
@@ -2239,30 +2434,35 @@ var OPENROUTER_ROUTES = {
|
|
|
2239
2434
|
outputPer1M: 6,
|
|
2240
2435
|
cacheReadMultiplier: 0.125,
|
|
2241
2436
|
cacheWriteMultiplier: 1.25,
|
|
2437
|
+
addedAt: "2026-08-03",
|
|
2242
2438
|
vendor: "qwen",
|
|
2243
2439
|
provider: "openrouter"
|
|
2244
2440
|
},
|
|
2245
2441
|
"rekaai/reka-edge": {
|
|
2246
2442
|
inputPer1M: 0.1,
|
|
2247
2443
|
outputPer1M: 0.1,
|
|
2444
|
+
addedAt: "2026-03-20",
|
|
2248
2445
|
vendor: "rekaai",
|
|
2249
2446
|
provider: "openrouter"
|
|
2250
2447
|
},
|
|
2251
2448
|
"rekaai/reka-flash-3": {
|
|
2252
2449
|
inputPer1M: 0.1,
|
|
2253
2450
|
outputPer1M: 0.2,
|
|
2451
|
+
addedAt: "2025-03-12",
|
|
2254
2452
|
vendor: "rekaai",
|
|
2255
2453
|
provider: "openrouter"
|
|
2256
2454
|
},
|
|
2257
2455
|
"relace/relace-apply-3": {
|
|
2258
2456
|
inputPer1M: 0.85,
|
|
2259
2457
|
outputPer1M: 1.25,
|
|
2458
|
+
addedAt: "2025-09-26",
|
|
2260
2459
|
vendor: "relace",
|
|
2261
2460
|
provider: "openrouter"
|
|
2262
2461
|
},
|
|
2263
2462
|
"relace/relace-search": {
|
|
2264
2463
|
inputPer1M: 1,
|
|
2265
2464
|
outputPer1M: 3,
|
|
2465
|
+
addedAt: "2025-12-08",
|
|
2266
2466
|
vendor: "relace",
|
|
2267
2467
|
provider: "openrouter"
|
|
2268
2468
|
},
|
|
@@ -2270,6 +2470,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2270
2470
|
inputPer1M: 5,
|
|
2271
2471
|
outputPer1M: 30,
|
|
2272
2472
|
cacheReadMultiplier: 0.1,
|
|
2473
|
+
addedAt: "2026-06-24",
|
|
2273
2474
|
vendor: "sakana",
|
|
2274
2475
|
provider: "openrouter"
|
|
2275
2476
|
},
|
|
@@ -2277,30 +2478,35 @@ var OPENROUTER_ROUTES = {
|
|
|
2277
2478
|
inputPer1M: 0.95,
|
|
2278
2479
|
outputPer1M: 4,
|
|
2279
2480
|
cacheReadMultiplier: 0.157895,
|
|
2481
|
+
addedAt: "2026-08-11",
|
|
2280
2482
|
vendor: "sakana",
|
|
2281
2483
|
provider: "openrouter"
|
|
2282
2484
|
},
|
|
2283
2485
|
"sao10k/l3-lunaris-8b": {
|
|
2284
2486
|
inputPer1M: 0.04,
|
|
2285
2487
|
outputPer1M: 0.05,
|
|
2488
|
+
addedAt: "2024-08-13",
|
|
2286
2489
|
vendor: "sao10k",
|
|
2287
2490
|
provider: "openrouter"
|
|
2288
2491
|
},
|
|
2289
2492
|
"sao10k/l3.1-euryale-70b": {
|
|
2290
2493
|
inputPer1M: 0.85,
|
|
2291
2494
|
outputPer1M: 0.85,
|
|
2495
|
+
addedAt: "2024-08-28",
|
|
2292
2496
|
vendor: "sao10k",
|
|
2293
2497
|
provider: "openrouter"
|
|
2294
2498
|
},
|
|
2295
2499
|
"sao10k/l3.3-euryale-70b": {
|
|
2296
2500
|
inputPer1M: 0.65,
|
|
2297
2501
|
outputPer1M: 0.75,
|
|
2502
|
+
addedAt: "2024-12-18",
|
|
2298
2503
|
vendor: "sao10k",
|
|
2299
2504
|
provider: "openrouter"
|
|
2300
2505
|
},
|
|
2301
2506
|
"stepfun/step-3.5-flash": {
|
|
2302
2507
|
inputPer1M: 0.1,
|
|
2303
2508
|
outputPer1M: 0.3,
|
|
2509
|
+
addedAt: "2026-01-29",
|
|
2304
2510
|
vendor: "stepfun",
|
|
2305
2511
|
provider: "openrouter"
|
|
2306
2512
|
},
|
|
@@ -2308,12 +2514,35 @@ var OPENROUTER_ROUTES = {
|
|
|
2308
2514
|
inputPer1M: 0.2,
|
|
2309
2515
|
outputPer1M: 1.15,
|
|
2310
2516
|
cacheReadMultiplier: 0.2,
|
|
2517
|
+
addedAt: "2026-05-28",
|
|
2311
2518
|
vendor: "stepfun",
|
|
2312
2519
|
provider: "openrouter"
|
|
2313
2520
|
},
|
|
2314
2521
|
"tencent/hunyuan-a13b-instruct": {
|
|
2315
2522
|
inputPer1M: 0.14,
|
|
2316
2523
|
outputPer1M: 0.57,
|
|
2524
|
+
addedAt: "2025-07-08",
|
|
2525
|
+
vendor: "tencent",
|
|
2526
|
+
provider: "openrouter"
|
|
2527
|
+
},
|
|
2528
|
+
"tencent/hy-mt2-1.8b": {
|
|
2529
|
+
inputPer1M: 0.044,
|
|
2530
|
+
outputPer1M: 0.177,
|
|
2531
|
+
addedAt: "2026-08-20",
|
|
2532
|
+
vendor: "tencent",
|
|
2533
|
+
provider: "openrouter"
|
|
2534
|
+
},
|
|
2535
|
+
"tencent/hy-mt2-30b-a3b": {
|
|
2536
|
+
inputPer1M: 0.074,
|
|
2537
|
+
outputPer1M: 0.295,
|
|
2538
|
+
addedAt: "2026-08-20",
|
|
2539
|
+
vendor: "tencent",
|
|
2540
|
+
provider: "openrouter"
|
|
2541
|
+
},
|
|
2542
|
+
"tencent/hy-mt2-7b": {
|
|
2543
|
+
inputPer1M: 0.074,
|
|
2544
|
+
outputPer1M: 0.295,
|
|
2545
|
+
addedAt: "2026-08-19",
|
|
2317
2546
|
vendor: "tencent",
|
|
2318
2547
|
provider: "openrouter"
|
|
2319
2548
|
},
|
|
@@ -2321,13 +2550,23 @@ var OPENROUTER_ROUTES = {
|
|
|
2321
2550
|
inputPer1M: 0.132,
|
|
2322
2551
|
outputPer1M: 0.528,
|
|
2323
2552
|
cacheReadMultiplier: 0.25,
|
|
2553
|
+
addedAt: "2026-07-06",
|
|
2324
2554
|
vendor: "tencent",
|
|
2325
2555
|
provider: "openrouter"
|
|
2326
2556
|
},
|
|
2327
2557
|
"tencent/hy3-preview": {
|
|
2328
|
-
inputPer1M: 0.
|
|
2329
|
-
outputPer1M: 0.
|
|
2558
|
+
inputPer1M: 0.18,
|
|
2559
|
+
outputPer1M: 0.6,
|
|
2330
2560
|
cacheReadMultiplier: 0.333333,
|
|
2561
|
+
addedAt: "2026-04-22",
|
|
2562
|
+
vendor: "tencent",
|
|
2563
|
+
provider: "openrouter"
|
|
2564
|
+
},
|
|
2565
|
+
"tencent/hy4-preview": {
|
|
2566
|
+
inputPer1M: 0.834,
|
|
2567
|
+
outputPer1M: 2.501,
|
|
2568
|
+
cacheReadMultiplier: 0.05036,
|
|
2569
|
+
addedAt: "2026-08-28",
|
|
2331
2570
|
vendor: "tencent",
|
|
2332
2571
|
provider: "openrouter"
|
|
2333
2572
|
},
|
|
@@ -2335,12 +2574,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2335
2574
|
inputPer1M: 0.3,
|
|
2336
2575
|
outputPer1M: 0.5,
|
|
2337
2576
|
cacheReadMultiplier: 0.5,
|
|
2338
|
-
|
|
2339
|
-
provider: "openrouter"
|
|
2340
|
-
},
|
|
2341
|
-
"thedrummer/rocinante-12b": {
|
|
2342
|
-
inputPer1M: 0.25,
|
|
2343
|
-
outputPer1M: 0.5,
|
|
2577
|
+
addedAt: "2025-09-27",
|
|
2344
2578
|
vendor: "thedrummer",
|
|
2345
2579
|
provider: "openrouter"
|
|
2346
2580
|
},
|
|
@@ -2348,19 +2582,22 @@ var OPENROUTER_ROUTES = {
|
|
|
2348
2582
|
inputPer1M: 0.55,
|
|
2349
2583
|
outputPer1M: 0.8,
|
|
2350
2584
|
cacheReadMultiplier: 0.454545,
|
|
2585
|
+
addedAt: "2025-03-10",
|
|
2351
2586
|
vendor: "thedrummer",
|
|
2352
2587
|
provider: "openrouter"
|
|
2353
2588
|
},
|
|
2354
2589
|
"thedrummer/unslopnemo-12b": {
|
|
2355
2590
|
inputPer1M: 0.4,
|
|
2356
2591
|
outputPer1M: 0.4,
|
|
2592
|
+
addedAt: "2024-11-08",
|
|
2357
2593
|
vendor: "thedrummer",
|
|
2358
2594
|
provider: "openrouter"
|
|
2359
2595
|
},
|
|
2360
2596
|
"thinkingmachines/inkling": {
|
|
2361
|
-
inputPer1M:
|
|
2597
|
+
inputPer1M: 1,
|
|
2362
2598
|
outputPer1M: 4.05,
|
|
2363
|
-
cacheReadMultiplier: 0.
|
|
2599
|
+
cacheReadMultiplier: 0.17,
|
|
2600
|
+
addedAt: "2026-07-17",
|
|
2364
2601
|
vendor: "thinkingmachines",
|
|
2365
2602
|
provider: "openrouter"
|
|
2366
2603
|
},
|
|
@@ -2368,19 +2605,30 @@ var OPENROUTER_ROUTES = {
|
|
|
2368
2605
|
inputPer1M: 0.45,
|
|
2369
2606
|
outputPer1M: 1.2,
|
|
2370
2607
|
cacheReadMultiplier: 0.222222,
|
|
2608
|
+
addedAt: "2026-07-30",
|
|
2371
2609
|
vendor: "thinkingmachines",
|
|
2372
2610
|
provider: "openrouter"
|
|
2373
2611
|
},
|
|
2374
|
-
"thinkingmachines/inkling:batch": {
|
|
2612
|
+
"thinkingmachines/inkling-small:batch": {
|
|
2375
2613
|
inputPer1M: 0.5,
|
|
2376
|
-
outputPer1M: 2
|
|
2614
|
+
outputPer1M: 1.2,
|
|
2615
|
+
cacheReadMultiplier: 0.2,
|
|
2616
|
+
addedAt: "2026-07-30",
|
|
2617
|
+
vendor: "thinkingmachines",
|
|
2618
|
+
provider: "openrouter"
|
|
2619
|
+
},
|
|
2620
|
+
"thinkingmachines/inkling:batch": {
|
|
2621
|
+
inputPer1M: 1,
|
|
2622
|
+
outputPer1M: 4.05,
|
|
2377
2623
|
cacheReadMultiplier: 0.17,
|
|
2624
|
+
addedAt: "2026-07-17",
|
|
2378
2625
|
vendor: "thinkingmachines",
|
|
2379
2626
|
provider: "openrouter"
|
|
2380
2627
|
},
|
|
2381
2628
|
"undi95/remm-slerp-l2-13b": {
|
|
2382
2629
|
inputPer1M: 0.45,
|
|
2383
2630
|
outputPer1M: 0.65,
|
|
2631
|
+
addedAt: "2023-07-22",
|
|
2384
2632
|
vendor: "undi95",
|
|
2385
2633
|
provider: "openrouter"
|
|
2386
2634
|
},
|
|
@@ -2388,6 +2636,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2388
2636
|
inputPer1M: 0.15,
|
|
2389
2637
|
outputPer1M: 0.6,
|
|
2390
2638
|
cacheReadMultiplier: 0.1,
|
|
2639
|
+
addedAt: "2026-01-27",
|
|
2391
2640
|
vendor: "upstage",
|
|
2392
2641
|
provider: "openrouter"
|
|
2393
2642
|
},
|
|
@@ -2395,12 +2644,14 @@ var OPENROUTER_ROUTES = {
|
|
|
2395
2644
|
inputPer1M: 0.03,
|
|
2396
2645
|
outputPer1M: 0.12,
|
|
2397
2646
|
cacheReadMultiplier: 0.2,
|
|
2647
|
+
addedAt: "2026-08-10",
|
|
2398
2648
|
vendor: "upstage",
|
|
2399
2649
|
provider: "openrouter"
|
|
2400
2650
|
},
|
|
2401
2651
|
"writer/palmyra-x5": {
|
|
2402
2652
|
inputPer1M: 0.6,
|
|
2403
2653
|
outputPer1M: 6,
|
|
2654
|
+
addedAt: "2026-01-21",
|
|
2404
2655
|
vendor: "writer",
|
|
2405
2656
|
provider: "openrouter"
|
|
2406
2657
|
},
|
|
@@ -2408,6 +2659,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2408
2659
|
inputPer1M: 1.25,
|
|
2409
2660
|
outputPer1M: 2.5,
|
|
2410
2661
|
cacheReadMultiplier: 0.16,
|
|
2662
|
+
addedAt: "2026-03-31",
|
|
2411
2663
|
vendor: "x-ai",
|
|
2412
2664
|
provider: "openrouter"
|
|
2413
2665
|
},
|
|
@@ -2415,6 +2667,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2415
2667
|
inputPer1M: 1.25,
|
|
2416
2668
|
outputPer1M: 2.5,
|
|
2417
2669
|
cacheReadMultiplier: 0.16,
|
|
2670
|
+
addedAt: "2026-03-31",
|
|
2418
2671
|
vendor: "x-ai",
|
|
2419
2672
|
provider: "openrouter"
|
|
2420
2673
|
},
|
|
@@ -2422,6 +2675,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2422
2675
|
inputPer1M: 1.25,
|
|
2423
2676
|
outputPer1M: 2.5,
|
|
2424
2677
|
cacheReadMultiplier: 0.16,
|
|
2678
|
+
addedAt: "2026-04-30",
|
|
2425
2679
|
vendor: "x-ai",
|
|
2426
2680
|
provider: "openrouter"
|
|
2427
2681
|
},
|
|
@@ -2429,6 +2683,15 @@ var OPENROUTER_ROUTES = {
|
|
|
2429
2683
|
inputPer1M: 2,
|
|
2430
2684
|
outputPer1M: 6,
|
|
2431
2685
|
cacheReadMultiplier: 0.15,
|
|
2686
|
+
addedAt: "2026-07-08",
|
|
2687
|
+
vendor: "x-ai",
|
|
2688
|
+
provider: "openrouter"
|
|
2689
|
+
},
|
|
2690
|
+
"x-ai/grok-4.6": {
|
|
2691
|
+
inputPer1M: 2,
|
|
2692
|
+
outputPer1M: 6,
|
|
2693
|
+
cacheReadMultiplier: 0.25,
|
|
2694
|
+
addedAt: "2026-08-12",
|
|
2432
2695
|
vendor: "x-ai",
|
|
2433
2696
|
provider: "openrouter"
|
|
2434
2697
|
},
|
|
@@ -2436,6 +2699,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2436
2699
|
inputPer1M: 1,
|
|
2437
2700
|
outputPer1M: 2,
|
|
2438
2701
|
cacheReadMultiplier: 0.2,
|
|
2702
|
+
addedAt: "2026-05-20",
|
|
2439
2703
|
vendor: "x-ai",
|
|
2440
2704
|
provider: "openrouter"
|
|
2441
2705
|
},
|
|
@@ -2443,6 +2707,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2443
2707
|
inputPer1M: 0.14,
|
|
2444
2708
|
outputPer1M: 0.28,
|
|
2445
2709
|
cacheReadMultiplier: 0.02,
|
|
2710
|
+
addedAt: "2026-04-22",
|
|
2446
2711
|
vendor: "xiaomi",
|
|
2447
2712
|
provider: "openrouter"
|
|
2448
2713
|
},
|
|
@@ -2450,6 +2715,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2450
2715
|
inputPer1M: 0.435,
|
|
2451
2716
|
outputPer1M: 0.87,
|
|
2452
2717
|
cacheReadMultiplier: 8276e-6,
|
|
2718
|
+
addedAt: "2026-04-22",
|
|
2453
2719
|
vendor: "xiaomi",
|
|
2454
2720
|
provider: "openrouter"
|
|
2455
2721
|
},
|
|
@@ -2457,6 +2723,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2457
2723
|
inputPer1M: 0.6,
|
|
2458
2724
|
outputPer1M: 2.2,
|
|
2459
2725
|
cacheReadMultiplier: 0.183333,
|
|
2726
|
+
addedAt: "2025-07-25",
|
|
2460
2727
|
vendor: "z-ai",
|
|
2461
2728
|
provider: "openrouter"
|
|
2462
2729
|
},
|
|
@@ -2464,6 +2731,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2464
2731
|
inputPer1M: 0.13,
|
|
2465
2732
|
outputPer1M: 0.85,
|
|
2466
2733
|
cacheReadMultiplier: 0.192308,
|
|
2734
|
+
addedAt: "2025-07-25",
|
|
2467
2735
|
vendor: "z-ai",
|
|
2468
2736
|
provider: "openrouter"
|
|
2469
2737
|
},
|
|
@@ -2471,13 +2739,15 @@ var OPENROUTER_ROUTES = {
|
|
|
2471
2739
|
inputPer1M: 0.6,
|
|
2472
2740
|
outputPer1M: 1.8,
|
|
2473
2741
|
cacheReadMultiplier: 0.183333,
|
|
2742
|
+
addedAt: "2025-08-11",
|
|
2474
2743
|
vendor: "z-ai",
|
|
2475
2744
|
provider: "openrouter"
|
|
2476
2745
|
},
|
|
2477
2746
|
"z-ai/glm-4.6": {
|
|
2478
|
-
inputPer1M: 0.
|
|
2479
|
-
outputPer1M:
|
|
2480
|
-
cacheReadMultiplier: 0.
|
|
2747
|
+
inputPer1M: 0.43,
|
|
2748
|
+
outputPer1M: 1.75,
|
|
2749
|
+
cacheReadMultiplier: 0.186047,
|
|
2750
|
+
addedAt: "2025-09-30",
|
|
2481
2751
|
vendor: "z-ai",
|
|
2482
2752
|
provider: "openrouter"
|
|
2483
2753
|
},
|
|
@@ -2485,6 +2755,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2485
2755
|
inputPer1M: 0.3,
|
|
2486
2756
|
outputPer1M: 0.9,
|
|
2487
2757
|
cacheReadMultiplier: 0.183333,
|
|
2758
|
+
addedAt: "2025-12-08",
|
|
2488
2759
|
vendor: "z-ai",
|
|
2489
2760
|
provider: "openrouter"
|
|
2490
2761
|
},
|
|
@@ -2492,6 +2763,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2492
2763
|
inputPer1M: 0.4,
|
|
2493
2764
|
outputPer1M: 1.75,
|
|
2494
2765
|
cacheReadMultiplier: 0.2,
|
|
2766
|
+
addedAt: "2025-12-22",
|
|
2495
2767
|
vendor: "z-ai",
|
|
2496
2768
|
provider: "openrouter"
|
|
2497
2769
|
},
|
|
@@ -2499,13 +2771,15 @@ var OPENROUTER_ROUTES = {
|
|
|
2499
2771
|
inputPer1M: 0.06,
|
|
2500
2772
|
outputPer1M: 0.4,
|
|
2501
2773
|
cacheReadMultiplier: 0.166667,
|
|
2774
|
+
addedAt: "2026-01-19",
|
|
2502
2775
|
vendor: "z-ai",
|
|
2503
2776
|
provider: "openrouter"
|
|
2504
2777
|
},
|
|
2505
2778
|
"z-ai/glm-5": {
|
|
2506
|
-
inputPer1M: 0.
|
|
2507
|
-
outputPer1M:
|
|
2508
|
-
cacheReadMultiplier: 0.
|
|
2779
|
+
inputPer1M: 0.6,
|
|
2780
|
+
outputPer1M: 1.92,
|
|
2781
|
+
cacheReadMultiplier: 0.2,
|
|
2782
|
+
addedAt: "2026-02-11",
|
|
2509
2783
|
vendor: "z-ai",
|
|
2510
2784
|
provider: "openrouter"
|
|
2511
2785
|
},
|
|
@@ -2513,27 +2787,47 @@ var OPENROUTER_ROUTES = {
|
|
|
2513
2787
|
inputPer1M: 1.2,
|
|
2514
2788
|
outputPer1M: 4,
|
|
2515
2789
|
cacheReadMultiplier: 0.2,
|
|
2790
|
+
addedAt: "2026-03-15",
|
|
2516
2791
|
vendor: "z-ai",
|
|
2517
2792
|
provider: "openrouter"
|
|
2518
2793
|
},
|
|
2519
2794
|
"z-ai/glm-5.1": {
|
|
2520
|
-
inputPer1M: 0.
|
|
2521
|
-
outputPer1M:
|
|
2795
|
+
inputPer1M: 0.966,
|
|
2796
|
+
outputPer1M: 3.036,
|
|
2522
2797
|
cacheReadMultiplier: 0.185714,
|
|
2798
|
+
addedAt: "2026-04-07",
|
|
2523
2799
|
vendor: "z-ai",
|
|
2524
2800
|
provider: "openrouter"
|
|
2525
2801
|
},
|
|
2526
2802
|
"z-ai/glm-5.2": {
|
|
2527
|
-
inputPer1M:
|
|
2528
|
-
outputPer1M:
|
|
2529
|
-
cacheReadMultiplier: 0.
|
|
2803
|
+
inputPer1M: 1.19,
|
|
2804
|
+
outputPer1M: 3.74,
|
|
2805
|
+
cacheReadMultiplier: 0.185714,
|
|
2806
|
+
addedAt: "2026-06-16",
|
|
2530
2807
|
vendor: "z-ai",
|
|
2531
2808
|
provider: "openrouter"
|
|
2532
2809
|
},
|
|
2533
|
-
"z-ai/glm-5.
|
|
2534
|
-
inputPer1M:
|
|
2535
|
-
outputPer1M:
|
|
2810
|
+
"z-ai/glm-5.3": {
|
|
2811
|
+
inputPer1M: 1.4,
|
|
2812
|
+
outputPer1M: 4.4,
|
|
2536
2813
|
cacheReadMultiplier: 0.185714,
|
|
2814
|
+
addedAt: "2026-08-18",
|
|
2815
|
+
vendor: "z-ai",
|
|
2816
|
+
provider: "openrouter"
|
|
2817
|
+
},
|
|
2818
|
+
"z-ai/glm-5.3-flash": {
|
|
2819
|
+
inputPer1M: 0.075,
|
|
2820
|
+
outputPer1M: 0.25,
|
|
2821
|
+
cacheReadMultiplier: 0.2,
|
|
2822
|
+
addedAt: "2026-08-26",
|
|
2823
|
+
vendor: "z-ai",
|
|
2824
|
+
provider: "openrouter"
|
|
2825
|
+
},
|
|
2826
|
+
"z-ai/glm-5.3-flash:batch": {
|
|
2827
|
+
inputPer1M: 0.15,
|
|
2828
|
+
outputPer1M: 0.5,
|
|
2829
|
+
cacheReadMultiplier: 0.2,
|
|
2830
|
+
addedAt: "2026-08-26",
|
|
2537
2831
|
vendor: "z-ai",
|
|
2538
2832
|
provider: "openrouter"
|
|
2539
2833
|
},
|
|
@@ -2541,6 +2835,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2541
2835
|
inputPer1M: 1.2,
|
|
2542
2836
|
outputPer1M: 4,
|
|
2543
2837
|
cacheReadMultiplier: 0.2,
|
|
2838
|
+
addedAt: "2026-04-01",
|
|
2544
2839
|
vendor: "z-ai",
|
|
2545
2840
|
provider: "openrouter"
|
|
2546
2841
|
},
|
|
@@ -2549,6 +2844,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2549
2844
|
outputPer1M: 50,
|
|
2550
2845
|
cacheReadMultiplier: 0.1,
|
|
2551
2846
|
cacheWriteMultiplier: 1.25,
|
|
2847
|
+
addedAt: "2026-06-09",
|
|
2552
2848
|
vendor: "~anthropic",
|
|
2553
2849
|
provider: "openrouter"
|
|
2554
2850
|
},
|
|
@@ -2557,6 +2853,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2557
2853
|
outputPer1M: 5,
|
|
2558
2854
|
cacheReadMultiplier: 0.1,
|
|
2559
2855
|
cacheWriteMultiplier: 1.25,
|
|
2856
|
+
addedAt: "2026-04-27",
|
|
2560
2857
|
vendor: "~anthropic",
|
|
2561
2858
|
provider: "openrouter"
|
|
2562
2859
|
},
|
|
@@ -2565,6 +2862,7 @@ var OPENROUTER_ROUTES = {
|
|
|
2565
2862
|
outputPer1M: 25,
|
|
2566
2863
|
cacheReadMultiplier: 0.1,
|
|
2567
2864
|
cacheWriteMultiplier: 1.25,
|
|
2865
|
+
addedAt: "2026-04-21",
|
|
2568
2866
|
vendor: "~anthropic",
|
|
2569
2867
|
provider: "openrouter"
|
|
2570
2868
|
},
|
|
@@ -2573,21 +2871,24 @@ var OPENROUTER_ROUTES = {
|
|
|
2573
2871
|
outputPer1M: 10,
|
|
2574
2872
|
cacheReadMultiplier: 0.1,
|
|
2575
2873
|
cacheWriteMultiplier: 1.25,
|
|
2874
|
+
addedAt: "2026-04-27",
|
|
2576
2875
|
vendor: "~anthropic",
|
|
2577
2876
|
provider: "openrouter"
|
|
2578
2877
|
},
|
|
2579
2878
|
"~deepseek/deepseek-v4-flash-latest": {
|
|
2580
|
-
inputPer1M: 0.
|
|
2581
|
-
outputPer1M: 0.
|
|
2582
|
-
cacheReadMultiplier: 0.
|
|
2879
|
+
inputPer1M: 0.03,
|
|
2880
|
+
outputPer1M: 0.16,
|
|
2881
|
+
cacheReadMultiplier: 0.433333,
|
|
2882
|
+
addedAt: "2026-08-01",
|
|
2583
2883
|
vendor: "~deepseek",
|
|
2584
2884
|
provider: "openrouter"
|
|
2585
2885
|
},
|
|
2586
2886
|
"~google/gemini-flash-latest": {
|
|
2587
|
-
inputPer1M:
|
|
2588
|
-
outputPer1M:
|
|
2887
|
+
inputPer1M: 0.75,
|
|
2888
|
+
outputPer1M: 3.75,
|
|
2589
2889
|
cacheReadMultiplier: 0.1,
|
|
2590
|
-
cacheWriteMultiplier: 0.
|
|
2890
|
+
cacheWriteMultiplier: 0.055556,
|
|
2891
|
+
addedAt: "2026-04-27",
|
|
2591
2892
|
vendor: "~google",
|
|
2592
2893
|
provider: "openrouter"
|
|
2593
2894
|
},
|
|
@@ -2596,21 +2897,24 @@ var OPENROUTER_ROUTES = {
|
|
|
2596
2897
|
outputPer1M: 12,
|
|
2597
2898
|
cacheReadMultiplier: 0.1,
|
|
2598
2899
|
cacheWriteMultiplier: 0.1875,
|
|
2900
|
+
addedAt: "2026-04-27",
|
|
2599
2901
|
vendor: "~google",
|
|
2600
2902
|
provider: "openrouter"
|
|
2601
2903
|
},
|
|
2602
2904
|
"~moonshotai/kimi-latest": {
|
|
2603
|
-
inputPer1M: 2.
|
|
2604
|
-
outputPer1M:
|
|
2605
|
-
cacheReadMultiplier: 0.
|
|
2905
|
+
inputPer1M: 2.55,
|
|
2906
|
+
outputPer1M: 12.75,
|
|
2907
|
+
cacheReadMultiplier: 0.100392,
|
|
2908
|
+
addedAt: "2026-04-27",
|
|
2606
2909
|
vendor: "~moonshotai",
|
|
2607
2910
|
provider: "openrouter"
|
|
2608
2911
|
},
|
|
2609
2912
|
"~openai/gpt-latest": {
|
|
2610
|
-
inputPer1M:
|
|
2611
|
-
outputPer1M:
|
|
2913
|
+
inputPer1M: 2,
|
|
2914
|
+
outputPer1M: 10,
|
|
2612
2915
|
cacheReadMultiplier: 0.1,
|
|
2613
2916
|
cacheWriteMultiplier: 1.25,
|
|
2917
|
+
addedAt: "2026-04-27",
|
|
2614
2918
|
vendor: "~openai",
|
|
2615
2919
|
provider: "openrouter"
|
|
2616
2920
|
},
|
|
@@ -2618,15 +2922,25 @@ var OPENROUTER_ROUTES = {
|
|
|
2618
2922
|
inputPer1M: 0.75,
|
|
2619
2923
|
outputPer1M: 4.5,
|
|
2620
2924
|
cacheReadMultiplier: 0.1,
|
|
2925
|
+
addedAt: "2026-04-27",
|
|
2621
2926
|
vendor: "~openai",
|
|
2622
2927
|
provider: "openrouter"
|
|
2623
2928
|
},
|
|
2624
2929
|
"~x-ai/grok-latest": {
|
|
2625
2930
|
inputPer1M: 2,
|
|
2626
2931
|
outputPer1M: 6,
|
|
2627
|
-
cacheReadMultiplier: 0.
|
|
2932
|
+
cacheReadMultiplier: 0.25,
|
|
2933
|
+
addedAt: "2026-07-08",
|
|
2628
2934
|
vendor: "~x-ai",
|
|
2629
2935
|
provider: "openrouter"
|
|
2936
|
+
},
|
|
2937
|
+
"~z-ai/glm-latest": {
|
|
2938
|
+
inputPer1M: 1.1875,
|
|
2939
|
+
outputPer1M: 4.18,
|
|
2940
|
+
cacheReadMultiplier: 0.208,
|
|
2941
|
+
addedAt: "2026-08-19",
|
|
2942
|
+
vendor: "~z-ai",
|
|
2943
|
+
provider: "openrouter"
|
|
2630
2944
|
}
|
|
2631
2945
|
};
|
|
2632
2946
|
|
|
@@ -2636,723 +2950,474 @@ var CONTEXT_WINDOWS = {
|
|
|
2636
2950
|
"canopylabs/orpheus-arabic-saudi": { contextWindow: 4e3, maxOutput: 5e4, provider: "groq" },
|
|
2637
2951
|
"canopylabs/orpheus-v1-english": { contextWindow: 4e3, maxOutput: 5e4, provider: "groq" },
|
|
2638
2952
|
"claude-fable-5": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Fable 5", provider: "anthropic" },
|
|
2953
|
+
"claude-haiku-4-5": { contextWindow: 2e5, maxOutput: 64e3, displayName: "Claude Haiku 4.5", provider: "anthropic" },
|
|
2639
2954
|
"claude-haiku-4-5-20251001": { contextWindow: 2e5, maxOutput: 64e3, displayName: "Claude Haiku 4.5", provider: "anthropic" },
|
|
2955
|
+
"claude-opus-4-5": { contextWindow: 2e5, maxOutput: 64e3, displayName: "Claude Opus 4.5", provider: "anthropic" },
|
|
2640
2956
|
"claude-opus-4-5-20251101": { contextWindow: 2e5, maxOutput: 64e3, displayName: "Claude Opus 4.5", provider: "anthropic" },
|
|
2641
2957
|
"claude-opus-4-6": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Opus 4.6", provider: "anthropic" },
|
|
2642
2958
|
"claude-opus-4-7": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Opus 4.7", provider: "anthropic" },
|
|
2643
2959
|
"claude-opus-4-8": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Opus 4.8", provider: "anthropic" },
|
|
2644
2960
|
"claude-opus-5": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Opus 5", provider: "anthropic" },
|
|
2961
|
+
"claude-sonnet-4-5": { contextWindow: 1e6, maxOutput: 64e3, displayName: "Claude Sonnet 4.5", provider: "anthropic" },
|
|
2645
2962
|
"claude-sonnet-4-5-20250929": { contextWindow: 1e6, maxOutput: 64e3, displayName: "Claude Sonnet 4.5", provider: "anthropic" },
|
|
2646
2963
|
"claude-sonnet-4-6": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Sonnet 4.6", provider: "anthropic" },
|
|
2647
2964
|
"claude-sonnet-5": { contextWindow: 1e6, maxOutput: 128e3, displayName: "Claude Sonnet 5", provider: "anthropic" },
|
|
2965
|
+
"codestral-2508": { contextWindow: 256e3, provider: "mistral" },
|
|
2966
|
+
"codestral-embed": { contextWindow: 8192, provider: "mistral" },
|
|
2967
|
+
"codestral-embed-2505": { contextWindow: 8192, provider: "mistral" },
|
|
2968
|
+
"codestral-latest": { contextWindow: 256e3, provider: "mistral" },
|
|
2969
|
+
"devstral-2512": { contextWindow: 262144, provider: "mistral" },
|
|
2970
|
+
"devstral-latest": { contextWindow: 262144, provider: "mistral" },
|
|
2971
|
+
"devstral-medium-latest": { contextWindow: 262144, provider: "mistral" },
|
|
2972
|
+
"gemini-2.5-flash": { contextWindow: 1048576, maxOutput: 65535, provider: "google" },
|
|
2973
|
+
"gemini-2.5-flash-lite": { contextWindow: 1048576, maxOutput: 65535, provider: "google" },
|
|
2974
|
+
"gemini-2.5-pro": { contextWindow: 1048576, maxOutput: 65536, provider: "google" },
|
|
2975
|
+
"gemini-3-flash-preview": { contextWindow: 1048576, maxOutput: 65536, provider: "google" },
|
|
2976
|
+
"gemini-3.1-flash-lite": { contextWindow: 1048576, maxOutput: 65536, provider: "google" },
|
|
2977
|
+
"gemini-3.1-pro-preview": { contextWindow: 1048576, maxOutput: 65536, provider: "google" },
|
|
2978
|
+
"gemini-3.5-flash": { contextWindow: 1048576, maxOutput: 65536, provider: "google" },
|
|
2979
|
+
"glm-5-2": { contextWindow: 1048576, provider: "mistral" },
|
|
2648
2980
|
"grok-4.20-0309-non-reasoning": { contextWindow: 1e6, provider: "xai" },
|
|
2649
2981
|
"grok-4.20-0309-reasoning": { contextWindow: 1e6, provider: "xai" },
|
|
2650
2982
|
"grok-4.20-multi-agent-0309": { contextWindow: 1e6, provider: "xai" },
|
|
2651
2983
|
"grok-4.3": { contextWindow: 1e6, provider: "xai" },
|
|
2652
2984
|
"grok-4.5": { contextWindow: 5e5, provider: "xai" },
|
|
2985
|
+
"grok-4.6": { contextWindow: 5e5, provider: "xai" },
|
|
2653
2986
|
"grok-build-0.1": { contextWindow: 256e3, provider: "xai" },
|
|
2654
2987
|
"grok-imagine-image": { contextWindow: 8e3, provider: "xai" },
|
|
2988
|
+
"grok-imagine-image-2.0": { contextWindow: 8e3, provider: "xai" },
|
|
2655
2989
|
"grok-imagine-image-quality": { contextWindow: 8e3, provider: "xai" },
|
|
2656
2990
|
"groq/compound": { contextWindow: 131072, maxOutput: 8192, provider: "groq" },
|
|
2657
2991
|
"groq/compound-mini": { contextWindow: 131072, maxOutput: 8192, provider: "groq" },
|
|
2658
|
-
"kimi-k2.5": { contextWindow: 262144, provider: "moonshot" },
|
|
2659
2992
|
"kimi-k2.6": { contextWindow: 262144, provider: "moonshot" },
|
|
2660
2993
|
"kimi-k2.7-code": { contextWindow: 262144, provider: "moonshot" },
|
|
2661
2994
|
"kimi-k2.7-code-highspeed": { contextWindow: 262144, provider: "moonshot" },
|
|
2662
2995
|
"kimi-k3": { contextWindow: 1048576, provider: "moonshot" },
|
|
2996
|
+
"labs-leanstral-1-5": { contextWindow: 262144, provider: "mistral" },
|
|
2997
|
+
"labs-leanstral-1-5-1": { contextWindow: 262144, provider: "mistral" },
|
|
2663
2998
|
"llama-3.1-8b-instant": { contextWindow: 131072, maxOutput: 131072, provider: "groq" },
|
|
2664
2999
|
"llama-3.3-70b-versatile": { contextWindow: 131072, maxOutput: 32768, provider: "groq" },
|
|
3000
|
+
"magistral-medium-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3001
|
+
"magistral-small-latest": { contextWindow: 262144, provider: "mistral" },
|
|
2665
3002
|
"meta-llama/llama-4-scout-17b-16e-instruct": { contextWindow: 131072, maxOutput: 8192, provider: "groq" },
|
|
2666
3003
|
"meta-llama/llama-prompt-guard-2-22m": { contextWindow: 512, maxOutput: 512, provider: "groq" },
|
|
2667
3004
|
"meta-llama/llama-prompt-guard-2-86m": { contextWindow: 512, maxOutput: 512, provider: "groq" },
|
|
2668
|
-
"
|
|
2669
|
-
"
|
|
2670
|
-
"
|
|
2671
|
-
"
|
|
2672
|
-
"
|
|
2673
|
-
"
|
|
2674
|
-
"
|
|
3005
|
+
"ministral-14b-2512": { contextWindow: 262144, provider: "mistral" },
|
|
3006
|
+
"ministral-14b-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3007
|
+
"ministral-3b-2512": { contextWindow: 131072, provider: "mistral" },
|
|
3008
|
+
"ministral-3b-latest": { contextWindow: 131072, provider: "mistral" },
|
|
3009
|
+
"ministral-8b-2512": { contextWindow: 262144, provider: "mistral" },
|
|
3010
|
+
"ministral-8b-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3011
|
+
"mistral-code-agent-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3012
|
+
"mistral-code-fim-latest": { contextWindow: 256e3, provider: "mistral" },
|
|
3013
|
+
"mistral-code-latest": { contextWindow: 256e3, provider: "mistral" },
|
|
3014
|
+
"mistral-embed": { contextWindow: 8192, provider: "mistral" },
|
|
3015
|
+
"mistral-embed-2312": { contextWindow: 8192, provider: "mistral" },
|
|
3016
|
+
"mistral-large-2512": { contextWindow: 262144, provider: "mistral" },
|
|
3017
|
+
"mistral-large-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3018
|
+
"mistral-medium": { contextWindow: 262144, provider: "mistral" },
|
|
3019
|
+
"mistral-medium-2505": { contextWindow: 131072, provider: "mistral" },
|
|
3020
|
+
"mistral-medium-2508": { contextWindow: 131072, provider: "mistral" },
|
|
3021
|
+
"mistral-medium-2604": { contextWindow: 262144, provider: "mistral" },
|
|
3022
|
+
"mistral-medium-3": { contextWindow: 262144, provider: "mistral" },
|
|
3023
|
+
"mistral-medium-3-5": { contextWindow: 262144, provider: "mistral" },
|
|
3024
|
+
"mistral-medium-3.5": { contextWindow: 262144, provider: "mistral" },
|
|
3025
|
+
"mistral-medium-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3026
|
+
"mistral-moderation-2603": { contextWindow: 131072, provider: "mistral" },
|
|
3027
|
+
"mistral-ocr-2512": { contextWindow: 16384, provider: "mistral" },
|
|
3028
|
+
"mistral-ocr-3": { contextWindow: 16384, provider: "mistral" },
|
|
3029
|
+
"mistral-ocr-3-0": { contextWindow: 16384, provider: "mistral" },
|
|
3030
|
+
"mistral-ocr-4": { contextWindow: 16384, provider: "mistral" },
|
|
3031
|
+
"mistral-ocr-4-0": { contextWindow: 16384, provider: "mistral" },
|
|
3032
|
+
"mistral-ocr-4-1": { contextWindow: 16384, provider: "mistral" },
|
|
3033
|
+
"mistral-ocr-latest": { contextWindow: 16384, provider: "mistral" },
|
|
3034
|
+
"mistral-small-2603": { contextWindow: 262144, provider: "mistral" },
|
|
3035
|
+
"mistral-small-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3036
|
+
"mistral-vibe-cli-fast": { contextWindow: 262144, provider: "mistral" },
|
|
3037
|
+
"mistral-vibe-cli-latest": { contextWindow: 262144, provider: "mistral" },
|
|
3038
|
+
"mistral-vibe-cli-with-tools": { contextWindow: 262144, provider: "mistral" },
|
|
2675
3039
|
"openai/gpt-oss-120b": { contextWindow: 131072, maxOutput: 65536, provider: "groq" },
|
|
2676
3040
|
"openai/gpt-oss-20b": { contextWindow: 131072, maxOutput: 65536, provider: "groq" },
|
|
2677
3041
|
"openai/gpt-oss-safeguard-20b": { contextWindow: 131072, maxOutput: 65536, provider: "groq" },
|
|
2678
3042
|
"qwen/qwen3-32b": { contextWindow: 131072, maxOutput: 40960, provider: "groq" },
|
|
2679
3043
|
"qwen/qwen3.6-27b": { contextWindow: 131072, maxOutput: 32768, provider: "groq" },
|
|
3044
|
+
"voxtral-mini-2602": { contextWindow: 16384, provider: "mistral" },
|
|
3045
|
+
"voxtral-mini-latest": { contextWindow: 16384, provider: "mistral" },
|
|
3046
|
+
"voxtral-mini-realtime-2602": { contextWindow: 32768, provider: "mistral" },
|
|
3047
|
+
"voxtral-mini-realtime-latest": { contextWindow: 32768, provider: "mistral" },
|
|
3048
|
+
"voxtral-mini-transcribe-realtime-2602": { contextWindow: 32768, provider: "mistral" },
|
|
3049
|
+
"voxtral-mini-tts-2603": { contextWindow: 4096, provider: "mistral" },
|
|
3050
|
+
"voxtral-mini-tts-latest": { contextWindow: 4096, provider: "mistral" },
|
|
3051
|
+
"voxtral-small-2507": { contextWindow: 32768, provider: "mistral" },
|
|
3052
|
+
"voxtral-small-latest": { contextWindow: 32768, provider: "mistral" },
|
|
2680
3053
|
"whisper-large-v3": { contextWindow: 448, maxOutput: 448, provider: "groq" },
|
|
2681
|
-
"whisper-large-v3-turbo": { contextWindow: 448, maxOutput: 448, provider: "groq" }
|
|
3054
|
+
"whisper-large-v3-turbo": { contextWindow: 448, maxOutput: 448, provider: "groq" },
|
|
3055
|
+
"zai-glm-5-2": { contextWindow: 1048576, provider: "mistral" }
|
|
3056
|
+
};
|
|
3057
|
+
|
|
3058
|
+
// src/llm/mistral-pricing.generated.ts
|
|
3059
|
+
var MISTRAL_GENERATED_PRICING = {
|
|
3060
|
+
"codestral-2508": { inputPer1M: 0.3, outputPer1M: 0.9, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3061
|
+
"ministral-14b-2512": { inputPer1M: 0.2, outputPer1M: 0.2, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3062
|
+
"ministral-3b-2512": { inputPer1M: 0.1, outputPer1M: 0.1, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3063
|
+
"ministral-8b-2512": { inputPer1M: 0.15, outputPer1M: 0.15, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3064
|
+
"mistral-large-2512": { inputPer1M: 0.5, outputPer1M: 1.5, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3065
|
+
"mistral-medium-3": { inputPer1M: 0.4, outputPer1M: 2, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" },
|
|
3066
|
+
"mistral-medium-3-5": { inputPer1M: 1.5, outputPer1M: 7.5, vendor: "mistral", provider: "mistral" },
|
|
3067
|
+
"mistral-medium-3.5": { inputPer1M: 1.5, outputPer1M: 7.5, vendor: "mistral", provider: "mistral" },
|
|
3068
|
+
"mistral-small-2603": { inputPer1M: 0.15, outputPer1M: 0.6, cacheReadMultiplier: 0.1, vendor: "mistral", provider: "mistral" }
|
|
3069
|
+
};
|
|
3070
|
+
|
|
3071
|
+
// src/llm/moonshot-pricing.generated.ts
|
|
3072
|
+
var MOONSHOT_GENERATED_PRICING = {
|
|
3073
|
+
"kimi-k2.6": { inputPer1M: 0.95, outputPer1M: 4, cacheReadMultiplier: 0.1684, vendor: "moonshot", provider: "moonshot" },
|
|
3074
|
+
"kimi-k2.7-code": { inputPer1M: 0.66, outputPer1M: 3.4, cacheReadMultiplier: 0.2727, vendor: "moonshot", provider: "moonshot" },
|
|
3075
|
+
"kimi-k3": { inputPer1M: 3, outputPer1M: 15, cacheReadMultiplier: 0.1, vendor: "moonshot", provider: "moonshot" }
|
|
3076
|
+
};
|
|
3077
|
+
|
|
3078
|
+
// src/llm/anthropic-pricing.generated.ts
|
|
3079
|
+
var ANTHROPIC_GENERATED_PRICING = {
|
|
3080
|
+
"claude-fable-5": { inputPer1M: 10, outputPer1M: 50, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3081
|
+
"claude-haiku-4-5": { inputPer1M: 1, outputPer1M: 5, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3082
|
+
"claude-haiku-4-5-20251001": { inputPer1M: 1, outputPer1M: 5, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3083
|
+
"claude-opus-4-5": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3084
|
+
"claude-opus-4-5-20251101": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3085
|
+
"claude-opus-4-6": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3086
|
+
"claude-opus-4-7": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3087
|
+
"claude-opus-4-8": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3088
|
+
"claude-opus-5": { inputPer1M: 5, outputPer1M: 25, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3089
|
+
"claude-sonnet-4-5": { inputPer1M: 3, outputPer1M: 15, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3090
|
+
"claude-sonnet-4-5-20250929": { inputPer1M: 3, outputPer1M: 15, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3091
|
+
"claude-sonnet-4-6": { inputPer1M: 3, outputPer1M: 15, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" },
|
|
3092
|
+
"claude-sonnet-5": { inputPer1M: 2, outputPer1M: 10, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "anthropic", provider: "anthropic" }
|
|
3093
|
+
};
|
|
3094
|
+
|
|
3095
|
+
// src/llm/google-pricing.generated.ts
|
|
3096
|
+
var GOOGLE_GENERATED_PRICING = {
|
|
3097
|
+
"gemini-2.5-flash": { inputPer1M: 0.3, outputPer1M: 2.5, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3098
|
+
"gemini-2.5-flash-lite": { inputPer1M: 0.1, outputPer1M: 0.4, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3099
|
+
"gemini-2.5-pro": { inputPer1M: 1.25, outputPer1M: 10, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3100
|
+
"gemini-3-flash-preview": { inputPer1M: 0.5, outputPer1M: 3, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3101
|
+
"gemini-3.1-flash-lite": { inputPer1M: 0.25, outputPer1M: 1.5, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3102
|
+
"gemini-3.1-pro-preview": { inputPer1M: 2, outputPer1M: 12, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" },
|
|
3103
|
+
"gemini-3.5-flash": { inputPer1M: 1.5, outputPer1M: 9, cacheReadMultiplier: 0.1, vendor: "google", provider: "google" }
|
|
3104
|
+
};
|
|
3105
|
+
|
|
3106
|
+
// src/llm/openai-pricing.generated.ts
|
|
3107
|
+
var OPENAI_GENERATED_PRICING = {
|
|
3108
|
+
"gpt-3.5-turbo": { inputPer1M: 0.5, outputPer1M: 1.5, vendor: "openai", provider: "openai" },
|
|
3109
|
+
"gpt-3.5-turbo-0613": { inputPer1M: 1, outputPer1M: 2, vendor: "openai", provider: "openai" },
|
|
3110
|
+
"gpt-3.5-turbo-16k": { inputPer1M: 3, outputPer1M: 4, vendor: "openai", provider: "openai" },
|
|
3111
|
+
"gpt-3.5-turbo-instruct": { inputPer1M: 1.5, outputPer1M: 2, vendor: "openai", provider: "openai" },
|
|
3112
|
+
"gpt-4": { inputPer1M: 30, outputPer1M: 60, vendor: "openai", provider: "openai" },
|
|
3113
|
+
"gpt-4-turbo": { inputPer1M: 10, outputPer1M: 30, vendor: "openai", provider: "openai" },
|
|
3114
|
+
"gpt-4-turbo-preview": { inputPer1M: 10, outputPer1M: 30, vendor: "openai", provider: "openai" },
|
|
3115
|
+
"gpt-4.1": { inputPer1M: 2, outputPer1M: 8, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" },
|
|
3116
|
+
"gpt-4.1-mini": { inputPer1M: 0.4, outputPer1M: 1.6, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" },
|
|
3117
|
+
"gpt-4.1-nano": { inputPer1M: 0.1, outputPer1M: 0.4, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" },
|
|
3118
|
+
"gpt-4o": { inputPer1M: 2.5, outputPer1M: 10, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3119
|
+
"gpt-4o-2024-05-13": { inputPer1M: 5, outputPer1M: 15, vendor: "openai", provider: "openai" },
|
|
3120
|
+
"gpt-4o-2024-08-06": { inputPer1M: 2.5, outputPer1M: 10, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3121
|
+
"gpt-4o-2024-11-20": { inputPer1M: 2.5, outputPer1M: 10, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3122
|
+
"gpt-4o-mini": { inputPer1M: 0.15, outputPer1M: 0.6, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3123
|
+
"gpt-4o-mini-2024-07-18": { inputPer1M: 0.15, outputPer1M: 0.6, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3124
|
+
"gpt-5": { inputPer1M: 1.25, outputPer1M: 10, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3125
|
+
"gpt-5-image": { inputPer1M: 10, outputPer1M: 10, cacheReadMultiplier: 0.125, vendor: "openai", provider: "openai" },
|
|
3126
|
+
"gpt-5-image-mini": { inputPer1M: 2.5, outputPer1M: 2, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3127
|
+
"gpt-5-mini": { inputPer1M: 0.25, outputPer1M: 2, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3128
|
+
"gpt-5-nano": { inputPer1M: 0.05, outputPer1M: 0.4, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3129
|
+
"gpt-5-pro": { inputPer1M: 15, outputPer1M: 120, vendor: "openai", provider: "openai" },
|
|
3130
|
+
"gpt-5.1": { inputPer1M: 1.25, outputPer1M: 10, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3131
|
+
"gpt-5.1-codex": { inputPer1M: 1.25, outputPer1M: 10, cacheReadMultiplier: 0.104, vendor: "openai", provider: "openai" },
|
|
3132
|
+
"gpt-5.1-codex-max": { inputPer1M: 1.25, outputPer1M: 10, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3133
|
+
"gpt-5.1-codex-mini": { inputPer1M: 0.25, outputPer1M: 2, cacheReadMultiplier: 0.12, vendor: "openai", provider: "openai" },
|
|
3134
|
+
"gpt-5.2": { inputPer1M: 1.75, outputPer1M: 14, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3135
|
+
"gpt-5.2-chat": { inputPer1M: 1.75, outputPer1M: 14, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3136
|
+
"gpt-5.2-codex": { inputPer1M: 1.75, outputPer1M: 14, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3137
|
+
"gpt-5.2-pro": { inputPer1M: 21, outputPer1M: 168, vendor: "openai", provider: "openai" },
|
|
3138
|
+
"gpt-5.3-codex": { inputPer1M: 1.75, outputPer1M: 14, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3139
|
+
"gpt-5.4": { inputPer1M: 2.5, outputPer1M: 15, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3140
|
+
"gpt-5.4-mini": { inputPer1M: 0.75, outputPer1M: 4.5, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3141
|
+
"gpt-5.4-nano": { inputPer1M: 0.2, outputPer1M: 1.25, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3142
|
+
"gpt-5.4-pro": { inputPer1M: 30, outputPer1M: 180, vendor: "openai", provider: "openai" },
|
|
3143
|
+
"gpt-5.5": { inputPer1M: 5, outputPer1M: 30, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3144
|
+
"gpt-5.5-pro": { inputPer1M: 30, outputPer1M: 180, vendor: "openai", provider: "openai" },
|
|
3145
|
+
"gpt-5.6-luna": { inputPer1M: 0.2, outputPer1M: 1.2, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3146
|
+
"gpt-5.6-luna-pro": { inputPer1M: 0.2, outputPer1M: 1.2, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3147
|
+
"gpt-5.6-sol": { inputPer1M: 2, outputPer1M: 10, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3148
|
+
"gpt-5.6-sol-pro": { inputPer1M: 2, outputPer1M: 10, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3149
|
+
"gpt-5.6-terra": { inputPer1M: 2, outputPer1M: 12, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3150
|
+
"gpt-5.6-terra-pro": { inputPer1M: 2, outputPer1M: 12, cacheReadMultiplier: 0.1, cacheWriteMultiplier: 1.25, vendor: "openai", provider: "openai" },
|
|
3151
|
+
"gpt-audio": { inputPer1M: 2.5, outputPer1M: 10, vendor: "openai", provider: "openai" },
|
|
3152
|
+
"gpt-audio-mini": { inputPer1M: 0.6, outputPer1M: 2.4, vendor: "openai", provider: "openai" },
|
|
3153
|
+
"gpt-chat-latest": { inputPer1M: 5, outputPer1M: 30, cacheReadMultiplier: 0.1, vendor: "openai", provider: "openai" },
|
|
3154
|
+
"gpt-oss-120b": { inputPer1M: 0.037, outputPer1M: 0.17, vendor: "openai", provider: "openai" },
|
|
3155
|
+
"gpt-oss-120b:batch": { inputPer1M: 0.15, outputPer1M: 0.6, vendor: "openai", provider: "openai" },
|
|
3156
|
+
"gpt-oss-20b": { inputPer1M: 0.03, outputPer1M: 0.13, cacheReadMultiplier: 1, vendor: "openai", provider: "openai" },
|
|
3157
|
+
"gpt-oss-20b:batch": { inputPer1M: 0.05, outputPer1M: 0.2, vendor: "openai", provider: "openai" },
|
|
3158
|
+
"gpt-oss-safeguard-20b": { inputPer1M: 0.075, outputPer1M: 0.3, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3159
|
+
"o1": { inputPer1M: 15, outputPer1M: 60, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3160
|
+
"o1-pro": { inputPer1M: 150, outputPer1M: 600, vendor: "openai", provider: "openai" },
|
|
3161
|
+
"o3": { inputPer1M: 2, outputPer1M: 8, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" },
|
|
3162
|
+
"o3-mini": { inputPer1M: 1.1, outputPer1M: 4.4, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3163
|
+
"o3-mini-high": { inputPer1M: 1.1, outputPer1M: 4.4, cacheReadMultiplier: 0.5, vendor: "openai", provider: "openai" },
|
|
3164
|
+
"o3-pro": { inputPer1M: 20, outputPer1M: 80, vendor: "openai", provider: "openai" },
|
|
3165
|
+
"o4-mini": { inputPer1M: 1.1, outputPer1M: 4.4, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" },
|
|
3166
|
+
"o4-mini-high": { inputPer1M: 1.1, outputPer1M: 4.4, cacheReadMultiplier: 0.25, vendor: "openai", provider: "openai" }
|
|
3167
|
+
};
|
|
3168
|
+
|
|
3169
|
+
// src/llm/minimax-pricing.generated.ts
|
|
3170
|
+
var MINIMAX_GENERATED_PRICING = {
|
|
3171
|
+
"M2-her": { inputPer1M: 0.3, outputPer1M: 1.2, cacheReadMultiplier: 0.1, vendor: "minimax", provider: "minimax" },
|
|
3172
|
+
"MiniMax-M2": { inputPer1M: 0.255, outputPer1M: 1.02, vendor: "minimax", provider: "minimax" },
|
|
3173
|
+
"MiniMax-M2.1": { inputPer1M: 0.3, outputPer1M: 1.2, cacheReadMultiplier: 0.1, vendor: "minimax", provider: "minimax" },
|
|
3174
|
+
"MiniMax-M2.5": { inputPer1M: 0.27, outputPer1M: 1.08, cacheReadMultiplier: 0.1, vendor: "minimax", provider: "minimax" },
|
|
3175
|
+
"MiniMax-M2.7": { inputPer1M: 0.3, outputPer1M: 1.2, cacheReadMultiplier: 0.2, vendor: "minimax", provider: "minimax" }
|
|
3176
|
+
};
|
|
3177
|
+
|
|
3178
|
+
// src/llm/xai-pricing.generated.ts
|
|
3179
|
+
var XAI_GENERATED_PRICING = {
|
|
3180
|
+
"grok-4.20": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3181
|
+
"grok-4.20-0309": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3182
|
+
"grok-4.20-0309-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3183
|
+
"grok-4.20-0309-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3184
|
+
"grok-4.20-beta": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3185
|
+
"grok-4.20-beta-0309": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3186
|
+
"grok-4.20-beta-0309-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3187
|
+
"grok-4.20-beta-0309-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3188
|
+
"grok-4.20-beta-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3189
|
+
"grok-4.20-beta-latest-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3190
|
+
"grok-4.20-beta-latest-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3191
|
+
"grok-4.20-beta-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3192
|
+
"grok-4.20-beta-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3193
|
+
"grok-4.20-experimental-beta-0304": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3194
|
+
"grok-4.20-experimental-beta-0304-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3195
|
+
"grok-4.20-experimental-beta-0304-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3196
|
+
"grok-4.20-experimental-beta-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3197
|
+
"grok-4.20-experimental-beta-non-reasoning-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3198
|
+
"grok-4.20-experimental-beta-reasoning-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3199
|
+
"grok-4.20-multi-agent": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3200
|
+
"grok-4.20-multi-agent-0309": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3201
|
+
"grok-4.20-multi-agent-beta-0309": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3202
|
+
"grok-4.20-multi-agent-beta-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3203
|
+
"grok-4.20-multi-agent-experimental-beta-0304": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3204
|
+
"grok-4.20-multi-agent-experimental-beta-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3205
|
+
"grok-4.20-multi-agent-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3206
|
+
"grok-4.20-non-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3207
|
+
"grok-4.20-non-reasoning-gv2": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3208
|
+
"grok-4.20-non-reasoning-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3209
|
+
"grok-4.20-reasoning": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3210
|
+
"grok-4.20-reasoning-gv2": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3211
|
+
"grok-4.20-reasoning-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3212
|
+
"grok-4.3": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3213
|
+
"grok-4.3-latest": { inputPer1M: 1.25, outputPer1M: 2.5, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2.5, outputPer1M: 5, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3214
|
+
"grok-4.5": { inputPer1M: 2, outputPer1M: 6, cachedInputPer1M: 0.3, longContext: { inputPer1M: 4, outputPer1M: 12, cachedInputPer1M: 0.6, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3215
|
+
"grok-4.5-latest": { inputPer1M: 2, outputPer1M: 6, cachedInputPer1M: 0.3, longContext: { inputPer1M: 4, outputPer1M: 12, cachedInputPer1M: 0.6, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3216
|
+
"grok-4.6": { inputPer1M: 2, outputPer1M: 6, cachedInputPer1M: 0.5, longContext: { inputPer1M: 4, outputPer1M: 12, cachedInputPer1M: 1, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3217
|
+
"grok-build-0.1": { inputPer1M: 1, outputPer1M: 2, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2, outputPer1M: 4, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3218
|
+
"grok-build-latest": { inputPer1M: 2, outputPer1M: 6, cachedInputPer1M: 0.3, longContext: { inputPer1M: 4, outputPer1M: 12, cachedInputPer1M: 0.6, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3219
|
+
"grok-code-fast": { inputPer1M: 1, outputPer1M: 2, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2, outputPer1M: 4, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3220
|
+
"grok-code-fast-1": { inputPer1M: 1, outputPer1M: 2, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2, outputPer1M: 4, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" },
|
|
3221
|
+
"grok-code-fast-1-0825": { inputPer1M: 1, outputPer1M: 2, cachedInputPer1M: 0.2, longContext: { inputPer1M: 2, outputPer1M: 4, cachedInputPer1M: 0.4, thresholdTokens: 2e5 }, vendor: "xai", provider: "xai" }
|
|
2682
3222
|
};
|
|
2683
3223
|
|
|
2684
3224
|
// src/llm/catalog.ts
|
|
2685
|
-
var
|
|
2686
|
-
//
|
|
2687
|
-
//
|
|
2688
|
-
//
|
|
2689
|
-
//
|
|
2690
|
-
//
|
|
2691
|
-
|
|
2692
|
-
|
|
2693
|
-
|
|
2694
|
-
|
|
2695
|
-
|
|
2696
|
-
|
|
2697
|
-
|
|
2698
|
-
|
|
2699
|
-
|
|
2700
|
-
|
|
2701
|
-
|
|
2702
|
-
cacheReadMultiplier: 0.1,
|
|
2703
|
-
cacheWriteMultiplier: 1.25,
|
|
2704
|
-
vendor: "anthropic",
|
|
2705
|
-
provider: "anthropic"
|
|
2706
|
-
},
|
|
2707
|
-
"claude-haiku-4-5": {
|
|
2708
|
-
inputPer1M: 0.8,
|
|
2709
|
-
outputPer1M: 4,
|
|
2710
|
-
cacheReadMultiplier: 0.1,
|
|
2711
|
-
cacheWriteMultiplier: 1.25,
|
|
2712
|
-
vendor: "anthropic",
|
|
2713
|
-
provider: "anthropic"
|
|
2714
|
-
},
|
|
2715
|
-
// Latest-generation Anthropic ids the claude-code / claude-sdk adapters
|
|
2716
|
-
// advertise. Registered so `agentproto models` reports a $/Mtok figure and
|
|
2717
|
-
// a concrete provider — before these rows they resolved to provider
|
|
2718
|
-
// `unknown` (no pricing entry) and showed as runnable:false. Prices per 1M
|
|
2719
|
-
// tokens from platform.claude.com/docs/en/pricing.
|
|
2720
|
-
"claude-opus-4-8": {
|
|
2721
|
-
inputPer1M: 5,
|
|
2722
|
-
outputPer1M: 25,
|
|
2723
|
-
cacheReadMultiplier: 0.1,
|
|
2724
|
-
cacheWriteMultiplier: 1.25,
|
|
2725
|
-
vendor: "anthropic",
|
|
2726
|
-
provider: "anthropic"
|
|
2727
|
-
},
|
|
2728
|
-
"claude-sonnet-5": {
|
|
2729
|
-
inputPer1M: 3,
|
|
2730
|
-
outputPer1M: 15,
|
|
2731
|
-
cacheReadMultiplier: 0.1,
|
|
2732
|
-
cacheWriteMultiplier: 1.25,
|
|
2733
|
-
vendor: "anthropic",
|
|
2734
|
-
provider: "anthropic"
|
|
2735
|
-
},
|
|
2736
|
-
"claude-fable-5": {
|
|
2737
|
-
inputPer1M: 10,
|
|
2738
|
-
outputPer1M: 50,
|
|
2739
|
-
cacheReadMultiplier: 0.1,
|
|
2740
|
-
cacheWriteMultiplier: 1.25,
|
|
2741
|
-
vendor: "anthropic",
|
|
2742
|
-
provider: "anthropic"
|
|
2743
|
-
},
|
|
2744
|
-
// ── Google ─────────────────────────────────────────────────────────────
|
|
2745
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2746
|
-
// — Flash text/image/video input $0.30/1M, output $2.50/1M, context-cache
|
|
2747
|
-
// $0.03/1M (audio input is $1.00/1M — not modeled). Cross-checked against
|
|
2748
|
-
// https://pricepertoken.com/pricing-page/model/google-gemini-2.5-flash.
|
|
2749
|
-
"gemini-2.5-flash": {
|
|
2750
|
-
inputPer1M: 0.3,
|
|
2751
|
-
outputPer1M: 2.5,
|
|
2752
|
-
// Context-cache $0.03/1M = 0.1× input (implicit caching, no write surcharge).
|
|
2753
|
-
cacheReadMultiplier: 0.1,
|
|
2754
|
-
vendor: "google",
|
|
2755
|
-
provider: "google"
|
|
2756
|
-
},
|
|
2757
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2758
|
-
// — Pro ≤200k prompts: input $1.25/1M, output $10.00/1M, context-cache
|
|
2759
|
-
// $0.125/1M. (>200k tiers: $2.50 in / $15.00 out — not modeled.)
|
|
2760
|
-
"gemini-2.5-pro": {
|
|
2761
|
-
inputPer1M: 1.25,
|
|
2762
|
-
outputPer1M: 10,
|
|
2763
|
-
// Context-cache $0.125/1M = 0.1× input (≤200k tier).
|
|
2764
|
-
cacheReadMultiplier: 0.1,
|
|
2765
|
-
vendor: "google",
|
|
2766
|
-
provider: "google"
|
|
2767
|
-
},
|
|
2768
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2769
|
-
// — Gemini 3.5 Flash input $1.50/1M, output $9.00/1M, context-cache
|
|
2770
|
-
// $0.15/1M. Cross-checked against https://devtk.ai/en/models/gemini-3-5-flash.
|
|
2771
|
-
"gemini-3.5-flash": {
|
|
2772
|
-
inputPer1M: 1.5,
|
|
2773
|
-
outputPer1M: 9,
|
|
2774
|
-
// Context-cache $0.15/1M = 0.1× input.
|
|
2775
|
-
cacheReadMultiplier: 0.1,
|
|
2776
|
-
vendor: "google",
|
|
2777
|
-
provider: "google"
|
|
2778
|
-
},
|
|
2779
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2780
|
-
// — Flash-Lite text/image/video input $0.10/1M, output $0.40/1M, cache $0.01.
|
|
2781
|
-
"gemini-2.5-flash-lite": {
|
|
2782
|
-
inputPer1M: 0.1,
|
|
2783
|
-
outputPer1M: 0.4,
|
|
2784
|
-
// Context-cache $0.01/1M = 0.1× input.
|
|
2785
|
-
cacheReadMultiplier: 0.1,
|
|
2786
|
-
vendor: "google",
|
|
2787
|
-
provider: "google"
|
|
2788
|
-
},
|
|
2789
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2790
|
-
// — Gemini 3.1 Pro Preview ≤200k prompts: input $2.00/1M, output $12.00/1M,
|
|
2791
|
-
// context-cache $0.20/1M. (>200k tiers: $4.00 in / $18.00 out — not modeled.)
|
|
2792
|
-
"gemini-3.1-pro-preview": {
|
|
2793
|
-
inputPer1M: 2,
|
|
2794
|
-
outputPer1M: 12,
|
|
2795
|
-
// Context-cache $0.20/1M = 0.1× input (≤200k tier).
|
|
2796
|
-
cacheReadMultiplier: 0.1,
|
|
2797
|
-
vendor: "google",
|
|
2798
|
-
provider: "google"
|
|
2799
|
-
},
|
|
2800
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2801
|
-
// — Gemini 3 Flash Preview text/image/video input $0.50/1M, output $3.00/1M,
|
|
2802
|
-
// context-cache $0.05/1M.
|
|
2803
|
-
"gemini-3-flash-preview": {
|
|
2804
|
-
inputPer1M: 0.5,
|
|
2805
|
-
outputPer1M: 3,
|
|
2806
|
-
// Context-cache $0.05/1M = 0.1× input.
|
|
2807
|
-
cacheReadMultiplier: 0.1,
|
|
2808
|
-
vendor: "google",
|
|
2809
|
-
provider: "google"
|
|
2810
|
-
},
|
|
2811
|
-
// Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-05-29)
|
|
2812
|
-
// — Gemini 3.1 Flash-Lite text/image/video input $0.25/1M, output $1.50/1M,
|
|
2813
|
-
// context-cache $0.025/1M.
|
|
2814
|
-
"gemini-3.1-flash-lite": {
|
|
2815
|
-
inputPer1M: 0.25,
|
|
2816
|
-
outputPer1M: 1.5,
|
|
2817
|
-
// Context-cache $0.025/1M = 0.1× input.
|
|
2818
|
-
cacheReadMultiplier: 0.1,
|
|
2819
|
-
vendor: "google",
|
|
2820
|
-
provider: "google"
|
|
2821
|
-
},
|
|
2822
|
-
// ── OpenAI ─────────────────────────────────────────────────────────────
|
|
2823
|
-
// All OpenAI cacheReadMultiplier = 0.1 (cached input billed at 10% of base,
|
|
2824
|
-
// matching the per-model cached-input rates on the pricing table). No cache-
|
|
2825
|
-
// write premium (OpenAI prompt caching is automatic, no write surcharge).
|
|
2826
|
-
// Source: https://pricepertoken.com/pricing-page/provider/openai
|
|
2827
|
-
// (mirrors openai.com/api/pricing; fetched 2026-05-29 — openai.com 403s WebFetch).
|
|
2828
|
-
"gpt-5.5": {
|
|
2829
|
-
// $5.00 in / $0.50 cached / $30.00 out per 1M.
|
|
2830
|
-
inputPer1M: 5,
|
|
2831
|
-
outputPer1M: 30,
|
|
2832
|
-
cacheReadMultiplier: 0.1,
|
|
2833
|
-
vendor: "openai",
|
|
2834
|
-
provider: "openai"
|
|
2835
|
-
},
|
|
2836
|
-
"gpt-5.5-pro": {
|
|
2837
|
-
// $30.00 in / $180.00 out per 1M. No cached tier on pro.
|
|
2838
|
-
inputPer1M: 30,
|
|
2839
|
-
outputPer1M: 180,
|
|
2840
|
-
vendor: "openai",
|
|
2841
|
-
provider: "openai"
|
|
2842
|
-
},
|
|
2843
|
-
"gpt-5.4": {
|
|
2844
|
-
// $2.50 in / $0.25 cached / $15.00 out per 1M (production workhorse).
|
|
2845
|
-
inputPer1M: 2.5,
|
|
2846
|
-
outputPer1M: 15,
|
|
2847
|
-
cacheReadMultiplier: 0.1,
|
|
2848
|
-
vendor: "openai",
|
|
2849
|
-
provider: "openai"
|
|
2850
|
-
},
|
|
2851
|
-
"gpt-5.4-mini": {
|
|
2852
|
-
// $0.75 in / $0.075 cached / $4.50 out per 1M.
|
|
2853
|
-
inputPer1M: 0.75,
|
|
2854
|
-
outputPer1M: 4.5,
|
|
2855
|
-
cacheReadMultiplier: 0.1,
|
|
2856
|
-
vendor: "openai",
|
|
2857
|
-
provider: "openai"
|
|
2858
|
-
},
|
|
2859
|
-
"gpt-5.4-nano": {
|
|
2860
|
-
// $0.20 in / $0.02 cached / $1.25 out per 1M.
|
|
2861
|
-
inputPer1M: 0.2,
|
|
2862
|
-
outputPer1M: 1.25,
|
|
2863
|
-
cacheReadMultiplier: 0.1,
|
|
2864
|
-
vendor: "openai",
|
|
2865
|
-
provider: "openai"
|
|
2866
|
-
},
|
|
2867
|
-
"gpt-5.4-pro": {
|
|
2868
|
-
// $30.00 in / $180.00 out per 1M. No cached tier on pro.
|
|
2869
|
-
inputPer1M: 30,
|
|
2870
|
-
outputPer1M: 180,
|
|
2871
|
-
vendor: "openai",
|
|
2872
|
-
provider: "openai"
|
|
2873
|
-
},
|
|
2874
|
-
"gpt-5.2": {
|
|
2875
|
-
// $1.75 in / $0.175 cached / $14.00 out per 1M.
|
|
2876
|
-
inputPer1M: 1.75,
|
|
2877
|
-
outputPer1M: 14,
|
|
2878
|
-
cacheReadMultiplier: 0.1,
|
|
2879
|
-
vendor: "openai",
|
|
2880
|
-
provider: "openai"
|
|
2881
|
-
},
|
|
2882
|
-
"gpt-5.1": {
|
|
2883
|
-
// $1.25 in / $0.125 cached / $10.00 out per 1M.
|
|
2884
|
-
inputPer1M: 1.25,
|
|
2885
|
-
outputPer1M: 10,
|
|
2886
|
-
cacheReadMultiplier: 0.1,
|
|
2887
|
-
vendor: "openai",
|
|
2888
|
-
provider: "openai"
|
|
2889
|
-
},
|
|
2890
|
-
"gpt-5": {
|
|
2891
|
-
// $1.25 in / $0.125 cached / $10.00 out per 1M (base GPT-5).
|
|
2892
|
-
inputPer1M: 1.25,
|
|
2893
|
-
outputPer1M: 10,
|
|
2894
|
-
cacheReadMultiplier: 0.1,
|
|
2895
|
-
vendor: "openai",
|
|
2896
|
-
provider: "openai"
|
|
2897
|
-
},
|
|
2898
|
-
"gpt-4.1": {
|
|
2899
|
-
inputPer1M: 2,
|
|
2900
|
-
outputPer1M: 8,
|
|
2901
|
-
vendor: "openai",
|
|
2902
|
-
provider: "openai"
|
|
2903
|
-
},
|
|
2904
|
-
"gpt-4.1-mini": {
|
|
2905
|
-
inputPer1M: 0.4,
|
|
2906
|
-
outputPer1M: 1.6,
|
|
2907
|
-
vendor: "openai",
|
|
2908
|
-
provider: "openai"
|
|
2909
|
-
},
|
|
2910
|
-
// Source: pricepertoken.com/pricing-page/provider/openai (fetched 2026-05-29)
|
|
2911
|
-
// — gpt-4.1-nano $0.10 in / $0.025 cached / $0.40 out per 1M.
|
|
2912
|
-
"gpt-4.1-nano": {
|
|
2913
|
-
inputPer1M: 0.1,
|
|
2914
|
-
outputPer1M: 0.4,
|
|
2915
|
-
cacheReadMultiplier: 0.25,
|
|
2916
|
-
vendor: "openai",
|
|
2917
|
-
provider: "openai"
|
|
2918
|
-
},
|
|
2919
|
-
"gpt-4o": {
|
|
2920
|
-
inputPer1M: 2.5,
|
|
2921
|
-
outputPer1M: 10,
|
|
2922
|
-
vendor: "openai",
|
|
2923
|
-
provider: "openai"
|
|
2924
|
-
},
|
|
2925
|
-
"gpt-4o-mini": {
|
|
2926
|
-
inputPer1M: 0.15,
|
|
2927
|
-
outputPer1M: 0.6,
|
|
2928
|
-
vendor: "openai",
|
|
2929
|
-
provider: "openai"
|
|
2930
|
-
},
|
|
2931
|
-
// ── OpenAI o-series (reasoning) ─────────────────────────────────────────
|
|
2932
|
-
// Source: pricepertoken.com/pricing-page/provider/openai (fetched 2026-05-29).
|
|
2933
|
-
o3: {
|
|
2934
|
-
// $2.00 in / $8.00 out per 1M.
|
|
2935
|
-
inputPer1M: 2,
|
|
2936
|
-
outputPer1M: 8,
|
|
2937
|
-
vendor: "openai",
|
|
2938
|
-
provider: "openai"
|
|
2939
|
-
},
|
|
2940
|
-
"o4-mini": {
|
|
2941
|
-
// $0.55 in / $0.275 cached / $2.20 out per 1M.
|
|
2942
|
-
inputPer1M: 0.55,
|
|
2943
|
-
outputPer1M: 2.2,
|
|
2944
|
-
cacheReadMultiplier: 0.5,
|
|
2945
|
-
vendor: "openai",
|
|
2946
|
-
provider: "openai"
|
|
2947
|
-
},
|
|
2948
|
-
"o3-mini": {
|
|
2949
|
-
// $0.55 in / $2.20 out per 1M (no cache discount listed).
|
|
2950
|
-
inputPer1M: 0.55,
|
|
2951
|
-
outputPer1M: 2.2,
|
|
2952
|
-
vendor: "openai",
|
|
2953
|
-
provider: "openai"
|
|
2954
|
-
},
|
|
2955
|
-
o1: {
|
|
2956
|
-
// $15.00 in / $7.50 cached / $60.00 out per 1M.
|
|
2957
|
-
inputPer1M: 15,
|
|
2958
|
-
outputPer1M: 60,
|
|
2959
|
-
cacheReadMultiplier: 0.5,
|
|
2960
|
-
vendor: "openai",
|
|
2961
|
-
provider: "openai"
|
|
2962
|
-
},
|
|
2963
|
-
"o1-mini": {
|
|
2964
|
-
// $0.55 in / $2.20 out per 1M.
|
|
2965
|
-
inputPer1M: 0.55,
|
|
2966
|
-
outputPer1M: 2.2,
|
|
2967
|
-
vendor: "openai",
|
|
2968
|
-
provider: "openai"
|
|
2969
|
-
},
|
|
2970
|
-
// ── OpenAI GPT-5.6 series ──────────────────────────────────────────────
|
|
2971
|
-
// Source: OpenRouter pricing (fetched 2026-07-16)
|
|
2972
|
-
"gpt-5.6-luna": {
|
|
2973
|
-
// $1.00 in / $6.00 out per 1M. Cache read 0.1x.
|
|
2974
|
-
inputPer1M: 1,
|
|
2975
|
-
outputPer1M: 6,
|
|
2976
|
-
cacheReadMultiplier: 0.1,
|
|
2977
|
-
vendor: "openai",
|
|
2978
|
-
provider: "openai"
|
|
2979
|
-
},
|
|
2980
|
-
"gpt-5.6-luna-pro": {
|
|
2981
|
-
// $1.00 in / $6.00 out per 1M. Cache read 0.1x.
|
|
2982
|
-
inputPer1M: 1,
|
|
2983
|
-
outputPer1M: 6,
|
|
2984
|
-
cacheReadMultiplier: 0.1,
|
|
2985
|
-
vendor: "openai",
|
|
2986
|
-
provider: "openai"
|
|
2987
|
-
},
|
|
2988
|
-
"gpt-5.6-terra": {
|
|
2989
|
-
// $2.50 in / $15.00 out per 1M. Cache read 0.1x.
|
|
2990
|
-
inputPer1M: 2.5,
|
|
2991
|
-
outputPer1M: 15,
|
|
2992
|
-
cacheReadMultiplier: 0.1,
|
|
2993
|
-
vendor: "openai",
|
|
2994
|
-
provider: "openai"
|
|
2995
|
-
},
|
|
2996
|
-
"gpt-5.6-terra-pro": {
|
|
2997
|
-
// $2.50 in / $15.00 out per 1M. Cache read 0.1x.
|
|
2998
|
-
inputPer1M: 2.5,
|
|
2999
|
-
outputPer1M: 15,
|
|
3000
|
-
cacheReadMultiplier: 0.1,
|
|
3001
|
-
vendor: "openai",
|
|
3002
|
-
provider: "openai"
|
|
3003
|
-
},
|
|
3004
|
-
"gpt-5.6-sol": {
|
|
3005
|
-
// $5.00 in / $30.00 out per 1M. Cache read 0.1x.
|
|
3006
|
-
inputPer1M: 5,
|
|
3007
|
-
outputPer1M: 30,
|
|
3008
|
-
cacheReadMultiplier: 0.1,
|
|
3009
|
-
vendor: "openai",
|
|
3010
|
-
provider: "openai"
|
|
3011
|
-
},
|
|
3012
|
-
"gpt-5.6-sol-pro": {
|
|
3013
|
-
// $5.00 in / $30.00 out per 1M. Cache read 0.1x.
|
|
3014
|
-
inputPer1M: 5,
|
|
3015
|
-
outputPer1M: 30,
|
|
3016
|
-
cacheReadMultiplier: 0.1,
|
|
3017
|
-
vendor: "openai",
|
|
3018
|
-
provider: "openai"
|
|
3019
|
-
},
|
|
3020
|
-
// ── OpenAI GPT-5 min/nano (lite variants) ──────────────────────────────
|
|
3021
|
-
"gpt-5-mini": {
|
|
3022
|
-
// $0.25 in / $2.00 out per 1M. Cache read 0.1x.
|
|
3023
|
-
inputPer1M: 0.25,
|
|
3024
|
-
outputPer1M: 2,
|
|
3025
|
-
cacheReadMultiplier: 0.1,
|
|
3026
|
-
vendor: "openai",
|
|
3027
|
-
provider: "openai"
|
|
3028
|
-
},
|
|
3029
|
-
"gpt-5-nano": {
|
|
3030
|
-
// $0.05 in / $0.40 out per 1M. Cache read 0.1x.
|
|
3031
|
-
inputPer1M: 0.05,
|
|
3032
|
-
outputPer1M: 0.4,
|
|
3033
|
-
cacheReadMultiplier: 0.1,
|
|
3034
|
-
vendor: "openai",
|
|
3035
|
-
provider: "openai"
|
|
3036
|
-
},
|
|
3037
|
-
// ── OpenAI GPT-5 codex (coding specialist) ─────────────────────────────
|
|
3038
|
-
"gpt-5-codex": {
|
|
3039
|
-
// $1.25 in / $10.00 out per 1M. Cache read 0.1x.
|
|
3040
|
-
inputPer1M: 1.25,
|
|
3041
|
-
outputPer1M: 10,
|
|
3042
|
-
cacheReadMultiplier: 0.1,
|
|
3043
|
-
vendor: "openai",
|
|
3044
|
-
provider: "openai"
|
|
3045
|
-
},
|
|
3046
|
-
// ── OpenAI GPT-5 pro (reasoning-enhanced) ──────────────────────────────
|
|
3047
|
-
"gpt-5-pro": {
|
|
3048
|
-
// $15.00 in / $120.00 out per 1M. No cache discount.
|
|
3049
|
-
inputPer1M: 15,
|
|
3050
|
-
outputPer1M: 120,
|
|
3051
|
-
vendor: "openai",
|
|
3052
|
-
provider: "openai"
|
|
3053
|
-
},
|
|
3054
|
-
// ── OpenAI GPT-5 image generation ──────────────────────────────────────
|
|
3055
|
-
"gpt-5-image": {
|
|
3056
|
-
// $10.00 in / $10.00 out (+ $40/1M image output). Cache read 0.125x.
|
|
3057
|
-
inputPer1M: 10,
|
|
3058
|
-
outputPer1M: 10,
|
|
3059
|
-
cacheReadMultiplier: 0.125,
|
|
3060
|
-
vendor: "openai",
|
|
3061
|
-
provider: "openai"
|
|
3062
|
-
},
|
|
3063
|
-
"gpt-5-image-mini": {
|
|
3064
|
-
// $2.50 in / $2.00 out (+ $8/1M image output). Cache read 0.1x.
|
|
3065
|
-
inputPer1M: 2.5,
|
|
3066
|
-
outputPer1M: 2,
|
|
3067
|
-
cacheReadMultiplier: 0.1,
|
|
3068
|
-
vendor: "openai",
|
|
3069
|
-
provider: "openai"
|
|
3070
|
-
},
|
|
3071
|
-
// ── OpenAI GPT audio (multimodal) ──────────────────────────────────────
|
|
3072
|
-
"gpt-audio": {
|
|
3073
|
-
// $2.50 in / $10.00 out (+ audio in $32/1M, audio out $64/1M).
|
|
3074
|
-
inputPer1M: 2.5,
|
|
3075
|
-
outputPer1M: 10,
|
|
3076
|
-
vendor: "openai",
|
|
3077
|
-
provider: "openai"
|
|
3078
|
-
},
|
|
3079
|
-
"gpt-audio-mini": {
|
|
3080
|
-
// $0.60 in / $2.40 out (+ audio in $0.60/1M, audio out $2.40/1M).
|
|
3225
|
+
var PRICING_OVERRIDES = {
|
|
3226
|
+
// claude-opus-4-5 / claude-haiku-4-5 / claude-sonnet-4-5 (bare) and
|
|
3227
|
+
// grok-4.20 / grok-4.20-reasoning / grok-4.20-multi-agent used to live
|
|
3228
|
+
// here as hand-typed numbers, justified by "no generator produces this
|
|
3229
|
+
// exact spelling" — true, but that only justifies the id's EXISTENCE, not
|
|
3230
|
+
// hand-typing its PRICE when a same-model sibling under a different id is
|
|
3231
|
+
// already generated (Anthropic's dated form, xAI's own declared alias).
|
|
3232
|
+
// Fixed at the generator, not papered over here:
|
|
3233
|
+
// - sync-anthropic.mjs now mechanically derives every bare "aged-out"
|
|
3234
|
+
// id from its dated sibling (strip the -YYYYMMDD suffix), same price.
|
|
3235
|
+
// - sync-xai.mjs now expands every model's own `aliases` array from
|
|
3236
|
+
// xAI's live payload into additional priced entries.
|
|
3237
|
+
// Both bare-id sets are gone from this map for good — see the PR body's
|
|
3238
|
+
// divergence table for what the old hand-typed numbers here were wrong
|
|
3239
|
+
// by (these were on ids adapters/auth-profiles actually spawn).
|
|
3240
|
+
"kimi-k2-0905-preview": {
|
|
3241
|
+
reason: "Not present in Moonshot's current live model list (api.moonshot.ai/v1/models returned 4 models total on the sync run that produced moonshot-pricing.generated.ts) -- likely retired or renamed since this row was hand-added.",
|
|
3081
3242
|
inputPer1M: 0.6,
|
|
3082
|
-
outputPer1M: 2.
|
|
3083
|
-
vendor: "openai",
|
|
3084
|
-
provider: "openai"
|
|
3085
|
-
},
|
|
3086
|
-
// ── OpenAI o-series (reasoning models) ─────────────────────────────────
|
|
3087
|
-
// Extended reasoning variants with cache support.
|
|
3088
|
-
"o3-pro": {
|
|
3089
|
-
// $20.00 in / $80.00 out per 1M. No cache discount.
|
|
3090
|
-
inputPer1M: 20,
|
|
3091
|
-
outputPer1M: 80,
|
|
3092
|
-
vendor: "openai",
|
|
3093
|
-
provider: "openai"
|
|
3094
|
-
},
|
|
3095
|
-
"o3-deep-research": {
|
|
3096
|
-
// $10.00 in / $40.00 out per 1M. Cache read 0.25x.
|
|
3097
|
-
inputPer1M: 10,
|
|
3098
|
-
outputPer1M: 40,
|
|
3099
|
-
cacheReadMultiplier: 0.25,
|
|
3100
|
-
vendor: "openai",
|
|
3101
|
-
provider: "openai"
|
|
3102
|
-
},
|
|
3103
|
-
"o4-mini-high": {
|
|
3104
|
-
// $1.10 in / $4.40 out per 1M. Cache read 0.25x.
|
|
3105
|
-
inputPer1M: 1.1,
|
|
3106
|
-
outputPer1M: 4.4,
|
|
3107
|
-
cacheReadMultiplier: 0.25,
|
|
3108
|
-
vendor: "openai",
|
|
3109
|
-
provider: "openai"
|
|
3110
|
-
},
|
|
3111
|
-
"o4-mini-deep-research": {
|
|
3112
|
-
// $2.00 in / $8.00 out per 1M. Cache read 0.25x.
|
|
3113
|
-
inputPer1M: 2,
|
|
3114
|
-
outputPer1M: 8,
|
|
3243
|
+
outputPer1M: 2.5,
|
|
3115
3244
|
cacheReadMultiplier: 0.25,
|
|
3116
|
-
vendor: "openai",
|
|
3117
|
-
provider: "openai"
|
|
3118
|
-
},
|
|
3119
|
-
"o1-pro": {
|
|
3120
|
-
// $150.00 in / $600.00 out per 1M. No cache discount.
|
|
3121
|
-
inputPer1M: 150,
|
|
3122
|
-
outputPer1M: 600,
|
|
3123
|
-
vendor: "openai",
|
|
3124
|
-
provider: "openai"
|
|
3125
|
-
},
|
|
3126
|
-
// ── OpenAI GPT-5.1/5.2 codex (code specialist) ─────────────────────────
|
|
3127
|
-
"gpt-5.1-codex": {
|
|
3128
|
-
// $1.25 in / $10.00 out per 1M. Cache read 0.1x.
|
|
3129
|
-
inputPer1M: 1.25,
|
|
3130
|
-
outputPer1M: 10,
|
|
3131
|
-
cacheReadMultiplier: 0.1,
|
|
3132
|
-
vendor: "openai",
|
|
3133
|
-
provider: "openai"
|
|
3134
|
-
},
|
|
3135
|
-
"gpt-5.1-codex-mini": {
|
|
3136
|
-
// $0.25 in / $2.00 out per 1M. Cache read 0.1x.
|
|
3137
|
-
inputPer1M: 0.25,
|
|
3138
|
-
outputPer1M: 2,
|
|
3139
|
-
cacheReadMultiplier: 0.1,
|
|
3140
|
-
vendor: "openai",
|
|
3141
|
-
provider: "openai"
|
|
3142
|
-
},
|
|
3143
|
-
"gpt-5.1-codex-max": {
|
|
3144
|
-
// $1.25 in / $10.00 out per 1M. Cache read 0.1x.
|
|
3145
|
-
inputPer1M: 1.25,
|
|
3146
|
-
outputPer1M: 10,
|
|
3147
|
-
cacheReadMultiplier: 0.1,
|
|
3148
|
-
vendor: "openai",
|
|
3149
|
-
provider: "openai"
|
|
3150
|
-
},
|
|
3151
|
-
"gpt-5.2-codex": {
|
|
3152
|
-
// $1.75 in / $14.00 out per 1M. Cache read 0.1x.
|
|
3153
|
-
inputPer1M: 1.75,
|
|
3154
|
-
outputPer1M: 14,
|
|
3155
|
-
cacheReadMultiplier: 0.1,
|
|
3156
|
-
vendor: "openai",
|
|
3157
|
-
provider: "openai"
|
|
3158
|
-
},
|
|
3159
|
-
"gpt-5.2-pro": {
|
|
3160
|
-
// $21.00 in / $168.00 out per 1M. No cache discount.
|
|
3161
|
-
inputPer1M: 21,
|
|
3162
|
-
outputPer1M: 168,
|
|
3163
|
-
vendor: "openai",
|
|
3164
|
-
provider: "openai"
|
|
3165
|
-
},
|
|
3166
|
-
// ── MiniMax (direct SDK) ───────────────────────────────────────────────
|
|
3167
|
-
// Bare ids match what the MiniMax SDK expects on the wire (PascalCase
|
|
3168
|
-
// with optional minor version). OpenRouter equivalents under
|
|
3169
|
-
// `minimax/minimax-m2*` are separate entries auto-imported below; the
|
|
3170
|
-
// runtime connector picks which one to call based on the guild's
|
|
3171
|
-
// installed connectors.
|
|
3172
|
-
"MiniMax-M2": {
|
|
3173
|
-
inputPer1M: 0.2,
|
|
3174
|
-
outputPer1M: 1,
|
|
3175
|
-
cacheReadMultiplier: 0.15,
|
|
3176
|
-
cacheWriteMultiplier: 1.875,
|
|
3177
|
-
vendor: "minimax",
|
|
3178
|
-
provider: "minimax"
|
|
3179
|
-
},
|
|
3180
|
-
"M2-her": {
|
|
3181
|
-
inputPer1M: 0.2,
|
|
3182
|
-
outputPer1M: 1,
|
|
3183
|
-
cacheReadMultiplier: 0.15,
|
|
3184
|
-
cacheWriteMultiplier: 1.875,
|
|
3185
|
-
vendor: "minimax",
|
|
3186
|
-
provider: "minimax"
|
|
3187
|
-
},
|
|
3188
|
-
"MiniMax-M2.1": {
|
|
3189
|
-
inputPer1M: 0.3,
|
|
3190
|
-
outputPer1M: 1.2,
|
|
3191
|
-
cacheReadMultiplier: 0.1,
|
|
3192
|
-
cacheWriteMultiplier: 1.25,
|
|
3193
|
-
vendor: "minimax",
|
|
3194
|
-
provider: "minimax"
|
|
3195
|
-
},
|
|
3196
|
-
"MiniMax-M2.5": {
|
|
3197
|
-
inputPer1M: 0.3,
|
|
3198
|
-
outputPer1M: 1.2,
|
|
3199
|
-
cacheReadMultiplier: 0.1,
|
|
3200
|
-
cacheWriteMultiplier: 1.25,
|
|
3201
|
-
vendor: "minimax",
|
|
3202
|
-
provider: "minimax"
|
|
3203
|
-
},
|
|
3204
|
-
"MiniMax-M2.7": {
|
|
3205
|
-
inputPer1M: 0.3,
|
|
3206
|
-
outputPer1M: 1.2,
|
|
3207
|
-
vendor: "minimax",
|
|
3208
|
-
provider: "minimax"
|
|
3209
|
-
},
|
|
3210
|
-
// ── Moonshot (direct SDK) ─────────────────────────────────────────────
|
|
3211
|
-
"kimi-k3": {
|
|
3212
|
-
// Flagship, released 2026-07-16 (2.8T-param MoE, 1M context,
|
|
3213
|
-
// reasoning-always-on). Source: https://openrouter.ai/moonshotai/kimi-k3
|
|
3214
|
-
// (fetched 2026-07-18). Cache-hit input is 90% off cache-miss
|
|
3215
|
-
// ($0.30 vs $3.00/1M).
|
|
3216
|
-
inputPer1M: 3,
|
|
3217
|
-
outputPer1M: 15,
|
|
3218
|
-
cacheReadMultiplier: 0.1,
|
|
3219
3245
|
vendor: "moonshot",
|
|
3220
3246
|
provider: "moonshot"
|
|
3221
3247
|
},
|
|
3222
|
-
"kimi-k2
|
|
3223
|
-
|
|
3224
|
-
// input is $0.19/1M vs $0.95/1M miss (80% off).
|
|
3225
|
-
inputPer1M: 0.95,
|
|
3226
|
-
outputPer1M: 4,
|
|
3227
|
-
cacheReadMultiplier: 0.2,
|
|
3228
|
-
vendor: "moonshot",
|
|
3229
|
-
provider: "moonshot"
|
|
3230
|
-
},
|
|
3231
|
-
"kimi-k2.6": {
|
|
3232
|
-
inputPer1M: 0.95,
|
|
3233
|
-
outputPer1M: 4,
|
|
3234
|
-
cacheReadMultiplier: 0.17,
|
|
3235
|
-
vendor: "moonshot",
|
|
3236
|
-
provider: "moonshot"
|
|
3237
|
-
},
|
|
3238
|
-
"kimi-k2.5": {
|
|
3239
|
-
inputPer1M: 0.6,
|
|
3240
|
-
outputPer1M: 3,
|
|
3241
|
-
cacheReadMultiplier: 0.17,
|
|
3242
|
-
vendor: "moonshot",
|
|
3243
|
-
provider: "moonshot"
|
|
3244
|
-
},
|
|
3245
|
-
"kimi-k2-0905-preview": {
|
|
3248
|
+
"kimi-k2-thinking": {
|
|
3249
|
+
reason: "Same as kimi-k2-0905-preview -- absent from Moonshot's current live model list.",
|
|
3246
3250
|
inputPer1M: 0.6,
|
|
3247
3251
|
outputPer1M: 2.5,
|
|
3248
3252
|
cacheReadMultiplier: 0.25,
|
|
3249
3253
|
vendor: "moonshot",
|
|
3250
3254
|
provider: "moonshot"
|
|
3251
3255
|
},
|
|
3252
|
-
"kimi-k2-turbo
|
|
3256
|
+
"kimi-k2-thinking-turbo": {
|
|
3257
|
+
reason: "Same as kimi-k2-0905-preview -- absent from Moonshot's current live model list.",
|
|
3253
3258
|
inputPer1M: 1.15,
|
|
3254
3259
|
outputPer1M: 8,
|
|
3255
3260
|
cacheReadMultiplier: 0.13,
|
|
3256
3261
|
vendor: "moonshot",
|
|
3257
3262
|
provider: "moonshot"
|
|
3258
3263
|
},
|
|
3259
|
-
"kimi-k2-
|
|
3260
|
-
|
|
3261
|
-
outputPer1M: 2.5,
|
|
3262
|
-
cacheReadMultiplier: 0.25,
|
|
3263
|
-
vendor: "moonshot",
|
|
3264
|
-
provider: "moonshot"
|
|
3265
|
-
},
|
|
3266
|
-
"kimi-k2-thinking-turbo": {
|
|
3264
|
+
"kimi-k2-turbo-preview": {
|
|
3265
|
+
reason: "Same as kimi-k2-0905-preview -- absent from Moonshot's current live model list.",
|
|
3267
3266
|
inputPer1M: 1.15,
|
|
3268
3267
|
outputPer1M: 8,
|
|
3269
3268
|
cacheReadMultiplier: 0.13,
|
|
3270
3269
|
vendor: "moonshot",
|
|
3271
3270
|
provider: "moonshot"
|
|
3272
3271
|
},
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
outputPer1M: 6,
|
|
3281
|
-
vendor: "xai",
|
|
3282
|
-
provider: "xai"
|
|
3283
|
-
},
|
|
3284
|
-
"grok-4.20": {
|
|
3285
|
-
// $1.25 in / $2.50 out per 1M (non-reasoning default).
|
|
3286
|
-
inputPer1M: 1.25,
|
|
3287
|
-
outputPer1M: 2.5,
|
|
3288
|
-
vendor: "xai",
|
|
3289
|
-
provider: "xai"
|
|
3272
|
+
"kimi-k2.5": {
|
|
3273
|
+
reason: "Same as kimi-k2-0905-preview -- absent from Moonshot's current live model list.",
|
|
3274
|
+
inputPer1M: 0.6,
|
|
3275
|
+
outputPer1M: 3,
|
|
3276
|
+
cacheReadMultiplier: 0.17,
|
|
3277
|
+
vendor: "moonshot",
|
|
3278
|
+
provider: "moonshot"
|
|
3290
3279
|
},
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3280
|
+
// mistral-large-latest / mistral-small-latest / codestral-latest /
|
|
3281
|
+
// ministral-8b-latest: "no generator produces this exact -latest
|
|
3282
|
+
// spelling" is true and justifies the id existing here, but it does NOT
|
|
3283
|
+
// justify a hand-typed NUMBER when a same-family dated sibling is already
|
|
3284
|
+
// generated (mistral-large-2512, mistral-small-2603, codestral-2508,
|
|
3285
|
+
// ministral-8b-2512 respectively) — that was the same mistake as the
|
|
3286
|
+
// Anthropic/xAI bare-id overrides above, just not mechanically fixable at
|
|
3287
|
+
// the generator (Mistral's dated suffixes, e.g. -2512, don't strip back
|
|
3288
|
+
// to "-latest" the way Anthropic's -YYYYMMDD strips to a bare id). Spread
|
|
3289
|
+
// the generated sibling's pricing directly instead of retyping it, so a
|
|
3290
|
+
// re-sync that changes the dated price changes this too, automatically.
|
|
3291
|
+
"mistral-large-latest": {
|
|
3292
|
+
reason: '"-latest" alias spelling has no generated counterpart of its own; derives from the dated sibling mistral-large-2512 (MISTRAL_GENERATED_PRICING) rather than a hand-typed number.',
|
|
3293
|
+
...MISTRAL_GENERATED_PRICING["mistral-large-2512"]
|
|
3297
3294
|
},
|
|
3298
|
-
"
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
outputPer1M: 2.5,
|
|
3302
|
-
vendor: "xai",
|
|
3303
|
-
provider: "xai"
|
|
3295
|
+
"mistral-small-latest": {
|
|
3296
|
+
reason: `"-latest" alias spelling has no generated counterpart of its own; derives from the dated sibling mistral-small-2603 (MISTRAL_GENERATED_PRICING) rather than a hand-typed number. The old hand-typed value here (0.06/0.18, cache 0.5) diverged from this \u2014 see the PR body's divergence table.`,
|
|
3297
|
+
...MISTRAL_GENERATED_PRICING["mistral-small-2603"]
|
|
3304
3298
|
},
|
|
3305
|
-
"
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
outputPer1M: 2.5,
|
|
3309
|
-
vendor: "xai",
|
|
3310
|
-
provider: "xai"
|
|
3299
|
+
"codestral-latest": {
|
|
3300
|
+
reason: `"-latest" alias spelling has no generated counterpart of its own; derives from the dated sibling codestral-2508 (MISTRAL_GENERATED_PRICING) rather than a hand-typed number. The old hand-typed value here (0.5/1.5, a copy-pasted placeholder) diverged from this \u2014 see the PR body's divergence table.`,
|
|
3301
|
+
...MISTRAL_GENERATED_PRICING["codestral-2508"]
|
|
3311
3302
|
},
|
|
3312
|
-
"
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
outputPer1M: 2,
|
|
3316
|
-
vendor: "xai",
|
|
3317
|
-
provider: "xai"
|
|
3303
|
+
"ministral-8b-latest": {
|
|
3304
|
+
reason: `"-latest" alias spelling has no generated counterpart of its own; derives from the dated sibling ministral-8b-2512 (MISTRAL_GENERATED_PRICING) rather than a hand-typed number. The old hand-typed value here (0.06/0.18, a copy-pasted placeholder) diverged from this \u2014 see the PR body's divergence table.`,
|
|
3305
|
+
...MISTRAL_GENERATED_PRICING["ministral-8b-2512"]
|
|
3318
3306
|
},
|
|
3319
|
-
|
|
3320
|
-
|
|
3307
|
+
"mistral-medium-latest": {
|
|
3308
|
+
reason: 'PLACEHOLDER, explicitly marked `// TODO verify pricing` in the row this replaces -- copy-pasted 0.5/1.5 template value, never real. Unlike the four rows above, this one is NOT auto-derived from a generated sibling: MISTRAL_GENERATED_PRICING has THREE medium candidates (mistral-medium-3, mistral-medium-3-5, mistral-medium-3.5) and which one "-latest" currently means is an editorial call this sync can\'t safely make -- picking wrong would silently misprice, which is worse than an honestly-labeled unverified placeholder. Needs a human to confirm which dated id is current, then wire it the same way as mistral-large-latest above.',
|
|
3321
3309
|
inputPer1M: 0.5,
|
|
3322
3310
|
outputPer1M: 1.5,
|
|
3323
3311
|
vendor: "mistral",
|
|
3324
3312
|
provider: "mistral"
|
|
3325
3313
|
},
|
|
3326
|
-
"
|
|
3327
|
-
|
|
3328
|
-
|
|
3314
|
+
"devstral-latest": {
|
|
3315
|
+
reason: "PLACEHOLDER, explicitly marked `// TODO verify pricing` -- copy-pasted 0.5/1.5 template value, never real. No generated counterpart at all (Mistral's chat-model sync doesn't currently return a devstral id).",
|
|
3316
|
+
inputPer1M: 0.5,
|
|
3317
|
+
outputPer1M: 1.5,
|
|
3329
3318
|
vendor: "mistral",
|
|
3330
3319
|
provider: "mistral"
|
|
3331
3320
|
},
|
|
3332
|
-
"
|
|
3333
|
-
|
|
3334
|
-
|
|
3321
|
+
"magistral-small-latest": {
|
|
3322
|
+
reason: "PLACEHOLDER, explicitly marked `// TODO verify pricing` -- copy-pasted 0.06/0.18 template value, never real. No generated counterpart at all.",
|
|
3323
|
+
inputPer1M: 0.06,
|
|
3324
|
+
outputPer1M: 0.18,
|
|
3335
3325
|
vendor: "mistral",
|
|
3336
3326
|
provider: "mistral"
|
|
3337
3327
|
},
|
|
3338
|
-
"
|
|
3339
|
-
|
|
3340
|
-
|
|
3341
|
-
|
|
3328
|
+
"devstral-medium-latest": {
|
|
3329
|
+
reason: "PLACEHOLDER, explicitly marked `// TODO verify pricing` -- copy-pasted 0.5/1.5 template value, never real. No generated counterpart at all.",
|
|
3330
|
+
inputPer1M: 0.5,
|
|
3331
|
+
outputPer1M: 1.5,
|
|
3342
3332
|
vendor: "mistral",
|
|
3343
3333
|
provider: "mistral"
|
|
3344
3334
|
},
|
|
3335
|
+
"gpt-5-codex": {
|
|
3336
|
+
reason: "No generated counterpart -- not present in OpenRouter's openai/* listing under this exact id (OpenAI has no native pricing endpoint at all, see packages/catalog-sync/src/sources/openai.ts, so OpenRouter is the only automated source and it doesn't carry this specific id).",
|
|
3337
|
+
inputPer1M: 1.25,
|
|
3338
|
+
outputPer1M: 10,
|
|
3339
|
+
cacheReadMultiplier: 0.1,
|
|
3340
|
+
vendor: "openai",
|
|
3341
|
+
provider: "openai"
|
|
3342
|
+
},
|
|
3343
|
+
"o1-mini": {
|
|
3344
|
+
reason: "No generated counterpart -- not present in OpenRouter's openai/* listing under this exact id.",
|
|
3345
|
+
inputPer1M: 0.55,
|
|
3346
|
+
outputPer1M: 2.2,
|
|
3347
|
+
vendor: "openai",
|
|
3348
|
+
provider: "openai"
|
|
3349
|
+
},
|
|
3350
|
+
"o3-deep-research": {
|
|
3351
|
+
reason: "No generated counterpart -- not present in OpenRouter's openai/* listing under this exact id.",
|
|
3352
|
+
inputPer1M: 10,
|
|
3353
|
+
outputPer1M: 40,
|
|
3354
|
+
cacheReadMultiplier: 0.25,
|
|
3355
|
+
vendor: "openai",
|
|
3356
|
+
provider: "openai"
|
|
3357
|
+
},
|
|
3358
|
+
"o4-mini-deep-research": {
|
|
3359
|
+
reason: "No generated counterpart -- not present in OpenRouter's openai/* listing under this exact id.",
|
|
3360
|
+
inputPer1M: 2,
|
|
3361
|
+
outputPer1M: 8,
|
|
3362
|
+
cacheReadMultiplier: 0.25,
|
|
3363
|
+
vendor: "openai",
|
|
3364
|
+
provider: "openai"
|
|
3365
|
+
}
|
|
3366
|
+
};
|
|
3367
|
+
var PRICING_OVERRIDES_PRICING = Object.fromEntries(
|
|
3368
|
+
Object.entries(PRICING_OVERRIDES).map(([id, { reason: _reason, ...pricing }]) => [id, pricing])
|
|
3369
|
+
);
|
|
3370
|
+
var LLM_PRICING_CATALOG = {
|
|
3371
|
+
// Every provider below is fully generated from that provider's own live
|
|
3372
|
+
// sync (`scripts/catalog-sync/sync-*.mjs`) — existence AND price both come
|
|
3373
|
+
// from the provider's native id space wherever the provider exposes one
|
|
3374
|
+
// (Anthropic, xAI, MiniMax, Moonshot, Mistral, Google-via-remap); OpenRouter
|
|
3375
|
+
// supplies PRICE only for those, never ids, except for OpenAI, the one
|
|
3376
|
+
// provider with no native id/pricing source of its own at all, where
|
|
3377
|
+
// OpenRouter is the sole source for both. On any id a generator covers,
|
|
3378
|
+
// the generated value wins UNCONDITIONALLY — no hand-typed row duplicates
|
|
3379
|
+
// an id a generator already prices, even where they used to disagree; see
|
|
3380
|
+
// the PR body's divergence table. `PRICING_OVERRIDES` above is the only
|
|
3381
|
+
// surviving hand-written pricing, spread last, one reasoned entry per id.
|
|
3382
|
+
...MISTRAL_GENERATED_PRICING,
|
|
3383
|
+
...MOONSHOT_GENERATED_PRICING,
|
|
3384
|
+
...ANTHROPIC_GENERATED_PRICING,
|
|
3385
|
+
...GOOGLE_GENERATED_PRICING,
|
|
3386
|
+
...OPENAI_GENERATED_PRICING,
|
|
3387
|
+
...MINIMAX_GENERATED_PRICING,
|
|
3388
|
+
...XAI_GENERATED_PRICING,
|
|
3389
|
+
...PRICING_OVERRIDES_PRICING,
|
|
3345
3390
|
// ── OpenRouter routes — generated by `scripts/catalog-sync` from
|
|
3346
3391
|
// https://openrouter.ai/api/v1/models. Re-run
|
|
3347
3392
|
// `pnpm --filter @agentproto/catalog-sync sync:openrouter`
|
|
3348
3393
|
// to refresh.
|
|
3349
3394
|
...OPENROUTER_ROUTES
|
|
3350
3395
|
};
|
|
3396
|
+
function isKnownLlmId(modelId) {
|
|
3397
|
+
return modelId in LLM_PRICING_CATALOG || modelId in CONTEXT_WINDOWS || modelId in OPENROUTER_ROUTES;
|
|
3398
|
+
}
|
|
3399
|
+
function listUnpricedKnownLlmIds() {
|
|
3400
|
+
const ids = /* @__PURE__ */ new Set([
|
|
3401
|
+
...Object.keys(CONTEXT_WINDOWS),
|
|
3402
|
+
...Object.keys(OPENROUTER_ROUTES)
|
|
3403
|
+
]);
|
|
3404
|
+
const result = [];
|
|
3405
|
+
for (const id of ids) {
|
|
3406
|
+
if (id in LLM_PRICING_CATALOG) continue;
|
|
3407
|
+
result.push({ id, provider: getModelProvider(id) });
|
|
3408
|
+
}
|
|
3409
|
+
return result;
|
|
3410
|
+
}
|
|
3351
3411
|
var MODEL_ALIASES = {
|
|
3352
3412
|
// Anthropic — alias targets must be real Anthropic model ids since
|
|
3353
3413
|
// `resolveAlias` feeds the result straight to the SDK.
|
|
3354
|
-
|
|
3355
|
-
|
|
3414
|
+
//
|
|
3415
|
+
// `claude-opus-4-6` / `claude-sonnet-4-6` used to alias here to 4.5 —
|
|
3416
|
+
// the silent-downgrade bug this PR fixes (agentproto catalog-sync). Both
|
|
3417
|
+
// are now real, directly-priced `LlmModelId`s via
|
|
3418
|
+
// `ANTHROPIC_GENERATED_PRICING` above; an alias pointing them at 4.5
|
|
3419
|
+
// would just re-introduce the same silent downgrade, so it's removed,
|
|
3420
|
+
// not kept.
|
|
3356
3421
|
"claude-4-opus": "claude-opus-4-5",
|
|
3357
3422
|
"claude-4-sonnet": "claude-sonnet-4-5",
|
|
3358
3423
|
"claude-3-5-haiku": "claude-haiku-4-5",
|
|
@@ -3404,6 +3469,13 @@ var MODEL_ALIASES = {
|
|
|
3404
3469
|
// Mistral
|
|
3405
3470
|
"mistralai/mistral-large-latest": "mistral-large-latest",
|
|
3406
3471
|
"mistralai/mistral-small-latest": "mistral-small-latest",
|
|
3472
|
+
"mistralai/mistral-medium-latest": "mistral-medium-latest",
|
|
3473
|
+
"mistralai/mistral-medium-3-5": "mistral-medium-3-5",
|
|
3474
|
+
"mistralai/codestral-latest": "codestral-latest",
|
|
3475
|
+
"mistralai/ministral-8b-latest": "ministral-8b-latest",
|
|
3476
|
+
"mistralai/devstral-latest": "devstral-latest",
|
|
3477
|
+
"mistralai/magistral-small-latest": "magistral-small-latest",
|
|
3478
|
+
"mistralai/devstral-medium-latest": "devstral-medium-latest",
|
|
3407
3479
|
// xAI — alias grok-latest to grok-4.3 (current default).
|
|
3408
3480
|
"grok-latest": "grok-4.3"
|
|
3409
3481
|
};
|
|
@@ -3441,8 +3513,14 @@ function resolveContextWindow(modelId) {
|
|
|
3441
3513
|
if (alias && CONTEXT_WINDOWS[alias]) return CONTEXT_WINDOWS[alias];
|
|
3442
3514
|
return void 0;
|
|
3443
3515
|
}
|
|
3516
|
+
function listNativeModelIds(provider) {
|
|
3517
|
+
return Object.entries(CONTEXT_WINDOWS).filter(([, entry]) => entry.provider === provider).map(([id]) => id).sort();
|
|
3518
|
+
}
|
|
3444
3519
|
function getModelProvider(modelId) {
|
|
3445
|
-
|
|
3520
|
+
const pricedProvider = resolvePricing(modelId)?.provider;
|
|
3521
|
+
if (pricedProvider) return pricedProvider;
|
|
3522
|
+
const cwProvider = resolveContextWindow(modelId)?.provider;
|
|
3523
|
+
return cwProvider && cwProvider !== "groq" ? cwProvider : void 0;
|
|
3446
3524
|
}
|
|
3447
3525
|
function resolveModelRoute(modelId) {
|
|
3448
3526
|
const pricing = resolvePricing(modelId);
|
|
@@ -3469,6 +3547,11 @@ function calculateLLMCreditCost(modelId, inputOrUsage, outputTokensOrOpts) {
|
|
|
3469
3547
|
const resolved = resolvePricing(modelId);
|
|
3470
3548
|
const pricing = resolved ?? DEFAULT_PRICING;
|
|
3471
3549
|
const isFallback = !resolved;
|
|
3550
|
+
if (isFallback) {
|
|
3551
|
+
console.warn(
|
|
3552
|
+
`[model-catalog] calculateLLMCreditCost: no pricing for "${modelId}" \u2014 billing at DEFAULT_PRICING (inputPer1M ${DEFAULT_PRICING.inputPer1M}, outputPer1M ${DEFAULT_PRICING.outputPer1M}). If this model has a real, higher provider cost, this under-charges until it gets a pricing row.`
|
|
3553
|
+
);
|
|
3554
|
+
}
|
|
3472
3555
|
const cacheRead = pricing.cacheReadMultiplier ?? 1;
|
|
3473
3556
|
const cacheWrite = pricing.cacheWriteMultiplier ?? 1;
|
|
3474
3557
|
const cacheReadIn = Math.max(0, usage.cacheReadInputTokens ?? 0);
|
|
@@ -3539,6 +3622,6 @@ function getCacheStats(modelId, usage, opts) {
|
|
|
3539
3622
|
};
|
|
3540
3623
|
}
|
|
3541
3624
|
|
|
3542
|
-
export { DEFAULT_PRICING, LLM_PRICING_CATALOG, MODEL_ALIASES, OPENROUTER_ROUTES, calculateLLMCreditCost, getCacheStats, getModelProvider, resolveAlias, resolveContextWindow, resolveModelRoute, resolvePricing, resolvePricingExact };
|
|
3543
|
-
//# sourceMappingURL=chunk-
|
|
3544
|
-
//# sourceMappingURL=chunk-
|
|
3625
|
+
export { DEFAULT_PRICING, LLM_PRICING_CATALOG, MODEL_ALIASES, OPENROUTER_ROUTES, calculateLLMCreditCost, getCacheStats, getModelProvider, isKnownLlmId, listNativeModelIds, listUnpricedKnownLlmIds, resolveAlias, resolveContextWindow, resolveModelRoute, resolvePricing, resolvePricingExact };
|
|
3626
|
+
//# sourceMappingURL=chunk-CBP4SNOX.mjs.map
|
|
3627
|
+
//# sourceMappingURL=chunk-CBP4SNOX.mjs.map
|