@broberg/ai-sdk 0.36.6 → 0.37.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/chunk-CTPTMHNX.js +279 -0
- package/dist/chunk-CTPTMHNX.js.map +1 -0
- package/dist/index.d.ts +11 -4
- package/dist/index.js +22 -10
- package/dist/index.js.map +1 -1
- package/dist/pricing.d.ts +34 -2
- package/dist/pricing.js +15 -110
- package/dist/pricing.js.map +1 -1
- package/package.json +2 -2
- package/dist/chunk-TENEIW7I.js +0 -130
- package/dist/chunk-TENEIW7I.js.map +0 -1
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
// src/cost/pricing.ts
|
|
2
|
+
var V = "2026-06-02";
|
|
3
|
+
var MS = "2026-06-04-mistral.ai";
|
|
4
|
+
var PRICING = {
|
|
5
|
+
// Anthropic (direct API). DEFAULT_TIER_MAP: fast/cheap=haiku, smart/vision=sonnet, powerful=opus.
|
|
6
|
+
"anthropic:claude-haiku-4-5": {
|
|
7
|
+
inputPer1M: 0.8,
|
|
8
|
+
outputPer1M: 4,
|
|
9
|
+
cacheReadPer1M: 0.08,
|
|
10
|
+
cacheWritePer1M: 1,
|
|
11
|
+
version: V
|
|
12
|
+
},
|
|
13
|
+
"anthropic:claude-sonnet-4-6": {
|
|
14
|
+
inputPer1M: 3,
|
|
15
|
+
outputPer1M: 15,
|
|
16
|
+
cacheReadPer1M: 0.3,
|
|
17
|
+
cacheWritePer1M: 3.75,
|
|
18
|
+
version: V
|
|
19
|
+
},
|
|
20
|
+
"anthropic:claude-opus-4-8": {
|
|
21
|
+
inputPer1M: 15,
|
|
22
|
+
outputPer1M: 75,
|
|
23
|
+
cacheReadPer1M: 1.5,
|
|
24
|
+
cacheWritePer1M: 18.75,
|
|
25
|
+
version: V
|
|
26
|
+
},
|
|
27
|
+
// OpenAI. embedding default tier = text-embedding-3-small (no output tokens).
|
|
28
|
+
// Cached input is 50% of the input rate — $1.25 vs $2.50 (gpt-4o) and $0.075 vs
|
|
29
|
+
// $0.15 (gpt-4o-mini), read from developers.openai.com/api/docs/pricing on
|
|
30
|
+
// 2026-08-27. NOTE IT IS 50%, NOT the 10% Mistral and Gemini charge: assuming one
|
|
31
|
+
// uniform discount across providers would have understated OpenAI's cost by 4x on
|
|
32
|
+
// the cached half. Caching is automatic above 1,024 tokens — no key, no opt-in.
|
|
33
|
+
// The embedding models list NO cached price (embeddings do not cache), so they
|
|
34
|
+
// deliberately get no row here rather than a guessed one.
|
|
35
|
+
"openai:text-embedding-3-small": { inputPer1M: 0.02, outputPer1M: 0, version: V },
|
|
36
|
+
"openai:text-embedding-3-large": { inputPer1M: 0.13, outputPer1M: 0, version: V },
|
|
37
|
+
"openai:gpt-4o": { inputPer1M: 2.5, cacheReadPer1M: 1.25, outputPer1M: 10, version: "2026-08-27-developers.openai.com" },
|
|
38
|
+
"openai:gpt-4o-mini": { inputPer1M: 0.15, cacheReadPer1M: 0.075, outputPer1M: 0.6, version: "2026-08-27-developers.openai.com" },
|
|
39
|
+
// Whisper is priced per minute, not per token — not representable here; transcribe
|
|
40
|
+
// (F5.6) computes its own cost. Listed as 0 so token-based compute never charges it.
|
|
41
|
+
"openai:whisper-1": { inputPer1M: 0, outputPer1M: 0, version: V },
|
|
42
|
+
// OpenRouter (meta-router — model slugs include the upstream vendor). Slugs use
|
|
43
|
+
// dots (claude-sonnet-4.6) to match OpenRouter's live ids; the dashed forms
|
|
44
|
+
// never matched a real call. Caught by the F014 catalogue research.
|
|
45
|
+
"openrouter:anthropic/claude-sonnet-4.6": { inputPer1M: 3, outputPer1M: 15, version: V },
|
|
46
|
+
// OpenRouter ground-truth $1/$5 — a markup over Anthropic-direct's $0.8/$4
|
|
47
|
+
// (the `anthropic:` entry above). Was masked while the slug used dashes.
|
|
48
|
+
"openrouter:anthropic/claude-haiku-4.5": { inputPer1M: 1, outputPer1M: 5, version: "2026-06-04" },
|
|
49
|
+
"openrouter:google/gemini-2.5-flash": { inputPer1M: 0.3, outputPer1M: 2.5, version: V },
|
|
50
|
+
// Ground-truth from OpenRouter /api/v1/models (was a 0.3 estimate; now 0.279).
|
|
51
|
+
"openrouter:minimax/minimax-m2.7": {
|
|
52
|
+
inputPer1M: 0.279,
|
|
53
|
+
outputPer1M: 1.2,
|
|
54
|
+
version: "2026-06-04"
|
|
55
|
+
},
|
|
56
|
+
// DeepSeek V4 (CN-hosted — NOT GDPR-safe; non-personal-data workloads only).
|
|
57
|
+
// On 2026-05-22 DeepSeek made the "75% off" promo the permanent official price.
|
|
58
|
+
// V4-Pro $0.435/$0.87 is ~34x cheaper than GPT-5.5 on output; flash is cheaper
|
|
59
|
+
// still. Numbers match OpenRouter /api/v1/models 1:1 (no router markup). A strong
|
|
60
|
+
// cheap route for fleet background work once `claude -p` is API-billed (15 Jun).
|
|
61
|
+
"openrouter:deepseek/deepseek-v4-pro": { inputPer1M: 0.435, outputPer1M: 0.87, version: "2026-05-22-deepseek-official" },
|
|
62
|
+
"openrouter:deepseek/deepseek-v4-flash": { inputPer1M: 0.0983, outputPer1M: 0.1966, version: "2026-05-22-deepseek-official" },
|
|
63
|
+
// DeepSeek DIRECT API (provider "deepseek", F030 non-PII secondary). Rates from
|
|
64
|
+
// api-docs.deepseek.com 2026-06-30 ($0.14/$0.28 per 1M; both map to deepseek-v4-flash).
|
|
65
|
+
// `deepseek-chat` (non-thinking) + `deepseek-reasoner` (thinking) DEPRECATE 2026-07-24.
|
|
66
|
+
// (The bare `deepseek-v4-flash` basename is already priced via the openrouter entry
|
|
67
|
+
// above — kept distinct here to avoid a basename collision in the F027 pricing-API.)
|
|
68
|
+
// Verify against a real key when it lands.
|
|
69
|
+
"deepseek:deepseek-chat": { inputPer1M: 0.14, outputPer1M: 0.28, version: "2026-06-30-deepseek-direct" },
|
|
70
|
+
"deepseek:deepseek-reasoner": { inputPer1M: 0.14, outputPer1M: 0.28, version: "2026-06-30-deepseek-direct" },
|
|
71
|
+
// Cached input tokens cost 10% of the input rate — $0.03 vs $0.30 (2.5-flash) and
|
|
72
|
+
// $0.01 vs $0.10 (2.5-flash-lite), read from ai.google.dev/gemini-api/docs/pricing
|
|
73
|
+
// on 2026-08-27 rather than recalled. NB the storage fee on that page ($1/1M
|
|
74
|
+
// tokens/hour) applies to EXPLICIT context caching, where you create a CachedContent
|
|
75
|
+
// object with a TTL. We use IMPLICIT caching, which has no storage charge — so this
|
|
76
|
+
// table is not silently under-billing.
|
|
77
|
+
// Google Gemini (direct). Provider key is "gemini" — matches the adapter's
|
|
78
|
+
// usage.provider + the override.provider callers pass. (Image-gen models are
|
|
79
|
+
// priced per-image in the adapter, not here.)
|
|
80
|
+
"gemini:gemini-2.5-flash": { inputPer1M: 0.3, cacheReadPer1M: 0.03, outputPer1M: 2.5, version: "2026-08-27-ai.google.dev" },
|
|
81
|
+
// flash-lite is the default `video` tier (F019) — cheap native video understanding.
|
|
82
|
+
"gemini:gemini-2.5-flash-lite": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0.4, version: "2026-08-27-ai.google.dev" },
|
|
83
|
+
// Vertex AI (F038) — the EU-resident route to the SAME Gemini models, so Google's
|
|
84
|
+
// published Gemini token prices apply. Listed separately because cost lookups key on
|
|
85
|
+
// `provider:model`: without these rows an EU vision/video call would silently log
|
|
86
|
+
// $0, which is worse than no tracking (a confident wrong number).
|
|
87
|
+
"vertex:gemini-2.5-flash": { inputPer1M: 0.3, cacheReadPer1M: 0.03, outputPer1M: 2.5, version: "2026-08-27-ai.google.dev" },
|
|
88
|
+
"vertex:gemini-2.5-flash-lite": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0.4, version: "2026-08-27-ai.google.dev" },
|
|
89
|
+
// Cached prompt tokens bill at 10% of the input rate (F039, measured 2026-08-27:
|
|
90
|
+
// an 8,810-token prefix reported 8,784 cached on the second call WITH a
|
|
91
|
+
// prompt_cache_key, and 0 without one at every size up to 57k).
|
|
92
|
+
// Mistral (direct, La Plateforme). Official prices from mistral.ai/pricing
|
|
93
|
+
// (2026-06-04, per Christian's CD report). EU/Paris-hosted — the designated
|
|
94
|
+
// GDPR-safe provider for client/personal-data workloads (see F015). NB:
|
|
95
|
+
// medium-3.5 is the premium "Vibe" coding tier ($1.5/$7.5); Large 3 ($0.5/$1.5)
|
|
96
|
+
// is the cheaper frontier general-purpose model despite the higher number.
|
|
97
|
+
"mistral:mistral-large-latest": { inputPer1M: 0.5, cacheReadPer1M: 0.05, outputPer1M: 1.5, version: MS },
|
|
98
|
+
"mistral:mistral-large-2512": { inputPer1M: 0.5, cacheReadPer1M: 0.05, outputPer1M: 1.5, version: MS },
|
|
99
|
+
"mistral:mistral-medium-latest": { inputPer1M: 1.5, cacheReadPer1M: 0.15, outputPer1M: 7.5, version: MS },
|
|
100
|
+
"mistral:mistral-medium-3.5": { inputPer1M: 1.5, cacheReadPer1M: 0.15, outputPer1M: 7.5, version: MS },
|
|
101
|
+
"mistral:mistral-medium-3": { inputPer1M: 0.4, cacheReadPer1M: 0.04, outputPer1M: 2, version: "2026-06-04-or-xref" },
|
|
102
|
+
"mistral:mistral-small-latest": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0.3, version: MS },
|
|
103
|
+
"mistral:mistral-small-2603": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0.3, version: MS },
|
|
104
|
+
"mistral:ministral-3b-latest": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0.1, version: MS },
|
|
105
|
+
"mistral:ministral-8b-latest": { inputPer1M: 0.15, cacheReadPer1M: 0.015, outputPer1M: 0.15, version: MS },
|
|
106
|
+
"mistral:ministral-14b-latest": { inputPer1M: 0.2, cacheReadPer1M: 0.02, outputPer1M: 0.2, version: MS },
|
|
107
|
+
"mistral:magistral-medium-latest": { inputPer1M: 2, cacheReadPer1M: 0.2, outputPer1M: 5, version: MS },
|
|
108
|
+
"mistral:magistral-small-latest": { inputPer1M: 0.5, cacheReadPer1M: 0.05, outputPer1M: 1.5, version: MS },
|
|
109
|
+
"mistral:devstral-latest": { inputPer1M: 0.4, cacheReadPer1M: 0.04, outputPer1M: 2, version: MS },
|
|
110
|
+
"mistral:codestral-latest": { inputPer1M: 0.3, cacheReadPer1M: 0.03, outputPer1M: 0.9, version: MS },
|
|
111
|
+
"mistral:open-mistral-nemo": { inputPer1M: 0.15, cacheReadPer1M: 0.015, outputPer1M: 0.15, version: MS },
|
|
112
|
+
// Moderation (F016.4) — per input token; output 0. (OCR is per-page in the adapter.)
|
|
113
|
+
"mistral:mistral-moderation-latest": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0, version: MS },
|
|
114
|
+
// Embeddings (F016.5) — per input token.
|
|
115
|
+
"mistral:mistral-embed": { inputPer1M: 0.1, cacheReadPer1M: 0.01, outputPer1M: 0, version: MS },
|
|
116
|
+
"mistral:codestral-embed": { inputPer1M: 0.15, cacheReadPer1M: 0.015, outputPer1M: 0, version: MS }
|
|
117
|
+
};
|
|
118
|
+
function getPrice(provider, model) {
|
|
119
|
+
const exact = PRICING[`${provider}:${model}`];
|
|
120
|
+
if (exact) return exact;
|
|
121
|
+
const base = model.replace(/-\d{8}$/, "");
|
|
122
|
+
if (base !== model) return PRICING[`${provider}:${base}`];
|
|
123
|
+
return void 0;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// src/catalogue/pricing-data.ts
|
|
127
|
+
var PRICING_GENERATED_AT = "2026-09-03T19:06:51.817Z";
|
|
128
|
+
var PRICING_CHECKED_AT = "2026-09-03T19:06:58.096Z";
|
|
129
|
+
var PRICING_DATA = [{ "provider": "meta", "model": "meta/muse-spark-1.3-contributor", "name": "Meta: Muse Spark 1.3 Contributor", "input": 0.09999999999999999, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "other" }, { "provider": "meta", "model": "meta/muse-spark-1.3", "name": "Meta: Muse Spark 1.3", "input": 1.25, "output": 4.25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.8-flash", "name": "Google: Gemini 3.8 Flash", "input": 0.75, "output": 3.75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.8-flash:batch", "name": "Google: Gemini 3.8 Flash (batch)", "input": 0.375, "output": 1.875, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-fable-5.1", "name": "Anthropic: Claude Fable 5.1", "input": 10, "output": 50, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-fable-5.1:batch", "name": "Anthropic: Claude Fable 5.1 (batch)", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "inception", "model": "inception/mercury-2.5-preview", "name": "Inception: Mercury 2.5 Preview", "input": 0.04, "output": 0.15, "unit": "per_1m_tokens", "region": "other" }, { "provider": "ibm-granite", "model": "ibm-granite/granite-4.2-8b", "name": "IBM: Granite 4.2 8B", "input": 0.09999999999999999, "output": 0.15, "unit": "per_1m_tokens", "region": "other" }, { "provider": "tencent", "model": "tencent/hy4-preview", "name": "Tencent: Hy4 preview", "input": 0.834, "output": 2.501, "unit": "per_1m_tokens", "region": "other" }, { "provider": "inclusionai", "model": "inclusionai/ling-3.0-flash-fin", "name": "Ling 3.0 Flash Fin", "input": 0.06, "output": 0.18, "unit": "per_1m_tokens", "region": "other" }, { "provider": "inclusionai", "model": "inclusionai/ling-3.0-flash-fin:free", "name": "Ling 3.0 Flash Fin (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~z-ai", "model": "~z-ai/glm-flash-latest", "name": "Z.ai: GLM Flash Latest", "input": 0.075, "output": 0.25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.8-flash", "name": "Qwen: Qwen3.8 Flash", "input": 0.15, "output": 0.47, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-5.3-flash", "name": "Z.ai: GLM 5.3 Flash", "input": 0.075, "output": 0.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-5.3-flash:batch", "name": "Z.ai: GLM 5.3 Flash (batch)", "input": 0.15, "output": 0.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "meta", "model": "meta/muse-spark-1.2-contributor", "name": "Meta: Muse Spark 1.2 Contributor", "input": 0.09999999999999999, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "other" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-flash-vision-exp", "name": "DeepSeek: DeepSeek V4 Flash Vision Exp", "input": 0.22, "output": 0.66, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "tencent", "model": "tencent/hy-mt2-1.8b", "name": "Tencent: Hy-MT2-1.8B", "input": 0.044, "output": 0.17700000000000002, "unit": "per_1m_tokens", "region": "other" }, { "provider": "tencent", "model": "tencent/hy-mt2-30b-a3b", "name": "Tencent: Hy-MT2-30B-A3B", "input": 0.074, "output": 0.295, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~z-ai", "model": "~z-ai/glm-latest", "name": "Z.ai: GLM Latest", "input": 1.1480000000000001, "output": 3.608, "unit": "per_1m_tokens", "region": "other" }, { "provider": "tencent", "model": "tencent/hy-mt2-7b", "name": "Tencent: Hy-MT2-7B", "input": 0.074, "output": 0.295, "unit": "per_1m_tokens", "region": "other" }, { "provider": "z-ai", "model": "z-ai/glm-5.3", "name": "Z.ai: GLM 5.3", "input": 1.4, "output": 4.4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.8-27b", "name": "Qwen: Qwen3.8 27B", "input": 0.42, "output": 3, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "dots-studio", "model": "dots-studio/dots-3-note-preview:free", "name": "Dots Studio: Dots3-Note Preview (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.7-flash", "name": "Google: Gemini 3.7 Flash", "input": 0.75, "output": 3.75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.7-flash:batch", "name": "Google: Gemini 3.7 Flash (batch)", "input": 0.375, "output": 1.875, "unit": "per_1m_tokens", "region": "us" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-2-1-turbo", "name": "ByteDance Seed: Seed 2.1 Turbo", "input": 0.5, "output": 2.5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.8-2.4t-a95b", "name": "Qwen: Qwen3.8 2.4T A95B", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.8-2.4t-a95b:batch", "name": "Qwen: Qwen3.8 2.4T A95B (batch)", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-2.0-code", "name": "ByteDance Seed: Seed-2.0-Code", "input": 0.5, "output": 3, "unit": "per_1m_tokens", "region": "other" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-pro-0813", "name": "DeepSeek: DeepSeek V4 Pro 0813", "input": 0.66, "output": 1.9800000000000002, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-pro-0813:batch", "name": "DeepSeek: DeepSeek V4 Pro 0813 (batch)", "input": 1.32, "output": 3.9600000000000004, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "x-ai", "model": "x-ai/grok-4.6", "name": "SpaceXAI: Grok 4.6", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "liquid", "model": "liquid/lfm-2.5-2.6b:free", "name": "LiquidAI: LFM2.5-2.6B (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "nvidia", "model": "nvidia/nemotron-3.5-lightning", "name": "NVIDIA: Nemotron 3.5 Lightning", "input": 0.08, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nvidia", "model": "nvidia/nemotron-3.5-lightning:free", "name": "NVIDIA: Nemotron 3.5 Lightning (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "sakana", "model": "sakana/sakana-namazu", "name": "Sakana: Sakana Namazu", "input": 0.95, "output": 4, "unit": "per_1m_tokens", "region": "other" }, { "provider": "upstage", "model": "upstage/solar-pro4", "name": "Upstage: Solar Pro 4", "input": 0.03, "output": 0.12, "unit": "per_1m_tokens", "region": "other" }, { "provider": "meta", "model": "meta/muse-glimmer-30b", "name": "Meta: Muse Glimmer 30B", "input": 0.3, "output": 1.1, "unit": "per_1m_tokens", "region": "other" }, { "provider": "meta", "model": "meta/muse-glimmer-30b:batch", "name": "Meta: Muse Glimmer 30B (batch)", "input": 0.35, "output": 1.5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "meta", "model": "meta/muse-spark-1.2", "name": "Meta: Muse Spark 1.2", "input": 1.25, "output": 4.25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.8-max", "name": "Qwen: Qwen3.8 Max", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "~deepseek", "model": "~deepseek/deepseek-v4-flash-latest", "name": "DeepSeek V4 Flash Latest", "input": 0.049999999999999996, "output": 0.16, "unit": "per_1m_tokens", "region": "other" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-flash-0731", "name": "DeepSeek: DeepSeek V4 Flash 0731", "input": 0.065, "output": 0.18, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-flash-0731:batch", "name": "DeepSeek: DeepSeek V4 Flash 0731 (batch)", "input": 0.14, "output": 0.28, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling-small", "name": "Thinking Machines: Inkling Small", "input": 0.44999999999999996, "output": 1.2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling-small:batch", "name": "Thinking Machines: Inkling Small (batch)", "input": 0.5, "output": 1.2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling-small:free", "name": "Thinking Machines: Inkling Small (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.7-flash", "name": "Qwen: Qwen3.7 Flash", "input": 0.03, "output": 0.13, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-5", "name": "Claude Opus 5", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-5:batch", "name": "Claude Opus 5 (batch)", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "inclusionai", "model": "inclusionai/ling-3.0-flash", "name": "Ling-3.0-flash", "input": 0.020999999999999998, "output": 0.063, "unit": "per_1m_tokens", "region": "other" }, { "provider": "poolside", "model": "poolside/laguna-s-2.1", "name": "Poolside: Laguna S 2.1", "input": 0.09, "output": 0.18, "unit": "per_1m_tokens", "region": "other" }, { "provider": "poolside", "model": "poolside/laguna-s-2.1:free", "name": "Poolside: Laguna S 2.1 (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.6-flash", "name": "Google: Gemini 3.6 Flash", "input": 0.75, "output": 3.75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.6-flash:batch", "name": "Google: Gemini 3.6 Flash (batch)", "input": 0.375, "output": 1.875, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.5-flash-lite", "name": "Google: Gemini 3.5 Flash Lite", "input": 0.3, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.5-flash-lite:batch", "name": "Google: Gemini 3.5 Flash Lite (batch)", "input": 0.15, "output": 1.25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meituan", "model": "meituan/longcat-2.0", "name": "Meituan: LongCat 2.0", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling", "name": "Thinking Machines: Inkling", "input": 1, "output": 4.05, "unit": "per_1m_tokens", "region": "other" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling:batch", "name": "Thinking Machines: Inkling (batch)", "input": 1, "output": 4.05, "unit": "per_1m_tokens", "region": "other" }, { "provider": "thinkingmachines", "model": "thinkingmachines/inkling:free", "name": "Thinking Machines: Inkling (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openrouter", "model": "openrouter/auto-beta", "name": "Auto Router (Beta)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k3", "name": "MoonshotAI: Kimi K3", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k3:batch", "name": "MoonshotAI: Kimi K3 (batch)", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "meta", "model": "meta/muse-spark-1.1", "name": "Meta: Muse Spark 1.1", "input": 1.25, "output": 4.25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "kwaipilot", "model": "kwaipilot/kat-coder-pro-v2.5", "name": "Kwaipilot: KAT-Coder-Pro V2.5", "input": 0.74, "output": 2.96, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-5.6-luna-pro", "name": "OpenAI: GPT-5.6 Luna Pro", "input": 0.19999999999999998, "output": 1.2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-luna-pro:batch", "name": "OpenAI: GPT-5.6 Luna Pro (batch)", "input": 0.09999999999999999, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-luna", "name": "OpenAI: GPT-5.6 Luna", "input": 0.19999999999999998, "output": 1.2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-luna:batch", "name": "OpenAI: GPT-5.6 Luna (batch)", "input": 0.09999999999999999, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-terra-pro", "name": "OpenAI: GPT-5.6 Terra Pro", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-terra-pro:batch", "name": "OpenAI: GPT-5.6 Terra Pro (batch)", "input": 1, "output": 6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-terra", "name": "OpenAI: GPT-5.6 Terra", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-terra:batch", "name": "OpenAI: GPT-5.6 Terra (batch)", "input": 1, "output": 6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-sol-pro", "name": "OpenAI: GPT-5.6 Sol Pro", "input": 2, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-sol-pro:batch", "name": "OpenAI: GPT-5.6 Sol Pro (batch)", "input": 1, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-sol", "name": "OpenAI: GPT-5.6 Sol", "input": 2, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.6-sol:batch", "name": "OpenAI: GPT-5.6 Sol (batch)", "input": 1, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "x-ai", "model": "x-ai/grok-4.5", "name": "SpaceXAI: Grok 4.5", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "~x-ai", "model": "~x-ai/grok-latest", "name": "xAI: Grok Latest", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "other" }, { "provider": "aion-labs", "model": "aion-labs/aion-3.0-mini", "name": "AionLabs: Aion-3.0-Mini", "input": 0.7, "output": 1.4, "unit": "per_1m_tokens", "region": "other" }, { "provider": "aion-labs", "model": "aion-labs/aion-3.0", "name": "AionLabs: Aion-3.0", "input": 3, "output": 6, "unit": "per_1m_tokens", "region": "other" }, { "provider": "tencent", "model": "tencent/hy3", "name": "Tencent: Hy3", "input": 0.0825, "output": 0.33, "unit": "per_1m_tokens", "region": "other" }, { "provider": "poolside", "model": "poolside/laguna-xs-2.1", "name": "Poolside: Laguna XS 2.1", "input": 0.06, "output": 0.12, "unit": "per_1m_tokens", "region": "other" }, { "provider": "poolside", "model": "poolside/laguna-xs-2.1:free", "name": "Poolside: Laguna XS 2.1 (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-5", "name": "Anthropic: Claude Sonnet 5", "input": 2, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-5:batch", "name": "Anthropic: Claude Sonnet 5 (batch)", "input": 1, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.1-flash-lite-image", "name": "Google: Nano Banana 2 Lite (Gemini 3.1 Flash Lite Image)", "input": 0.25, "output": 1.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nex-agi", "model": "nex-agi/nex-n2-mini", "name": "Nex AGI: Nex-N2-Mini", "input": 0.024999999999999998, "output": 0.09999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "sakana", "model": "sakana/fugu-ultra", "name": "Sakana: Fugu Ultra", "input": 5, "output": 30, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.1-flash-image", "name": "Google: Nano Banana 2 (Gemini 3.1 Flash Image)", "input": 0.5, "output": 3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3-pro-image", "name": "Google: Nano Banana Pro (Gemini 3 Pro Image)", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "cohere", "model": "cohere/north-mini-code:free", "name": "Cohere: North Mini Code (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "z-ai", "model": "z-ai/glm-5.2", "name": "Z.ai: GLM 5.2", "input": 0.966, "output": 3.036, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-5.2:free", "name": "Z.ai: GLM 5.2 (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openrouter", "model": "openrouter/fusion", "name": "OpenRouter: Fusion", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2.7-code", "name": "MoonshotAI: Kimi K2.7 Code", "input": 0.66, "output": 3.4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "~anthropic", "model": "~anthropic/claude-fable-latest", "name": "Anthropic: Claude Fable Latest", "input": 10, "output": 50, "unit": "per_1m_tokens", "region": "other" }, { "provider": "anthropic", "model": "anthropic/claude-fable-5", "name": "Anthropic: Claude Fable 5", "input": 10, "output": 50, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-fable-5:batch", "name": "Anthropic: Claude Fable 5 (batch)", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nex-agi", "model": "nex-agi/nex-n2-pro", "name": "Nex AGI: Nex-N2-Pro", "input": 0.25, "output": 1, "unit": "per_1m_tokens", "region": "other" }, { "provider": "nvidia", "model": "nvidia/nemotron-3.5-content-safety:free", "name": "NVIDIA: Nemotron 3.5 Content Safety (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-ultra-550b-a55b", "name": "NVIDIA: Nemotron 3 Ultra", "input": 0.6, "output": 2.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-ultra-550b-a55b:free", "name": "NVIDIA: Nemotron 3 Ultra (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3.7-plus", "name": "Qwen: Qwen3.7 Plus", "input": 0.32, "output": 1.28, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-m3", "name": "MiniMax: MiniMax M3", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-m3:batch", "name": "MiniMax: MiniMax M3 (batch)", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-m3:free", "name": "MiniMax: MiniMax M3 (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "stepfun", "model": "stepfun/step-3.7-flash", "name": "StepFun: Step 3.7 Flash", "input": 0.19999999999999998, "output": 1.15, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.8", "name": "Anthropic: Claude Opus 4.8", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.8:batch", "name": "Anthropic: Claude Opus 4.8 (batch)", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3.7-max", "name": "Qwen: Qwen3.7 Max", "input": 1.475, "output": 4.425, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "x-ai", "model": "x-ai/grok-build-0.1", "name": "SpaceXAI: Grok Build 0.1", "input": 1, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.5-flash", "name": "Google: Gemini 3.5 Flash", "input": 1.5, "output": 9, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.5-flash:batch", "name": "Google: Gemini 3.5 Flash (batch)", "input": 0.75, "output": 4.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "perceptron", "model": "perceptron/perceptron-mk1", "name": "Perceptron: Perceptron Mk1", "input": 0.15, "output": 1.5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.1-flash-lite", "name": "Google: Gemini 3.1 Flash Lite", "input": 0.25, "output": 1.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.1-flash-lite:batch", "name": "Google: Gemini 3.1 Flash Lite (batch)", "input": 0.125, "output": 0.75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-chat-latest", "name": "OpenAI: GPT Chat Latest", "input": 5, "output": 30, "unit": "per_1m_tokens", "region": "us" }, { "provider": "x-ai", "model": "x-ai/grok-4.3", "name": "SpaceXAI: Grok 4.3", "input": 1.25, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "ibm-granite", "model": "ibm-granite/granite-4.1-8b", "name": "IBM: Granite 4.1 8B", "input": 0.049999999999999996, "output": 0.09999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "mistralai", "model": "mistralai/mistral-medium-3-5", "name": "Mistral: Mistral Medium 3.5", "input": 1.5, "output": 7.5, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "mistralai", "model": "mistralai/mistral-medium-3-5:batch", "name": "Mistral: Mistral Medium 3.5 (batch)", "input": 0.75, "output": 3.75, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free", "name": "NVIDIA: Nemotron 3 Nano Omni (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "~anthropic", "model": "~anthropic/claude-haiku-latest", "name": "Anthropic Claude Haiku Latest", "input": 1, "output": 5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~openai", "model": "~openai/gpt-mini-latest", "name": "OpenAI GPT Mini Latest", "input": 0.75, "output": 4.5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~google", "model": "~google/gemini-pro-latest", "name": "Google Gemini Pro Latest", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~moonshotai", "model": "~moonshotai/kimi-latest", "name": "MoonshotAI Kimi Latest", "input": 2.5, "output": 14, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~google", "model": "~google/gemini-flash-latest", "name": "Google Gemini Flash Latest", "input": 0.75, "output": 3.75, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~anthropic", "model": "~anthropic/claude-sonnet-latest", "name": "Anthropic Claude Sonnet Latest", "input": 2, "output": 10, "unit": "per_1m_tokens", "region": "other" }, { "provider": "~openai", "model": "~openai/gpt-latest", "name": "OpenAI GPT Latest", "input": 2, "output": 10, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.5-plus-20260420", "name": "Qwen: Qwen3.5 Plus 2026-04-20", "input": 0.3, "output": 1.7999999999999998, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.6-flash", "name": "Qwen: Qwen3.6 Flash", "input": 0.1875, "output": 1.125, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.6-35b-a3b", "name": "Qwen: Qwen3.6 35B A3B", "input": 0.09999999999999999, "output": 0.8999999999999999, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.6-max-preview", "name": "Qwen: Qwen3.6 Max Preview", "input": 1.0270000000000001, "output": 6.162, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.6-27b", "name": "Qwen: Qwen3.6 27B", "input": 0.6, "output": 3.5999999999999996, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5.5-pro", "name": "OpenAI: GPT-5.5 Pro", "input": 30, "output": 180, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.5-pro:batch", "name": "OpenAI: GPT-5.5 Pro (batch)", "input": 15, "output": 90, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.5", "name": "OpenAI: GPT-5.5", "input": 5, "output": 30, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.5:batch", "name": "OpenAI: GPT-5.5 (batch)", "input": 2.5, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-pro", "name": "DeepSeek: DeepSeek V4 Pro 0423", "input": 1.034256, "output": 2.068512, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "deepseek", "model": "deepseek/deepseek-v4-flash", "name": "DeepSeek: DeepSeek V4 Flash 0423", "input": 0.08092, "output": 0.16184, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "tencent", "model": "tencent/hy3-preview", "name": "Tencent: Hy3 preview", "input": 0.18, "output": 0.6, "unit": "per_1m_tokens", "region": "other" }, { "provider": "xiaomi", "model": "xiaomi/mimo-v2.5-pro", "name": "Xiaomi: MiMo-V2.5-Pro", "input": 0.435, "output": 0.87, "unit": "per_1m_tokens", "region": "other" }, { "provider": "xiaomi", "model": "xiaomi/mimo-v2.5", "name": "Xiaomi: MiMo-V2.5", "input": 0.14, "output": 0.28, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-5.4-image-2", "name": "OpenAI: GPT-5.4 Image 2", "input": 8, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "~anthropic", "model": "~anthropic/claude-opus-latest", "name": "Anthropic: Claude Opus Latest", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openrouter", "model": "openrouter/pareto-code", "name": "Pareto Code Router", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2.6", "name": "MoonshotAI: Kimi K2.6", "input": 0.95, "output": 4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.7", "name": "Anthropic: Claude Opus 4.7", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.7:batch", "name": "Anthropic: Claude Opus 4.7 (batch)", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "z-ai", "model": "z-ai/glm-5.1", "name": "Z.ai: GLM 5.1", "input": 0.966, "output": 3.036, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "google", "model": "google/gemma-4-26b-a4b-it", "name": "Google: Gemma 4 26B A4B ", "input": 0.07, "output": 0.33999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-4-26b-a4b-it:free", "name": "Google: Gemma 4 26B A4B (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-4-31b-it", "name": "Google: Gemma 4 31B", "input": 0.09, "output": 0.33999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-4-31b-it:batch", "name": "Google: Gemma 4 31B (batch)", "input": 0.39, "output": 0.9700000000000001, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-4-31b-it:free", "name": "Google: Gemma 4 31B (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3.6-plus", "name": "Qwen: Qwen3.6 Plus", "input": 0.325, "output": 1.95, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-5v-turbo", "name": "Z.ai: GLM 5V Turbo", "input": 1.2, "output": 4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "arcee-ai", "model": "arcee-ai/trinity-large-thinking", "name": "Arcee AI: Trinity Large Thinking", "input": 0.25, "output": 0.7999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "x-ai", "model": "x-ai/grok-4.20-multi-agent", "name": "SpaceXAI: Grok 4.20 Multi-Agent", "input": 1.25, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "x-ai", "model": "x-ai/grok-4.20", "name": "SpaceXAI: Grok 4.20", "input": 1.25, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/lyria-3-pro-preview", "name": "Google: Lyria 3 Pro Preview", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/lyria-3-clip-preview", "name": "Google: Lyria 3 Clip Preview", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "kwaipilot", "model": "kwaipilot/kat-coder-pro-v2", "name": "Kwaipilot: KAT-Coder-Pro V2", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "rekaai", "model": "rekaai/reka-edge", "name": "Reka Edge", "input": 0.09999999999999999, "output": 0.09999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "minimax", "model": "minimax/minimax-m2.7", "name": "MiniMax: MiniMax M2.7", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-m2.7:free", "name": "MiniMax: MiniMax M2.7 (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5.4-nano", "name": "OpenAI: GPT-5.4 Nano", "input": 0.19999999999999998, "output": 1.25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4-nano:batch", "name": "OpenAI: GPT-5.4 Nano (batch)", "input": 0.09999999999999999, "output": 0.625, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4-mini", "name": "OpenAI: GPT-5.4 Mini", "input": 0.75, "output": 4.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4-mini:batch", "name": "OpenAI: GPT-5.4 Mini (batch)", "input": 0.375, "output": 2.25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-small-2603", "name": "Mistral: Mistral Small 4", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "z-ai", "model": "z-ai/glm-5-turbo", "name": "Z.ai: GLM 5 Turbo", "input": 1.2, "output": 4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-super-120b-a12b", "name": "NVIDIA: Nemotron 3 Super", "input": 0.08499999999999999, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-super-120b-a12b:free", "name": "NVIDIA: Nemotron 3 Super (free)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "us" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-2.0-lite", "name": "ByteDance Seed: Seed-2.0-Lite", "input": 0.25, "output": 2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3.5-9b", "name": "Qwen: Qwen3.5-9B", "input": 0.09999999999999999, "output": 0.15, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.5-9b:batch", "name": "Qwen: Qwen3.5-9B (batch)", "input": 0.16999999999999998, "output": 0.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5.4-pro", "name": "OpenAI: GPT-5.4 Pro", "input": 30, "output": 180, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4-pro:batch", "name": "OpenAI: GPT-5.4 Pro (batch)", "input": 15, "output": 90, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4", "name": "OpenAI: GPT-5.4", "input": 2.5, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.4:batch", "name": "OpenAI: GPT-5.4 (batch)", "input": 1.25, "output": 7.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "inception", "model": "inception/mercury-2", "name": "Inception: Mercury 2", "input": 0.25, "output": 0.75, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.1-flash-lite-preview", "name": "Google: Gemini 3.1 Flash Lite Preview", "input": 0.25, "output": 1.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-2.0-mini", "name": "ByteDance Seed: Seed-2.0-Mini", "input": 0.09999999999999999, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.1-flash-image-preview", "name": "Google: Nano Banana 2 (Gemini 3.1 Flash Image Preview)", "input": 0.5, "output": 3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3.5-35b-a3b", "name": "Qwen: Qwen3.5-35B-A3B", "input": 0.25, "output": 1.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.5-27b", "name": "Qwen: Qwen3.5-27B", "input": 0.195, "output": 1.56, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.5-122b-a10b", "name": "Qwen: Qwen3.5-122B-A10B", "input": 0.29, "output": 2.4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.5-flash-02-23", "name": "Qwen: Qwen3.5-Flash", "input": 0.065, "output": 0.26, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "google", "model": "google/gemini-3.1-pro-preview-customtools", "name": "Google: Gemini 3.1 Pro Preview Custom Tools", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.3-codex", "name": "OpenAI: GPT-5.3-Codex", "input": 1.75, "output": 14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "aion-labs", "model": "aion-labs/aion-2.0", "name": "AionLabs: Aion-2.0", "input": 0.7999999999999999, "output": 1.5999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-3.1-pro-preview", "name": "Google: Gemini 3.1 Pro Preview", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3.1-pro-preview:batch", "name": "Google: Gemini 3.1 Pro Preview (batch)", "input": 1, "output": 6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-4.6", "name": "Anthropic: Claude Sonnet 4.6", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-4.6:batch", "name": "Anthropic: Claude Sonnet 4.6 (batch)", "input": 1.5, "output": 7.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3.5-plus-02-15", "name": "Qwen: Qwen3.5 Plus 2026-02-15", "input": 0.26, "output": 1.56, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3.5-397b-a17b", "name": "Qwen: Qwen3.5 397B A17B", "input": 0.55, "output": 3.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-m2.5", "name": "MiniMax: MiniMax M2.5", "input": 0.27, "output": 1.08, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-5", "name": "Z.ai: GLM 5", "input": 0.6, "output": 1.92, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-max-thinking", "name": "Qwen: Qwen3 Max Thinking", "input": 0.78, "output": 3.9, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.6", "name": "Anthropic: Claude Opus 4.6", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.6:batch", "name": "Anthropic: Claude Opus 4.6 (batch)", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3-coder-next", "name": "Qwen: Qwen3 Coder Next", "input": 0.12, "output": 0.7999999999999999, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openrouter", "model": "openrouter/free", "name": "Free Models Router", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "stepfun", "model": "stepfun/step-3.5-flash", "name": "StepFun: Step 3.5 Flash", "input": 0.09999999999999999, "output": 0.3, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2.5", "name": "MoonshotAI: Kimi K2.5", "input": 0.44999999999999996, "output": 2.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "upstage", "model": "upstage/solar-pro-3", "name": "Upstage: Solar Pro 3", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "other" }, { "provider": "minimax", "model": "minimax/minimax-m2-her", "name": "MiniMax: MiniMax M2-her", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "writer", "model": "writer/palmyra-x5", "name": "Writer: Palmyra X5", "input": 0.6, "output": 6, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-audio", "name": "OpenAI: GPT Audio", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-audio-mini", "name": "OpenAI: GPT Audio Mini", "input": 0.6, "output": 2.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "z-ai", "model": "z-ai/glm-4.7-flash", "name": "Z.ai: GLM 4.7 Flash", "input": 0.06, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5.2-codex", "name": "OpenAI: GPT-5.2-Codex", "input": 1.75, "output": 14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-1.6-flash", "name": "ByteDance Seed: Seed 1.6 Flash", "input": 0.075, "output": 0.3, "unit": "per_1m_tokens", "region": "other" }, { "provider": "bytedance-seed", "model": "bytedance-seed/seed-1.6", "name": "ByteDance Seed: Seed 1.6", "input": 0.25, "output": 2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "minimax", "model": "minimax/minimax-m2.1", "name": "MiniMax: MiniMax M2.1", "input": 0.3, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-4.7", "name": "Z.ai: GLM 4.7", "input": 0.39999999999999997, "output": 1.75, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "google", "model": "google/gemini-3-flash-preview", "name": "Google: Gemini 3 Flash Preview", "input": 0.5, "output": 3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3-flash-preview:batch", "name": "Google: Gemini 3 Flash Preview (batch)", "input": 0.25, "output": 1.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "nvidia", "model": "nvidia/nemotron-3-nano-30b-a3b", "name": "NVIDIA: Nemotron 3 Nano 30B A3B", "input": 0.049999999999999996, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.2-chat", "name": "OpenAI: GPT-5.2 Chat", "input": 1.75, "output": 14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.2-pro", "name": "OpenAI: GPT-5.2 Pro", "input": 21, "output": 168, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.2-pro:batch", "name": "OpenAI: GPT-5.2 Pro (batch)", "input": 10.5, "output": 84, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.2", "name": "OpenAI: GPT-5.2", "input": 1.75, "output": 14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.2:batch", "name": "OpenAI: GPT-5.2 (batch)", "input": 0.875, "output": 7, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/devstral-2512", "name": "Mistral: Devstral 2 2512", "input": 0.39999999999999997, "output": 2, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "relace", "model": "relace/relace-search", "name": "Relace: Relace Search", "input": 1, "output": 3, "unit": "per_1m_tokens", "region": "other" }, { "provider": "z-ai", "model": "z-ai/glm-4.6v", "name": "Z.ai: GLM 4.6V", "input": 0.3, "output": 0.8999999999999999, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openrouter", "model": "openrouter/bodybuilder", "name": "Body Builder (beta)", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-5.1-codex-max", "name": "OpenAI: GPT-5.1-Codex-Max", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "amazon", "model": "amazon/nova-2-lite-v1", "name": "Amazon: Nova 2 Lite", "input": 0.3, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/ministral-14b-2512", "name": "Mistral: Ministral 3 14B 2512", "input": 0.19999999999999998, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "mistralai", "model": "mistralai/ministral-8b-2512", "name": "Mistral: Ministral 3 8B 2512", "input": 0.15, "output": 0.15, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "mistralai", "model": "mistralai/ministral-3b-2512", "name": "Mistral: Ministral 3 3B 2512", "input": 0.09999999999999999, "output": 0.09999999999999999, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "mistralai", "model": "mistralai/mistral-large-2512", "name": "Mistral: Mistral Large 3 2512", "input": 0.5, "output": 1.5, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "deepseek", "model": "deepseek/deepseek-v3.2", "name": "DeepSeek: DeepSeek V3.2", "input": 0.26899999999999996, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.5", "name": "Anthropic: Claude Opus 4.5", "input": 5, "output": 25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.5:batch", "name": "Anthropic: Claude Opus 4.5 (batch)", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-3-pro-image-preview", "name": "Google: Nano Banana Pro (Gemini 3 Pro Image Preview)", "input": 2, "output": 12, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.1", "name": "OpenAI: GPT-5.1", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.1:batch", "name": "OpenAI: GPT-5.1 (batch)", "input": 0.625, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.1-codex", "name": "OpenAI: GPT-5.1-Codex", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5.1-codex-mini", "name": "OpenAI: GPT-5.1-Codex-Mini", "input": 0.25, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2-thinking", "name": "MoonshotAI: Kimi K2 Thinking", "input": 0.6, "output": 2.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "amazon", "model": "amazon/nova-premier-v1", "name": "Amazon: Nova Premier 1.0", "input": 2.5, "output": 12.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "perplexity", "model": "perplexity/sonar-pro-search", "name": "Perplexity: Sonar Pro Search", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/voxtral-small-24b-2507", "name": "Mistral: Voxtral Small 24B 2507", "input": 0.09999999999999999, "output": 0.3, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "openai", "model": "openai/gpt-oss-safeguard-20b", "name": "OpenAI: gpt-oss-safeguard-20b", "input": 0.075, "output": 0.3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "minimax", "model": "minimax/minimax-m2", "name": "MiniMax: MiniMax M2", "input": 0.255, "output": 1.02, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-vl-32b-instruct", "name": "Qwen: Qwen3 VL 32B Instruct", "input": 0.10400000000000001, "output": 0.41600000000000004, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "ibm-granite", "model": "ibm-granite/granite-4.0-h-micro", "name": "IBM: Granite 4.0 Micro", "input": 0.017, "output": 0.112, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-5-image-mini", "name": "OpenAI: GPT-5 Image Mini", "input": 2.5, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-haiku-4.5", "name": "Anthropic: Claude Haiku 4.5", "input": 1, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-haiku-4.5:batch", "name": "Anthropic: Claude Haiku 4.5 (batch)", "input": 0.5, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3-vl-8b-thinking", "name": "Qwen: Qwen3 VL 8B Thinking", "input": 0.18, "output": 2.0999999999999996, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-vl-8b-instruct", "name": "Qwen: Qwen3 VL 8B Instruct", "input": 0.117, "output": 0.45499999999999996, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5-image", "name": "OpenAI: GPT-5 Image", "input": 10, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-flash-image", "name": "Google: Nano Banana (Gemini 2.5 Flash Image)", "input": 0.3, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3-vl-30b-a3b-thinking", "name": "Qwen: Qwen3 VL 30B A3B Thinking", "input": 0.19999999999999998, "output": 2.4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-vl-30b-a3b-instruct", "name": "Qwen: Qwen3 VL 30B A3B Instruct", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5-pro", "name": "OpenAI: GPT-5 Pro", "input": 15, "output": 120, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5-pro:batch", "name": "OpenAI: GPT-5 Pro (batch)", "input": 7.5, "output": 60, "unit": "per_1m_tokens", "region": "us" }, { "provider": "z-ai", "model": "z-ai/glm-4.6", "name": "Z.ai: GLM 4.6", "input": 0.55, "output": 2.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-4.5", "name": "Anthropic: Claude Sonnet 4.5", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-4.5:batch", "name": "Anthropic: Claude Sonnet 4.5 (batch)", "input": 1.5, "output": 7.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-v3.2-exp", "name": "DeepSeek: DeepSeek V3.2 Exp", "input": 0.27, "output": 0.41, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "thedrummer", "model": "thedrummer/cydonia-24b-v4.1", "name": "TheDrummer: Cydonia 24B V4.1", "input": 0.3, "output": 0.5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "relace", "model": "relace/relace-apply-3", "name": "Relace: Relace Apply 3", "input": 0.85, "output": 1.25, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen3-vl-235b-a22b-thinking", "name": "Qwen: Qwen3 VL 235B A22B Thinking", "input": 0.39999999999999997, "output": 4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-vl-235b-a22b-instruct", "name": "Qwen: Qwen3 VL 235B A22B Instruct", "input": 0.21, "output": 1.9, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-max", "name": "Qwen: Qwen3 Max", "input": 0.78, "output": 3.9, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-coder-plus", "name": "Qwen: Qwen3 Coder Plus", "input": 0.65, "output": 3.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "deepseek", "model": "deepseek/deepseek-v3.1-terminus", "name": "DeepSeek: DeepSeek V3.1 Terminus", "input": 0.27, "output": 1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-coder-flash", "name": "Qwen: Qwen3 Coder Flash", "input": 0.195, "output": 0.975, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-next-80b-a3b-thinking", "name": "Qwen: Qwen3 Next 80B A3B Thinking", "input": 0.15, "output": 1.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-next-80b-a3b-instruct", "name": "Qwen: Qwen3 Next 80B A3B Instruct", "input": 0.09999999999999999, "output": 1.1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen-plus-2025-07-28", "name": "Qwen: Qwen Plus 0728", "input": 0.26, "output": 0.78, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2-0905", "name": "MoonshotAI: Kimi K2 0905", "input": 0.6, "output": 2.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-30b-a3b-thinking-2507", "name": "Qwen: Qwen3 30B A3B Thinking 2507", "input": 0.19999999999999998, "output": 2.4, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "nousresearch", "model": "nousresearch/hermes-4-70b", "name": "Nous: Hermes 4 70B", "input": 0.13, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "other" }, { "provider": "nousresearch", "model": "nousresearch/hermes-4-405b", "name": "Nous: Hermes 4 405B", "input": 1, "output": 3, "unit": "per_1m_tokens", "region": "other" }, { "provider": "deepseek", "model": "deepseek/deepseek-chat-v3.1", "name": "DeepSeek: DeepSeek V3.1", "input": 0.55, "output": 1.6500000000000001, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "mistralai", "model": "mistralai/mistral-medium-3.1", "name": "Mistral: Mistral Medium 3.1", "input": 0.39999999999999997, "output": 2, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "z-ai", "model": "z-ai/glm-4.5v", "name": "Z.ai: GLM 4.5V", "input": 0.6, "output": 1.7999999999999998, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/gpt-5", "name": "OpenAI: GPT-5", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5:batch", "name": "OpenAI: GPT-5 (batch)", "input": 0.625, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5-mini", "name": "OpenAI: GPT-5 Mini", "input": 0.25, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5-mini:batch", "name": "OpenAI: GPT-5 Mini (batch)", "input": 0.125, "output": 1, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5-nano", "name": "OpenAI: GPT-5 Nano", "input": 0.049999999999999996, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-5-nano:batch", "name": "OpenAI: GPT-5 Nano (batch)", "input": 0.024999999999999998, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-oss-120b", "name": "OpenAI: gpt-oss-120b", "input": 0.037, "output": 0.16999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-oss-120b:batch", "name": "OpenAI: gpt-oss-120b (batch)", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-oss-20b", "name": "OpenAI: gpt-oss-20b", "input": 0.03, "output": 0.13, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-oss-20b:batch", "name": "OpenAI: gpt-oss-20b (batch)", "input": 0.049999999999999996, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.1", "name": "Anthropic: Claude Opus 4.1", "input": 15, "output": 75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4.1:batch", "name": "Anthropic: Claude Opus 4.1 (batch)", "input": 7.5, "output": 37.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/codestral-2508", "name": "Mistral: Codestral 2508", "input": 0.3, "output": 0.8999999999999999, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "qwen", "model": "qwen/qwen3-coder-30b-a3b-instruct", "name": "Qwen: Qwen3 Coder 30B A3B Instruct", "input": 0.07, "output": 0.28, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-30b-a3b-instruct-2507", "name": "Qwen: Qwen3 30B A3B Instruct 2507", "input": 0.04815, "output": 0.19305, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-4.5", "name": "Z.ai: GLM 4.5", "input": 0.6, "output": 2.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "z-ai", "model": "z-ai/glm-4.5-air", "name": "Z.ai: GLM 4.5 Air", "input": 0.13, "output": 0.85, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-235b-a22b-thinking-2507", "name": "Qwen: Qwen3 235B A22B Thinking 2507", "input": 0.22999999999999998, "output": 2.3, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-coder", "name": "Qwen: Qwen3 Coder 480B A35B", "input": 0.3, "output": 1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "bytedance", "model": "bytedance/ui-tars-1.5-7b", "name": "ByteDance: UI-TARS 7B ", "input": 0.09999999999999999, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemini-2.5-flash-lite", "name": "Google: Gemini 2.5 Flash Lite", "input": 0.09999999999999999, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-flash-lite:batch", "name": "Google: Gemini 2.5 Flash Lite (batch)", "input": 0.049999999999999996, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3-235b-a22b-2507", "name": "Qwen: Qwen3 235B A22B Instruct 2507", "input": 0.0875, "output": 0.35, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "moonshotai", "model": "moonshotai/kimi-k2", "name": "MoonshotAI: Kimi K2 0711", "input": 0.5700000000000001, "output": 2.3, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "cognitivecomputations", "model": "cognitivecomputations/dolphin-mistral-24b-venice-edition", "name": "Venice: Uncensored", "input": 0.19999999999999998, "output": 0.8999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "tencent", "model": "tencent/hunyuan-a13b-instruct", "name": "Tencent: Hunyuan A13B Instruct", "input": 0.14, "output": 0.5700000000000001, "unit": "per_1m_tokens", "region": "other" }, { "provider": "morph", "model": "morph/morph-v3-large", "name": "Morph: Morph V3 Large", "input": 0.8999999999999999, "output": 1.9, "unit": "per_1m_tokens", "region": "other" }, { "provider": "morph", "model": "morph/morph-v3-fast", "name": "Morph: Morph V3 Fast", "input": 0.7999999999999999, "output": 1.2, "unit": "per_1m_tokens", "region": "other" }, { "provider": "baidu", "model": "baidu/ernie-4.5-vl-424b-a47b", "name": "Baidu: ERNIE 4.5 VL 424B A47B ", "input": 0.42, "output": 1.25, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "mistralai", "model": "mistralai/mistral-small-3.2-24b-instruct", "name": "Mistral: Mistral Small 3.2 24B", "input": 0.075, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "minimax", "model": "minimax/minimax-m1", "name": "MiniMax: MiniMax M1", "input": 0.55, "output": 2.2, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "google", "model": "google/gemini-2.5-flash", "name": "Google: Gemini 2.5 Flash", "input": 0.3, "output": 2.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-flash:batch", "name": "Google: Gemini 2.5 Flash (batch)", "input": 0.15, "output": 1.25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-pro", "name": "Google: Gemini 2.5 Pro", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-pro:batch", "name": "Google: Gemini 2.5 Pro (batch)", "input": 0.625, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o3-pro", "name": "OpenAI: o3 Pro", "input": 20, "output": 80, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemini-2.5-pro-preview", "name": "Google: Gemini 2.5 Pro Preview 06-05", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-r1-0528", "name": "DeepSeek: R1 0528", "input": 0.5, "output": 2.1500000000000004, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "anthropic", "model": "anthropic/claude-opus-4", "name": "Anthropic: Claude Opus 4", "input": 15, "output": 75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-sonnet-4", "name": "Anthropic: Claude Sonnet 4", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-medium-3", "name": "Mistral: Mistral Medium 3", "input": 0.39999999999999997, "output": 2, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "google", "model": "google/gemini-2.5-pro-preview-05-06", "name": "Google: Gemini 2.5 Pro Preview 05-06", "input": 1.25, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-guard-4-12b", "name": "Meta: Llama Guard 4 12B", "input": 0.18, "output": 0.18, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen3-30b-a3b", "name": "Qwen: Qwen3 30B A3B", "input": 0.12, "output": 0.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-8b", "name": "Qwen: Qwen3 8B", "input": 0.117, "output": 0.45499999999999996, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-14b", "name": "Qwen: Qwen3 14B", "input": 0.12, "output": 0.24, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-32b", "name": "Qwen: Qwen3 32B", "input": 0.08, "output": 0.28, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen3-235b-a22b", "name": "Qwen: Qwen3 235B A22B", "input": 0.45499999999999996, "output": 1.8199999999999998, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/o4-mini-high", "name": "OpenAI: o4 Mini High", "input": 1.1, "output": 4.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o3", "name": "OpenAI: o3", "input": 2, "output": 8, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o3:batch", "name": "OpenAI: o3 (batch)", "input": 1, "output": 4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o4-mini", "name": "OpenAI: o4 Mini", "input": 1.1, "output": 4.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o4-mini:batch", "name": "OpenAI: o4 Mini (batch)", "input": 0.55, "output": 2.2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1", "name": "OpenAI: GPT-4.1", "input": 2, "output": 8, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1:batch", "name": "OpenAI: GPT-4.1 (batch)", "input": 1, "output": 4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1-mini", "name": "OpenAI: GPT-4.1 Mini", "input": 0.39999999999999997, "output": 1.5999999999999999, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1-mini:batch", "name": "OpenAI: GPT-4.1 Mini (batch)", "input": 0.19999999999999998, "output": 0.7999999999999999, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1-nano", "name": "OpenAI: GPT-4.1 Nano", "input": 0.09999999999999999, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4.1-nano:batch", "name": "OpenAI: GPT-4.1 Nano (batch)", "input": 0.049999999999999996, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-4-maverick", "name": "Meta: Llama 4 Maverick", "input": 0.19999999999999998, "output": 0.696, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-4-scout", "name": "Meta: Llama 4 Scout", "input": 0.09999999999999999, "output": 0.3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-chat-v3-0324", "name": "DeepSeek: DeepSeek V3 0324", "input": 0.25, "output": 1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/o1-pro", "name": "OpenAI: o1-pro", "input": 150, "output": 600, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-small-3.1-24b-instruct", "name": "Mistral: Mistral Small 3.1 24B", "input": 0.351, "output": 0.5549999999999999, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "google", "model": "google/gemma-3-4b-it", "name": "Google: Gemma 3 4B", "input": 0.049999999999999996, "output": 0.09999999999999999, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-3-12b-it", "name": "Google: Gemma 3 12B", "input": 0.049999999999999996, "output": 0.15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "cohere", "model": "cohere/command-a", "name": "Cohere: Command A", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "rekaai", "model": "rekaai/reka-flash-3", "name": "Reka Flash 3", "input": 0.09999999999999999, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "other" }, { "provider": "google", "model": "google/gemma-3-27b-it", "name": "Google: Gemma 3 27B", "input": 0.08, "output": 0.44999999999999996, "unit": "per_1m_tokens", "region": "us" }, { "provider": "thedrummer", "model": "thedrummer/skyfall-36b-v2", "name": "TheDrummer: Skyfall 36B V2", "input": 0.55, "output": 0.7999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "perplexity", "model": "perplexity/sonar-reasoning-pro", "name": "Perplexity: Sonar Reasoning Pro", "input": 2, "output": 8, "unit": "per_1m_tokens", "region": "us" }, { "provider": "perplexity", "model": "perplexity/sonar-pro", "name": "Perplexity: Sonar Pro", "input": 3, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "perplexity", "model": "perplexity/sonar-deep-research", "name": "Perplexity: Sonar Deep Research", "input": 2, "output": 8, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-saba", "name": "Mistral: Saba", "input": 0.19999999999999998, "output": 0.6, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "openai", "model": "openai/o3-mini-high", "name": "OpenAI: o3 Mini High", "input": 1.1, "output": 4.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "aion-labs", "model": "aion-labs/aion-rp-llama-3.1-8b", "name": "AionLabs: Aion-RP 1.0 (8B)", "input": 0.7999999999999999, "output": 1.5999999999999999, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen2.5-vl-72b-instruct", "name": "Qwen: Qwen2.5 VL 72B Instruct", "input": 0.7999999999999999, "output": 1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "qwen", "model": "qwen/qwen-plus", "name": "Qwen: Qwen-Plus", "input": 0.26, "output": 0.78, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "openai", "model": "openai/o3-mini", "name": "OpenAI: o3 Mini", "input": 1.1, "output": 4.4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/o3-mini:batch", "name": "OpenAI: o3 Mini (batch)", "input": 0.55, "output": 2.2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-small-24b-instruct-2501", "name": "Mistral: Mistral Small 3", "input": 0.049999999999999996, "output": 0.08, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "perplexity", "model": "perplexity/sonar", "name": "Perplexity: Sonar", "input": 1, "output": 1, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-r1-distill-llama-70b", "name": "DeepSeek: R1 Distill Llama 70B", "input": 0.7999999999999999, "output": 0.7999999999999999, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "deepseek", "model": "deepseek/deepseek-r1", "name": "DeepSeek: R1", "input": 0.7, "output": 2.5, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "minimax", "model": "minimax/minimax-01", "name": "MiniMax: MiniMax-01", "input": 0.19999999999999998, "output": 1.1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "microsoft", "model": "microsoft/phi-4", "name": "Microsoft: Phi 4", "input": 0.07, "output": 0.14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "deepseek", "model": "deepseek/deepseek-chat", "name": "DeepSeek: DeepSeek V3", "input": 0.32, "output": 0.8899999999999999, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "sao10k", "model": "sao10k/l3.3-euryale-70b", "name": "Sao10K: Llama 3.3 Euryale 70B", "input": 0.65, "output": 0.75, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/o1", "name": "OpenAI: o1", "input": 15, "output": 60, "unit": "per_1m_tokens", "region": "us" }, { "provider": "cohere", "model": "cohere/command-r7b-12-2024", "name": "Cohere: Command R7B (12-2024)", "input": 0.0375, "output": 0.15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-3.3-70b-instruct", "name": "Meta: Llama 3.3 70B Instruct", "input": 0.09999999999999999, "output": 0.32, "unit": "per_1m_tokens", "region": "us" }, { "provider": "amazon", "model": "amazon/nova-lite-v1", "name": "Amazon: Nova Lite 1.0", "input": 0.06, "output": 0.24, "unit": "per_1m_tokens", "region": "us" }, { "provider": "amazon", "model": "amazon/nova-micro-v1", "name": "Amazon: Nova Micro 1.0", "input": 0.035, "output": 0.14, "unit": "per_1m_tokens", "region": "us" }, { "provider": "amazon", "model": "amazon/nova-pro-v1", "name": "Amazon: Nova Pro 1.0", "input": 0.7999999999999999, "output": 3.1999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o-2024-11-20", "name": "OpenAI: GPT-4o (2024-11-20)", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-large-2407", "name": "Mistral Large 2407", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "qwen", "model": "qwen/qwen-2.5-coder-32b-instruct", "name": "Qwen2.5 Coder 32B Instruct", "input": 0.66, "output": 1, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "thedrummer", "model": "thedrummer/unslopnemo-12b", "name": "TheDrummer: UnslopNemo 12B", "input": 0.39999999999999997, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "other" }, { "provider": "anthracite-org", "model": "anthracite-org/magnum-v4-72b", "name": "Magnum v4 72B", "input": 2.5, "output": 5, "unit": "per_1m_tokens", "region": "other" }, { "provider": "qwen", "model": "qwen/qwen-2.5-7b-instruct", "name": "Qwen: Qwen2.5 7B Instruct", "input": 0.09999999999999999, "output": 0.19999999999999998, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "meta-llama", "model": "meta-llama/llama-3.2-1b-instruct", "name": "Meta: Llama 3.2 1B Instruct", "input": 0.027, "output": 0.201, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-3.2-3b-instruct", "name": "Meta: Llama 3.2 3B Instruct", "input": 0.049999999999999996, "output": 0.33, "unit": "per_1m_tokens", "region": "us" }, { "provider": "qwen", "model": "qwen/qwen-2.5-72b-instruct", "name": "Qwen2.5 72B Instruct", "input": 0.36, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "cn" }, { "provider": "cohere", "model": "cohere/command-r-08-2024", "name": "Cohere: Command R (08-2024)", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "cohere", "model": "cohere/command-r-plus-08-2024", "name": "Cohere: Command R+ (08-2024)", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "sao10k", "model": "sao10k/l3.1-euryale-70b", "name": "Sao10K: Llama 3.1 Euryale 70B v2.2", "input": 0.85, "output": 0.85, "unit": "per_1m_tokens", "region": "other" }, { "provider": "nousresearch", "model": "nousresearch/hermes-3-llama-3.1-70b", "name": "Nous: Hermes 3 70B Instruct", "input": 0.7, "output": 0.7, "unit": "per_1m_tokens", "region": "other" }, { "provider": "nousresearch", "model": "nousresearch/hermes-3-llama-3.1-405b", "name": "Nous: Hermes 3 405B Instruct", "input": 1, "output": 1, "unit": "per_1m_tokens", "region": "other" }, { "provider": "sao10k", "model": "sao10k/l3-lunaris-8b", "name": "Sao10K: Llama 3 8B Lunaris", "input": 0.04, "output": 0.049999999999999996, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-4o-2024-08-06", "name": "OpenAI: GPT-4o (2024-08-06)", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-3.1-70b-instruct", "name": "Meta: Llama 3.1 70B Instruct", "input": 0.39999999999999997, "output": 0.39999999999999997, "unit": "per_1m_tokens", "region": "us" }, { "provider": "meta-llama", "model": "meta-llama/llama-3.1-8b-instruct", "name": "Meta: Llama 3.1 8B Instruct", "input": 0.049999999999999996, "output": 0.08, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-nemo", "name": "Mistral: Mistral Nemo", "input": 0.019000000000000003, "output": 0.03, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "openai", "model": "openai/gpt-4o-mini", "name": "OpenAI: GPT-4o-mini", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o-mini-2024-07-18", "name": "OpenAI: GPT-4o-mini (2024-07-18)", "input": 0.15, "output": 0.6, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o-mini:batch", "name": "OpenAI: GPT-4o-mini (batch)", "input": 0.075, "output": 0.3, "unit": "per_1m_tokens", "region": "us" }, { "provider": "google", "model": "google/gemma-2-27b-it", "name": "Google: Gemma 2 27B", "input": 0.65, "output": 0.65, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o", "name": "OpenAI: GPT-4o", "input": 2.5, "output": 10, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o-2024-05-13", "name": "OpenAI: GPT-4o (2024-05-13)", "input": 5, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4o:batch", "name": "OpenAI: GPT-4o (batch)", "input": 1.25, "output": 5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mixtral-8x22b-instruct", "name": "Mistral: Mixtral 8x22B Instruct", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "microsoft", "model": "microsoft/wizardlm-2-8x22b", "name": "WizardLM-2 8x22B", "input": 0.62, "output": 0.62, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4-turbo", "name": "OpenAI: GPT-4 Turbo", "input": 10, "output": 30, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4-turbo:batch", "name": "OpenAI: GPT-4 Turbo (batch)", "input": 5, "output": 15, "unit": "per_1m_tokens", "region": "us" }, { "provider": "anthropic", "model": "anthropic/claude-3-haiku", "name": "Anthropic: Claude 3 Haiku", "input": 0.25, "output": 1.25, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mistralai", "model": "mistralai/mistral-large", "name": "Mistral Large", "input": 2, "output": 6, "unit": "per_1m_tokens", "region": "eu" }, { "provider": "openai", "model": "openai/gpt-3.5-turbo-0613", "name": "OpenAI: GPT-3.5 Turbo (older v0613)", "input": 1, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4-turbo-preview", "name": "OpenAI: GPT-4 Turbo Preview", "input": 10, "output": 30, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openrouter", "model": "openrouter/auto", "name": "Auto Router", "input": 0, "output": 0, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-3.5-turbo-instruct", "name": "OpenAI: GPT-3.5 Turbo Instruct", "input": 1.5, "output": 2, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-3.5-turbo-16k", "name": "OpenAI: GPT-3.5 Turbo 16k", "input": 3, "output": 4, "unit": "per_1m_tokens", "region": "us" }, { "provider": "mancer", "model": "mancer/weaver", "name": "Mancer: Weaver (alpha)", "input": 0.39999999999999997, "output": 0.75, "unit": "per_1m_tokens", "region": "other" }, { "provider": "undi95", "model": "undi95/remm-slerp-l2-13b", "name": "ReMM SLERP 13B", "input": 0.44999999999999996, "output": 0.65, "unit": "per_1m_tokens", "region": "other" }, { "provider": "gryphe", "model": "gryphe/mythomax-l2-13b", "name": "MythoMax 13B", "input": 0.06, "output": 0.06, "unit": "per_1m_tokens", "region": "other" }, { "provider": "openai", "model": "openai/gpt-3.5-turbo", "name": "OpenAI: GPT-3.5 Turbo", "input": 0.5, "output": 1.5, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-3.5-turbo:batch", "name": "OpenAI: GPT-3.5 Turbo (batch)", "input": 0.25, "output": 0.75, "unit": "per_1m_tokens", "region": "us" }, { "provider": "openai", "model": "openai/gpt-4", "name": "OpenAI: GPT-4", "input": 30, "output": 60, "unit": "per_1m_tokens", "region": "us" }];
|
|
130
|
+
|
|
131
|
+
// src/catalogue/pricing-api.ts
|
|
132
|
+
var basename = (id) => {
|
|
133
|
+
let s = id.toLowerCase();
|
|
134
|
+
const colon = s.lastIndexOf(":");
|
|
135
|
+
if (colon >= 0) s = s.slice(colon + 1);
|
|
136
|
+
const slash = s.lastIndexOf("/");
|
|
137
|
+
if (slash >= 0) s = s.slice(slash + 1);
|
|
138
|
+
return s;
|
|
139
|
+
};
|
|
140
|
+
function regionForProvider(provider) {
|
|
141
|
+
switch (provider) {
|
|
142
|
+
case "mistral":
|
|
143
|
+
case "mistralai":
|
|
144
|
+
return "eu";
|
|
145
|
+
case "deepseek":
|
|
146
|
+
return "cn";
|
|
147
|
+
case "anthropic":
|
|
148
|
+
case "openai":
|
|
149
|
+
case "google":
|
|
150
|
+
case "x-ai":
|
|
151
|
+
case "meta-llama":
|
|
152
|
+
return "us";
|
|
153
|
+
default:
|
|
154
|
+
return "other";
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
var _list = null;
|
|
158
|
+
var _full = null;
|
|
159
|
+
var _base = null;
|
|
160
|
+
function ensure() {
|
|
161
|
+
warnIfPricingStale();
|
|
162
|
+
if (_list) return;
|
|
163
|
+
const list = [];
|
|
164
|
+
const byBase = /* @__PURE__ */ new Map();
|
|
165
|
+
for (const r of PRICING_DATA) {
|
|
166
|
+
const e = {
|
|
167
|
+
provider: r.provider,
|
|
168
|
+
model: r.model,
|
|
169
|
+
name: r.name,
|
|
170
|
+
inputPer1M: r.input,
|
|
171
|
+
outputPer1M: r.output,
|
|
172
|
+
unit: r.unit,
|
|
173
|
+
region: ["eu", "us", "cn", "other"].includes(r.region) ? r.region : "other",
|
|
174
|
+
source: "inventory"
|
|
175
|
+
};
|
|
176
|
+
list.push(e);
|
|
177
|
+
byBase.set(basename(r.model), e);
|
|
178
|
+
}
|
|
179
|
+
for (const [key, p] of Object.entries(PRICING)) {
|
|
180
|
+
const ci = key.indexOf(":");
|
|
181
|
+
const provider = ci >= 0 ? key.slice(0, ci) : "";
|
|
182
|
+
const modelPart = ci >= 0 ? key.slice(ci + 1) : key;
|
|
183
|
+
const existing = byBase.get(basename(modelPart));
|
|
184
|
+
if (existing) {
|
|
185
|
+
existing.inputPer1M = p.inputPer1M;
|
|
186
|
+
existing.outputPer1M = p.outputPer1M;
|
|
187
|
+
existing.unit = "per_1m_tokens";
|
|
188
|
+
existing.source = "curated";
|
|
189
|
+
} else {
|
|
190
|
+
const e = {
|
|
191
|
+
provider,
|
|
192
|
+
model: modelPart,
|
|
193
|
+
inputPer1M: p.inputPer1M,
|
|
194
|
+
outputPer1M: p.outputPer1M,
|
|
195
|
+
unit: "per_1m_tokens",
|
|
196
|
+
region: regionForProvider(provider),
|
|
197
|
+
source: "curated"
|
|
198
|
+
};
|
|
199
|
+
list.push(e);
|
|
200
|
+
byBase.set(basename(modelPart), e);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
_list = list;
|
|
204
|
+
_base = byBase;
|
|
205
|
+
_full = new Map(list.map((e) => [e.model.toLowerCase(), e]));
|
|
206
|
+
}
|
|
207
|
+
function getModelPrice(modelId) {
|
|
208
|
+
ensure();
|
|
209
|
+
const s = modelId.trim().toLowerCase();
|
|
210
|
+
return _full.get(s) ?? (s.includes(":") ? _full.get(s.slice(s.indexOf(":") + 1)) : void 0) ?? _base.get(basename(s));
|
|
211
|
+
}
|
|
212
|
+
function listModelPrices() {
|
|
213
|
+
ensure();
|
|
214
|
+
return _list.slice();
|
|
215
|
+
}
|
|
216
|
+
function findModelPrices(filter = {}) {
|
|
217
|
+
return listModelPrices().filter((m) => {
|
|
218
|
+
if (filter.provider && m.provider !== filter.provider) return false;
|
|
219
|
+
if (filter.region && m.region !== filter.region) return false;
|
|
220
|
+
if (filter.maxInputPer1M != null && m.inputPer1M > filter.maxInputPer1M) return false;
|
|
221
|
+
if (filter.free === true && (m.inputPer1M !== 0 || m.outputPer1M !== 0)) return false;
|
|
222
|
+
if (filter.free === false && m.inputPer1M === 0 && m.outputPer1M === 0) return false;
|
|
223
|
+
return true;
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
function priceCall(modelId, inputTokens, outputTokens) {
|
|
227
|
+
const p = getModelPrice(modelId);
|
|
228
|
+
if (!p || p.unit !== "per_1m_tokens") return void 0;
|
|
229
|
+
return inputTokens / 1e6 * p.inputPer1M + outputTokens / 1e6 * p.outputPer1M;
|
|
230
|
+
}
|
|
231
|
+
function pricingGeneratedAt() {
|
|
232
|
+
return PRICING_GENERATED_AT;
|
|
233
|
+
}
|
|
234
|
+
var PRICING_STALE_AFTER_DAYS = 35;
|
|
235
|
+
function computeFreshness(generatedAt, checkedAt, nowMs) {
|
|
236
|
+
const t = checkedAt ? Date.parse(checkedAt) : NaN;
|
|
237
|
+
const ageDays = Number.isFinite(t) ? Math.floor((nowMs - t) / 864e5) : null;
|
|
238
|
+
return {
|
|
239
|
+
generatedAt,
|
|
240
|
+
checkedAt,
|
|
241
|
+
ageDays,
|
|
242
|
+
// No check date → stale. The absent case must not read as the healthy one; that is
|
|
243
|
+
// the whole failure this feature exists to remove.
|
|
244
|
+
stale: ageDays === null || ageDays > PRICING_STALE_AFTER_DAYS,
|
|
245
|
+
thresholdDays: PRICING_STALE_AFTER_DAYS
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
function pricingFreshness(nowMs = Date.now()) {
|
|
249
|
+
return computeFreshness(PRICING_GENERATED_AT, PRICING_CHECKED_AT, nowMs);
|
|
250
|
+
}
|
|
251
|
+
var warned = false;
|
|
252
|
+
function warnIfPricingStale(nowMs = Date.now()) {
|
|
253
|
+
if (warned) return;
|
|
254
|
+
if (globalThis.process?.env?.BROBERG_AI_SDK_SILENCE_PRICING_WARNING) return;
|
|
255
|
+
const f = pricingFreshness(nowMs);
|
|
256
|
+
if (!f.stale) return;
|
|
257
|
+
warned = true;
|
|
258
|
+
const age = f.ageDays === null ? "of unknown age" : `${f.ageDays} days old`;
|
|
259
|
+
console.warn(
|
|
260
|
+
`[@broberg/ai-sdk] price table is ${age} (last verified ${f.checkedAt || "never"}, threshold ${f.thresholdDays}d). Prices drift: one week has produced 34 changes before. Refresh with \`bun run scripts/build-inventory.ts\` in ai-sdk, or take a newer release.`
|
|
261
|
+
);
|
|
262
|
+
}
|
|
263
|
+
function resetPricingWarningForTests() {
|
|
264
|
+
warned = false;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export {
|
|
268
|
+
getPrice,
|
|
269
|
+
getModelPrice,
|
|
270
|
+
listModelPrices,
|
|
271
|
+
findModelPrices,
|
|
272
|
+
priceCall,
|
|
273
|
+
pricingGeneratedAt,
|
|
274
|
+
PRICING_STALE_AFTER_DAYS,
|
|
275
|
+
pricingFreshness,
|
|
276
|
+
warnIfPricingStale,
|
|
277
|
+
resetPricingWarningForTests
|
|
278
|
+
};
|
|
279
|
+
//# sourceMappingURL=chunk-CTPTMHNX.js.map
|