@@ -367,8 +376,7 @@ function TemplateProviderRow({
function ProviderSettingsLoading() {
return (
-
-
{}} />
+ <>
{[0, 1].map((index) => (
@@ -393,6 +401,6 @@ function ProviderSettingsLoading() {
))}
-
+ >
)
}
diff --git a/apps/desktop/src/renderer/lib/invalidate-provider-queries.ts b/apps/desktop/src/renderer/lib/invalidate-provider-queries.ts
index 04c8e6a0..7f9fa7f4 100644
--- a/apps/desktop/src/renderer/lib/invalidate-provider-queries.ts
+++ b/apps/desktop/src/renderer/lib/invalidate-provider-queries.ts
@@ -2,7 +2,7 @@ import { invalidateConfigOptionCaches } from "../services/connection-manager"
import { queryClient } from "./query-client"
/**
- * After provider/model catalog mutations (connect, discover, enable, upsert),
+ * After provider/model catalog mutations (connect, enable, upsert),
* refresh both the Settings catalog and the composer ModelSelector data path
* (`config.providers` → React Query `providers` / `config`).
*
diff --git a/apps/tui/lib/ai/README.md b/apps/tui/lib/ai/README.md
index 29be41cf..6f234518 100644
--- a/apps/tui/lib/ai/README.md
+++ b/apps/tui/lib/ai/README.md
@@ -1,3 +1,9 @@
+> Devo vendoring note: this package contains provider adapters and model utilities,
+> not a bundled model directory. `getProviders()` / `getModels()` return empty
+> lists and `getModel()` returns `undefined`. Native clients obtain resolved models
+> from the server's live models.dev directory and user configuration. Historical
+> upstream examples below that use generated models require caller-supplied models.
+
Devo AI
@@ -1270,11 +1276,11 @@ Create a new provider file (for example `amazon-bedrock.ts`) that exports:
- Add credential detection in `env-api-keys.ts` for the new provider
- Ensure `streamSimple` handles auth lookup via `getEnvApiKey()` or provider-specific auth
-#### 4. Model Generation (`scripts/generate-models.ts`)
+#### 4. Model metadata
-- Add logic to fetch and parse models from the provider's source (e.g., models.dev API)
-- Map provider model data to the standardized `Model` interface
-- Handle provider-specific quirks (pricing format, capability flags, model ID transformations)
+Devo loads model metadata from models.dev and user configuration on the Native
+server. Do not add generated model tables or local catalog snapshots here.
+Provider adapters accept the resolved `Model` supplied by their caller.
#### 5. Tests (`test/`)
diff --git a/apps/tui/lib/ai/src/models.generated.ts b/apps/tui/lib/ai/src/models.generated.ts
deleted file mode 100644
index ff0f3324..00000000
--- a/apps/tui/lib/ai/src/models.generated.ts
+++ /dev/null
@@ -1,22846 +0,0 @@
-// This file is auto-generated by scripts/generate-models.ts
-// Do not edit manually - run 'npm run generate-models' to update
-
-import type { Model } from "./types.js";
-
-export const MODELS = {
- "amazon-bedrock": {
- "amazon.nova-2-lite-v1:0": {
- id: "amazon.nova-2-lite-v1:0",
- name: "Nova 2 Lite",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.33,
- output: 2.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "amazon.nova-lite-v1:0": {
- id: "amazon.nova-lite-v1:0",
- name: "Nova Lite",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.06,
- output: 0.24,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "amazon.nova-micro-v1:0": {
- id: "amazon.nova-micro-v1:0",
- name: "Nova Micro",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.035,
- output: 0.14,
- cacheRead: 0.00875,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "amazon.nova-pro-v1:0": {
- id: "amazon.nova-pro-v1:0",
- name: "Nova Pro",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.8,
- output: 3.2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-fable-5": {
- id: "anthropic.claude-fable-5",
- name: "Claude Fable 5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-fable-5-1": {
- id: "anthropic.claude-fable-5-1",
- name: "Claude Fable 5.1",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-4-1-20250805-v1:0": {
- id: "anthropic.claude-opus-4-1-20250805-v1:0",
- name: "Claude Opus 4.1",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-4-5-20251101-v1:0": {
- id: "anthropic.claude-opus-4-5-20251101-v1:0",
- name: "Claude Opus 4.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-4-6-v1": {
- id: "anthropic.claude-opus-4-6-v1",
- name: "Claude Opus 4.6",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-4-7": {
- id: "anthropic.claude-opus-4-7",
- name: "Claude Opus 4.7",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-4-8": {
- id: "anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-opus-5": {
- id: "anthropic.claude-opus-5",
- name: "Claude Opus 5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-sonnet-4-6": {
- id: "anthropic.claude-sonnet-4-6",
- name: "Claude Sonnet 4.6",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "anthropic.claude-sonnet-5": {
- id: "anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "au.anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5 (AU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-opus-4-6-v1": {
- id: "au.anthropic.claude-opus-4-6-v1",
- name: "AU Anthropic Claude Opus 4.6",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 16.5,
- output: 82.5,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-opus-4-8": {
- id: "au.anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8 (AU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-opus-5": {
- id: "au.anthropic.claude-opus-5",
- name: "Claude Opus 5 (AU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "au.anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5 (AU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-sonnet-4-6": {
- id: "au.anthropic.claude-sonnet-4-6",
- name: "AU Anthropic Claude Sonnet 4.6",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3.3,
- output: 16.5,
- cacheRead: 0.33,
- cacheWrite: 4.125,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "au.anthropic.claude-sonnet-5": {
- id: "au.anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5 (AU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-southeast-2.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "deepseek.r1-v1:0": {
- id: "deepseek.r1-v1:0",
- name: "DeepSeek-R1",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.35,
- output: 5.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32768,
- } satisfies Model<"bedrock-converse-stream">,
- "deepseek.v3-v1:0": {
- id: "deepseek.v3-v1:0",
- name: "DeepSeek-V3.1",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.58,
- output: 1.68,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 81920,
- } satisfies Model<"bedrock-converse-stream">,
- "deepseek.v3.2": {
- id: "deepseek.v3.2",
- name: "DeepSeek-V3.2",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.62,
- output: 1.85,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 81920,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-fable-5": {
- id: "eu.anthropic.claude-fable-5",
- name: "Claude Fable 5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 11,
- output: 55,
- cacheRead: 1.1,
- cacheWrite: 13.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "eu.anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 5.5,
- cacheRead: 0.11,
- cacheWrite: 1.375,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-opus-4-5-20251101-v1:0": {
- id: "eu.anthropic.claude-opus-4-5-20251101-v1:0",
- name: "Claude Opus 4.5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 27.5,
- cacheRead: 0.55,
- cacheWrite: 6.875,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-opus-4-6-v1": {
- id: "eu.anthropic.claude-opus-4-6-v1",
- name: "Claude Opus 4.6 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 27.5,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-opus-4-7": {
- id: "eu.anthropic.claude-opus-4-7",
- name: "Claude Opus 4.7 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 27.5,
- cacheRead: 0.55,
- cacheWrite: 6.875,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-opus-4-8": {
- id: "eu.anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 27.5,
- cacheRead: 0.55,
- cacheWrite: 6.875,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-opus-5": {
- id: "eu.anthropic.claude-opus-5",
- name: "Claude Opus 5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 27.5,
- cacheRead: 0.55,
- cacheWrite: 6.875,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "eu.anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3.3,
- output: 16.5,
- cacheRead: 0.33,
- cacheWrite: 4.125,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-sonnet-4-6": {
- id: "eu.anthropic.claude-sonnet-4-6",
- name: "Claude Sonnet 4.6 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3.3,
- output: 16.5,
- cacheRead: 0.33,
- cacheWrite: 4.125,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "eu.anthropic.claude-sonnet-5": {
- id: "eu.anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5 (EU)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.eu-central-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.2,
- output: 11,
- cacheRead: 0.22,
- cacheWrite: 2.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-fable-5": {
- id: "global.anthropic.claude-fable-5",
- name: "Claude Fable 5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-fable-5-1": {
- id: "global.anthropic.claude-fable-5-1",
- name: "Claude Fable 5.1 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "global.anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-opus-4-5-20251101-v1:0": {
- id: "global.anthropic.claude-opus-4-5-20251101-v1:0",
- name: "Claude Opus 4.5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-opus-4-6-v1": {
- id: "global.anthropic.claude-opus-4-6-v1",
- name: "Claude Opus 4.6 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-opus-4-7": {
- id: "global.anthropic.claude-opus-4-7",
- name: "Claude Opus 4.7 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-opus-4-8": {
- id: "global.anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-opus-5": {
- id: "global.anthropic.claude-opus-5",
- name: "Claude Opus 5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-sonnet-4-6": {
- id: "global.anthropic.claude-sonnet-4-6",
- name: "Claude Sonnet 4.6 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.anthropic.claude-sonnet-5": {
- id: "global.anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5 (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.openai.gpt-5.6-luna": {
- id: "global.openai.gpt-5.6-luna",
- name: "GPT-5.6 Luna (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.openai.gpt-5.6-sol": {
- id: "global.openai.gpt-5.6-sol",
- name: "GPT-5.6 Sol (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "global.openai.gpt-5.6-terra": {
- id: "global.openai.gpt-5.6-terra",
- name: "GPT-5.6 Terra (Global)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "google.gemma-3-27b-it": {
- id: "google.gemma-3-27b-it",
- name: "Google Gemma 3 27B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.12,
- output: 0.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "google.gemma-3-4b-it": {
- id: "google.gemma-3-4b-it",
- name: "Gemma 3 4B IT",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.04,
- output: 0.08,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "jp.anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-opus-4-7": {
- id: "jp.anthropic.claude-opus-4-7",
- name: "Claude Opus 4.7 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-opus-4-8": {
- id: "jp.anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-opus-5": {
- id: "jp.anthropic.claude-opus-5",
- name: "Claude Opus 5 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "jp.anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-sonnet-4-6": {
- id: "jp.anthropic.claude-sonnet-4-6",
- name: "Claude Sonnet 4.6 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "jp.anthropic.claude-sonnet-5": {
- id: "jp.anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5 (JP)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.ap-northeast-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "meta.llama3-1-70b-instruct-v1:0": {
- id: "meta.llama3-1-70b-instruct-v1:0",
- name: "Llama 3.1 70B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.72,
- output: 0.72,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "meta.llama3-1-8b-instruct-v1:0": {
- id: "meta.llama3-1-8b-instruct-v1:0",
- name: "Llama 3.1 8B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.22,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "meta.llama3-3-70b-instruct-v1:0": {
- id: "meta.llama3-3-70b-instruct-v1:0",
- name: "Llama 3.3 70B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.72,
- output: 0.72,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "meta.llama4-maverick-17b-instruct-v1:0": {
- id: "meta.llama4-maverick-17b-instruct-v1:0",
- name: "Llama 4 Maverick 17B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.24,
- output: 0.97,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "meta.llama4-scout-17b-instruct-v1:0": {
- id: "meta.llama4-scout-17b-instruct-v1:0",
- name: "Llama 4 Scout 17B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.17,
- output: 0.66,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 3500000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "minimax.minimax-m2": {
- id: "minimax.minimax-m2",
- name: "MiniMax M2",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204608,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "minimax.minimax-m2.1": {
- id: "minimax.minimax-m2.1",
- name: "MiniMax M2.1",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "minimax.minimax-m2.5": {
- id: "minimax.minimax-m2.5",
- name: "MiniMax M2.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 196608,
- maxTokens: 98304,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.devstral-2-123b": {
- id: "mistral.devstral-2-123b",
- name: "Devstral 2 123B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.magistral-small-2509": {
- id: "mistral.magistral-small-2509",
- name: "Magistral Small 1.2",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 40000,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.ministral-3-14b-instruct": {
- id: "mistral.ministral-3-14b-instruct",
- name: "Ministral 14B 3.0",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.2,
- output: 0.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.ministral-3-3b-instruct": {
- id: "mistral.ministral-3-3b-instruct",
- name: "Ministral 3 3B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.ministral-3-8b-instruct": {
- id: "mistral.ministral-3-8b-instruct",
- name: "Ministral 3 8B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.mistral-large-3-675b-instruct": {
- id: "mistral.mistral-large-3-675b-instruct",
- name: "Mistral Large 3",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.pixtral-large-2502-v1:0": {
- id: "mistral.pixtral-large-2502-v1:0",
- name: "Pixtral Large (25.02)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.voxtral-mini-3b-2507": {
- id: "mistral.voxtral-mini-3b-2507",
- name: "Voxtral Mini 3B 2507",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.04,
- output: 0.04,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "mistral.voxtral-small-24b-2507": {
- id: "mistral.voxtral-small-24b-2507",
- name: "Voxtral Small 24B 2507",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.35,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "moonshot.kimi-k2-thinking": {
- id: "moonshot.kimi-k2-thinking",
- name: "Kimi K2 Thinking",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262143,
- maxTokens: 16000,
- } satisfies Model<"bedrock-converse-stream">,
- "moonshotai.kimi-k2.5": {
- id: "moonshotai.kimi-k2.5",
- name: "Kimi K2.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262143,
- maxTokens: 16000,
- } satisfies Model<"bedrock-converse-stream">,
- "nvidia.nemotron-nano-12b-v2": {
- id: "nvidia.nemotron-nano-12b-v2",
- name: "NVIDIA Nemotron Nano 12B v2 VL BF16",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "nvidia.nemotron-nano-3-30b": {
- id: "nvidia.nemotron-nano-3-30b",
- name: "NVIDIA Nemotron Nano 3 30B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "nvidia.nemotron-nano-9b-v2": {
- id: "nvidia.nemotron-nano-9b-v2",
- name: "NVIDIA Nemotron Nano 9B v2",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.23,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"bedrock-converse-stream">,
- "nvidia.nemotron-super-3-120b": {
- id: "nvidia.nemotron-super-3-120b",
- name: "NVIDIA Nemotron 3 Super 120B A12B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.65,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-5.4": {
- id: "openai.gpt-5.4",
- name: "GPT-5.4",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.75,
- output: 16.5,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-5.5": {
- id: "openai.gpt-5.5",
- name: "GPT-5.5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5.5,
- output: 33,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-5.6-luna": {
- id: "openai.gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.22,
- output: 1.32,
- cacheRead: 0.022,
- cacheWrite: 0.275,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-5.6-sol": {
- id: "openai.gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4.4,
- output: 22,
- cacheRead: 0.44,
- cacheWrite: 5.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-5.6-terra": {
- id: "openai.gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.2,
- output: 13.2,
- cacheRead: 0.22,
- cacheWrite: 2.75,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-120b": {
- id: "openai.gpt-oss-120b",
- name: "gpt-oss-120b",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-120b-1:0": {
- id: "openai.gpt-oss-120b-1:0",
- name: "gpt-oss-120b",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-20b": {
- id: "openai.gpt-oss-20b",
- name: "gpt-oss-20b",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-20b-1:0": {
- id: "openai.gpt-oss-20b-1:0",
- name: "gpt-oss-20b",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-safeguard-120b": {
- id: "openai.gpt-oss-safeguard-120b",
- name: "GPT OSS Safeguard 120B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "openai.gpt-oss-safeguard-20b": {
- id: "openai.gpt-oss-safeguard-20b",
- name: "GPT OSS Safeguard 20B",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-235b-a22b-2507-v1:0": {
- id: "qwen.qwen3-235b-a22b-2507-v1:0",
- name: "Qwen3 235B A22B 2507",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.88,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-32b-v1:0": {
- id: "qwen.qwen3-32b-v1:0",
- name: "Qwen3 32B (dense)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 16384,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-coder-30b-a3b-v1:0": {
- id: "qwen.qwen3-coder-30b-a3b-v1:0",
- name: "Qwen3 Coder 30B A3B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-coder-480b-a35b-v1:0": {
- id: "qwen.qwen3-coder-480b-a35b-v1:0",
- name: "Qwen3 Coder 480B A35B Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 1.8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-coder-next": {
- id: "qwen.qwen3-coder-next",
- name: "Qwen3 Coder Next",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 1.8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-next-80b-a3b": {
- id: "qwen.qwen3-next-80b-a3b",
- name: "Qwen/Qwen3-Next-80B-A3B-Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 1.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262000,
- maxTokens: 262000,
- } satisfies Model<"bedrock-converse-stream">,
- "qwen.qwen3-vl-235b-a22b": {
- id: "qwen.qwen3-vl-235b-a22b",
- name: "Qwen/Qwen3-VL-235B-A22B-Instruct",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262000,
- maxTokens: 262000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-fable-5": {
- id: "us.anthropic.claude-fable-5",
- name: "Claude Fable 5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-fable-5-1": {
- id: "us.anthropic.claude-fable-5-1",
- name: "Claude Fable 5.1 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 11,
- output: 55,
- cacheRead: 0.275,
- cacheWrite: 13.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-haiku-4-5-20251001-v1:0": {
- id: "us.anthropic.claude-haiku-4-5-20251001-v1:0",
- name: "Claude Haiku 4.5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-4-1-20250805-v1:0": {
- id: "us.anthropic.claude-opus-4-1-20250805-v1:0",
- name: "Claude Opus 4.1 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-4-5-20251101-v1:0": {
- id: "us.anthropic.claude-opus-4-5-20251101-v1:0",
- name: "Claude Opus 4.5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-4-6-v1": {
- id: "us.anthropic.claude-opus-4-6-v1",
- name: "Claude Opus 4.6 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-4-7": {
- id: "us.anthropic.claude-opus-4-7",
- name: "Claude Opus 4.7 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-4-8": {
- id: "us.anthropic.claude-opus-4-8",
- name: "Claude Opus 4.8 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-opus-5": {
- id: "us.anthropic.claude-opus-5",
- name: "Claude Opus 5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-sonnet-4-5-20250929-v1:0": {
- id: "us.anthropic.claude-sonnet-4-5-20250929-v1:0",
- name: "Claude Sonnet 4.5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-sonnet-4-6": {
- id: "us.anthropic.claude-sonnet-4-6",
- name: "Claude Sonnet 4.6 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.anthropic.claude-sonnet-5": {
- id: "us.anthropic.claude-sonnet-5",
- name: "Claude Sonnet 5 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"bedrock-converse-stream">,
- "us.deepseek.r1-v1:0": {
- id: "us.deepseek.r1-v1:0",
- name: "DeepSeek-R1 (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.35,
- output: 5.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32768,
- } satisfies Model<"bedrock-converse-stream">,
- "us.meta.llama4-maverick-17b-instruct-v1:0": {
- id: "us.meta.llama4-maverick-17b-instruct-v1:0",
- name: "Llama 4 Maverick 17B Instruct (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.24,
- output: 0.97,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "us.meta.llama4-scout-17b-instruct-v1:0": {
- id: "us.meta.llama4-scout-17b-instruct-v1:0",
- name: "Llama 4 Scout 17B Instruct (US)",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.17,
- output: 0.66,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 3500000,
- maxTokens: 16384,
- } satisfies Model<"bedrock-converse-stream">,
- "writer.palmyra-x4-v1:0": {
- id: "writer.palmyra-x4-v1:0",
- name: "Palmyra X4",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 122880,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "writer.palmyra-x5-v1:0": {
- id: "writer.palmyra-x5-v1:0",
- name: "Palmyra X5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1040000,
- maxTokens: 8192,
- } satisfies Model<"bedrock-converse-stream">,
- "xai.grok-4.3": {
- id: "xai.grok-4.3",
- name: "Grok 4.3",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "xai.grok-4.6": {
- id: "xai.grok-4.6",
- name: "Grok 4.6",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2.2,
- output: 6.6,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"bedrock-converse-stream">,
- "zai.glm-4.7": {
- id: "zai.glm-4.7",
- name: "GLM-4.7",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "zai.glm-4.7-flash": {
- id: "zai.glm-4.7-flash",
- name: "GLM-4.7-Flash",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 131072,
- } satisfies Model<"bedrock-converse-stream">,
- "zai.glm-5": {
- id: "zai.glm-5",
- name: "GLM-5",
- api: "bedrock-converse-stream",
- provider: "amazon-bedrock",
- baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 101376,
- } satisfies Model<"bedrock-converse-stream">,
- },
- "anthropic": {
- "claude-fable-5": {
- id: "claude-fable-5",
- name: "Claude Fable 5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-fable-5-1": {
- id: "claude-fable-5-1",
- name: "Claude Fable 5.1",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-haiku-4-5": {
- id: "claude-haiku-4-5",
- name: "Claude Haiku 4.5 (latest)",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-haiku-4-5-20251001": {
- id: "claude-haiku-4-5-20251001",
- name: "Claude Haiku 4.5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-5": {
- id: "claude-opus-4-5",
- name: "Claude Opus 4.5 (latest)",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-5-20251101": {
- id: "claude-opus-4-5-20251101",
- name: "Claude Opus 4.5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-6": {
- id: "claude-opus-4-6",
- name: "Claude Opus 4.6",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-7": {
- id: "claude-opus-4-7",
- name: "Claude Opus 4.7",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-8": {
- id: "claude-opus-4-8",
- name: "Claude Opus 4.8",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-5": {
- id: "claude-opus-5",
- name: "Claude Opus 5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4-5": {
- id: "claude-sonnet-4-5",
- name: "Claude Sonnet 4.5 (latest)",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4-5-20250929": {
- id: "claude-sonnet-4-5-20250929",
- name: "Claude Sonnet 4.5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4-6": {
- id: "claude-sonnet-4-6",
- name: "Claude Sonnet 4.6",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-5": {
- id: "claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "anthropic-messages",
- provider: "anthropic",
- baseUrl: "https://api.anthropic.com",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- },
- "azure-openai-responses": {
- "gpt-4": {
- id: "gpt-4",
- name: "GPT-4",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 30,
- output: 60,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 8192,
- maxTokens: 8192,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4-turbo": {
- id: "gpt-4-turbo",
- name: "GPT-4 Turbo",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4.1": {
- id: "gpt-4.1",
- name: "GPT-4.1",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4.1-mini": {
- id: "gpt-4.1-mini",
- name: "GPT-4.1 mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4.1-nano": {
- id: "gpt-4.1-nano",
- name: "GPT-4.1 nano",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4o": {
- id: "gpt-4o",
- name: "GPT-4o",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4o-2024-05-13": {
- id: "gpt-4o-2024-05-13",
- name: "GPT-4o (2024-05-13)",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4o-2024-08-06": {
- id: "gpt-4o-2024-08-06",
- name: "GPT-4o (2024-08-06)",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4o-2024-11-20": {
- id: "gpt-4o-2024-11-20",
- name: "GPT-4o (2024-11-20)",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-4o-mini": {
- id: "gpt-4o-mini",
- name: "GPT-4o mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5": {
- id: "gpt-5",
- name: "GPT-5",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5-chat-latest": {
- id: "gpt-5-chat-latest",
- name: "GPT-5 Chat Latest",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5-mini": {
- id: "gpt-5-mini",
- name: "GPT-5 Mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5-nano": {
- id: "gpt-5-nano",
- name: "GPT-5 Nano",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.05,
- output: 0.4,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5-pro": {
- id: "gpt-5-pro",
- name: "GPT-5 Pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 120,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 272000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.1": {
- id: "gpt-5.1",
- name: "GPT-5.1",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.1-codex": {
- id: "gpt-5.1-codex",
- name: "GPT-5.1 Codex",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 5,
- cacheRead: 0.125,
- cacheWrite: 1.25,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.1-codex-max": {
- id: "gpt-5.1-codex-max",
- name: "GPT-5.1 Codex Max",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.2": {
- id: "gpt-5.2",
- name: "GPT-5.2",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.2-chat-latest": {
- id: "gpt-5.2-chat-latest",
- name: "GPT-5.2 Chat",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.2-pro": {
- id: "gpt-5.2-pro",
- name: "GPT-5.2 Pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 21,
- output: 168,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.3-chat-latest": {
- id: "gpt-5.3-chat-latest",
- name: "GPT-5.3 Chat (latest)",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: false,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.3-codex": {
- id: "gpt-5.3-codex",
- name: "GPT-5.3 Codex",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.3-codex-spark": {
- id: "gpt-5.3-codex-spark",
- name: "GPT-5.3 Codex Spark",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.4-nano": {
- id: "gpt-5.4-nano",
- name: "GPT-5.4 nano",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.4-pro": {
- id: "gpt-5.4-pro",
- name: "GPT-5.4 Pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.5-pro": {
- id: "gpt-5.5-pro",
- name: "GPT-5.5 Pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.6": {
- id: "gpt-5.6",
- name: "GPT-5.6",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-6-astra": {
- id: "gpt-6-astra",
- name: "GPT-6 Astra",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max","off":null},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"azure-openai-responses">,
- "gpt-realtime-2.1": {
- id: "gpt-realtime-2.1",
- name: "GPT-Realtime-2.1",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 24,
- cacheRead: 0.4,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32000,
- } satisfies Model<"azure-openai-responses">,
- "o1": {
- id: "o1",
- name: "o1",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 60,
- cacheRead: 7.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- "o1-pro": {
- id: "o1-pro",
- name: "o1-pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 150,
- output: 600,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- "o3": {
- id: "o3",
- name: "o3",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- "o3-mini": {
- id: "o3-mini",
- name: "o3-mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- "o3-pro": {
- id: "o3-pro",
- name: "o3-pro",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 20,
- output: 80,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- "o4-mini": {
- id: "o4-mini",
- name: "o4-mini",
- api: "azure-openai-responses",
- provider: "azure-openai-responses",
- baseUrl: "",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"azure-openai-responses">,
- },
- "cerebras": {
- "gemma-4-31b": {
- id: "gemma-4-31b",
- name: "Gemma 4 31B IT",
- api: "openai-completions",
- provider: "cerebras",
- baseUrl: "https://api.cerebras.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.99,
- output: 1.49,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 40960,
- } satisfies Model<"openai-completions">,
- "gpt-oss-120b": {
- id: "gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "openai-completions",
- provider: "cerebras",
- baseUrl: "https://api.cerebras.ai/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.35,
- output: 0.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 40960,
- } satisfies Model<"openai-completions">,
- },
- "cloudflare-ai-gateway": {
- "claude-fable-5": {
- id: "claude-fable-5",
- name: "Claude Fable 5",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-fable-5.1": {
- id: "claude-fable-5.1",
- name: "Claude Fable 5.1",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-haiku-4.5": {
- id: "claude-haiku-4.5",
- name: "Claude Haiku 4.5 (latest)",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.5": {
- id: "claude-opus-4.5",
- name: "Claude Opus 4.5 (latest)",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.6": {
- id: "claude-opus-4.6",
- name: "Claude Opus 4.6",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.7": {
- id: "claude-opus-4.7",
- name: "Claude Opus 4.7",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.8": {
- id: "claude-opus-4.8",
- name: "Claude Opus 4.8",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-5": {
- id: "claude-opus-5",
- name: "Claude Opus 5",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4.5": {
- id: "claude-sonnet-4.5",
- name: "Claude Sonnet 4.5 (latest)",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4.6": {
- id: "claude-sonnet-4.6",
- name: "Claude Sonnet 4.6",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-5": {
- id: "claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "anthropic-messages",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "gpt-4.1": {
- id: "gpt-4.1",
- name: "GPT-4.1",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4.1-mini": {
- id: "gpt-4.1-mini",
- name: "GPT-4.1 mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4.1-nano": {
- id: "gpt-4.1-nano",
- name: "GPT-4.1 nano",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4o": {
- id: "gpt-4o",
- name: "GPT-4o",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 5,
- cacheRead: 0.625,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-4o-mini": {
- id: "gpt-4o-mini",
- name: "GPT-4o mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0.0375,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-5": {
- id: "gpt-5",
- name: "GPT-5",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-mini": {
- id: "gpt-5-mini",
- name: "GPT-5 Mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-nano": {
- id: "gpt-5-nano",
- name: "GPT-5 Nano",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.05,
- output: 0.4,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1": {
- id: "gpt-5.1",
- name: "GPT-5.1",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-nano": {
- id: "gpt-5.4-nano",
- name: "GPT-5.4 nano",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-pro": {
- id: "gpt-5.4-pro",
- name: "GPT-5.4 Pro",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5-pro": {
- id: "gpt-5.5-pro",
- name: "GPT-5.5 Pro",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.25,
- cacheWrite: 3.125,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "o3": {
- id: "o3",
- name: "o3",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o3-mini": {
- id: "o3-mini",
- name: "o3-mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o4-mini": {
- id: "o4-mini",
- name: "o4-mini",
- api: "openai-responses",
- provider: "cloudflare-ai-gateway",
- baseUrl: "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/openai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- },
- "cloudflare-workers-ai": {
- "@cf/deepseek-ai/deepseek-v4-flash-0731": {
- id: "@cf/deepseek-ai/deepseek-v4-flash-0731",
- name: "DeepSeek V4 Flash 0731",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true,"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.44,
- output: 1.32,
- cacheRead: 0.014,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- "@cf/deepseek-ai/deepseek-v4-pro-0813": {
- id: "@cf/deepseek-ai/deepseek-v4-pro-0813",
- name: "DeepSeek V4 Pro 0813",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true,"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 1.32,
- output: 3.96,
- cacheRead: 0.044,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- "@cf/google/gemma-4-26b-a4b-it": {
- id: "@cf/google/gemma-4-26b-a4b-it",
- name: "Gemma 4 26B A4B IT",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "@cf/ibm-granite/granite-4.0-h-micro": {
- id: "@cf/ibm-granite/granite-4.0-h-micro",
- name: "Granite 4.0 H Micro",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.017,
- output: 0.112,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131000,
- maxTokens: 131000,
- } satisfies Model<"openai-completions">,
- "@cf/meta/llama-3.3-70b-instruct-fp8-fast": {
- id: "@cf/meta/llama-3.3-70b-instruct-fp8-fast",
- name: "Llama 3.3 70B Instruct fp8 Fast",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.293,
- output: 2.253,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 24000,
- maxTokens: 24000,
- } satisfies Model<"openai-completions">,
- "@cf/meta/llama-4-scout-17b-16e-instruct": {
- id: "@cf/meta/llama-4-scout-17b-16e-instruct",
- name: "Llama 4 Scout 17B 16E Instruct",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.27,
- output: 0.85,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "@cf/mistralai/mistral-small-3.1-24b-instruct": {
- id: "@cf/mistralai/mistral-small-3.1-24b-instruct",
- name: "Mistral Small 3.1 24B Instruct",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.351,
- output: 0.555,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "@cf/moonshotai/kimi-k2.6": {
- id: "@cf/moonshotai/kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "@cf/moonshotai/kimi-k2.7-code": {
- id: "@cf/moonshotai/kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "@cf/nvidia/nemotron-3-120b-a12b": {
- id: "@cf/nvidia/nemotron-3-120b-a12b",
- name: "Nemotron 3 Super 120B",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "@cf/openai/gpt-oss-120b": {
- id: "@cf/openai/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.35,
- output: 0.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "@cf/openai/gpt-oss-20b": {
- id: "@cf/openai/gpt-oss-20b",
- name: "GPT OSS 20B",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.2,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "@cf/qwen/qwen3-30b-a3b-fp8": {
- id: "@cf/qwen/qwen3-30b-a3b-fp8",
- name: "Qwen3 30B A3b fp8",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.0509,
- output: 0.335,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "@cf/qwen/qwen3.8-27b": {
- id: "@cf/qwen/qwen3.8-27b",
- name: "Qwen3.8 27B",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.45,
- output: 3.2,
- cacheRead: 0.05,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "@cf/zai-org/glm-4.7-flash": {
- id: "@cf/zai-org/glm-4.7-flash",
- name: "GLM-4.7-Flash",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.0605,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "@cf/zai-org/glm-5.2": {
- id: "@cf/zai-org/glm-5.2",
- name: "Glm 5.2",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "@cf/zai-org/glm-5.3": {
- id: "@cf/zai-org/glm-5.3",
- name: "Glm 5.3",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 1310720,
- } satisfies Model<"openai-completions">,
- "@cf/zai-org/glm-5.3-flash": {
- id: "@cf/zai-org/glm-5.3-flash",
- name: "Glm 5.3 Flash",
- api: "openai-completions",
- provider: "cloudflare-workers-ai",
- baseUrl: "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- compat: {"sendSessionAffinityHeaders":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- },
- "deepseek": {
- "deepseek-v4-flash": {
- id: "deepseek-v4-flash",
- name: "DeepSeek V4 Flash",
- api: "openai-completions",
- provider: "deepseek",
- baseUrl: "https://api.deepseek.com",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-v4-pro": {
- id: "deepseek-v4-pro",
- name: "DeepSeek V4 Pro",
- api: "openai-completions",
- provider: "deepseek",
- baseUrl: "https://api.deepseek.com",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.003625,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- },
- "fireworks": {
- "accounts/fireworks/models/deepseek-v4-flash-0731": {
- id: "accounts/fireworks/models/deepseek-v4-flash-0731",
- name: "DeepSeek V4 Flash 0731",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.66,
- cacheRead: 0.007,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/deepseek-v4-flash-vision-exp": {
- id: "accounts/fireworks/models/deepseek-v4-flash-vision-exp",
- name: "DeepSeek V4 Flash Vision Exp",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.22,
- output: 0.66,
- cacheRead: 0.007,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/deepseek-v4-pro-0813": {
- id: "accounts/fireworks/models/deepseek-v4-pro-0813",
- name: "DeepSeek V4 Pro 0813",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.32,
- output: 3.96,
- cacheRead: 0.044,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/glm-5p2": {
- id: "accounts/fireworks/models/glm-5p2",
- name: "GLM 5.2",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.14,
- cacheWrite: 0,
- },
- contextWindow: 1048575,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/glm-5p3": {
- id: "accounts/fireworks/models/glm-5p3",
- name: "GLM 5.3",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/glm-5p3-flash": {
- id: "accounts/fireworks/models/glm-5p3-flash",
- name: "GLM 5.3 Flash",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/gpt-oss-120b": {
- id: "accounts/fireworks/models/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/inkling": {
- id: "accounts/fireworks/models/inkling",
- name: "Inkling",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 4.05,
- cacheRead: 0.17,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/kimi-k2p6": {
- id: "accounts/fireworks/models/kimi-k2p6",
- name: "Kimi K2.6",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262000,
- maxTokens: 262000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/kimi-k2p7-code": {
- id: "accounts/fireworks/models/kimi-k2p7-code",
- name: "Kimi K2.7 Code",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262000,
- maxTokens: 262000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/kimi-k3": {
- id: "accounts/fireworks/models/kimi-k3",
- name: "Kimi K3",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/minimax-m3": {
- id: "accounts/fireworks/models/minimax-m3",
- name: "MiniMax-M3",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 512000,
- maxTokens: 512000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/muse-glimmer-30b": {
- id: "accounts/fireworks/models/muse-glimmer-30b",
- name: "Muse Glimmer 30B",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.35,
- output: 1.5,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/nemotron-3-ultra-nvfp4": {
- id: "accounts/fireworks/models/nemotron-3-ultra-nvfp4",
- name: "Nemotron 3 Ultra 550B A55B",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.119,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/nemotron-lightning-3p5-30b-a3b": {
- id: "accounts/fireworks/models/nemotron-lightning-3p5-30b-a3b",
- name: "Nemotron 3.5 Lightning 30B A3B",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.05,
- output: 0.2,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/qwen3p7-plus": {
- id: "accounts/fireworks/models/qwen3p7-plus",
- name: "Qwen 3.7 Plus",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0.08,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/qwen3p8-2p4t-a95b": {
- id: "accounts/fireworks/models/qwen3p8-2p4t-a95b",
- name: "Qwen3.8 2.4T A95B",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/models/qwen3p8-max": {
- id: "accounts/fireworks/models/qwen3p8-max",
- name: "Qwen3.8 Max",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/routers/glm-5p2-fast": {
- id: "accounts/fireworks/routers/glm-5p2-fast",
- name: "GLM 5.2 Fast",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.1,
- output: 6.6,
- cacheRead: 0.21,
- cacheWrite: 0,
- },
- contextWindow: 1048575,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "accounts/fireworks/routers/kimi-k3-fast": {
- id: "accounts/fireworks/routers/kimi-k3-fast",
- name: "Kimi K3 Fast",
- api: "anthropic-messages",
- provider: "fireworks",
- baseUrl: "https://api.fireworks.ai/inference",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4.5,
- output: 22.5,
- cacheRead: 0.45,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "github-copilot": {
- "claude-fable-5": {
- id: "claude-fable-5",
- name: "Claude Fable 5",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-fable-5.1": {
- id: "claude-fable-5.1",
- name: "Claude Fable 5.1",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-haiku-4.5": {
- id: "claude-haiku-4.5",
- name: "Claude Haiku 4.5 (latest)",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsEagerToolInputStreaming":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.7": {
- id: "claude-opus-4.7",
- name: "Claude Opus 4.7",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4.8": {
- id: "claude-opus-4.8",
- name: "Claude Opus 4.8",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-5": {
- id: "claude-opus-5",
- name: "Claude Opus 5",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4.6": {
- id: "claude-sonnet-4.6",
- name: "Claude Sonnet 4.6",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-5": {
- id: "claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "anthropic-messages",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "gemini-3.5-flash": {
- id: "gemini-3.5-flash",
- name: "Gemini 3.5 Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "gemini-3.6-flash": {
- id: "gemini-3.6-flash",
- name: "Gemini 3.6 Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "gemini-3.7-flash": {
- id: "gemini-3.7-flash",
- name: "Gemini 3.7 Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "gemini-3.8-flash": {
- id: "gemini-3.8-flash",
- name: "Gemini 3.8 Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "gpt-5-mini": {
- id: "gpt-5-mini",
- name: "GPT-5 Mini",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 264000,
- maxTokens: 64000,
- } satisfies Model<"openai-responses">,
- "gpt-5.3-codex": {
- id: "gpt-5.3-codex",
- name: "GPT-5.3 Codex",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 mini",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-nano": {
- id: "gpt-5.4-nano",
- name: "GPT-5.4 nano",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-6-astra": {
- id: "gpt-6-astra",
- name: "GPT-6 Astra",
- api: "openai-responses",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max","off":null},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "grok-4.5": {
- id: "grok-4.5",
- name: "Grok 4.5",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "grok-4.6": {
- id: "grok-4.6",
- name: "Grok 4.6",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code": {
- id: "kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "kimi-k3": {
- id: "kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "mai-code-1-flash-picker": {
- id: "mai-code-1-flash-picker",
- name: "MAI-Code-1-Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "mai-code-1.1-flash": {
- id: "mai-code-1.1-flash",
- name: "MAI-Code-1.1-Flash",
- api: "openai-completions",
- provider: "github-copilot",
- baseUrl: "https://api.individual.githubcopilot.com",
- headers: {"User-Agent":"GitHubCopilotChat/0.48.1","Editor-Version":"vscode/1.136.1","Editor-Plugin-Version":"copilot-chat/0.48.1","Copilot-Integration-Id":"vscode-chat"},
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- },
- "google": {
- "gemini-2.5-flash": {
- id: "gemini-2.5-flash",
- name: "Gemini 2.5 Flash",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-2.5-flash-lite": {
- id: "gemini-2.5-flash-lite",
- name: "Gemini 2.5 Flash-Lite",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-2.5-pro": {
- id: "gemini-2.5-pro",
- name: "Gemini 2.5 Pro",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3-flash-preview": {
- id: "gemini-3-flash-preview",
- name: "Gemini 3 Flash Preview",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.05,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.1-flash-lite": {
- id: "gemini-3.1-flash-lite",
- name: "Gemini 3.1 Flash Lite",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.5,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.1-flash-lite-preview": {
- id: "gemini-3.1-flash-lite-preview",
- name: "Gemini 3.1 Flash Lite Preview",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.5,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.1-pro-preview": {
- id: "gemini-3.1-pro-preview",
- name: "Gemini 3.1 Pro Preview",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.1-pro-preview-customtools": {
- id: "gemini-3.1-pro-preview-customtools",
- name: "Gemini 3.1 Pro Preview Custom Tools",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.5-flash": {
- id: "gemini-3.5-flash",
- name: "Gemini 3.5 Flash",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.5-flash-lite": {
- id: "gemini-3.5-flash-lite",
- name: "Gemini 3.5 Flash Lite",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.6-flash": {
- id: "gemini-3.6-flash",
- name: "Gemini 3.6 Flash",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.7-flash": {
- id: "gemini-3.7-flash",
- name: "Gemini 3.7 Flash",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.8-flash": {
- id: "gemini-3.8-flash",
- name: "Gemini 3.8 Flash",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-flash-latest": {
- id: "gemini-flash-latest",
- name: "Gemini Flash Latest",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-flash-lite-latest": {
- id: "gemini-flash-lite-latest",
- name: "Gemini Flash-Lite Latest",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemma-4-26b-a4b-it": {
- id: "gemma-4-26b-a4b-it",
- name: "Gemma 4 26B A4B IT",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"MINIMAL","low":null,"medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"google-generative-ai">,
- "gemma-4-31b-it": {
- id: "gemma-4-31b-it",
- name: "Gemma 4 31B IT",
- api: "google-generative-ai",
- provider: "google",
- baseUrl: "https://generativelanguage.googleapis.com/v1beta",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"MINIMAL","low":null,"medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"google-generative-ai">,
- },
- "google-vertex": {
- "gemini-1.5-flash": {
- id: "gemini-1.5-flash",
- name: "Gemini 1.5 Flash (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0.01875,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 8192,
- } satisfies Model<"google-vertex">,
- "gemini-1.5-flash-8b": {
- id: "gemini-1.5-flash-8b",
- name: "Gemini 1.5 Flash-8B (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.0375,
- output: 0.15,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 8192,
- } satisfies Model<"google-vertex">,
- "gemini-1.5-pro": {
- id: "gemini-1.5-pro",
- name: "Gemini 1.5 Pro (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 5,
- cacheRead: 0.3125,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 8192,
- } satisfies Model<"google-vertex">,
- "gemini-2.0-flash": {
- id: "gemini-2.0-flash",
- name: "Gemini 2.0 Flash (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.0375,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 8192,
- } satisfies Model<"google-vertex">,
- "gemini-2.0-flash-lite": {
- id: "gemini-2.0-flash-lite",
- name: "Gemini 2.0 Flash Lite (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0.01875,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-2.5-flash": {
- id: "gemini-2.5-flash",
- name: "Gemini 2.5 Flash (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-2.5-flash-lite": {
- id: "gemini-2.5-flash-lite",
- name: "Gemini 2.5 Flash Lite (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-2.5-flash-lite-preview-09-2025": {
- id: "gemini-2.5-flash-lite-preview-09-2025",
- name: "Gemini 2.5 Flash Lite Preview 09-25 (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-2.5-pro": {
- id: "gemini-2.5-pro",
- name: "Gemini 2.5 Pro (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-3-flash-preview": {
- id: "gemini-3-flash-preview",
- name: "Gemini 3 Flash Preview (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.05,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-3-pro-preview": {
- id: "gemini-3-pro-preview",
- name: "Gemini 3 Pro Preview (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"google-vertex">,
- "gemini-3.1-pro-preview": {
- id: "gemini-3.1-pro-preview",
- name: "Gemini 3.1 Pro Preview (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- "gemini-3.1-pro-preview-customtools": {
- id: "gemini-3.1-pro-preview-customtools",
- name: "Gemini 3.1 Pro Preview Custom Tools (Vertex)",
- api: "google-vertex",
- provider: "google-vertex",
- baseUrl: "https://{location}-aiplatform.googleapis.com",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-vertex">,
- },
- "groq": {
- "llama-3.1-8b-instant": {
- id: "llama-3.1-8b-instant",
- name: "Llama 3.1 8B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.05,
- output: 0.08,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "llama-3.3-70b-versatile": {
- id: "llama-3.3-70b-versatile",
- name: "Llama 3.3 70B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.59,
- output: 0.79,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-120b": {
- id: "openai/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-20b": {
- id: "openai/gpt-oss-20b",
- name: "GPT OSS 20B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0.0375,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-safeguard-20b": {
- id: "openai/gpt-oss-safeguard-20b",
- name: "Safety GPT OSS 20B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-27b": {
- id: "qwen/qwen3.6-27b",
- name: "Qwen3.6 27B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-27b": {
- id: "qwen/qwen3.8-27b",
- name: "Qwen3.8 27B",
- api: "openai-completions",
- provider: "groq",
- baseUrl: "https://api.groq.com/openai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.8,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131042,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- },
- "huggingface": {
- "MiniMaxAI/MiniMax-M2": {
- id: "MiniMaxAI/MiniMax-M2",
- name: "MiniMax-M2",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "MiniMaxAI/MiniMax-M2.1": {
- id: "MiniMaxAI/MiniMax-M2.1",
- name: "MiniMax-M2.1",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "MiniMaxAI/MiniMax-M2.5": {
- id: "MiniMaxAI/MiniMax-M2.5",
- name: "MiniMax-M2.5",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "MiniMaxAI/MiniMax-M2.7": {
- id: "MiniMaxAI/MiniMax-M2.7",
- name: "MiniMax-M2.7",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "MiniMaxAI/MiniMax-M3": {
- id: "MiniMaxAI/MiniMax-M3",
- name: "MiniMax-M3",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 524288,
- maxTokens: 512000,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen2.5-Coder-32B-Instruct": {
- id: "Qwen/Qwen2.5-Coder-32B-Instruct",
- name: "Qwen2.5-Coder-32B-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-235B-A22B": {
- id: "Qwen/Qwen3-235B-A22B",
- name: "Qwen3 235B-A22B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.2,
- output: 0.8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 40960,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-235B-A22B-Instruct-2507": {
- id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
- name: "Qwen3 235B-A22B Instruct 2507",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.855,
- output: 2.565,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-235B-A22B-Thinking-2507": {
- id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
- name: "Qwen3-235B-A22B-Thinking-2507",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-30B-A3B": {
- id: "Qwen/Qwen3-30B-A3B",
- name: "Qwen3 30B A3B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 40960,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-32B": {
- id: "Qwen/Qwen3-32B",
- name: "Qwen3 32B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.29,
- output: 0.59,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
- id: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
- name: "Qwen3-Coder 30B-A3B Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.26,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
- id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
- name: "Qwen3-Coder-480B-A35B-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 66536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-Coder-Next": {
- id: "Qwen/Qwen3-Coder-Next",
- name: "Qwen3-Coder-Next",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.2,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-Next-80B-A3B-Instruct": {
- id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
- name: "Qwen3-Next-80B-A3B-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 66536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-Next-80B-A3B-Thinking": {
- id: "Qwen/Qwen3-Next-80B-A3B-Thinking",
- name: "Qwen3-Next-80B-A3B-Thinking",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-VL-235B-A22B-Instruct": {
- id: "Qwen/Qwen3-VL-235B-A22B-Instruct",
- name: "Qwen3 VL 235B A22B Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3-VL-235B-A22B-Thinking": {
- id: "Qwen/Qwen3-VL-235B-A22B-Thinking",
- name: "Qwen3 VL 235B A22B Thinking",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.98,
- output: 3.95,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.5-122B-A10B": {
- id: "Qwen/Qwen3.5-122B-A10B",
- name: "Qwen3.5 122B-A10B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 3.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.5-27B": {
- id: "Qwen/Qwen3.5-27B",
- name: "Qwen3.5 27B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.5-35B-A3B": {
- id: "Qwen/Qwen3.5-35B-A3B",
- name: "Qwen3.5 35B-A3B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.5-397B-A17B": {
- id: "Qwen/Qwen3.5-397B-A17B",
- name: "Qwen3.5-397B-A17B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.5-9B": {
- id: "Qwen/Qwen3.5-9B",
- name: "Qwen3.5 9B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.17,
- output: 0.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.6-27B": {
- id: "Qwen/Qwen3.6-27B",
- name: "Qwen3.6 27B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.47,
- output: 3.19,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.6-35B-A3B": {
- id: "Qwen/Qwen3.6-35B-A3B",
- name: "Qwen3.6 35B-A3B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.95,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.8-2.4T-A95B": {
- id: "Qwen/Qwen3.8-2.4T-A95B",
- name: "Qwen3.8 2.4T A95B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 6.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "Qwen/Qwen3.8-27B": {
- id: "Qwen/Qwen3.8-27B",
- name: "Qwen3.8 27B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "XiaomiMiMo/MiMo-V2-Flash": {
- id: "XiaomiMiMo/MiMo-V2-Flash",
- name: "MiMo-V2-Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "XiaomiMiMo/MiMo-V2.5": {
- id: "XiaomiMiMo/MiMo-V2.5",
- name: "MiMo-V2.5",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "XiaomiMiMo/MiMo-V2.5-Pro": {
- id: "XiaomiMiMo/MiMo-V2.5-Pro",
- name: "MiMo-V2.5-Pro",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-R1": {
- id: "deepseek-ai/DeepSeek-R1",
- name: "DeepSeek-R1",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.7,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 64000,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-R1-0528": {
- id: "deepseek-ai/DeepSeek-R1-0528",
- name: "DeepSeek-R1-0528",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 3,
- output: 5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 163840,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V3": {
- id: "deepseek-ai/DeepSeek-V3",
- name: "DeepSeek-V3",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 1.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 64000,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V3-0324": {
- id: "deepseek-ai/DeepSeek-V3-0324",
- name: "DeepSeek V3 0324",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1.12,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 163840,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V3.1": {
- id: "deepseek-ai/DeepSeek-V3.1",
- name: "DeepSeek-V3.1",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V3.2": {
- id: "deepseek-ai/DeepSeek-V3.2",
- name: "DeepSeek-V3.2",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.28,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V4-Flash": {
- id: "deepseek-ai/DeepSeek-V4-Flash",
- name: "DeepSeek V4 Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V4-Flash-0731": {
- id: "deepseek-ai/DeepSeek-V4-Flash-0731",
- name: "DeepSeek V4 Flash 0731",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V4-Flash-Vision-Exp": {
- id: "deepseek-ai/DeepSeek-V4-Flash-Vision-Exp",
- name: "DeepSeek V4 Flash Vision Exp",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.44,
- output: 1.32,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V4-Pro": {
- id: "deepseek-ai/DeepSeek-V4-Pro",
- name: "DeepSeek V4 Pro",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.003625,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 393216,
- } satisfies Model<"openai-completions">,
- "deepseek-ai/DeepSeek-V4-Pro-0813": {
- id: "deepseek-ai/DeepSeek-V4-Pro-0813",
- name: "DeepSeek V4 Pro 0813",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.32,
- output: 3.96,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-26B-A4B-it": {
- id: "google/gemma-4-26B-A4B-it",
- name: "Gemma 4 26B A4B IT",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.13,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-31B-it": {
- id: "google/gemma-4-31B-it",
- name: "Gemma 4 31B IT",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "meta-llama/Llama-3.1-8B-Instruct": {
- id: "meta-llama/Llama-3.1-8B-Instruct",
- name: "Llama-3.1-8B-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.06,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "meta-llama/Llama-3.3-70B-Instruct": {
- id: "meta-llama/Llama-3.3-70B-Instruct",
- name: "Llama-3.3-70B-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.59,
- output: 0.79,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2-Instruct": {
- id: "moonshotai/Kimi-K2-Instruct",
- name: "Kimi-K2-Instruct",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2-Instruct-0905": {
- id: "moonshotai/Kimi-K2-Instruct-0905",
- name: "Kimi-K2-Instruct-0905",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2-Thinking": {
- id: "moonshotai/Kimi-K2-Thinking",
- name: "Kimi-K2-Thinking",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2.5": {
- id: "moonshotai/Kimi-K2.5",
- name: "Kimi-K2.5",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2.6": {
- id: "moonshotai/Kimi-K2.6",
- name: "Kimi-K2.6",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K2.7-Code": {
- id: "moonshotai/Kimi-K2.7-Code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "moonshotai/Kimi-K3": {
- id: "moonshotai/Kimi-K3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-120b": {
- id: "openai/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.69,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-20b": {
- id: "openai/gpt-oss-20b",
- name: "GPT OSS 20B",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "stepfun-ai/Step-3.5-Flash": {
- id: "stepfun-ai/Step-3.5-Flash",
- name: "Step 3.5 Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "stepfun-ai/Step-3.7-Flash": {
- id: "stepfun-ai/Step-3.7-Flash",
- name: "Step 3.7 Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "tencent/Hy3": {
- id: "tencent/Hy3",
- name: "Hy3",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.58,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/Inkling": {
- id: "thinkingmachines/Inkling",
- name: "Inkling",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 4.05,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/Inkling-Small": {
- id: "thinkingmachines/Inkling-Small",
- name: "Inkling Small",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 524288,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.5": {
- id: "zai-org/GLM-4.5",
- name: "GLM-4.5",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.5-Air": {
- id: "zai-org/GLM-4.5-Air",
- name: "GLM-4.5-Air",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.13,
- output: 0.85,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.5V": {
- id: "zai-org/GLM-4.5V",
- name: "GLM-4.5V",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 1.8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 65536,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.6": {
- id: "zai-org/GLM-4.6",
- name: "GLM-4.6",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.55,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.6V-Flash": {
- id: "zai-org/GLM-4.6V-Flash",
- name: "GLM-4.6V-Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 0.9,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.7": {
- id: "zai-org/GLM-4.7",
- name: "GLM-4.7",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-4.7-Flash": {
- id: "zai-org/GLM-4.7-Flash",
- name: "GLM-4.7-Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-5": {
- id: "zai-org/GLM-5",
- name: "GLM-5",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3.2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-5.1": {
- id: "zai-org/GLM-5.1",
- name: "GLM-5.1",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3.2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-5.2": {
- id: "zai-org/GLM-5.2",
- name: "GLM-5.2",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-5.3": {
- id: "zai-org/GLM-5.3",
- name: "GLM-5.3",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "zai-org/GLM-5.3-Flash": {
- id: "zai-org/GLM-5.3-Flash",
- name: "GLM-5.3-Flash",
- api: "openai-completions",
- provider: "huggingface",
- baseUrl: "https://router.huggingface.co/v1",
- compat: {"supportsDeveloperRole":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
- "kimi-coding": {
- "k3": {
- id: "k3",
- name: "Kimi K3",
- api: "anthropic-messages",
- provider: "kimi-coding",
- baseUrl: "https://api.kimi.com/coding",
- headers: {"User-Agent":"KimiCLI/1.5"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "k3-256k": {
- id: "k3-256k",
- name: "Kimi K3-256K",
- api: "anthropic-messages",
- provider: "kimi-coding",
- baseUrl: "https://api.kimi.com/coding",
- headers: {"User-Agent":"KimiCLI/1.5"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "kimi-for-coding": {
- id: "kimi-for-coding",
- name: "Kimi K2.7 Code",
- api: "anthropic-messages",
- provider: "kimi-coding",
- baseUrl: "https://api.kimi.com/coding",
- headers: {"User-Agent":"KimiCLI/1.5"},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "kimi-for-coding-highspeed": {
- id: "kimi-for-coding-highspeed",
- name: "Kimi For Coding HighSpeed",
- api: "anthropic-messages",
- provider: "kimi-coding",
- baseUrl: "https://api.kimi.com/coding",
- headers: {"User-Agent":"KimiCLI/1.5"},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- },
- "minimax": {
- "MiniMax-M2.7": {
- id: "MiniMax-M2.7",
- name: "MiniMax-M2.7",
- api: "anthropic-messages",
- provider: "minimax",
- baseUrl: "https://api.minimax.io/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "MiniMax-M2.7-highspeed": {
- id: "MiniMax-M2.7-highspeed",
- name: "MiniMax-M2.7-highspeed",
- api: "anthropic-messages",
- provider: "minimax",
- baseUrl: "https://api.minimax.io/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "minimax-cn": {
- "MiniMax-M2.7": {
- id: "MiniMax-M2.7",
- name: "MiniMax-M2.7",
- api: "anthropic-messages",
- provider: "minimax-cn",
- baseUrl: "https://api.minimaxi.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "MiniMax-M2.7-highspeed": {
- id: "MiniMax-M2.7-highspeed",
- name: "MiniMax-M2.7-highspeed",
- api: "anthropic-messages",
- provider: "minimax-cn",
- baseUrl: "https://api.minimaxi.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "mistral": {
- "codestral-latest": {
- id: "codestral-latest",
- name: "Codestral (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 0.9,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 4096,
- } satisfies Model<"mistral-conversations">,
- "devstral-2512": {
- id: "devstral-2512",
- name: "Devstral 2",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "devstral-latest": {
- id: "devstral-latest",
- name: "Devstral 2",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "devstral-medium-2507": {
- id: "devstral-medium-2507",
- name: "Devstral Medium",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "devstral-medium-latest": {
- id: "devstral-medium-latest",
- name: "Devstral 2 (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "devstral-small-2505": {
- id: "devstral-small-2505",
- name: "Devstral Small 2505",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "devstral-small-2507": {
- id: "devstral-small-2507",
- name: "Devstral Small",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "labs-devstral-small-2512": {
- id: "labs-devstral-small-2512",
- name: "Devstral Small 2",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"mistral-conversations">,
- "magistral-medium-latest": {
- id: "magistral-medium-latest",
- name: "Magistral Medium (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2,
- output: 5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"mistral-conversations">,
- "magistral-small": {
- id: "magistral-small",
- name: "Magistral Small",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "ministral-3b-latest": {
- id: "ministral-3b-latest",
- name: "Ministral 3B (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.04,
- output: 0.04,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "ministral-8b-latest": {
- id: "ministral-8b-latest",
- name: "Ministral 8B (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "mistral-large-2411": {
- id: "mistral-large-2411",
- name: "Mistral Large 2.1",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"mistral-conversations">,
- "mistral-large-2512": {
- id: "mistral-large-2512",
- name: "Mistral Large 3",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-large-latest": {
- id: "mistral-large-latest",
- name: "Mistral Large (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-medium-2505": {
- id: "mistral-medium-2505",
- name: "Mistral Medium 3",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"mistral-conversations">,
- "mistral-medium-2508": {
- id: "mistral-medium-2508",
- name: "Mistral Medium 3.1",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-medium-2604": {
- id: "mistral-medium-2604",
- name: "Mistral Medium 3.5",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-medium-3.5": {
- id: "mistral-medium-3.5",
- name: "Mistral Medium 3.5",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-medium-latest": {
- id: "mistral-medium-latest",
- name: "Mistral Medium (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"mistral-conversations">,
- "mistral-nemo": {
- id: "mistral-nemo",
- name: "Mistral Nemo",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "mistral-small-2506": {
- id: "mistral-small-2506",
- name: "Mistral Small 3.2",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"mistral-conversations">,
- "mistral-small-2603": {
- id: "mistral-small-2603",
- name: "Mistral Small 4",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"mistral-conversations">,
- "mistral-small-latest": {
- id: "mistral-small-latest",
- name: "Mistral Small (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"mistral-conversations">,
- "open-mistral-7b": {
- id: "open-mistral-7b",
- name: "Mistral 7B",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 8000,
- maxTokens: 8000,
- } satisfies Model<"mistral-conversations">,
- "open-mistral-nemo": {
- id: "open-mistral-nemo",
- name: "Open Mistral Nemo",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "open-mixtral-8x22b": {
- id: "open-mixtral-8x22b",
- name: "Mixtral 8x22B",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 64000,
- maxTokens: 64000,
- } satisfies Model<"mistral-conversations">,
- "open-mixtral-8x7b": {
- id: "open-mixtral-8x7b",
- name: "Mixtral 8x7B",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.7,
- output: 0.7,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32000,
- maxTokens: 32000,
- } satisfies Model<"mistral-conversations">,
- "pixtral-12b": {
- id: "pixtral-12b",
- name: "Pixtral 12B",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "pixtral-large-latest": {
- id: "pixtral-large-latest",
- name: "Pixtral Large (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"mistral-conversations">,
- "voxtral-small-latest": {
- id: "voxtral-small-latest",
- name: "Voxtral Small (latest)",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.1,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32000,
- maxTokens: 32000,
- } satisfies Model<"mistral-conversations">,
- "zai-glm-5-2": {
- id: "zai-glm-5-2",
- name: "GLM-5.2",
- api: "mistral-conversations",
- provider: "mistral",
- baseUrl: "https://api.mistral.ai",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.14,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"mistral-conversations">,
- },
- "moonshotai": {
- "kimi-k2-0711-preview": {
- id: "kimi-k2-0711-preview",
- name: "Kimi K2 0711",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "kimi-k2-0905-preview": {
- id: "kimi-k2-0905-preview",
- name: "Kimi K2 0905",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-thinking": {
- id: "kimi-k2-thinking",
- name: "Kimi K2 Thinking",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-thinking-turbo": {
- id: "kimi-k2-thinking-turbo",
- name: "Kimi K2 Thinking Turbo",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.15,
- output: 8,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-turbo-preview": {
- id: "kimi-k2-turbo-preview",
- name: "Kimi K2 Turbo",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.4,
- output: 10,
- cacheRead: 0.6,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.5": {
- id: "kimi-k2.5",
- name: "Kimi K2.5",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.6": {
- id: "kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code": {
- id: "kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code-highspeed": {
- id: "kimi-k2.7-code-highspeed",
- name: "Kimi K2.7 Code HighSpeed",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.9,
- output: 8,
- cacheRead: 0.38,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k3": {
- id: "kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "moonshotai",
- baseUrl: "https://api.moonshot.ai/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
- "moonshotai-cn": {
- "kimi-k2-0711-preview": {
- id: "kimi-k2-0711-preview",
- name: "Kimi K2 0711",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "kimi-k2-0905-preview": {
- id: "kimi-k2-0905-preview",
- name: "Kimi K2 0905",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-thinking": {
- id: "kimi-k2-thinking",
- name: "Kimi K2 Thinking",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-thinking-turbo": {
- id: "kimi-k2-thinking-turbo",
- name: "Kimi K2 Thinking Turbo",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.15,
- output: 8,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2-turbo-preview": {
- id: "kimi-k2-turbo-preview",
- name: "Kimi K2 Turbo",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.4,
- output: 10,
- cacheRead: 0.6,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.5": {
- id: "kimi-k2.5",
- name: "Kimi K2.5",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.6": {
- id: "kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code": {
- id: "kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code-highspeed": {
- id: "kimi-k2.7-code-highspeed",
- name: "Kimi K2.7 Code HighSpeed",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.9,
- output: 8,
- cacheRead: 0.38,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k3": {
- id: "kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "moonshotai-cn",
- baseUrl: "https://api.moonshot.cn/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
- "openai": {
- "gpt-4": {
- id: "gpt-4",
- name: "GPT-4",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 30,
- output: 60,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 8192,
- maxTokens: 8192,
- } satisfies Model<"openai-responses">,
- "gpt-4-turbo": {
- id: "gpt-4-turbo",
- name: "GPT-4 Turbo",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"openai-responses">,
- "gpt-4.1": {
- id: "gpt-4.1",
- name: "GPT-4.1",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4.1-mini": {
- id: "gpt-4.1-mini",
- name: "GPT-4.1 mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0.1,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4.1-nano": {
- id: "gpt-4.1-nano",
- name: "GPT-4.1 nano",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-responses">,
- "gpt-4o": {
- id: "gpt-4o",
- name: "GPT-4o",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-4o-2024-05-13": {
- id: "gpt-4o-2024-05-13",
- name: "GPT-4o (2024-05-13)",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"openai-responses">,
- "gpt-4o-2024-08-06": {
- id: "gpt-4o-2024-08-06",
- name: "GPT-4o (2024-08-06)",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-4o-2024-11-20": {
- id: "gpt-4o-2024-11-20",
- name: "GPT-4o (2024-11-20)",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-4o-mini": {
- id: "gpt-4o-mini",
- name: "GPT-4o mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-5": {
- id: "gpt-5",
- name: "GPT-5",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-chat-latest": {
- id: "gpt-5-chat-latest",
- name: "GPT-5 Chat Latest",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-5-mini": {
- id: "gpt-5-mini",
- name: "GPT-5 Mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-nano": {
- id: "gpt-5-nano",
- name: "GPT-5 Nano",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.05,
- output: 0.4,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-pro": {
- id: "gpt-5-pro",
- name: "GPT-5 Pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 120,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 272000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1": {
- id: "gpt-5.1",
- name: "GPT-5.1",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none"},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1-codex": {
- id: "gpt-5.1-codex",
- name: "GPT-5.1 Codex",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 5,
- cacheRead: 0.125,
- cacheWrite: 1.25,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1-codex-max": {
- id: "gpt-5.1-codex-max",
- name: "GPT-5.1 Codex Max",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.2": {
- id: "gpt-5.2",
- name: "GPT-5.2",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.2-chat-latest": {
- id: "gpt-5.2-chat-latest",
- name: "GPT-5.2 Chat",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-5.2-pro": {
- id: "gpt-5.2-pro",
- name: "GPT-5.2 Pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 21,
- output: 168,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.3-chat-latest": {
- id: "gpt-5.3-chat-latest",
- name: "GPT-5.3 Chat (latest)",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: false,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-responses">,
- "gpt-5.3-codex": {
- id: "gpt-5.3-codex",
- name: "GPT-5.3 Codex",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.3-codex-spark": {
- id: "gpt-5.3-codex-spark",
- name: "GPT-5.3 Codex Spark",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-nano": {
- id: "gpt-5.4-nano",
- name: "GPT-5.4 nano",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-pro": {
- id: "gpt-5.4-pro",
- name: "GPT-5.4 Pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5-pro": {
- id: "gpt-5.5-pro",
- name: "GPT-5.5 Pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6": {
- id: "gpt-5.6",
- name: "GPT-5.6",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.4,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"off":"none","xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-6-astra": {
- id: "gpt-6-astra",
- name: "GPT-6 Astra",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max","off":null},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-realtime-2.1": {
- id: "gpt-realtime-2.1",
- name: "GPT-Realtime-2.1",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 24,
- cacheRead: 0.4,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32000,
- } satisfies Model<"openai-responses">,
- "o1": {
- id: "o1",
- name: "o1",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 60,
- cacheRead: 7.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o1-pro": {
- id: "o1-pro",
- name: "o1-pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 150,
- output: 600,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o3": {
- id: "o3",
- name: "o3",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o3-mini": {
- id: "o3-mini",
- name: "o3-mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o3-pro": {
- id: "o3-pro",
- name: "o3-pro",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 20,
- output: 80,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- "o4-mini": {
- id: "o4-mini",
- name: "o4-mini",
- api: "openai-responses",
- provider: "openai",
- baseUrl: "https://api.openai.com/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-responses">,
- },
- "openai-codex": {
- "gpt-5.1": {
- id: "gpt-5.1",
- name: "GPT-5.1",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.1-codex-max": {
- id: "gpt-5.1-codex-max",
- name: "GPT-5.1 Codex Max",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.1-codex-mini": {
- id: "gpt-5.1-codex-mini",
- name: "GPT-5.1 Codex Mini",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"minimal":"medium","low":"medium","medium":"medium","high":"high"},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.2": {
- id: "gpt-5.2",
- name: "GPT-5.2",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.2-codex": {
- id: "gpt-5.2-codex",
- name: "GPT-5.2 Codex",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.3-codex": {
- id: "gpt-5.3-codex",
- name: "GPT-5.3 Codex",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.3-codex-spark": {
- id: "gpt-5.3-codex-spark",
- name: "GPT-5.3 Codex Spark",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 Mini",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":"low"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 6,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 3.125,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- "gpt-6-astra": {
- id: "gpt-6-astra",
- name: "GPT-6 Astra",
- api: "openai-codex-responses",
- provider: "openai-codex",
- baseUrl: "https://chatgpt.com/backend-api",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max","off":null},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-codex-responses">,
- },
- "opencode": {
- "big-pickle": {
- id: "big-pickle",
- name: "Big Pickle",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "claude-fable-5": {
- id: "claude-fable-5",
- name: "Claude Fable 5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-fable-5-1": {
- id: "claude-fable-5-1",
- name: "Claude Fable 5.1",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-haiku-4-5": {
- id: "claude-haiku-4-5",
- name: "Claude Haiku 4.5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-5": {
- id: "claude-opus-4-5",
- name: "Claude Opus 4.5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-6": {
- id: "claude-opus-4-6",
- name: "Claude Opus 4.6",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-7": {
- id: "claude-opus-4-7",
- name: "Claude Opus 4.7",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-4-8": {
- id: "claude-opus-4-8",
- name: "Claude Opus 4.8",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-opus-5": {
- id: "claude-opus-5",
- name: "Claude Opus 5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4": {
- id: "claude-sonnet-4",
- name: "Claude Sonnet 4",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4-5": {
- id: "claude-sonnet-4-5",
- name: "Claude Sonnet 4.5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-4-6": {
- id: "claude-sonnet-4-6",
- name: "Claude Sonnet 4.6",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "claude-sonnet-5": {
- id: "claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "deepseek-v4-flash": {
- id: "deepseek-v4-flash",
- name: "DeepSeek V4 Flash",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.028,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-v4-flash-vision-exp": {
- id: "deepseek-v4-flash-vision-exp",
- name: "DeepSeek V4 Flash Vision Exp",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.028,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-v4-pro": {
- id: "deepseek-v4-pro",
- name: "DeepSeek V4 Pro",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 1.74,
- output: 3.84,
- cacheRead: 0.145,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "gemini-3-flash": {
- id: "gemini-3-flash",
- name: "Gemini 3 Flash",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.05,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.1-pro": {
- id: "gemini-3.1-pro",
- name: "Gemini 3.1 Pro Preview",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"LOW","medium":null,"high":"HIGH"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.5-flash": {
- id: "gemini-3.5-flash",
- name: "Gemini 3.5 Flash",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.5-flash-lite": {
- id: "gemini-3.5-flash-lite",
- name: "Gemini 3.5 Flash Lite",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.6-flash": {
- id: "gemini-3.6-flash",
- name: "Gemini 3.6 Flash",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.7-flash": {
- id: "gemini-3.7-flash",
- name: "Gemini 3.7 Flash",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "gemini-3.8-flash": {
- id: "gemini-3.8-flash",
- name: "Gemini 3.8 Flash",
- api: "google-generative-ai",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"google-generative-ai">,
- "glm-5": {
- id: "glm-5",
- name: "GLM-5",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3.2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.1": {
- id: "glm-5.1",
- name: "GLM-5.1",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.2": {
- id: "glm-5.2",
- name: "GLM-5.2",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3": {
- id: "glm-5.3",
- name: "GLM-5.3",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3-flash": {
- id: "glm-5.3-flash",
- name: "GLM-5.3-Flash",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "gpt-5": {
- id: "gpt-5",
- name: "GPT-5",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.07,
- output: 8.5,
- cacheRead: 0.107,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-codex": {
- id: "gpt-5-codex",
- name: "GPT-5 Codex",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.07,
- output: 8.5,
- cacheRead: 0.107,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5-nano": {
- id: "gpt-5-nano",
- name: "GPT-5 Nano",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.05,
- output: 0.4,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1": {
- id: "gpt-5.1",
- name: "GPT-5.1",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.07,
- output: 8.5,
- cacheRead: 0.107,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1-codex": {
- id: "gpt-5.1-codex",
- name: "GPT-5.1 Codex",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.07,
- output: 8.5,
- cacheRead: 0.107,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1-codex-max": {
- id: "gpt-5.1-codex-max",
- name: "GPT-5.1 Codex Max",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.1-codex-mini": {
- id: "gpt-5.1-codex-mini",
- name: "GPT-5.1 Codex Mini",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.025,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.2": {
- id: "gpt-5.2",
- name: "GPT-5.2",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.2-codex": {
- id: "gpt-5.2-codex",
- name: "GPT-5.2 Codex",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.3-codex": {
- id: "gpt-5.3-codex",
- name: "GPT-5.3 Codex",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4": {
- id: "gpt-5.4",
- name: "GPT-5.4",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 272000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-mini": {
- id: "gpt-5.4-mini",
- name: "GPT-5.4 Mini",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-nano": {
- id: "gpt-5.4-nano",
- name: "GPT-5.4 Nano",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.4-pro": {
- id: "gpt-5.4-pro",
- name: "GPT-5.4 Pro",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 30,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5": {
- id: "gpt-5.5",
- name: "GPT-5.5",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.5-pro": {
- id: "gpt-5.5-pro",
- name: "GPT-5.5 Pro",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 30,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-sol": {
- id: "gpt-5.6-sol",
- name: "GPT-5.6 Sol (50% Off)",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-5.6-terra": {
- id: "gpt-5.6-terra",
- name: "GPT-5.6 Terra",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 3.125,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "gpt-6-astra": {
- id: "gpt-6-astra",
- name: "GPT-6 Astra",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max","off":null},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "grok-4.5": {
- id: "grok-4.5",
- name: "Grok 4.5",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"openai-responses">,
- "grok-4.6": {
- id: "grok-4.6",
- name: "Grok 4.6",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"openai-responses">,
- "grok-build-0.1": {
- id: "grok-build-0.1",
- name: "Grok Build 0.1",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"openai-responses">,
- "kimi-k2.5": {
- id: "kimi-k2.5",
- name: "Kimi K2.5",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.08,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "kimi-k2.6": {
- id: "kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code": {
- id: "kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k3": {
- id: "kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "ling-3.0-flash-fin-free": {
- id: "ling-3.0-flash-fin-free",
- name: "Ling 3.0 Flash Fin Free",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "mimo-v2.5-free": {
- id: "mimo-v2.5-free",
- name: "MiMo V2.5 Free",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "minimax-m2.5": {
- id: "minimax-m2.5",
- name: "MiniMax-M2.5",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax-m2.7": {
- id: "minimax-m2.7",
- name: "MiniMax-M2.7",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax-m3": {
- id: "minimax-m3",
- name: "MiniMax-M3",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 512000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "muse-spark-1.2": {
- id: "muse-spark-1.2",
- name: "Muse Spark 1.2",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "muse-spark-1.2-contributor-free": {
- id: "muse-spark-1.2-contributor-free",
- name: "Muse Spark 1.2 Free",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "muse-spark-1.3": {
- id: "muse-spark-1.3",
- name: "Muse Spark 1.3",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "muse-spark-1.3-contributor-free": {
- id: "muse-spark-1.3-contributor-free",
- name: "Muse Spark 1.3 Free",
- api: "openai-responses",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "nemotron-3-ultra-free": {
- id: "nemotron-3-ultra-free",
- name: "Nemotron 3 Ultra Free",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "nemotron-3.5-lightning-free": {
- id: "nemotron-3.5-lightning-free",
- name: "Nemotron 3.5 Lightning Free",
- api: "openai-completions",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "qwen3.5-plus": {
- id: "qwen3.5-plus",
- name: "Qwen3.5 Plus",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "qwen3.6-plus": {
- id: "qwen3.6-plus",
- name: "Qwen3.6 Plus",
- api: "anthropic-messages",
- provider: "opencode",
- baseUrl: "https://opencode.ai/zen",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.05,
- cacheWrite: 0.625,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- },
- "opencode-go": {
- "deepseek-v4-flash": {
- id: "deepseek-v4-flash",
- name: "DeepSeek V4 Flash",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.66,
- cacheRead: 0.007,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-v4-flash-vision-exp": {
- id: "deepseek-v4-flash-vision-exp",
- name: "DeepSeek V4 Flash Vision Exp",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.22,
- output: 0.66,
- cacheRead: 0.007,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek-v4-pro": {
- id: "deepseek-v4-pro",
- name: "DeepSeek V4 Pro (New)",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.66,
- output: 1.98,
- cacheRead: 0.022,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "glm-5.1": {
- id: "glm-5.1",
- name: "GLM-5.1",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "glm-5.2": {
- id: "glm-5.2",
- name: "GLM-5.2",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3": {
- id: "glm-5.3",
- name: "GLM-5.3",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3-flash": {
- id: "glm-5.3-flash",
- name: "GLM-5.3-Flash (2x usage)",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.25,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "gpt-5.6-luna": {
- id: "gpt-5.6-luna",
- name: "GPT-5.6 Luna",
- api: "openai-responses",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-responses">,
- "grok-4.6": {
- id: "grok-4.6",
- name: "Grok 4.6",
- api: "openai-responses",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"openai-responses">,
- "hy3": {
- id: "hy3",
- name: "Hy3",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.58,
- cacheRead: 0.035,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "hy4-preview": {
- id: "hy4-preview",
- name: "Hy4 preview",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.834,
- output: 2.501,
- cacheRead: 0.042,
- cacheWrite: 0,
- },
- contextWindow: 1024000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "kimi-k2.6": {
- id: "kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "kimi-k2.7-code": {
- id: "kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.19,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "kimi-k3": {
- id: "kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "longcat-2.0": {
- id: "longcat-2.0",
- name: "LongCat-2.0",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.006,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "mimo-v2.5": {
- id: "mimo-v2.5",
- name: "MiMo V2.5",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "mimo-v2.5-pro": {
- id: "mimo-v2.5-pro",
- name: "MiMo V2.5 Pro",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.003625,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "minimax-m2.7": {
- id: "minimax-m2.7",
- name: "MiniMax-M2.7",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax-m3": {
- id: "minimax-m3",
- name: "MiniMax-M3",
- api: "anthropic-messages",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "muse-spark-1.2-contributor": {
- id: "muse-spark-1.2-contributor",
- name: "Muse Spark 1.2 Contributor",
- api: "openai-responses",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.2,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "muse-spark-1.3-contributor": {
- id: "muse-spark-1.3-contributor",
- name: "Muse Spark 1.3 Contributor",
- api: "openai-responses",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.2,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-responses">,
- "omen-alpha": {
- id: "omen-alpha",
- name: "Omen Alpha",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 0.66,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "qwen3.6-plus": {
- id: "qwen3.6-plus",
- name: "Qwen3.6 Plus",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- compat: {"thinkingFormat":"qwen"},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.05,
- cacheWrite: 0.625,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen3.7-max": {
- id: "qwen3.7-max",
- name: "Qwen3.7 Max",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 7.5,
- cacheRead: 0.5,
- cacheWrite: 3.125,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen3.7-plus": {
- id: "qwen3.7-plus",
- name: "Qwen3.7 Plus",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0.04,
- cacheWrite: 0.5,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen3.8-flash": {
- id: "qwen3.8-flash",
- name: "Qwen3.8 Flash",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.47,
- cacheRead: 0.016,
- cacheWrite: 0.2,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "qwen3.8-max": {
- id: "qwen3.8-max",
- name: "Qwen3.8 Max",
- api: "openai-completions",
- provider: "opencode-go",
- baseUrl: "https://opencode.ai/zen/go/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
- "openrouter": {
- "aion-labs/aion-2.0": {
- id: "aion-labs/aion-2.0",
- name: "AionLabs: Aion-2.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.7999999999999999,
- output: 1.5999999999999999,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "aion-labs/aion-3.0": {
- id: "aion-labs/aion-3.0",
- name: "AionLabs: Aion-3.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 3,
- output: 6,
- cacheRead: 0.75,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "aion-labs/aion-3.0-mini": {
- id: "aion-labs/aion-3.0-mini",
- name: "AionLabs: Aion-3.0-Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.7,
- output: 1.4,
- cacheRead: 0.18,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "amazon/nova-2-lite-v1": {
- id: "amazon/nova-2-lite-v1",
- name: "Amazon: Nova 2 Lite",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "amazon/nova-lite-v1": {
- id: "amazon/nova-lite-v1",
- name: "Amazon: Nova Lite 1.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.06,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 5120,
- } satisfies Model<"openai-completions">,
- "amazon/nova-micro-v1": {
- id: "amazon/nova-micro-v1",
- name: "Amazon: Nova Micro 1.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.035,
- output: 0.14,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 5120,
- } satisfies Model<"openai-completions">,
- "amazon/nova-premier-v1": {
- id: "amazon/nova-premier-v1",
- name: "Amazon: Nova Premier 1.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 12.5,
- cacheRead: 0.625,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "amazon/nova-pro-v1": {
- id: "amazon/nova-pro-v1",
- name: "Amazon: Nova Pro 1.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.7999999999999999,
- output: 3.1999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 5120,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-3-haiku": {
- id: "anthropic/claude-3-haiku",
- name: "Anthropic: Claude 3 Haiku",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.25,
- cacheRead: 0.03,
- cacheWrite: 0.3,
- },
- contextWindow: 200000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-fable-5": {
- id: "anthropic/claude-fable-5",
- name: "Anthropic: Claude Fable 5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-fable-5.1": {
- id: "anthropic/claude-fable-5.1",
- name: "Anthropic: Claude Fable 5.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-haiku-4.5": {
- id: "anthropic/claude-haiku-4.5",
- name: "Anthropic: Claude Haiku 4.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.09999999999999999,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4": {
- id: "anthropic/claude-opus-4",
- name: "Anthropic: Claude Opus 4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.1": {
- id: "anthropic/claude-opus-4.1",
- name: "Anthropic: Claude Opus 4.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.5": {
- id: "anthropic/claude-opus-4.5",
- name: "Anthropic: Claude Opus 4.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.6": {
- id: "anthropic/claude-opus-4.6",
- name: "Anthropic: Claude Opus 4.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.7": {
- id: "anthropic/claude-opus-4.7",
- name: "Anthropic: Claude Opus 4.7",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.8": {
- id: "anthropic/claude-opus-4.8",
- name: "Anthropic: Claude Opus 4.8",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-5": {
- id: "anthropic/claude-opus-5",
- name: "Claude Opus 5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4": {
- id: "anthropic/claude-sonnet-4",
- name: "Anthropic: Claude Sonnet 4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4.5": {
- id: "anthropic/claude-sonnet-4.5",
- name: "Anthropic: Claude Sonnet 4.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4.6": {
- id: "anthropic/claude-sonnet-4.6",
- name: "Anthropic: Claude Sonnet 4.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-5": {
- id: "anthropic/claude-sonnet-5",
- name: "Anthropic: Claude Sonnet 5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "arcee-ai/trinity-large-thinking": {
- id: "arcee-ai/trinity-large-thinking",
- name: "Arcee AI: Trinity Large Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.7999999999999999,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 80000,
- } satisfies Model<"openai-completions">,
- "auto": {
- id: "auto",
- name: "Auto",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 30000,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-1.6": {
- id: "bytedance-seed/seed-1.6",
- name: "ByteDance Seed: Seed 1.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-1.6-flash": {
- id: "bytedance-seed/seed-1.6-flash",
- name: "ByteDance Seed: Seed 1.6 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-2-1-turbo": {
- id: "bytedance-seed/seed-2-1-turbo",
- name: "ByteDance Seed: Seed 2.1 Turbo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-2.0-code": {
- id: "bytedance-seed/seed-2.0-code",
- name: "ByteDance Seed: Seed-2.0-Code",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-2.0-lite": {
- id: "bytedance-seed/seed-2.0-lite",
- name: "ByteDance Seed: Seed-2.0-Lite",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "bytedance-seed/seed-2.0-mini": {
- id: "bytedance-seed/seed-2.0-mini",
- name: "ByteDance Seed: Seed-2.0-Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "cohere/command-r-08-2024": {
- id: "cohere/command-r-08-2024",
- name: "Cohere: Command R (08-2024)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"openai-completions">,
- "cohere/command-r-plus-08-2024": {
- id: "cohere/command-r-plus-08-2024",
- name: "Cohere: Command R+ (08-2024)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"openai-completions">,
- "cohere/north-mini-code:free": {
- id: "cohere/north-mini-code:free",
- name: "Cohere: North Mini Code (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat": {
- id: "deepseek/deepseek-chat",
- name: "DeepSeek: DeepSeek V3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.32,
- output: 0.8899999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat-v3-0324": {
- id: "deepseek/deepseek-chat-v3-0324",
- name: "DeepSeek: DeepSeek V3 0324",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 147456,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat-v3.1": {
- id: "deepseek/deepseek-chat-v3.1",
- name: "DeepSeek: DeepSeek V3.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.55,
- output: 1.6500000000000001,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 144900,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-r1": {
- id: "deepseek/deepseek-r1",
- name: "DeepSeek: R1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.7,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 64000,
- maxTokens: 16000,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-r1-0528": {
- id: "deepseek/deepseek-r1-0528",
- name: "DeepSeek: R1 0528",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.5,
- output: 2.1500000000000004,
- cacheRead: 0.35,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.1-terminus": {
- id: "deepseek/deepseek-v3.1-terminus",
- name: "DeepSeek: DeepSeek V3.1 Terminus",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1,
- cacheRead: 0.135,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.2": {
- id: "deepseek/deepseek-v3.2",
- name: "DeepSeek: DeepSeek V3.2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.26899999999999996,
- output: 0.39999999999999997,
- cacheRead: 0.13449999999999998,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.2-exp": {
- id: "deepseek/deepseek-v3.2-exp",
- name: "DeepSeek: DeepSeek V3.2 Exp",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.27,
- output: 0.41,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-flash": {
- id: "deepseek/deepseek-v4-flash",
- name: "DeepSeek: DeepSeek V4 Flash 0423",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.08106,
- output: 0.16212,
- cacheRead: 0.016212,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-flash-0731": {
- id: "deepseek/deepseek-v4-flash-0731",
- name: "DeepSeek: DeepSeek V4 Flash 0731",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.049980000000000004,
- output: 0.09996000000000001,
- cacheRead: 0.009996000000000001,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-flash-vision-exp": {
- id: "deepseek/deepseek-v4-flash-vision-exp",
- name: "DeepSeek: DeepSeek V4 Flash Vision Exp",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.44,
- output: 1.32,
- cacheRead: 0.014,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-pro": {
- id: "deepseek/deepseek-v4-pro",
- name: "DeepSeek: DeepSeek V4 Pro 0423",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.7078319999999999,
- output: 1.4156639999999998,
- cacheRead: 0.058986000000000004,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-pro-0813": {
- id: "deepseek/deepseek-v4-pro-0813",
- name: "DeepSeek: DeepSeek V4 Pro 0813",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 1.12068,
- output: 3.36204,
- cacheRead: 0.037356,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- } satisfies Model<"openai-completions">,
- "dots-studio/dots-3-note-preview:free": {
- id: "dots-studio/dots-3-note-preview:free",
- name: "Dots Studio: Dots3-Note Preview (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 512000,
- maxTokens: 460800,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-flash": {
- id: "google/gemini-2.5-flash",
- name: "Google: Gemini 2.5 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-flash-lite": {
- id: "google/gemini-2.5-flash-lite",
- name: "Google: Gemini 2.5 Flash Lite",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0.01,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-pro": {
- id: "google/gemini-2.5-pro",
- name: "Google: Gemini 2.5 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-pro-preview": {
- id: "google/gemini-2.5-pro-preview",
- name: "Google: Gemini 2.5 Pro Preview 06-05",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-pro-preview-05-06": {
- id: "google/gemini-2.5-pro-preview-05-06",
- name: "Google: Gemini 2.5 Pro Preview 05-06",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "google/gemini-3-flash-preview": {
- id: "google/gemini-3-flash-preview",
- name: "Google: Gemini 3 Flash Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3-pro-image": {
- id: "google/gemini-3-pro-image",
- name: "Google: Nano Banana Pro (Gemini 3 Pro Image)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0.375,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.1-flash-lite": {
- id: "google/gemini-3.1-flash-lite",
- name: "Google: Gemini 3.1 Flash Lite",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.5,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.1-flash-lite-preview": {
- id: "google/gemini-3.1-flash-lite-preview",
- name: "Google: Gemini 3.1 Flash Lite Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.5,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.1-pro-preview": {
- id: "google/gemini-3.1-pro-preview",
- name: "Google: Gemini 3.1 Pro Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.1-pro-preview-customtools": {
- id: "google/gemini-3.1-pro-preview-customtools",
- name: "Google: Gemini 3.1 Pro Preview Custom Tools",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.5-flash": {
- id: "google/gemini-3.5-flash",
- name: "Google: Gemini 3.5 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.5-flash-lite": {
- id: "google/gemini-3.5-flash-lite",
- name: "Google: Gemini 3.5 Flash Lite",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0.0833333333333333,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.6-flash": {
- id: "google/gemini-3.6-flash",
- name: "Google: Gemini 3.6 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0.0416666666666667,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.7-flash": {
- id: "google/gemini-3.7-flash",
- name: "Google: Gemini 3.7 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0.0416666666666667,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.8-flash": {
- id: "google/gemini-3.8-flash",
- name: "Google: Gemini 3.8 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0.0416666666666667,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemma-3-12b-it": {
- id: "google/gemma-3-12b-it",
- name: "Google: Gemma 3 12B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.049999999999999996,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "google/gemma-3-27b-it": {
- id: "google/gemma-3-27b-it",
- name: "Google: Gemma 3 27B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.08,
- output: 0.44999999999999996,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-26b-a4b-it": {
- id: "google/gemma-4-26b-a4b-it",
- name: "Google: Gemma 4 26B A4B ",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.07,
- output: 0.33999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-26b-a4b-it:free": {
- id: "google/gemma-4-26b-a4b-it:free",
- name: "Google: Gemma 4 26B A4B (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-31b-it": {
- id: "google/gemma-4-31b-it",
- name: "Google: Gemma 4 31B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09,
- output: 0.33999999999999997,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "google/gemma-4-31b-it:free": {
- id: "google/gemma-4-31b-it:free",
- name: "Google: Gemma 4 31B (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "ibm-granite/granite-4.2-8b": {
- id: "ibm-granite/granite-4.2-8b",
- name: "IBM: Granite 4.2 8B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.15,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "inception/mercury-2": {
- id: "inception/mercury-2",
- name: "Inception: Mercury 2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.75,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 50000,
- } satisfies Model<"openai-completions">,
- "inception/mercury-2.5-preview": {
- id: "inception/mercury-2.5-preview",
- name: "Inception: Mercury 2.5 Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.04,
- output: 0.15,
- cacheRead: 0.004,
- cacheWrite: 0,
- },
- contextWindow: 260000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "inclusionai/ling-3.0-flash": {
- id: "inclusionai/ling-3.0-flash",
- name: "inclusionAI: Ling 3.0 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.020999999999999998,
- output: 0.063,
- cacheRead: 0.004200000000000001,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "inclusionai/ling-3.0-flash-fin": {
- id: "inclusionai/ling-3.0-flash-fin",
- name: "inclusionAI: Ling 3.0 Flash Fin",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.18,
- cacheRead: 0.012,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "inclusionai/ling-3.0-flash-fin:free": {
- id: "inclusionai/ling-3.0-flash-fin:free",
- name: "inclusionAI: Ling 3.0 Flash Fin (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "inclusionai/ling-3.0-flash-sante:free": {
- id: "inclusionai/ling-3.0-flash-sante:free",
- name: "inclusionAI: Ling 3.0 Flash Sante (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "kwaipilot/kat-coder-pro-v2": {
- id: "kwaipilot/kat-coder-pro-v2",
- name: "Kwaipilot: KAT-Coder-Pro V2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 144000,
- } satisfies Model<"openai-completions">,
- "kwaipilot/kat-coder-pro-v2.5": {
- id: "kwaipilot/kat-coder-pro-v2.5",
- name: "Kwaipilot: KAT-Coder-Pro V2.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.74,
- output: 2.96,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "liquid/lfm-2.5-2.6b:free": {
- id: "liquid/lfm-2.5-2.6b:free",
- name: "LiquidAI: LFM2.5-2.6B (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 65536,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "meituan/longcat-2.0": {
- id: "meituan/longcat-2.0",
- name: "Meituan: LongCat 2.0",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.006,
- cacheWrite: 0,
- },
- contextWindow: 1048756,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-3.1-70b-instruct": {
- id: "meta-llama/llama-3.1-70b-instruct",
- name: "Meta: Llama 3.1 70B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.39999999999999997,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-3.1-8b-instruct": {
- id: "meta-llama/llama-3.1-8b-instruct",
- name: "Meta: Llama 3.1 8B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.049999999999999996,
- output: 0.08,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-3.3-70b-instruct": {
- id: "meta-llama/llama-3.3-70b-instruct",
- name: "Meta: Llama 3.3 70B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.32,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-4-maverick": {
- id: "meta-llama/llama-4-maverick",
- name: "Meta: Llama 4 Maverick",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.696,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 115200,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-4-scout": {
- id: "meta-llama/llama-4-scout",
- name: "Meta: Llama 4 Scout",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "meta/muse-glimmer-30b": {
- id: "meta/muse-glimmer-30b",
- name: "Meta: Muse Glimmer 30B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.1,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "meta/muse-spark-1.1": {
- id: "meta/muse-spark-1.1",
- name: "Meta: Muse Spark 1.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "meta/muse-spark-1.2": {
- id: "meta/muse-spark-1.2",
- name: "Meta: Muse Spark 1.2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "meta/muse-spark-1.2-contributor": {
- id: "meta/muse-spark-1.2-contributor",
- name: "Meta: Muse Spark 1.2 Contributor",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "meta/muse-spark-1.3": {
- id: "meta/muse-spark-1.3",
- name: "Meta: Muse Spark 1.3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "meta/muse-spark-1.3-contributor": {
- id: "meta/muse-spark-1.3-contributor",
- name: "Meta: Muse Spark 1.3 Contributor",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m1": {
- id: "minimax/minimax-m1",
- name: "MiniMax: MiniMax M1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.55,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 40000,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2": {
- id: "minimax/minimax-m2",
- name: "MiniMax: MiniMax M2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.255,
- output: 1.02,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.1": {
- id: "minimax/minimax-m2.1",
- name: "MiniMax: MiniMax M2.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.5": {
- id: "minimax/minimax-m2.5",
- name: "MiniMax: MiniMax M2.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1.08,
- cacheRead: 0.027,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.7": {
- id: "minimax/minimax-m2.7",
- name: "MiniMax: MiniMax M2.7",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.7:free": {
- id: "minimax/minimax-m2.7:free",
- name: "MiniMax: MiniMax M2.7 (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 196608,
- maxTokens: 176947,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m3": {
- id: "minimax/minimax-m3",
- name: "MiniMax: MiniMax M3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 512000,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m3:free": {
- id: "minimax/minimax-m3:free",
- name: "MiniMax: MiniMax M3 (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "mistralai/codestral-2508": {
- id: "mistralai/codestral-2508",
- name: "Mistral: Codestral 2508",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 0.8999999999999999,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 204800,
- } satisfies Model<"openai-completions">,
- "mistralai/devstral-2512": {
- id: "mistralai/devstral-2512",
- name: "Mistral: Devstral 2 2512",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.39999999999999997,
- output: 2,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/ministral-14b-2512": {
- id: "mistralai/ministral-14b-2512",
- name: "Mistral: Ministral 3 14B 2512",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.19999999999999998,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/ministral-3b-2512": {
- id: "mistralai/ministral-3b-2512",
- name: "Mistral: Ministral 3 3B 2512",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.09999999999999999,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 104857,
- } satisfies Model<"openai-completions">,
- "mistralai/ministral-8b-2512": {
- id: "mistralai/ministral-8b-2512",
- name: "Mistral: Ministral 3 8B 2512",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-large": {
- id: "mistralai/mistral-large",
- name: "Mistral Large",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 102400,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-large-2407": {
- id: "mistralai/mistral-large-2407",
- name: "Mistral Large 2407",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 104857,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-large-2512": {
- id: "mistralai/mistral-large-2512",
- name: "Mistral: Mistral Large 3 2512",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-medium-3": {
- id: "mistralai/mistral-medium-3",
- name: "Mistral: Mistral Medium 3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 2,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 104857,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-medium-3-5": {
- id: "mistralai/mistral-medium-3-5",
- name: "Mistral: Mistral Medium 3.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-medium-3.1": {
- id: "mistralai/mistral-medium-3.1",
- name: "Mistral: Mistral Medium 3.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 2,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 104857,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-nemo": {
- id: "mistralai/mistral-nemo",
- name: "Mistral: Mistral Nemo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.019000000000000003,
- output: 0.03,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-saba": {
- id: "mistralai/mistral-saba",
- name: "Mistral: Saba",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.19999999999999998,
- output: 0.6,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 26214,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-small-2603": {
- id: "mistralai/mistral-small-2603",
- name: "Mistral: Mistral Small 4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-small-3.2-24b-instruct": {
- id: "mistralai/mistral-small-3.2-24b-instruct",
- name: "Mistral: Mistral Small 3.2 24B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.19999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "mistralai/mixtral-8x22b-instruct": {
- id: "mistralai/mixtral-8x22b-instruct",
- name: "Mistral: Mixtral 8x22B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 65536,
- maxTokens: 52428,
- } satisfies Model<"openai-completions">,
- "mistralai/voxtral-small-24b-2507": {
- id: "mistralai/voxtral-small-24b-2507",
- name: "Mistral: Voxtral Small 24B 2507",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.3,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 26214,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2": {
- id: "moonshotai/kimi-k2",
- name: "MoonshotAI: Kimi K2 0711",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.5700000000000001,
- output: 2.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 100352,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2-0905": {
- id: "moonshotai/kimi-k2-0905",
- name: "MoonshotAI: Kimi K2 0905",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 100352,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2-thinking": {
- id: "moonshotai/kimi-k2-thinking",
- name: "MoonshotAI: Kimi K2 Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 100352,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.5": {
- id: "moonshotai/kimi-k2.5",
- name: "MoonshotAI: Kimi K2.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.41,
- output: 2.06,
- cacheRead: 0.07,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.6": {
- id: "moonshotai/kimi-k2.6",
- name: "MoonshotAI: Kimi K2.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.7-code": {
- id: "moonshotai/kimi-k2.7-code",
- name: "MoonshotAI: Kimi K2.7 Code",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.66,
- output: 3.4,
- cacheRead: 0.18,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k3": {
- id: "moonshotai/kimi-k3",
- name: "MoonshotAI: Kimi K3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"openai-completions">,
- "nex-agi/nex-n2-mini": {
- id: "nex-agi/nex-n2-mini",
- name: "Nex AGI: Nex-N2-Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.024999999999999998,
- output: 0.09999999999999999,
- cacheRead: 0.0025,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "nex-agi/nex-n2-pro": {
- id: "nex-agi/nex-n2-pro",
- name: "Nex AGI: Nex-N2-Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-nano-30b-a3b": {
- id: "nvidia/nemotron-3-nano-30b-a3b",
- name: "NVIDIA: Nemotron 3 Nano 30B A3B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.049999999999999996,
- output: 0.19999999999999998,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free": {
- id: "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",
- name: "NVIDIA: Nemotron 3 Nano Omni (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-super-120b-a12b": {
- id: "nvidia/nemotron-3-super-120b-a12b",
- name: "NVIDIA: Nemotron 3 Super",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":null,"xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.08499999999999999,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-super-120b-a12b:free": {
- id: "nvidia/nemotron-3-super-120b-a12b:free",
- name: "NVIDIA: Nemotron 3 Super (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":null,"xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-ultra-550b-a55b": {
- id: "nvidia/nemotron-3-ultra-550b-a55b",
- name: "NVIDIA: Nemotron 3 Ultra",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.625,
- output: 3.125,
- cacheRead: 0.1875,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-ultra-550b-a55b:free": {
- id: "nvidia/nemotron-3-ultra-550b-a55b:free",
- name: "NVIDIA: Nemotron 3 Ultra (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3.5-lightning": {
- id: "nvidia/nemotron-3.5-lightning",
- name: "NVIDIA: Nemotron 3.5 Lightning",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.08,
- output: 0.19999999999999998,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3.5-lightning:free": {
- id: "nvidia/nemotron-3.5-lightning:free",
- name: "NVIDIA: Nemotron 3.5 Lightning (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "openai/gpt-3.5-turbo": {
- id: "openai/gpt-3.5-turbo",
- name: "OpenAI: GPT-3.5 Turbo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 16385,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-3.5-turbo-0613": {
- id: "openai/gpt-3.5-turbo-0613",
- name: "OpenAI: GPT-3.5 Turbo (older v0613)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 4095,
- maxTokens: 3685,
- } satisfies Model<"openai-completions">,
- "openai/gpt-3.5-turbo-16k": {
- id: "openai/gpt-3.5-turbo-16k",
- name: "OpenAI: GPT-3.5 Turbo 16k",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 3,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 16385,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4": {
- id: "openai/gpt-4",
- name: "OpenAI: GPT-4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 30,
- output: 60,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 8191,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4-turbo": {
- id: "openai/gpt-4-turbo",
- name: "OpenAI: GPT-4 Turbo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4-turbo-preview": {
- id: "openai/gpt-4-turbo-preview",
- name: "OpenAI: GPT-4 Turbo Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 10,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1": {
- id: "openai/gpt-4.1",
- name: "OpenAI: GPT-4.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1-mini": {
- id: "openai/gpt-4.1-mini",
- name: "OpenAI: GPT-4.1 Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 1.5999999999999999,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1-nano": {
- id: "openai/gpt-4.1-nano",
- name: "OpenAI: GPT-4.1 Nano",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o": {
- id: "openai/gpt-4o",
- name: "OpenAI: GPT-4o",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-2024-05-13": {
- id: "openai/gpt-4o-2024-05-13",
- name: "OpenAI: GPT-4o (2024-05-13)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-2024-08-06": {
- id: "openai/gpt-4o-2024-08-06",
- name: "OpenAI: GPT-4o (2024-08-06)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-2024-11-20": {
- id: "openai/gpt-4o-2024-11-20",
- name: "OpenAI: GPT-4o (2024-11-20)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-mini": {
- id: "openai/gpt-4o-mini",
- name: "OpenAI: GPT-4o-mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-mini-2024-07-18": {
- id: "openai/gpt-4o-mini-2024-07-18",
- name: "OpenAI: GPT-4o-mini (2024-07-18)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5": {
- id: "openai/gpt-5",
- name: "OpenAI: GPT-5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5-mini": {
- id: "openai/gpt-5-mini",
- name: "OpenAI: GPT-5 Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5-nano": {
- id: "openai/gpt-5-nano",
- name: "OpenAI: GPT-5 Nano",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.049999999999999996,
- output: 0.39999999999999997,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5-pro": {
- id: "openai/gpt-5-pro",
- name: "OpenAI: GPT-5 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 120,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.1": {
- id: "openai/gpt-5.1",
- name: "OpenAI: GPT-5.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.1-codex": {
- id: "openai/gpt-5.1-codex",
- name: "OpenAI: GPT-5.1-Codex",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.1-codex-max": {
- id: "openai/gpt-5.1-codex-max",
- name: "OpenAI: GPT-5.1-Codex-Max",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.1-codex-mini": {
- id: "openai/gpt-5.1-codex-mini",
- name: "OpenAI: GPT-5.1-Codex-Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2": {
- id: "openai/gpt-5.2",
- name: "OpenAI: GPT-5.2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2-chat": {
- id: "openai/gpt-5.2-chat",
- name: "OpenAI: GPT-5.2 Chat",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2-codex": {
- id: "openai/gpt-5.2-codex",
- name: "OpenAI: GPT-5.2-Codex",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2-pro": {
- id: "openai/gpt-5.2-pro",
- name: "OpenAI: GPT-5.2 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 21,
- output: 168,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.3-codex": {
- id: "openai/gpt-5.3-codex",
- name: "OpenAI: GPT-5.3-Codex",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4": {
- id: "openai/gpt-5.4",
- name: "OpenAI: GPT-5.4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-mini": {
- id: "openai/gpt-5.4-mini",
- name: "OpenAI: GPT-5.4 Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-nano": {
- id: "openai/gpt-5.4-nano",
- name: "OpenAI: GPT-5.4 Nano",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-pro": {
- id: "openai/gpt-5.4-pro",
- name: "OpenAI: GPT-5.4 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.5": {
- id: "openai/gpt-5.5",
- name: "OpenAI: GPT-5.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.5-pro": {
- id: "openai/gpt-5.5-pro",
- name: "OpenAI: GPT-5.5 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-luna": {
- id: "openai/gpt-5.6-luna",
- name: "OpenAI: GPT-5.6 Luna",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-luna-pro": {
- id: "openai/gpt-5.6-luna-pro",
- name: "OpenAI: GPT-5.6 Luna Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-sol": {
- id: "openai/gpt-5.6-sol",
- name: "OpenAI: GPT-5.6 Sol",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-sol-pro": {
- id: "openai/gpt-5.6-sol-pro",
- name: "OpenAI: GPT-5.6 Sol Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-terra": {
- id: "openai/gpt-5.6-terra",
- name: "OpenAI: GPT-5.6 Terra",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-terra-pro": {
- id: "openai/gpt-5.6-terra-pro",
- name: "OpenAI: GPT-5.6 Terra Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-6-astra": {
- id: "openai/gpt-6-astra",
- name: "OpenAI: GPT-6 Astra",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-6-astra-pro": {
- id: "openai/gpt-6-astra-pro",
- name: "OpenAI: GPT-6 Astra Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-audio": {
- id: "openai/gpt-audio",
- name: "OpenAI: GPT Audio",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-audio-mini": {
- id: "openai/gpt-audio-mini",
- name: "OpenAI: GPT Audio Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-chat-latest": {
- id: "openai/gpt-chat-latest",
- name: "OpenAI: GPT Chat Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-120b": {
- id: "openai/gpt-oss-120b",
- name: "OpenAI: gpt-oss-120b",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.037,
- output: 0.16999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-20b": {
- id: "openai/gpt-oss-20b",
- name: "OpenAI: gpt-oss-20b",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.03,
- output: 0.13,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-safeguard-20b": {
- id: "openai/gpt-oss-safeguard-20b",
- name: "OpenAI: gpt-oss-safeguard-20b",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.075,
- output: 0.3,
- cacheRead: 0.0375,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "openai/o1": {
- id: "openai/o1",
- name: "OpenAI: o1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 60,
- cacheRead: 7.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o3": {
- id: "openai/o3",
- name: "OpenAI: o3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o3-mini": {
- id: "openai/o3-mini",
- name: "OpenAI: o3 Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o3-mini-high": {
- id: "openai/o3-mini-high",
- name: "OpenAI: o3 Mini High",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o3-pro": {
- id: "openai/o3-pro",
- name: "OpenAI: o3 Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 20,
- output: 80,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o4-mini": {
- id: "openai/o4-mini",
- name: "OpenAI: o4 Mini",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openai/o4-mini-high": {
- id: "openai/o4-mini-high",
- name: "OpenAI: o4 Mini High",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"openai-completions">,
- "openrouter/auto": {
- id: "openrouter/auto",
- name: "Auto Router",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openrouter/auto-beta": {
- id: "openrouter/auto-beta",
- name: "Auto Router (Beta)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "openrouter/free": {
- id: "openrouter/free",
- name: "Free Models Router",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 4096,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-s-2.1": {
- id: "poolside/laguna-s-2.1",
- name: "Poolside: Laguna S 2.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.09,
- output: 0.18,
- cacheRead: 0.009,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-s-2.1:free": {
- id: "poolside/laguna-s-2.1:free",
- name: "Poolside: Laguna S 2.1 (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-xs-2.1": {
- id: "poolside/laguna-xs-2.1",
- name: "Poolside: Laguna XS 2.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.12,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-xs-2.1:free": {
- id: "poolside/laguna-xs-2.1:free",
- name: "Poolside: Laguna XS 2.1 (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen-2.5-72b-instruct": {
- id: "qwen/qwen-2.5-72b-instruct",
- name: "Qwen2.5 72B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.36,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen-2.5-7b-instruct": {
- id: "qwen/qwen-2.5-7b-instruct",
- name: "Qwen: Qwen2.5 7B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 29491,
- } satisfies Model<"openai-completions">,
- "qwen/qwen-plus": {
- id: "qwen/qwen-plus",
- name: "Qwen: Qwen-Plus",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.26,
- output: 0.78,
- cacheRead: 0.052000000000000005,
- cacheWrite: 0.325,
- },
- contextWindow: 1000000,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen-plus-2025-07-28": {
- id: "qwen/qwen-plus-2025-07-28",
- name: "Qwen: Qwen Plus 0728",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.26,
- output: 0.78,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-14b": {
- id: "qwen/qwen3-14b",
- name: "Qwen: Qwen3 14B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-235b-a22b": {
- id: "qwen/qwen3-235b-a22b",
- name: "Qwen: Qwen3 235B A22B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.45499999999999996,
- output: 1.8199999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-235b-a22b-2507": {
- id: "qwen/qwen3-235b-a22b-2507",
- name: "Qwen: Qwen3 235B A22B Instruct 2507",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.09,
- output: 0.55,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-235b-a22b-thinking-2507": {
- id: "qwen/qwen3-235b-a22b-thinking-2507",
- name: "Qwen: Qwen3 235B A22B Thinking 2507",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.22999999999999998,
- output: 2.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-30b-a3b": {
- id: "qwen/qwen3-30b-a3b",
- name: "Qwen: Qwen3 30B A3B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-30b-a3b-instruct-2507": {
- id: "qwen/qwen3-30b-a3b-instruct-2507",
- name: "Qwen: Qwen3 30B A3B Instruct 2507",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.04815,
- output: 0.19305,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-30b-a3b-thinking-2507": {
- id: "qwen/qwen3-30b-a3b-thinking-2507",
- name: "Qwen: Qwen3 30B A3B Thinking 2507",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.19999999999999998,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 81920,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-32b": {
- id: "qwen/qwen3-32b",
- name: "Qwen: Qwen3 32B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.08,
- output: 0.28,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-8b": {
- id: "qwen/qwen3-8b",
- name: "Qwen: Qwen3 8B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.117,
- output: 0.45499999999999996,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder": {
- id: "qwen/qwen3-coder",
- name: "Qwen: Qwen3 Coder 480B A35B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder-30b-a3b-instruct": {
- id: "qwen/qwen3-coder-30b-a3b-instruct",
- name: "Qwen: Qwen3 Coder 30B A3B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.28,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder-flash": {
- id: "qwen/qwen3-coder-flash",
- name: "Qwen: Qwen3 Coder Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.195,
- output: 0.975,
- cacheRead: 0.039,
- cacheWrite: 0.24375,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder-next": {
- id: "qwen/qwen3-coder-next",
- name: "Qwen: Qwen3 Coder Next",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.7999999999999999,
- cacheRead: 0.07,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder-plus": {
- id: "qwen/qwen3-coder-plus",
- name: "Qwen: Qwen3 Coder Plus",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.65,
- output: 3.25,
- cacheRead: 0.13,
- cacheWrite: 0.8125,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-max": {
- id: "qwen/qwen3-max",
- name: "Qwen: Qwen3 Max",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.78,
- output: 3.9,
- cacheRead: 0.156,
- cacheWrite: 0.975,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-max-thinking": {
- id: "qwen/qwen3-max-thinking",
- name: "Qwen: Qwen3 Max Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.78,
- output: 3.9,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-next-80b-a3b-instruct": {
- id: "qwen/qwen3-next-80b-a3b-instruct",
- name: "Qwen: Qwen3 Next 80B A3B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 1.1,
- cacheRead: 0.07,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-next-80b-a3b-thinking": {
- id: "qwen/qwen3-next-80b-a3b-thinking",
- name: "Qwen: Qwen3 Next 80B A3B Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.15,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-235b-a22b-instruct": {
- id: "qwen/qwen3-vl-235b-a22b-instruct",
- name: "Qwen: Qwen3 VL 235B A22B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.21,
- output: 1.9,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-235b-a22b-thinking": {
- id: "qwen/qwen3-vl-235b-a22b-thinking",
- name: "Qwen: Qwen3 VL 235B A22B Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-30b-a3b-instruct": {
- id: "qwen/qwen3-vl-30b-a3b-instruct",
- name: "Qwen: Qwen3 VL 30B A3B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-30b-a3b-thinking": {
- id: "qwen/qwen3-vl-30b-a3b-thinking",
- name: "Qwen: Qwen3 VL 30B A3B Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-32b-instruct": {
- id: "qwen/qwen3-vl-32b-instruct",
- name: "Qwen: Qwen3 VL 32B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.10400000000000001,
- output: 0.41600000000000004,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-8b-instruct": {
- id: "qwen/qwen3-vl-8b-instruct",
- name: "Qwen: Qwen3 VL 8B Instruct",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.117,
- output: 0.45499999999999996,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-8b-thinking": {
- id: "qwen/qwen3-vl-8b-thinking",
- name: "Qwen: Qwen3 VL 8B Thinking",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.18,
- output: 2.0999999999999996,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-122b-a10b": {
- id: "qwen/qwen3.5-122b-a10b",
- name: "Qwen: Qwen3.5-122B-A10B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.29,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 81920,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-27b": {
- id: "qwen/qwen3.5-27b",
- name: "Qwen: Qwen3.5-27B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.195,
- output: 1.56,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-35b-a3b": {
- id: "qwen/qwen3.5-35b-a3b",
- name: "Qwen: Qwen3.5-35B-A3B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3125,
- output: 1.25,
- cacheRead: 0.15625,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-397b-a17b": {
- id: "qwen/qwen3.5-397b-a17b",
- name: "Qwen: Qwen3.5 397B A17B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.55,
- output: 3.5,
- cacheRead: 0.22499999999999998,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-9b": {
- id: "qwen/qwen3.5-9b",
- name: "Qwen: Qwen3.5-9B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-flash-02-23": {
- id: "qwen/qwen3.5-flash-02-23",
- name: "Qwen: Qwen3.5-Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.065,
- output: 0.26,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-plus-02-15": {
- id: "qwen/qwen3.5-plus-02-15",
- name: "Qwen: Qwen3.5 Plus 2026-02-15",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.26,
- output: 1.56,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-plus-20260420": {
- id: "qwen/qwen3.5-plus-20260420",
- name: "Qwen: Qwen3.5 Plus 2026-04-20",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.7999999999999998,
- cacheRead: 0,
- cacheWrite: 0.375,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-27b": {
- id: "qwen/qwen3.6-27b",
- name: "Qwen: Qwen3.6 27B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-35b-a3b": {
- id: "qwen/qwen3.6-35b-a3b",
- name: "Qwen: Qwen3.6 35B A3B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.8999999999999999,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-flash": {
- id: "qwen/qwen3.6-flash",
- name: "Qwen: Qwen3.6 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.1875,
- output: 1.125,
- cacheRead: 0,
- cacheWrite: 0.234375,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-max-preview": {
- id: "qwen/qwen3.6-max-preview",
- name: "Qwen: Qwen3.6 Max Preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.0270000000000001,
- output: 6.162,
- cacheRead: 0,
- cacheWrite: 1.28375,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-plus": {
- id: "qwen/qwen3.6-plus",
- name: "Qwen: Qwen3.6 Plus",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.325,
- output: 1.95,
- cacheRead: 0,
- cacheWrite: 0.40625,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.7-flash": {
- id: "qwen/qwen3.7-flash",
- name: "Qwen: Qwen3.7 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.03,
- output: 0.13,
- cacheRead: 0.006,
- cacheWrite: 0.038000000000000006,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.7-max": {
- id: "qwen/qwen3.7-max",
- name: "Qwen: Qwen3.7 Max",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.475,
- output: 4.425,
- cacheRead: 0.295,
- cacheWrite: 1.84375,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.7-plus": {
- id: "qwen/qwen3.7-plus",
- name: "Qwen: Qwen3.7 Plus",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.32,
- output: 1.28,
- cacheRead: 0.064,
- cacheWrite: 0.39999999999999997,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-2.4t-a95b": {
- id: "qwen/qwen3.8-2.4t-a95b",
- name: "Qwen: Qwen3.8 2.4T A95B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":null,"xhigh":"xhigh","max":null},
- input: ["text"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-27b": {
- id: "qwen/qwen3.8-27b",
- name: "Qwen: Qwen3.8 27B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":null,"xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.42,
- output: 3,
- cacheRead: 0.08499999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-flash": {
- id: "qwen/qwen3.8-flash",
- name: "Qwen: Qwen3.8 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.47,
- cacheRead: 0.016,
- cacheWrite: 0.19999999999999998,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-max-0902": {
- id: "qwen/qwen3.8-max-0902",
- name: "Qwen: Qwen3.8 Max (0902)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "rekaai/reka-edge": {
- id: "rekaai/reka-edge",
- name: "Reka Edge",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.09999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 16384,
- maxTokens: 14745,
- } satisfies Model<"openai-completions">,
- "relace/relace-search": {
- id: "relace/relace-search",
- name: "Relace: Relace Search",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "sakana/fugu-ultra": {
- id: "sakana/fugu-ultra",
- name: "Sakana: Fugu Ultra",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "sakana/sakana-namazu": {
- id: "sakana/sakana-namazu",
- name: "Sakana: Sakana Namazu",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "sao10k/l3.1-euryale-70b": {
- id: "sao10k/l3.1-euryale-70b",
- name: "Sao10K: Llama 3.1 Euryale 70B v2.2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.85,
- output: 0.85,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "stepfun/step-3.5-flash": {
- id: "stepfun/step-3.5-flash",
- name: "StepFun: Step 3.5 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "stepfun/step-3.7-flash": {
- id: "stepfun/step-3.7-flash",
- name: "StepFun: Step 3.7 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.15,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 230400,
- } satisfies Model<"openai-completions">,
- "tencent/hy3": {
- id: "tencent/hy3",
- name: "Tencent: Hy3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.13199999999999998,
- output: 0.5279999999999999,
- cacheRead: 0.032999999999999995,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "tencent/hy3-preview": {
- id: "tencent/hy3-preview",
- name: "Tencent: Hy3 preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.18,
- output: 0.6,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "tencent/hy4-preview": {
- id: "tencent/hy4-preview",
- name: "Tencent: Hy4 preview",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.834,
- output: 2.501,
- cacheRead: 0.041999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "thedrummer/unslopnemo-12b": {
- id: "thedrummer/unslopnemo-12b",
- name: "TheDrummer: UnslopNemo 12B",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.39999999999999997,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1024000,
- maxTokens: 819200,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/inkling": {
- id: "thinkingmachines/inkling",
- name: "Thinking Machines: Inkling",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 4.05,
- cacheRead: 0.16999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 471859,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/inkling-small": {
- id: "thinkingmachines/inkling-small",
- name: "Thinking Machines: Inkling Small",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.44999999999999996,
- output: 1.2,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/inkling-small:free": {
- id: "thinkingmachines/inkling-small:free",
- name: "Thinking Machines: Inkling Small (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "thinkingmachines/inkling:free": {
- id: "thinkingmachines/inkling:free",
- name: "Thinking Machines: Inkling (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "upstage/solar-pro-3": {
- id: "upstage/solar-pro-3",
- name: "Upstage: Solar Pro 3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "upstage/solar-pro4": {
- id: "upstage/solar-pro4",
- name: "Upstage: Solar Pro 4",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.03,
- output: 0.12,
- cacheRead: 0.006,
- cacheWrite: 0,
- },
- contextWindow: 524288,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.20": {
- id: "x-ai/grok-4.20",
- name: "SpaceXAI: Grok 4.20",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 1800000,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.3": {
- id: "x-ai/grok-4.3",
- name: "SpaceXAI: Grok 4.3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 900000,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.5": {
- id: "x-ai/grok-4.5",
- name: "SpaceXAI: Grok 4.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 450000,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.6": {
- id: "x-ai/grok-4.6",
- name: "SpaceXAI: Grok 4.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 450000,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-build-0.1": {
- id: "x-ai/grok-build-0.1",
- name: "SpaceXAI: Grok Build 0.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 2,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 230400,
- } satisfies Model<"openai-completions">,
- "xiaomi/mimo-v2.5": {
- id: "xiaomi/mimo-v2.5",
- name: "Xiaomi: MiMo-V2.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "xiaomi/mimo-v2.5-pro": {
- id: "xiaomi/mimo-v2.5-pro",
- name: "Xiaomi: MiMo-V2.5-Pro",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.5": {
- id: "z-ai/glm-4.5",
- name: "Z.ai: GLM 4.5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.5-air": {
- id: "z-ai/glm-4.5-air",
- name: "Z.ai: GLM 4.5 Air",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.13,
- output: 0.85,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.5v": {
- id: "z-ai/glm-4.5v",
- name: "Z.ai: GLM 4.5V",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 1.7999999999999998,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 65536,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.6": {
- id: "z-ai/glm-4.6",
- name: "Z.ai: GLM 4.6",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.55,
- output: 2.2,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.6v": {
- id: "z-ai/glm-4.6v",
- name: "Z.ai: GLM 4.6V",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 0.8999999999999999,
- cacheRead: 0.055,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.7": {
- id: "z-ai/glm-4.7",
- name: "Z.ai: GLM 4.7",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.39999999999999997,
- output: 1.75,
- cacheRead: 0.08,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.7-flash": {
- id: "z-ai/glm-4.7-flash",
- name: "Z.ai: GLM 4.7 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.39999999999999997,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5": {
- id: "z-ai/glm-5",
- name: "Z.ai: GLM 5",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 1.9,
- cacheRead: 0.119,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5-turbo": {
- id: "z-ai/glm-5-turbo",
- name: "Z.ai: GLM 5 Turbo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.2,
- output: 4,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.1": {
- id: "z-ai/glm-5.1",
- name: "Z.ai: GLM 5.1",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.966,
- output: 3.036,
- cacheRead: 0.1794,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.2": {
- id: "z-ai/glm-5.2",
- name: "Z.ai: GLM 5.2",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"xhigh","max":null},
- input: ["text"],
- cost: {
- input: 0.966,
- output: 3.036,
- cacheRead: 0.1932,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.2:free": {
- id: "z-ai/glm-5.2:free",
- name: "Z.ai: GLM 5.2 (free)",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"xhigh","max":null},
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 230400,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.3": {
- id: "z-ai/glm-5.3",
- name: "Z.ai: GLM 5.3",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.14,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.3-flash": {
- id: "z-ai/glm-5.3-flash",
- name: "Z.ai: GLM 5.3 Flash",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.25,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5v-turbo": {
- id: "z-ai/glm-5v-turbo",
- name: "Z.ai: GLM 5V Turbo",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.2,
- output: 4,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "~anthropic/claude-fable-latest": {
- id: "~anthropic/claude-fable-latest",
- name: "Anthropic: Claude Fable Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "~anthropic/claude-haiku-latest": {
- id: "~anthropic/claude-haiku-latest",
- name: "Anthropic Claude Haiku Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"supportsReasoningEffort":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.09999999999999999,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "~anthropic/claude-opus-latest": {
- id: "~anthropic/claude-opus-latest",
- name: "Anthropic: Claude Opus Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "~anthropic/claude-sonnet-latest": {
- id: "~anthropic/claude-sonnet-latest",
- name: "Anthropic Claude Sonnet Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "~deepseek/deepseek-v4-flash-latest": {
- id: "~deepseek/deepseek-v4-flash-latest",
- name: "DeepSeek V4 Flash Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- compat: {"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.045,
- output: 0.09,
- cacheRead: 0.009,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "~google/gemini-flash-latest": {
- id: "~google/gemini-flash-latest",
- name: "Google Gemini Flash Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0.0416666666666667,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "~google/gemini-pro-latest": {
- id: "~google/gemini-pro-latest",
- name: "Google Gemini Pro Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0.375,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "~moonshotai/kimi-latest": {
- id: "~moonshotai/kimi-latest",
- name: "MoonshotAI Kimi Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.5500000000000003,
- output: 12.75,
- cacheRead: 0.25599998999999996,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "~openai/gpt-latest": {
- id: "~openai/gpt-latest",
- name: "OpenAI GPT Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "~openai/gpt-mini-latest": {
- id: "~openai/gpt-mini-latest",
- name: "OpenAI GPT Mini Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "~x-ai/grok-latest": {
- id: "~x-ai/grok-latest",
- name: "xAI: Grok Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 450000,
- } satisfies Model<"openai-completions">,
- "~z-ai/glm-flash-latest": {
- id: "~z-ai/glm-flash-latest",
- name: "Z.ai: GLM Flash Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.075,
- output: 0.25,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 943718,
- } satisfies Model<"openai-completions">,
- "~z-ai/glm-latest": {
- id: "~z-ai/glm-latest",
- name: "Z.ai: GLM Latest",
- api: "openai-completions",
- provider: "openrouter",
- baseUrl: "https://openrouter.ai/api/v1",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text"],
- cost: {
- input: 1.17,
- output: 3.9600000000000004,
- cacheRead: 0.234,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- },
- "prime-inference": {
- "anthropic/claude-fable-5": {
- id: "anthropic/claude-fable-5",
- name: "Claude Fable 5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-fable-5.1": {
- id: "anthropic/claude-fable-5.1",
- name: "Claude Fable 5.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-haiku-4.5": {
- id: "anthropic/claude-haiku-4.5",
- name: "Claude Haiku 4.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.1,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.1": {
- id: "anthropic/claude-opus-4.1",
- name: "Claude Opus 4.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 32000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.5": {
- id: "anthropic/claude-opus-4.5",
- name: "Claude Opus 4.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.6": {
- id: "anthropic/claude-opus-4.6",
- name: "Claude Opus 4.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.7": {
- id: "anthropic/claude-opus-4.7",
- name: "Claude Opus 4.7",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-4.8": {
- id: "anthropic/claude-opus-4.8",
- name: "Claude Opus 4.8",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-opus-5": {
- id: "anthropic/claude-opus-5",
- name: "Claude Opus 5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4": {
- id: "anthropic/claude-sonnet-4",
- name: "Claude Sonnet 4",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.30000000000000004,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4.5": {
- id: "anthropic/claude-sonnet-4.5",
- name: "Claude Sonnet 4.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.30000000000000004,
- cacheWrite: 3.75,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-4.6": {
- id: "anthropic/claude-sonnet-4.6",
- name: "Claude Sonnet 4.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.30000000000000004,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "anthropic/claude-sonnet-5": {
- id: "anthropic/claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.2,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat": {
- id: "deepseek/deepseek-chat",
- name: "Deepseek Chat",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.4,
- output: 1.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat-v3-0324": {
- id: "deepseek/deepseek-chat-v3-0324",
- name: "Deepseek Chat V3 0324",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1.12,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 147456,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-chat-v3.1": {
- id: "deepseek/deepseek-chat-v3.1",
- name: "Deepseek Chat V3.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 1.7,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 144900,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.1-terminus": {
- id: "deepseek/deepseek-v3.1-terminus",
- name: "Deepseek V3.1 Terminus",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.2": {
- id: "deepseek/deepseek-v3.2",
- name: "Deepseek V3.2",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.3705,
- output: 1.1115,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 65536,
- featured: true,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v3.2-exp": {
- id: "deepseek/deepseek-v3.2-exp",
- name: "Deepseek V3.2 EXP",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.27,
- output: 0.41,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-flash": {
- id: "deepseek/deepseek-v4-flash",
- name: "Deepseek V4 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false,"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.44,
- output: 1.32,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-flash-0731": {
- id: "deepseek/deepseek-v4-flash-0731",
- name: "Deepseek V4 Flash 0731",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false,"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 0.44,
- output: 1.32,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "deepseek/deepseek-v4-pro": {
- id: "deepseek/deepseek-v4-pro",
- name: "Deepseek V4 PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false,"requiresReasoningContentOnAssistantMessages":true,"thinkingFormat":"deepseek"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null},
- input: ["text"],
- cost: {
- input: 1.91,
- output: 3.83,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 384000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-flash": {
- id: "google/gemini-2.5-flash",
- name: "Gemini 2.5 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-flash-lite": {
- id: "google/gemini-2.5-flash-lite",
- name: "Gemini 2.5 Flash Lite",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "google/gemini-2.5-pro": {
- id: "google/gemini-2.5-pro",
- name: "Gemini 2.5 PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3-flash-preview": {
- id: "google/gemini-3-flash-preview",
- name: "Gemini 3 Flash Preview",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.1-pro-preview": {
- id: "google/gemini-3.1-pro-preview",
- name: "Gemini 3.1 PRO Preview",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.5-flash": {
- id: "google/gemini-3.5-flash",
- name: "Gemini 3.5 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.6-flash": {
- id: "google/gemini-3.6-flash",
- name: "Gemini 3.6 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.7-flash": {
- id: "google/gemini-3.7-flash",
- name: "Gemini 3.7 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.35,
- output: 6.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemini-3.8-flash": {
- id: "google/gemini-3.8-flash",
- name: "Gemini 3.8 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "google/gemma-3-27b-it": {
- id: "google/gemma-3-27b-it",
- name: "Gemma 3 27B IT",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.119,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "meta-llama/Llama-3.2-1B-Instruct": {
- id: "meta-llama/Llama-3.2-1B-Instruct",
- name: "Llama 3.2 1B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.027,
- output: 0.201,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 60000,
- maxTokens: 54000,
- } satisfies Model<"openai-completions">,
- "meta-llama/Llama-3.2-3B-Instruct": {
- id: "meta-llama/Llama-3.2-3B-Instruct",
- name: "Llama 3.2 3B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.0509,
- output: 0.335,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 80000,
- maxTokens: 80000,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-3.3-70b-instruct": {
- id: "meta-llama/llama-3.3-70b-instruct",
- name: "Llama 3.3 70B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1.04,
- output: 2.253,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "meta-llama/llama-4-maverick": {
- id: "meta-llama/llama-4-maverick",
- name: "Llama 4 Maverick",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.35,
- output: 1.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 115200,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.5": {
- id: "minimax/minimax-m2.5",
- name: "Minimax M2.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m2.7": {
- id: "minimax/minimax-m2.7",
- name: "Minimax M2.7",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "minimax/minimax-m3": {
- id: "minimax/minimax-m3",
- name: "Minimax M3",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 524288,
- maxTokens: 512000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-large-2512": {
- id: "mistralai/mistral-large-2512",
- name: "Mistral Large 2512",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-nemo": {
- id: "mistralai/mistral-nemo",
- name: "Mistral Nemo",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.165,
- output: 0.17,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "mistralai/mistral-small-2603": {
- id: "mistralai/mistral-small-2603",
- name: "Mistral Small 2603",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.165,
- output: 0.66,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 209715,
- } satisfies Model<"openai-completions">,
- "mistralai/mixtral-8x22b-instruct": {
- id: "mistralai/mixtral-8x22b-instruct",
- name: "Mixtral 8X22B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.2,
- output: 6.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 65536,
- maxTokens: 52428,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2-0905": {
- id: "moonshotai/kimi-k2-0905",
- name: "Kimi K2 0905",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 98304,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.5": {
- id: "moonshotai/kimi-k2.5",
- name: "Kimi K2.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65535,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.6": {
- id: "moonshotai/kimi-k2.6",
- name: "Kimi K2.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k2.7-code": {
- id: "moonshotai/kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.9,
- output: 8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- featured: true,
- } satisfies Model<"openai-completions">,
- "moonshotai/kimi-k3": {
- id: "moonshotai/kimi-k3",
- name: "Kimi K3",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3.45,
- output: 17.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- featured: true,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-nano-30b-a3b": {
- id: "nvidia/nemotron-3-nano-30b-a3b",
- name: "Nemotron 3 Nano 30B A3B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- featured: true,
- } satisfies Model<"openai-completions">,
- "nvidia/nemotron-3-super-120b-a12b": {
- id: "nvidia/nemotron-3-super-120b-a12b",
- name: "Nemotron 3 Super 120B A12B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":null,"xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.3,
- output: 0.65,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 4096,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1": {
- id: "openai/gpt-4.1",
- name: "GPT 4.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1-mini": {
- id: "openai/gpt-4.1-mini",
- name: "GPT 4.1 Mini",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.4,
- output: 1.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4.1-nano": {
- id: "openai/gpt-4.1-nano",
- name: "GPT 4.1 Nano",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.1,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o": {
- id: "openai/gpt-4o",
- name: "GPT 4O",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-4o-mini": {
- id: "openai/gpt-4o-mini",
- name: "GPT 4O Mini",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5": {
- id: "openai/gpt-5",
- name: "GPT 5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5-mini": {
- id: "openai/gpt-5-mini",
- name: "GPT 5 Mini",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5-nano": {
- id: "openai/gpt-5-nano",
- name: "GPT 5 Nano",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.05,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.1": {
- id: "openai/gpt-5.1",
- name: "GPT 5.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2": {
- id: "openai/gpt-5.2",
- name: "GPT 5.2",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.2-pro": {
- id: "openai/gpt-5.2-pro",
- name: "GPT 5.2 PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 21,
- output: 168,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.3-codex": {
- id: "openai/gpt-5.3-codex",
- name: "GPT 5.3 Codex",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4": {
- id: "openai/gpt-5.4",
- name: "GPT 5.4",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-mini": {
- id: "openai/gpt-5.4-mini",
- name: "GPT 5.4 Mini",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-nano": {
- id: "openai/gpt-5.4-nano",
- name: "GPT 5.4 Nano",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.4-pro": {
- id: "openai/gpt-5.4-pro",
- name: "GPT 5.4 PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.5": {
- id: "openai/gpt-5.5",
- name: "GPT 5.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6": {
- id: "openai/gpt-5.6",
- name: "GPT 5.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-luna": {
- id: "openai/gpt-5.6-luna",
- name: "GPT 5.6 Luna",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-luna-pro": {
- id: "openai/gpt-5.6-luna-pro",
- name: "GPT 5.6 Luna PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-sol": {
- id: "openai/gpt-5.6-sol",
- name: "GPT 5.6 SOL",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-sol-pro": {
- id: "openai/gpt-5.6-sol-pro",
- name: "GPT 5.6 SOL PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-terra": {
- id: "openai/gpt-5.6-terra",
- name: "GPT 5.6 Terra",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-5.6-terra-pro": {
- id: "openai/gpt-5.6-terra-pro",
- name: "GPT 5.6 Terra PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-6-astra": {
- id: "openai/gpt-6-astra",
- name: "GPT 6 Astra",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-120b": {
- id: "openai/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.35,
- output: 0.75,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 117964,
- } satisfies Model<"openai-completions">,
- "openai/gpt-oss-20b": {
- id: "openai/gpt-oss-20b",
- name: "GPT OSS 20B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-s-2.1": {
- id: "poolside/laguna-s-2.1",
- name: "Laguna S 2.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.09,
- output: 0.18,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "poolside/laguna-xs-2.1": {
- id: "poolside/laguna-xs-2.1",
- name: "Laguna XS 2.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.12,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-235b-a22b-2507": {
- id: "qwen/qwen3-235b-a22b-2507",
- name: "QWEN3 235B A22B 2507",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-30b-a3b-instruct-2507": {
- id: "qwen/qwen3-30b-a3b-instruct-2507",
- name: "QWEN3 30B A3B Instruct 2507",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.13,
- output: 0.52,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-8b": {
- id: "qwen/qwen3-8b",
- name: "QWEN3 8B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.117,
- output: 0.455,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder": {
- id: "qwen/qwen3-coder",
- name: "QWEN3 Coder",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.975,
- output: 4.875,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-coder-next": {
- id: "qwen/qwen3-coder-next",
- name: "QWEN3 Coder Next",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- featured: true,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-max": {
- id: "qwen/qwen3-max",
- name: "QWEN3 MAX",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1.2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- featured: true,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-235b-a22b-instruct": {
- id: "qwen/qwen3-vl-235b-a22b-instruct",
- name: "QWEN3 VL 235B A22B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-235b-a22b-thinking": {
- id: "qwen/qwen3-vl-235b-a22b-thinking",
- name: "QWEN3 VL 235B A22B Thinking",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.98,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- featured: true,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-30b-a3b-instruct": {
- id: "qwen/qwen3-vl-30b-a3b-instruct",
- name: "QWEN3 VL 30B A3B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.2,
- output: 0.7,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3-vl-8b-instruct": {
- id: "qwen/qwen3-vl-8b-instruct",
- name: "QWEN3 VL 8B Instruct",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.117,
- output: 0.455,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-35b-a3b": {
- id: "qwen/qwen3.5-35b-a3b",
- name: "QWEN3.5 35B A3B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.5-397b-a17b": {
- id: "qwen/qwen3.5-397b-a17b",
- name: "QWEN3.5 397B A17B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-27b": {
- id: "qwen/qwen3.6-27b",
- name: "QWEN3.6 27B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.6-35b-a3b": {
- id: "qwen/qwen3.6-35b-a3b",
- name: "QWEN3.6 35B A3B",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.25,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 235929,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.7-flash": {
- id: "qwen/qwen3.7-flash",
- name: "QWEN3.7 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.03,
- output: 0.13,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"openai-completions">,
- "qwen/qwen3.8-max": {
- id: "qwen/qwen3.8-max",
- name: "QWEN3.8 MAX",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- featured: true,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.20": {
- id: "x-ai/grok-4.20",
- name: "Grok 4.20",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 30000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.20-multi-agent": {
- id: "x-ai/grok-4.20-multi-agent",
- name: "Grok 4.20 Multi Agent",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 30000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "x-ai/grok-4.6": {
- id: "x-ai/grok-4.6",
- name: "Grok 4.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":true,"maxTokensField":"max_tokens","supportsStrictMode":false},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":null},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 450000,
- } satisfies Model<"openai-completions">,
- "xiaomi/mimo-v2.5": {
- id: "xiaomi/mimo-v2.5",
- name: "Mimo V2.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text", "image"],
- cost: {
- input: 0.168,
- output: 0.336,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "xiaomi/mimo-v2.5-pro": {
- id: "xiaomi/mimo-v2.5-pro",
- name: "Mimo V2.5 PRO",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"openrouter"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.48024,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.5": {
- id: "z-ai/glm-4.5",
- name: "GLM 4.5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.5-air": {
- id: "z-ai/glm-4.5-air",
- name: "GLM 4.5 AIR",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.2,
- output: 1.1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 98304,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.6": {
- id: "z-ai/glm-4.6",
- name: "GLM 4.6",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.7": {
- id: "z-ai/glm-4.7",
- name: "GLM 4.7",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-4.7-flash": {
- id: "z-ai/glm-4.7-flash",
- name: "GLM 4.7 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 202752,
- maxTokens: 16384,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5": {
- id: "z-ai/glm-5",
- name: "GLM 5",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1,
- output: 3.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- featured: true,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.1": {
- id: "z-ai/glm-5.1",
- name: "GLM 5.1",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null},
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 128000,
- featured: true,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.2": {
- id: "z-ai/glm-5.2",
- name: "GLM 5.2",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"xhigh","max":null},
- input: ["text"],
- cost: {
- input: 1.54,
- output: 4.84,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- featured: true,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.3": {
- id: "z-ai/glm-5.3",
- name: "GLM 5.3",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 262144,
- } satisfies Model<"openai-completions">,
- "z-ai/glm-5.3-flash": {
- id: "z-ai/glm-5.3-flash",
- name: "GLM 5.3 Flash",
- api: "openai-completions",
- provider: "prime-inference",
- baseUrl: "https://api.pinference.ai/api/v1",
- compat: {"supportsStore":false,"supportsDeveloperRole":false,"supportsReasoningEffort":false,"maxTokensField":"max_tokens","supportsStrictMode":false,"thinkingFormat":"zai"},
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1310720,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
- "vercel-ai-gateway": {
- "alibaba/qwen-3-14b": {
- id: "alibaba/qwen-3-14b",
- name: "Qwen3-14B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 40960,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen-3-235b": {
- id: "alibaba/qwen-3-235b",
- name: "Qwen3 235B A22B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.88,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen-3-30b": {
- id: "alibaba/qwen-3-30b",
- name: "Qwen3-30B-A3B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.12,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 40960,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen-3-32b": {
- id: "alibaba/qwen-3-32b",
- name: "Qwen 3 32B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.16,
- output: 0.64,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen-3.6-max-preview": {
- id: "alibaba/qwen-3.6-max-preview",
- name: "Qwen 3.6 Max Preview",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.3,
- output: 7.8,
- cacheRead: 0.26,
- cacheWrite: 1.625,
- },
- contextWindow: 240000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-235b-a22b-thinking": {
- id: "alibaba/qwen3-235b-a22b-thinking",
- name: "Qwen3 VL 235B A22B Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-coder": {
- id: "alibaba/qwen3-coder",
- name: "Qwen3 Coder 480B A35B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-coder-30b-a3b": {
- id: "alibaba/qwen3-coder-30b-a3b",
- name: "Qwen 3 Coder 30B A3B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-coder-next": {
- id: "alibaba/qwen3-coder-next",
- name: "Qwen3 Coder Next",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.5,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-coder-plus": {
- id: "alibaba/qwen3-coder-plus",
- name: "Qwen3 Coder Plus",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-max": {
- id: "alibaba/qwen3-max",
- name: "Qwen3 Max",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1.2,
- output: 6,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-max-preview": {
- id: "alibaba/qwen3-max-preview",
- name: "Qwen3 Max Preview",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 1.2,
- output: 6,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-max-thinking": {
- id: "alibaba/qwen3-max-thinking",
- name: "Qwen 3 Max Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.2,
- output: 6,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-next-80b-a3b-instruct": {
- id: "alibaba/qwen3-next-80b-a3b-instruct",
- name: "Qwen3 Next 80B A3B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-next-80b-a3b-thinking": {
- id: "alibaba/qwen3-next-80b-a3b-thinking",
- name: "Qwen3 Next 80B A3B Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 1.2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-vl-235b-a22b-instruct": {
- id: "alibaba/qwen3-vl-235b-a22b-instruct",
- name: "Qwen3 VL 235B A22B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 1.5999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 129024,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-vl-instruct": {
- id: "alibaba/qwen3-vl-instruct",
- name: "Qwen3 VL 235B A22B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 1.5999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 129024,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3-vl-thinking": {
- id: "alibaba/qwen3-vl-thinking",
- name: "Qwen3 VL 235B A22B Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.5-flash": {
- id: "alibaba/qwen3.5-flash",
- name: "Qwen 3.5 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0.001,
- cacheWrite: 0.125,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.5-plus": {
- id: "alibaba/qwen3.5-plus",
- name: "Qwen 3.5 Plus",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 2.4,
- cacheRead: 0.04,
- cacheWrite: 0.5,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.6-27b": {
- id: "alibaba/qwen3.6-27b",
- name: "Qwen 3.6 27B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3.5999999999999996,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.6-plus": {
- id: "alibaba/qwen3.6-plus",
- name: "Qwen 3.6 Plus",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0.625,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.7-flash": {
- id: "alibaba/qwen3.7-flash",
- name: "Qwen 3.7 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.03,
- output: 0.13,
- cacheRead: 0.006,
- cacheWrite: 0.038000000000000006,
- },
- contextWindow: 991000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.7-max": {
- id: "alibaba/qwen3.7-max",
- name: "Qwen 3.7 Max",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 7.5,
- cacheRead: 0.5,
- cacheWrite: 3.125,
- },
- contextWindow: 991000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.7-plus": {
- id: "alibaba/qwen3.7-plus",
- name: "Qwen 3.7 Plus",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 1.5999999999999999,
- cacheRead: 0.08,
- cacheWrite: 0.5,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-2.4t-a95b": {
- id: "alibaba/qwen3.8-2.4t-a95b",
- name: "Qwen3.8 2.4T A95B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-27b": {
- id: "alibaba/qwen3.8-27b",
- name: "Qwen3.8 27B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0.625,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-flash": {
- id: "alibaba/qwen3.8-flash",
- name: "Qwen 3.8 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.16,
- output: 0.47,
- cacheRead: 0.016,
- cacheWrite: 0.19999999999999998,
- },
- contextWindow: 991000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-flash-next": {
- id: "alibaba/qwen3.8-flash-next",
- name: "Qwen 3.8 Flash Next",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.12,
- output: 0.39999999999999997,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-max": {
- id: "alibaba/qwen3.8-max",
- name: "Qwen 3.8 Max",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "alibaba/qwen3.8-max-0902": {
- id: "alibaba/qwen3.8-max-0902",
- name: "Qwen3.8 Max 0902",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.25,
- cacheWrite: 2.5,
- },
- contextWindow: 991000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "amazon/nova-2-lite": {
- id: "amazon/nova-2-lite",
- name: "Nova 2 Lite",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "amazon/nova-lite": {
- id: "amazon/nova-lite",
- name: "Nova Lite",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.06,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "amazon/nova-micro": {
- id: "amazon/nova-micro",
- name: "Nova Micro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.035,
- output: 0.14,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "amazon/nova-pro": {
- id: "amazon/nova-pro",
- name: "Nova Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.7999999999999999,
- output: 3.1999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 300000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-3-haiku": {
- id: "anthropic/claude-3-haiku",
- name: "Claude 3 Haiku",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.25,
- cacheRead: 0.03,
- cacheWrite: 0.3,
- },
- contextWindow: 200000,
- maxTokens: 4096,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-fable-5": {
- id: "anthropic/claude-fable-5",
- name: "Claude Fable 5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-fable-5.1": {
- id: "anthropic/claude-fable-5.1",
- name: "Claude Fable 5.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"off":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 0.25,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-haiku-4.5": {
- id: "anthropic/claude-haiku-4.5",
- name: "Claude Haiku 4.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 5,
- cacheRead: 0.09999999999999999,
- cacheWrite: 1.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4": {
- id: "anthropic/claude-opus-4",
- name: "Claude Opus 4",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 75,
- cacheRead: 1.5,
- cacheWrite: 18.75,
- },
- contextWindow: 200000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4.5": {
- id: "anthropic/claude-opus-4.5",
- name: "Claude Opus 4.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 200000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4.6": {
- id: "anthropic/claude-opus-4.6",
- name: "Claude Opus 4.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4.7": {
- id: "anthropic/claude-opus-4.7",
- name: "Claude Opus 4.7",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4.8": {
- id: "anthropic/claude-opus-4.8",
- name: "Claude Opus 4.8",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-4.8-fast": {
- id: "anthropic/claude-opus-4.8-fast",
- name: "Claude Opus 4.8 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-5": {
- id: "anthropic/claude-opus-5",
- name: "Claude Opus 5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 25,
- cacheRead: 0.5,
- cacheWrite: 6.25,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-opus-5-fast": {
- id: "anthropic/claude-opus-5-fast",
- name: "Claude Opus 5 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-sonnet-4": {
- id: "anthropic/claude-sonnet-4",
- name: "Claude Sonnet 4",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-sonnet-4.5": {
- id: "anthropic/claude-sonnet-4.5",
- name: "Claude Sonnet 4.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-sonnet-4.6": {
- id: "anthropic/claude-sonnet-4.6",
- name: "Claude Sonnet 4.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 3.75,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "anthropic/claude-sonnet-5": {
- id: "anthropic/claude-sonnet-5",
- name: "Claude Sonnet 5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "arcee-ai/trinity-large-thinking": {
- id: "arcee-ai/trinity-large-thinking",
- name: "Trinity Large Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.8999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262100,
- maxTokens: 80000,
- } satisfies Model<"anthropic-messages">,
- "bytedance/seed-1.6": {
- id: "bytedance/seed-1.6",
- name: "Seed 1.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "bytedance/seed-1.8": {
- id: "bytedance/seed-1.8",
- name: "Bytedance Seed 1.8",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "cohere/command-a": {
- id: "cohere/command-a",
- name: "Command A",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 8000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-r1": {
- id: "deepseek/deepseek-r1",
- name: "DeepSeek-R1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.35,
- output: 5.4,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v3.1": {
- id: "deepseek/deepseek-v3.1",
- name: "DeepSeek V3.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.95,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 163840,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v3.1-terminus": {
- id: "deepseek/deepseek-v3.1-terminus",
- name: "DeepSeek V3.1 Terminus",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.27,
- output: 1,
- cacheRead: 0.135,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v3.2": {
- id: "deepseek/deepseek-v3.2",
- name: "DeepSeek V3.2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.28,
- output: 0.42,
- cacheRead: 0.028,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v3.2-thinking": {
- id: "deepseek/deepseek-v3.2-thinking",
- name: "DeepSeek V3.2 Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.62,
- output: 1.85,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v4-flash": {
- id: "deepseek/deepseek-v4-flash",
- name: "DeepSeek V4 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.13,
- output: 0.26,
- cacheRead: 0.028,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v4-flash-0731": {
- id: "deepseek/deepseek-v4-flash-0731",
- name: "DeepSeek V4 Flash 0731",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07600000000000001,
- output: 0.153,
- cacheRead: 0.014,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v4-flash-vision-exp": {
- id: "deepseek/deepseek-v4-flash-vision-exp",
- name: "DeepSeek V4 Flash Vision Exp",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.22,
- output: 0.66,
- cacheRead: 0.007,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v4-pro": {
- id: "deepseek/deepseek-v4-pro",
- name: "DeepSeek V4 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.66,
- output: 1.9800000000000002,
- cacheRead: 0.022,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "deepseek/deepseek-v4-pro-0813": {
- id: "deepseek/deepseek-v4-pro-0813",
- name: "DeepSeek V4 Pro 0813",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.66,
- output: 1.9800000000000002,
- cacheRead: 0.06599999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 384000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-2.5-flash": {
- id: "google/gemini-2.5-flash",
- name: "Gemini 2.5 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-2.5-flash-lite": {
- id: "google/gemini-2.5-flash-lite",
- name: "Gemini 2.5 Flash Lite",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-2.5-pro": {
- id: "google/gemini-2.5-pro",
- name: "Gemini 2.5 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3-flash": {
- id: "google/gemini-3-flash",
- name: "Gemini 3 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 3,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.1-flash-lite": {
- id: "google/gemini-3.1-flash-lite",
- name: "Gemini 3.1 Flash Lite",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.1-pro-preview": {
- id: "google/gemini-3.1-pro-preview",
- name: "Gemini 3.1 Pro Preview",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.5-flash": {
- id: "google/gemini-3.5-flash",
- name: "Gemini 3.5 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.5-flash-lite": {
- id: "google/gemini-3.5-flash-lite",
- name: "Gemini 3.5 Flash Lite",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 2.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.6-flash": {
- id: "google/gemini-3.6-flash",
- name: "Gemini 3.6 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.7-flash": {
- id: "google/gemini-3.7-flash",
- name: "Gemini 3.7 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "google/gemini-3.8-flash": {
- id: "google/gemini-3.8-flash",
- name: "Gemini 3.8 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 3.75,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "google/gemma-4-26b-a4b-it": {
- id: "google/gemma-4-26b-a4b-it",
- name: "Google Gemma 4 26B A4B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.015,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "google/gemma-4-31b-it": {
- id: "google/gemma-4-31b-it",
- name: "Gemma 4 31B IT",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "inception/mercury-2": {
- id: "inception/mercury-2",
- name: "Mercury 2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 0.75,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "inception/mercury-coder-small": {
- id: "inception/mercury-coder-small",
- name: "Mercury Coder Small Beta",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32000,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "inclusionai/ling-3.0-flash": {
- id: "inclusionai/ling-3.0-flash",
- name: "Ling 3.0 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.18,
- cacheRead: 0.012,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "inclusionai/ling-3.0-flash-fin": {
- id: "inclusionai/ling-3.0-flash-fin",
- name: "Ling 3.0 Flash Fin",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "inclusionai/ling-3.0-flash-fin-free": {
- id: "inclusionai/ling-3.0-flash-fin-free",
- name: "Ling 3.0 Flash Fin (Free)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "inclusionai/ling-3.0-flash-sante": {
- id: "inclusionai/ling-3.0-flash-sante",
- name: "Ling 3.0 Flash Sante",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "inclusionai/ling-3.0-flash-sante-free": {
- id: "inclusionai/ling-3.0-flash-sante-free",
- name: "Ling 3.0 Flash Sante (Free)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "interfaze/interfaze-beta": {
- id: "interfaze/interfaze-beta",
- name: "Interfaze Beta",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 3.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "kwaipilot/kat-coder-air-v2.5": {
- id: "kwaipilot/kat-coder-air-v2.5",
- name: "Kat Coder Air V2.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 80000,
- } satisfies Model<"anthropic-messages">,
- "kwaipilot/kat-coder-pro-v1": {
- id: "kwaipilot/kat-coder-pro-v1",
- name: "KAT-Coder-Pro V1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "kwaipilot/kat-coder-pro-v2": {
- id: "kwaipilot/kat-coder-pro-v2",
- name: "Kat Coder Pro V2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "kwaipilot/kat-coder-pro-v2.5": {
- id: "kwaipilot/kat-coder-pro-v2.5",
- name: "Kat Coder Pro V2.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.74,
- output: 2.96,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 80000,
- } satisfies Model<"anthropic-messages">,
- "meta/llama-3.1-70b": {
- id: "meta/llama-3.1-70b",
- name: "Llama 3.1 70B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.72,
- output: 0.72,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "meta/llama-3.1-8b": {
- id: "meta/llama-3.1-8b",
- name: "Llama 3.1 8B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.22,
- output: 0.22,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "meta/llama-3.3-70b": {
- id: "meta/llama-3.3-70b",
- name: "Llama 3.3 70B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.72,
- output: 0.72,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "meta/llama-4-maverick": {
- id: "meta/llama-4-maverick",
- name: "Llama 4 Maverick 17B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.24,
- output: 0.9700000000000001,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "meta/llama-4-scout": {
- id: "meta/llama-4-scout",
- name: "Llama 4 Scout 17B Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.16999999999999998,
- output: 0.66,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-glimmer-30b": {
- id: "meta/muse-glimmer-30b",
- name: "Muse Glimmer 30B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.35,
- output: 1.5,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-spark-1.1": {
- id: "meta/muse-spark-1.1",
- name: "Muse Spark 1.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-spark-1.2": {
- id: "meta/muse-spark-1.2",
- name: "Muse Spark 1.2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-spark-1.2-contributor": {
- id: "meta/muse-spark-1.2-contributor",
- name: "Muse Spark 1.2 Contributor",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-spark-1.3": {
- id: "meta/muse-spark-1.3",
- name: "Muse Spark 1.3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 4.25,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "meta/muse-spark-1.3-contributor": {
- id: "meta/muse-spark-1.3-contributor",
- name: "Muse Spark 1.3 Contributor",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0.002,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2": {
- id: "minimax/minimax-m2",
- name: "MiniMax M2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.03,
- cacheWrite: 0.375,
- },
- contextWindow: 205000,
- maxTokens: 205000,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.1": {
- id: "minimax/minimax-m2.1",
- name: "MiniMax M2.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.03,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.1-lightning": {
- id: "minimax/minimax-m2.1-lightning",
- name: "MiniMax M2.1 Lightning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 2.4,
- cacheRead: 0.03,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.5": {
- id: "minimax/minimax-m2.5",
- name: "MiniMax M2.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.03,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.5-highspeed": {
- id: "minimax/minimax-m2.5-highspeed",
- name: "MiniMax M2.5 High Speed",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.03,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.7": {
- id: "minimax/minimax-m2.7",
- name: "MiniMax M2.7",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.7-free": {
- id: "minimax/minimax-m2.7-free",
- name: "MiniMax M2.7 (Free)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 196608,
- maxTokens: 196608,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m2.7-highspeed": {
- id: "minimax/minimax-m2.7-highspeed",
- name: "MiniMax M2.7 High Speed",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.06,
- cacheWrite: 0.375,
- },
- contextWindow: 204800,
- maxTokens: 131100,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m3": {
- id: "minimax/minimax-m3",
- name: "MiniMax M3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.3,
- output: 1.2,
- cacheRead: 0.06,
- cacheWrite: 0,
- },
- contextWindow: 512000,
- maxTokens: 512000,
- } satisfies Model<"anthropic-messages">,
- "minimax/minimax-m3-free": {
- id: "minimax/minimax-m3-free",
- name: "MiniMax M3 (Free)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "mistral/codestral": {
- id: "mistral/codestral",
- name: "Mistral Codestral",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.3,
- output: 0.8999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"anthropic-messages">,
- "mistral/devstral-2": {
- id: "mistral/devstral-2",
- name: "Devstral 2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.39999999999999997,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "mistral/devstral-small-2": {
- id: "mistral/devstral-small-2",
- name: "Devstral Small 2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "mistral/ministral-14b": {
- id: "mistral/ministral-14b",
- name: "Ministral 14B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.19999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "mistral/ministral-3b": {
- id: "mistral/ministral-3b",
- name: "Ministral 3B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.09999999999999999,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"anthropic-messages">,
- "mistral/ministral-8b": {
- id: "mistral/ministral-8b",
- name: "Ministral 8B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"anthropic-messages">,
- "mistral/mistral-large-3": {
- id: "mistral/mistral-large-3",
- name: "Mistral Large 3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "mistral/mistral-medium": {
- id: "mistral/mistral-medium",
- name: "Mistral Medium 3.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 2,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "mistral/mistral-medium-3.5": {
- id: "mistral/mistral-medium-3.5",
- name: "Mistral Medium Latest",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 7.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "mistral/mistral-nemo": {
- id: "mistral/mistral-nemo",
- name: "Mistral Nemo 12B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "mistral/mistral-small": {
- id: "mistral/mistral-small",
- name: "Mistral Small",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 32000,
- maxTokens: 4000,
- } satisfies Model<"anthropic-messages">,
- "mistral/pixtral-12b": {
- id: "mistral/pixtral-12b",
- name: "Pixtral 12B 2409",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.15,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4000,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2": {
- id: "moonshotai/kimi-k2",
- name: "Kimi K2 Instruct",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.5700000000000001,
- output: 2.3,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2-thinking": {
- id: "moonshotai/kimi-k2-thinking",
- name: "Kimi K2 Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.47,
- output: 2,
- cacheRead: 0.14100000000000001,
- cacheWrite: 0,
- },
- contextWindow: 216144,
- maxTokens: 216144,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2.5": {
- id: "moonshotai/kimi-k2.5",
- name: "Kimi K2.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 3,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 262114,
- maxTokens: 262114,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2.6": {
- id: "moonshotai/kimi-k2.6",
- name: "Kimi K2.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 262000,
- maxTokens: 262000,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2.7-code": {
- id: "moonshotai/kimi-k2.7-code",
- name: "Kimi K2.7 Code",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k2.7-code-highspeed": {
- id: "moonshotai/kimi-k2.7-code-highspeed",
- name: "Kimi K2.7 Code High Speed",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.9,
- output: 8,
- cacheRead: 0.38,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k3": {
- id: "moonshotai/kimi-k3",
- name: "Kimi K3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 3,
- output: 15,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "moonshotai/kimi-k3-fast": {
- id: "moonshotai/kimi-k3-fast",
- name: "Kimi K3 Fast",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"off":null,"minimal":null,"low":null,"medium":null,"high":null,"xhigh":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4.5,
- output: 22.5,
- cacheRead: 0.44999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-3-nano-30b-a3b": {
- id: "nvidia/nemotron-3-nano-30b-a3b",
- name: "Nemotron 3 Nano 30B A3B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.049999999999999996,
- output: 0.24,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-3-super-120b-a12b": {
- id: "nvidia/nemotron-3-super-120b-a12b",
- name: "NVIDIA Nemotron 3 Super 120B A12B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.65,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32000,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-3-ultra-550b-a55b": {
- id: "nvidia/nemotron-3-ultra-550b-a55b",
- name: "Nemotron 3 Ultra",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.4,
- cacheRead: 0.12,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 65000,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-3.5-lightning": {
- id: "nvidia/nemotron-3.5-lightning",
- name: "Nemotron 3.5 Lightning 30B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.049999999999999996,
- output: 0.19999999999999998,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-nano-12b-v2-vl": {
- id: "nvidia/nemotron-nano-12b-v2-vl",
- name: "Nvidia Nemotron Nano 12B V2 VL",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "nvidia/nemotron-nano-9b-v2": {
- id: "nvidia/nemotron-nano-9b-v2",
- name: "Nvidia Nemotron Nano 9B V2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.22999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-3.5-turbo": {
- id: "openai/gpt-3.5-turbo",
- name: "GPT-3.5 Turbo",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.5,
- output: 1.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 16385,
- maxTokens: 4096,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4-turbo": {
- id: "openai/gpt-4-turbo",
- name: "GPT-4 Turbo",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 30,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 4096,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1": {
- id: "openai/gpt-4.1",
- name: "GPT-4.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1-fast": {
- id: "openai/gpt-4.1-fast",
- name: "GPT-4.1 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 3.5,
- output: 14,
- cacheRead: 0.875,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1-mini": {
- id: "openai/gpt-4.1-mini",
- name: "GPT-4.1 mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 1.5999999999999999,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1-mini-fast": {
- id: "openai/gpt-4.1-mini-fast",
- name: "GPT-4.1 mini (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.7,
- output: 2.8,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1-nano": {
- id: "openai/gpt-4.1-nano",
- name: "GPT-4.1 nano",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.09999999999999999,
- output: 0.39999999999999997,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4.1-nano-fast": {
- id: "openai/gpt-4.1-nano-fast",
- name: "GPT-4.1 nano (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.7999999999999999,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1047576,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4o": {
- id: "openai/gpt-4o",
- name: "GPT-4o",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 10,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4o-fast": {
- id: "openai/gpt-4o-fast",
- name: "GPT-4o (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 4.25,
- output: 17,
- cacheRead: 2.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4o-mini": {
- id: "openai/gpt-4o-mini",
- name: "GPT-4o mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-4o-mini-fast": {
- id: "openai/gpt-4o-mini-fast",
- name: "GPT-4o mini (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 1,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16384,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5": {
- id: "openai/gpt-5",
- name: "GPT-5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-codex": {
- id: "openai/gpt-5-codex",
- name: "GPT-5-Codex",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-fast": {
- id: "openai/gpt-5-fast",
- name: "GPT-5 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 20,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-mini": {
- id: "openai/gpt-5-mini",
- name: "GPT-5 mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.024999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-mini-fast": {
- id: "openai/gpt-5-mini-fast",
- name: "GPT-5 mini (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.44999999999999996,
- output: 3.5999999999999996,
- cacheRead: 0.045,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-nano": {
- id: "openai/gpt-5-nano",
- name: "GPT-5 nano",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.049999999999999996,
- output: 0.39999999999999997,
- cacheRead: 0.005,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5-pro": {
- id: "openai/gpt-5-pro",
- name: "GPT-5 pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 120,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 272000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.1-codex": {
- id: "openai/gpt-5.1-codex",
- name: "GPT-5.1-Codex",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.1-codex-max": {
- id: "openai/gpt-5.1-codex-max",
- name: "GPT 5.1 Codex Max",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.1-codex-mini": {
- id: "openai/gpt-5.1-codex-mini",
- name: "GPT 5.1 Codex Mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.25,
- output: 2,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.1-thinking": {
- id: "openai/gpt-5.1-thinking",
- name: "GPT 5.1 Thinking",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 10,
- cacheRead: 0.125,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.1-thinking-fast": {
- id: "openai/gpt-5.1-thinking-fast",
- name: "GPT 5.1 Thinking (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 20,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.2": {
- id: "openai/gpt-5.2",
- name: "GPT 5.2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.2-codex": {
- id: "openai/gpt-5.2-codex",
- name: "GPT 5.2 Codex",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.2-fast": {
- id: "openai/gpt-5.2-fast",
- name: "GPT 5.2 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 3.5,
- output: 28,
- cacheRead: 0.35,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.2-pro": {
- id: "openai/gpt-5.2-pro",
- name: "GPT 5.2 ",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 21,
- output: 168,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.3-codex": {
- id: "openai/gpt-5.3-codex",
- name: "GPT 5.3 Codex",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.75,
- output: 14,
- cacheRead: 0.175,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.3-codex-fast": {
- id: "openai/gpt-5.3-codex-fast",
- name: "GPT 5.3 Codex (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 3.5,
- output: 28,
- cacheRead: 0.35,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4": {
- id: "openai/gpt-5.4",
- name: "GPT 5.4",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 2.5,
- output: 15,
- cacheRead: 0.25,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4-fast": {
- id: "openai/gpt-5.4-fast",
- name: "GPT 5.4 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4-mini": {
- id: "openai/gpt-5.4-mini",
- name: "GPT 5.4 Mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.75,
- output: 4.5,
- cacheRead: 0.075,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4-mini-fast": {
- id: "openai/gpt-5.4-mini-fast",
- name: "GPT 5.4 Mini (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 1.5,
- output: 9,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4-nano": {
- id: "openai/gpt-5.4-nano",
- name: "GPT 5.4 Nano",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.25,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 400000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.4-pro": {
- id: "openai/gpt-5.4-pro",
- name: "GPT 5.4 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.5": {
- id: "openai/gpt-5.5",
- name: "GPT 5.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.5-fast": {
- id: "openai/gpt-5.5-fast",
- name: "GPT 5.5 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 12.5,
- output: 75,
- cacheRead: 1.25,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.5-pro": {
- id: "openai/gpt-5.5-pro",
- name: "GPT 5.5 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh"},
- input: ["text", "image"],
- cost: {
- input: 30,
- output: 180,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-luna": {
- id: "openai/gpt-5.6-luna",
- name: "GPT 5.6 Luna",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.2,
- cacheRead: 0.02,
- cacheWrite: 0.25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-luna-fast": {
- id: "openai/gpt-5.6-luna-fast",
- name: "GPT 5.6 Luna (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 0.39999999999999997,
- output: 2.4,
- cacheRead: 0.04,
- cacheWrite: 0.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-sol": {
- id: "openai/gpt-5.6-sol",
- name: "GPT 5.6 Sol",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 10,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-sol-fast": {
- id: "openai/gpt-5.6-sol-fast",
- name: "GPT 5.6 Sol (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 20,
- cacheRead: 0.39999999999999997,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-terra": {
- id: "openai/gpt-5.6-terra",
- name: "GPT 5.6 Terra",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 12,
- cacheRead: 0.19999999999999998,
- cacheWrite: 2.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-5.6-terra-fast": {
- id: "openai/gpt-5.6-terra-fast",
- name: "GPT 5.6 Terra (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"xhigh":"xhigh","minimal":null,"max":"max"},
- input: ["text", "image"],
- cost: {
- input: 4,
- output: 24,
- cacheRead: 0.39999999999999997,
- cacheWrite: 5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-6-astra": {
- id: "openai/gpt-6-astra",
- name: "GPT-6 Astra",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 10,
- output: 50,
- cacheRead: 1,
- cacheWrite: 12.5,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-6-astra-fast": {
- id: "openai/gpt-6-astra-fast",
- name: "GPT-6 Astra (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- thinkingLevelMap: {"minimal":null,"xhigh":"xhigh","max":"max"},
- input: ["text", "image"],
- cost: {
- input: 20,
- output: 100,
- cacheRead: 2,
- cacheWrite: 25,
- },
- contextWindow: 1050000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-oss-120b": {
- id: "openai/gpt-oss-120b",
- name: "GPT OSS 120B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.5,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-oss-20b": {
- id: "openai/gpt-oss-20b",
- name: "GPT OSS 20B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.049999999999999996,
- output: 0.19999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 131072,
- maxTokens: 8192,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-oss-safeguard-120b": {
- id: "openai/gpt-oss-safeguard-120b",
- name: "GPT OSS Safeguard 120B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.15,
- output: 0.6,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16000,
- } satisfies Model<"anthropic-messages">,
- "openai/gpt-oss-safeguard-20b": {
- id: "openai/gpt-oss-safeguard-20b",
- name: "GPT OSS Safeguard 20B",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.19999999999999998,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 16000,
- } satisfies Model<"anthropic-messages">,
- "openai/o1": {
- id: "openai/o1",
- name: "o1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 15,
- output: 60,
- cacheRead: 7.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o3": {
- id: "openai/o3",
- name: "o3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o3-fast": {
- id: "openai/o3-fast",
- name: "o3 (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 3.5,
- output: 14,
- cacheRead: 0.875,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o3-mini": {
- id: "openai/o3-mini",
- name: "o3-mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.55,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o3-pro": {
- id: "openai/o3-pro",
- name: "o3 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 20,
- output: 80,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o4-mini": {
- id: "openai/o4-mini",
- name: "o4-mini",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.1,
- output: 4.4,
- cacheRead: 0.275,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "openai/o4-mini-fast": {
- id: "openai/o4-mini-fast",
- name: "o4-mini (Fast)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 8,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 100000,
- } satisfies Model<"anthropic-messages">,
- "poolside/laguna-s-2.1": {
- id: "poolside/laguna-s-2.1",
- name: "Laguna S 2.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.09999999999999999,
- output: 0.19999999999999998,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "poolside/laguna-s-2.1-free": {
- id: "poolside/laguna-s-2.1-free",
- name: "Laguna S 2.1 Free",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 32768,
- } satisfies Model<"anthropic-messages">,
- "sakana/fugu-ultra": {
- id: "sakana/fugu-ultra",
- name: "Fugu Ultra",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 5,
- output: 30,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "sakana/namazu": {
- id: "sakana/namazu",
- name: "Sakana Namazu",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.95,
- output: 4,
- cacheRead: 0.15,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.1-fast-non-reasoning": {
- id: "spacexai/grok-4.1-fast-non-reasoning",
- name: "Grok 4.1 Fast Non-Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.5,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.1-fast-reasoning": {
- id: "spacexai/grok-4.1-fast-reasoning",
- name: "Grok 4.1 Fast Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 0.5,
- cacheRead: 0.049999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-multi-agent": {
- id: "spacexai/grok-4.20-multi-agent",
- name: "Grok 4.20 Multi-Agent",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-multi-agent-beta": {
- id: "spacexai/grok-4.20-multi-agent-beta",
- name: "Grok 4.20 Multi Agent Beta",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-non-reasoning": {
- id: "spacexai/grok-4.20-non-reasoning",
- name: "Grok 4.20 Non-Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-non-reasoning-beta": {
- id: "spacexai/grok-4.20-non-reasoning-beta",
- name: "Grok 4.20 Beta Non-Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-reasoning": {
- id: "spacexai/grok-4.20-reasoning",
- name: "Grok 4.20 Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.20-reasoning-beta": {
- id: "spacexai/grok-4.20-reasoning-beta",
- name: "Grok 4.20 Beta Reasoning",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 2000000,
- maxTokens: 2000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.3": {
- id: "spacexai/grok-4.3",
- name: "Grok 4.3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.5": {
- id: "spacexai/grok-4.5",
- name: "Grok 4.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-4.6": {
- id: "spacexai/grok-4.6",
- name: "Grok 4.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"anthropic-messages">,
- "spacexai/grok-build-0.1": {
- id: "spacexai/grok-build-0.1",
- name: "Grok Build 0.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 2,
- cacheRead: 0.19999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "stepfun/step-3.5-flash": {
- id: "stepfun/step-3.5-flash",
- name: "StepFun 3.5 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.09,
- output: 0.3,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 262114,
- maxTokens: 262114,
- } satisfies Model<"anthropic-messages">,
- "stepfun/step-3.7-flash": {
- id: "stepfun/step-3.7-flash",
- name: "Step 3.7 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.19999999999999998,
- output: 1.15,
- cacheRead: 0.04,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "tencent/hy3": {
- id: "tencent/hy3",
- name: "Hy3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.58,
- cacheRead: 0.035,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 262144,
- } satisfies Model<"anthropic-messages">,
- "tencent/hy4-preview": {
- id: "tencent/hy4-preview",
- name: "Tencent Hy4 Preview",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.834,
- output: 2.501,
- cacheRead: 0.041999999999999996,
- cacheWrite: 0,
- },
- contextWindow: 1024000,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "thinkingmachines/inkling": {
- id: "thinkingmachines/inkling",
- name: "Inkling",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 4.05,
- cacheRead: 0.16999999999999998,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"anthropic-messages">,
- "thinkingmachines/inkling-small": {
- id: "thinkingmachines/inkling-small",
- name: "Inkling Small",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.5,
- output: 1.2,
- cacheRead: 0.09999999999999999,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "xiaomi/mimo-v2.5": {
- id: "xiaomi/mimo-v2.5",
- name: "MiMo M2.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131100,
- } satisfies Model<"anthropic-messages">,
- "xiaomi/mimo-v2.5-pro": {
- id: "xiaomi/mimo-v2.5-pro",
- name: "MiMo V2.5 Pro",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1050000,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "xiaomi/mimo-v2.5-pro-ultraspeed": {
- id: "xiaomi/mimo-v2.5-pro-ultraspeed",
- name: "MiMo V2.5 Pro UltraSpeed",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.305,
- output: 2.61,
- cacheRead: 0.0108,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.5": {
- id: "zai/glm-4.5",
- name: "GLM 4.5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 96000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.5-air": {
- id: "zai/glm-4.5-air",
- name: "GLM 4.5 Air",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.19999999999999998,
- output: 1.1,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 128000,
- maxTokens: 96000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.5v": {
- id: "zai/glm-4.5v",
- name: "GLM 4.5V",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.6,
- output: 1.7999999999999998,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 66000,
- maxTokens: 16000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.6": {
- id: "zai/glm-4.6",
- name: "GLM 4.6",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0.11,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 96000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.7": {
- id: "zai/glm-4.7",
- name: "GLM 4.7",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.6,
- output: 2.2,
- cacheRead: 0.12,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 120000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.7-flash": {
- id: "zai/glm-4.7-flash",
- name: "GLM 4.7 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.07,
- output: 0.39999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-4.7-flashx": {
- id: "zai/glm-4.7-flashx",
- name: "GLM 4.7 FlashX",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.06,
- output: 0.39999999999999997,
- cacheRead: 0.01,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5": {
- id: "zai/glm-5",
- name: "GLM 5",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1,
- output: 3.1999999999999997,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 202800,
- maxTokens: 131100,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5-turbo": {
- id: "zai/glm-5-turbo",
- name: "GLM 5 Turbo",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.2,
- output: 4,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 202800,
- maxTokens: 131100,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.1": {
- id: "zai/glm-5.1",
- name: "GLM 5.1",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.4,
- output: 4.4,
- cacheRead: 0.26,
- cacheWrite: 0,
- },
- contextWindow: 202800,
- maxTokens: 64000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.2": {
- id: "zai/glm-5.2",
- name: "GLM 5.2",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.7999999999999999,
- output: 2.5500000000000003,
- cacheRead: 0.16,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.2-fast": {
- id: "zai/glm-5.2-fast",
- name: "GLM 5.2 Fast",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.0999999999999996,
- output: 6.6000000000000005,
- cacheRead: 0.21,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.3": {
- id: "zai/glm-5.3",
- name: "GLM 5.3",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.7,
- output: 2.2,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 1000000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.3-fast": {
- id: "zai/glm-5.3-fast",
- name: "GLM 5.3 Fast",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 2.0999999999999996,
- output: 6.6000000000000005,
- cacheRead: 0.21,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 262144,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.3-flash": {
- id: "zai/glm-5.3-flash",
- name: "GLM 5.3 Flash",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.15,
- output: 0.5,
- cacheRead: 0.03,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131000,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5.3-promo-50": {
- id: "zai/glm-5.3-promo-50",
- name: "GLM 5.3 (50% off)",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.7,
- output: 2.2,
- cacheRead: 0.13,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 1048576,
- } satisfies Model<"anthropic-messages">,
- "zai/glm-5v-turbo": {
- id: "zai/glm-5v-turbo",
- name: "GLM 5V Turbo",
- api: "anthropic-messages",
- provider: "vercel-ai-gateway",
- baseUrl: "https://ai-gateway.vercel.sh",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.2,
- output: 4,
- cacheRead: 0.24,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 128000,
- } satisfies Model<"anthropic-messages">,
- },
- "xai": {
- "grok-4.20-0309-non-reasoning": {
- id: "grok-4.20-0309-non-reasoning",
- name: "Grok 4.20 (Non-Reasoning)",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: false,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 30000,
- } satisfies Model<"openai-completions">,
- "grok-4.20-0309-reasoning": {
- id: "grok-4.20-0309-reasoning",
- name: "Grok 4.20 (Reasoning)",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 30000,
- } satisfies Model<"openai-completions">,
- "grok-4.3": {
- id: "grok-4.3",
- name: "Grok 4.3",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1.25,
- output: 2.5,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 30000,
- } satisfies Model<"openai-completions">,
- "grok-4.5": {
- id: "grok-4.5",
- name: "Grok 4.5",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.3,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"openai-completions">,
- "grok-4.6": {
- id: "grok-4.6",
- name: "Grok 4.6",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 2,
- output: 6,
- cacheRead: 0.5,
- cacheWrite: 0,
- },
- contextWindow: 500000,
- maxTokens: 500000,
- } satisfies Model<"openai-completions">,
- "grok-build-0.1": {
- id: "grok-build-0.1",
- name: "Grok Build 0.1",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 1,
- output: 2,
- cacheRead: 0.2,
- cacheWrite: 0,
- },
- contextWindow: 256000,
- maxTokens: 256000,
- } satisfies Model<"openai-completions">,
- "grok-code-fast-1": {
- id: "grok-code-fast-1",
- name: "Grok Code Fast 1",
- api: "openai-completions",
- provider: "xai",
- baseUrl: "https://api.x.ai/v1",
- reasoning: false,
- input: ["text"],
- cost: {
- input: 0.2,
- output: 1.5,
- cacheRead: 0.02,
- cacheWrite: 0,
- },
- contextWindow: 32768,
- maxTokens: 8192,
- } satisfies Model<"openai-completions">,
- },
- "xiaomi": {
- "mimo-v2-flash": {
- id: "mimo-v2-flash",
- name: "MiMo-V2-Flash",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-omni": {
- id: "mimo-v2-omni",
- name: "MiMo-V2-Omni",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-pro": {
- id: "mimo-v2-pro",
- name: "MiMo-V2-Pro",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5": {
- id: "mimo-v2.5",
- name: "MiMo-V2.5",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro": {
- id: "mimo-v2.5-pro",
- name: "MiMo-V2.5-Pro",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro-ultraspeed": {
- id: "mimo-v2.5-pro-ultraspeed",
- name: "MiMo-V2.5-Pro-UltraSpeed",
- api: "anthropic-messages",
- provider: "xiaomi",
- baseUrl: "https://api.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.305,
- output: 2.61,
- cacheRead: 0.0108,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "xiaomi-token-plan-ams": {
- "mimo-v2-flash": {
- id: "mimo-v2-flash",
- name: "MiMo-V2-Flash",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-omni": {
- id: "mimo-v2-omni",
- name: "MiMo-V2-Omni",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-pro": {
- id: "mimo-v2-pro",
- name: "MiMo-V2-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5": {
- id: "mimo-v2.5",
- name: "MiMo-V2.5",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro": {
- id: "mimo-v2.5-pro",
- name: "MiMo-V2.5-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro-ultraspeed": {
- id: "mimo-v2.5-pro-ultraspeed",
- name: "MiMo-V2.5-Pro-UltraSpeed",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-ams",
- baseUrl: "https://token-plan-ams.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.305,
- output: 2.61,
- cacheRead: 0.0108,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "xiaomi-token-plan-cn": {
- "mimo-v2-flash": {
- id: "mimo-v2-flash",
- name: "MiMo-V2-Flash",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-omni": {
- id: "mimo-v2-omni",
- name: "MiMo-V2-Omni",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-pro": {
- id: "mimo-v2-pro",
- name: "MiMo-V2-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5": {
- id: "mimo-v2.5",
- name: "MiMo-V2.5",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro": {
- id: "mimo-v2.5-pro",
- name: "MiMo-V2.5-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro-ultraspeed": {
- id: "mimo-v2.5-pro-ultraspeed",
- name: "MiMo-V2.5-Pro-UltraSpeed",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-cn",
- baseUrl: "https://token-plan-cn.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.305,
- output: 2.61,
- cacheRead: 0.0108,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "xiaomi-token-plan-sgp": {
- "mimo-v2-flash": {
- id: "mimo-v2-flash",
- name: "MiMo-V2-Flash",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 65536,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-omni": {
- id: "mimo-v2-omni",
- name: "MiMo-V2-Omni",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 262144,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2-pro": {
- id: "mimo-v2-pro",
- name: "MiMo-V2-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5": {
- id: "mimo-v2.5",
- name: "MiMo-V2.5",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0.14,
- output: 0.28,
- cacheRead: 0.0028,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro": {
- id: "mimo-v2.5-pro",
- name: "MiMo-V2.5-Pro",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0.435,
- output: 0.87,
- cacheRead: 0.0036,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- "mimo-v2.5-pro-ultraspeed": {
- id: "mimo-v2.5-pro-ultraspeed",
- name: "MiMo-V2.5-Pro-UltraSpeed",
- api: "anthropic-messages",
- provider: "xiaomi-token-plan-sgp",
- baseUrl: "https://token-plan-sgp.xiaomimimo.com/anthropic",
- reasoning: true,
- input: ["text"],
- cost: {
- input: 1.305,
- output: 2.61,
- cacheRead: 0.0108,
- cacheWrite: 0,
- },
- contextWindow: 1048576,
- maxTokens: 131072,
- } satisfies Model<"anthropic-messages">,
- },
- "zai": {
- "glm-4.7": {
- id: "glm-4.7",
- name: "GLM-4.7",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 204800,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5-turbo": {
- id: "glm-5-turbo",
- name: "GLM-5-Turbo",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 200000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.2": {
- id: "glm-5.2",
- name: "GLM-5.2",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.2-highspeed": {
- id: "glm-5.2-highspeed",
- name: "GLM-5.2 Highspeed",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3": {
- id: "glm-5.3",
- name: "GLM-5.3",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3-flash": {
- id: "glm-5.3-flash",
- name: "GLM-5.3-Flash",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text", "image"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- "glm-5.3-highspeed": {
- id: "glm-5.3-highspeed",
- name: "GLM-5.3 Highspeed",
- api: "openai-completions",
- provider: "zai",
- baseUrl: "https://api.z.ai/api/coding/paas/v4",
- compat: {"supportsDeveloperRole":false,"thinkingFormat":"zai","zaiToolStream":true},
- reasoning: true,
- input: ["text"],
- cost: {
- input: 0,
- output: 0,
- cacheRead: 0,
- cacheWrite: 0,
- },
- contextWindow: 1000000,
- maxTokens: 131072,
- } satisfies Model<"openai-completions">,
- },
-} as const;
diff --git a/apps/tui/lib/ai/src/models.ts b/apps/tui/lib/ai/src/models.ts
index 892fd608..38336b77 100644
--- a/apps/tui/lib/ai/src/models.ts
+++ b/apps/tui/lib/ai/src/models.ts
@@ -1,38 +1,18 @@
-import { MODELS } from "./models.generated.js";
import type { Api, KnownProvider, Model, ModelThinkingLevel, Usage } from "./types.js";
-const modelRegistry: Map>> = new Map();
-
-for (const [provider, models] of Object.entries(MODELS)) {
- const providerModels = new Map>();
- for (const [id, model] of Object.entries(models)) {
- providerModels.set(id, model as Model);
- }
- modelRegistry.set(provider, providerModels);
-}
-
-type ModelApi<
- TProvider extends KnownProvider,
- TModelId extends keyof (typeof MODELS)[TProvider],
-> = (typeof MODELS)[TProvider][TModelId] extends { api: infer TApi } ? (TApi extends Api ? TApi : never) : never;
-
-export function getModel(
- provider: TProvider,
- modelId: TModelId,
-): Model> {
- const providerModels = modelRegistry.get(provider);
- return providerModels?.get(modelId as string) as Model>;
+// Devo resolves model definitions through the Native server (models.dev + user
+// configuration). These legacy utility entrypoints intentionally have no hidden
+// catalog or fallback; callers must supply a resolved model to provider adapters.
+export function getModel(_provider: KnownProvider, _modelId: string): Model | undefined {
+ return undefined;
}
export function getProviders(): KnownProvider[] {
- return Array.from(modelRegistry.keys()) as KnownProvider[];
+ return [];
}
-export function getModels(
- provider: TProvider,
-): Model>[] {
- const models = modelRegistry.get(provider);
- return models ? (Array.from(models.values()) as Model>[]) : [];
+export function getModels(_provider: KnownProvider): Model[] {
+ return [];
}
export function supportsFastMode(model: Model): boolean {
diff --git a/apps/tui/lib/coding-agent/src/modes/interactive/auth-flows.ts b/apps/tui/lib/coding-agent/src/modes/interactive/auth-flows.ts
index 7308e86f..8cd411bc 100644
--- a/apps/tui/lib/coding-agent/src/modes/interactive/auth-flows.ts
+++ b/apps/tui/lib/coding-agent/src/modes/interactive/auth-flows.ts
@@ -103,6 +103,8 @@ export interface ProviderAuthFlowsHost {
onAuthChanged?(): void | Promise;
/** Invoked after a successful login (e.g. to surface billing warnings). */
onLoginCompleted?(): void;
+ /** Explicit login only, awaited before refreshing the host model catalog. */
+ onProviderAuthenticated?(providerId: string, authType: "oauth" | "api_key", kind: "provider" | "service"): Promise;
/**
* Provider ids omitted from /login and the providers configuration tab.
* Used by rebranded hosts (e.g. Devo) that should not surface hosted-provider branding.
@@ -315,6 +317,7 @@ export class ProviderAuthFlows {
this.host.modelRegistry.refresh();
const actionLabel = authType === "oauth" ? `Logged in to ${providerName}` : `Saved API key for ${providerName}`;
+ await this.host.onProviderAuthenticated?.(providerId, authType, kind);
await this.host.onAuthChanged?.();
this.host.showStatus(
`${actionLabel}. Credentials saved to ${credentialPath}${statusSuffix ? `. ${statusSuffix}` : ""}`,
diff --git a/apps/tui/lib/coding-agent/src/modes/interactive/interactive-mode.ts b/apps/tui/lib/coding-agent/src/modes/interactive/interactive-mode.ts
index 8b54f605..ac27cc05 100644
--- a/apps/tui/lib/coding-agent/src/modes/interactive/interactive-mode.ts
+++ b/apps/tui/lib/coding-agent/src/modes/interactive/interactive-mode.ts
@@ -630,6 +630,8 @@ export interface InteractiveModeOptions {
* Devo sets this to exclude hosted-provider branding from the login surface.
*/
excludedLoginProviderIds?: ReadonlyArray;
+ /** Host connection setup performed only after an explicit successful login. */
+ onProviderAuthenticated?(providerId: string, authType: "oauth" | "api_key", kind: "provider" | "service"): Promise;
/**
* Builtin slash command names the host serves itself. Excluded builtins are
* hidden from autocomplete and skipped by the local command dispatch, so they
@@ -8888,6 +8890,7 @@ export class InteractiveMode {
showError: (message) => this.showError(message),
getAvailableModels: () => this.getConnectionAvailableModels(),
excludedLoginProviderIds: this.options.excludedLoginProviderIds,
+ onProviderAuthenticated: this.options.onProviderAuthenticated,
onAuthChanged: async () => {
await this.refreshConnectionModelsAfterAuthChange();
await this.updateAvailableProviderCount();
diff --git a/apps/tui/src/devo-debrand.test.ts b/apps/tui/src/devo-debrand.test.ts
index 47a99032..79b05fc7 100644
--- a/apps/tui/src/devo-debrand.test.ts
+++ b/apps/tui/src/devo-debrand.test.ts
@@ -123,19 +123,7 @@ test("Devo hides the upstream provider from login surfaces", () => {
assert.match(host, /excludedLoginProviderIds:\s*\["prime-inference"\]/);
});
-test("hosted inference surfaces use neutral labels and keep the service endpoint", () => {
- const catalog = JSON.parse(
- readFileSync(join(repoRoot, "crates/core/providers.json"), "utf8"),
- ) as {
- provider: Record }>;
- };
- const hosted = catalog.provider["prime-inference"];
- assert.ok(hosted);
- assert.equal(hosted.name, "Hosted Inference");
- assert.equal(hosted.description, "Hosted inference models");
- assert.equal(hosted.base_url, "https://api.pinference.ai/api/v1");
- assert.ok(Object.values(hosted.models).every((model) => model.channel === "Hosted Inference"));
-
+test("hosted inference surfaces use neutral labels", () => {
const visibleSources = [
"apps/tui/lib/coding-agent/src/modes/interactive/components/login-dialog.ts",
"apps/tui/lib/coding-agent/src/modes/interactive/components/prime-team-selector.ts",
diff --git a/apps/tui/src/explicit-login-models.test.ts b/apps/tui/src/explicit-login-models.test.ts
new file mode 100644
index 00000000..becc87cd
--- /dev/null
+++ b/apps/tui/src/explicit-login-models.test.ts
@@ -0,0 +1,101 @@
+import assert from "node:assert/strict";
+import { test } from "node:test";
+import { ExplicitLoginModels } from "./explicit-login-models.js";
+import { ProviderAuthFlows } from "../lib/coding-agent/src/modes/interactive/auth-flows.js";
+
+test("explicit provider authentication awaits connection setup before catalog refresh and success", async () => {
+ const calls: unknown[] = [];
+ const flows = new ProviderAuthFlows({
+ ui: {} as never,
+ modelRegistry: { refresh: () => calls.push("registry") } as never,
+ getAvailableModels: async () => [],
+ showStatus: () => calls.push("success"),
+ showError: () => calls.push("error"),
+ onProviderAuthenticated: async (...args) => {
+ calls.push(args);
+ await Promise.resolve();
+ calls.push("configured");
+ },
+ onAuthChanged: async () => { calls.push("catalog"); },
+ onLoginCompleted: () => { calls.push("completed"); },
+ });
+ const complete = flows as unknown as { completeProviderAuthentication(...args: unknown[]): Promise };
+ await complete.completeProviderAuthentication("openai-codex", "Codex", "oauth", undefined, "provider", "/test/auth");
+ assert.deepEqual(calls, ["registry", ["openai-codex", "oauth", "provider"], "configured", "catalog", "success", "completed"]);
+});
+
+test("empty discovery surfaces a selection blocker and cannot write configuration", async () => {
+ const calls: unknown[] = [];
+ const models = new ExplicitLoginModels({ request: async (method, params) => {
+ calls.push({ method, params });
+ return { models: {} };
+ } });
+ await assert.rejects(models.discover("openai-codex"), /no models were returned/);
+ await models.pinSelected("openai-codex", "missing");
+ assert.deepEqual(models.models(), []);
+ assert.deepEqual(calls, [{ method: "provider/discover", params: { providerId: "openai-codex", forceRefresh: true } }]);
+});
+
+test("failed selected model save blocks session-selection caller", async () => {
+ const models = new ExplicitLoginModels({ request: async (method) => {
+ if (method === "provider/discover") return { models: { chosen: {} } };
+ if (method === "provider/list") return { providers: [{ id: "custom", wireApis: ["responses"], baseUrl: "https://user.example" }] };
+ throw new Error("save failed");
+ } });
+ await models.discover("custom");
+ await assert.rejects(models.pinSelected("custom", "chosen"), /save failed/);
+});
+
+test("pinning drops stale selection suggestions and never overwrites an already saved model", async () => {
+ const writes: unknown[] = [];
+ let alreadySaved = false;
+ const models = new ExplicitLoginModels({ request: async (method, params) => {
+ if (method === "provider/discover") return { models: { chosen: { baseUrl: "https://discovered.example" }, other: {} } };
+ if (method === "provider/list") return {
+ providers: [{ id: "custom", wireApis: ["openai_responses"], baseUrl: "https://pinned.example" }],
+ connectionModels: alreadySaved ? { custom: { chosen: { baseUrl: "https://authored.example" } } } : {},
+ };
+ writes.push(params);
+ return {};
+ } });
+ await models.discover("custom");
+ await models.pinSelected("custom", "chosen");
+ await models.pinSelected("custom", "chosen");
+ assert.equal(writes.length, 1);
+ assert.deepEqual(models.models().map(m => m.id), ["other"]);
+ alreadySaved = true;
+ await models.discover("custom");
+ await models.pinSelected("custom", "chosen");
+ assert.equal(writes.length, 1);
+ assert.deepEqual(models.models().map(m => m.id), ["other"]);
+ models.clear("custom");
+ assert.deepEqual(models.models(), []);
+});
+
+test("pin preserves provider settings while excluding unrelated models and discovered metadata", async () => {
+ const connection = {
+ id: "custom", name: "My provider", description: "Private gateway",
+ baseUrl: "https://pinned.example", wireApis: ["openai_responses"], enabled: true,
+ headers: { "X-Project": "my-project" }, credential: "stored-credential",
+ options: { region: "local" }, request: { timeout: 42 }, compat: { responses: true },
+ models: { unrelated: { name: "Do not resend", capabilities: { tools: true } } },
+ modelOverrides: { unrelated: { name: "Authored label" } },
+ };
+ const writes: unknown[] = [];
+ const models = new ExplicitLoginModels({ request: async (method, params) => {
+ if (method === "provider/discover") return { models: {
+ chosen: { name: "Live name", cost: { input: 7 }, capabilities: { tools: true }, contextWindow: 1234 },
+ other: { name: "Not selected" },
+ } };
+ if (method === "provider/list") return { providers: [connection] };
+ writes.push(params);
+ return {};
+ } });
+ await models.discover("custom");
+ await models.pinSelected("custom", "chosen");
+ assert.deepEqual(writes, [{ provider: {
+ ...connection,
+ models: { chosen: { origin: "user", baseUrl: "https://pinned.example", wireApi: "openai_responses", requestModel: "chosen" } },
+ modelOverrides: {},
+ } }]);
+});
diff --git a/apps/tui/src/explicit-login-models.ts b/apps/tui/src/explicit-login-models.ts
new file mode 100644
index 00000000..03eaec22
--- /dev/null
+++ b/apps/tui/src/explicit-login-models.ts
@@ -0,0 +1,70 @@
+type CatalogRpc = {
+ request(method: string, params: Record): Promise;
+};
+type ModelInfo = Record;
+
+/** Authenticated discovery is explicit-login-only and never a persisted directory. */
+export class ExplicitLoginModels {
+ private readonly discovered = new Map>();
+
+ constructor(private readonly rpc: CatalogRpc) {}
+
+ async discover(provider: string): Promise {
+ const result = await this.rpc.request("provider/discover", { providerId: provider, forceRefresh: true }) as {
+ models?: Record;
+ };
+ if (!result.models || Object.keys(result.models).length === 0) {
+ throw new Error(`Signed in to ${provider}, but no models were returned. Configure a model in Providers before selecting it.`);
+ }
+ this.discovered.set(provider, result.models);
+ }
+
+ clear(provider: string): void {
+ this.discovered.delete(provider);
+ }
+
+ models(): ModelInfo[] {
+ return [...this.discovered].flatMap(([provider, models]) =>
+ Object.entries(models).map(([id, info]) => ({ ...info, id, provider })),
+ );
+ }
+
+ /** Persist just the chosen transport entry before changing session settings. */
+ async pinSelected(provider: string, modelId: string): Promise {
+ const info = this.discovered.get(provider)?.[modelId];
+ if (!info) return;
+ const listed = await this.rpc.request("provider/list", {}) as {
+ providers?: ModelInfo[];
+ connectionModels?: Record>;
+ };
+ if (listed.connectionModels?.[provider]?.[modelId]) {
+ delete this.discovered.get(provider)![modelId];
+ return;
+ }
+ const connection = listed.providers?.find((entry) => entry.id === provider);
+ if (!connection || !Array.isArray(connection.wireApis) || connection.wireApis.length === 0) {
+ throw new Error(`Cannot select ${provider}/${modelId}: configure its provider connection first.`);
+ }
+ // Never copy discovered names, costs, limits, or capabilities into user config.
+ const selected = {
+ origin: "user",
+ baseUrl: info.baseUrl ?? connection.baseUrl,
+ wireApi: info.wireApi ?? connection.wireApis[0],
+ requestModel: info.requestModel ?? modelId,
+ };
+ await this.rpc.request("provider/upsert", {
+ provider: {
+ ...connection,
+ id: provider,
+ name: connection.name ?? provider,
+ baseUrl: connection.baseUrl,
+ wireApis: connection.wireApis,
+ enabled: connection.enabled ?? true,
+ models: { [modelId]: selected },
+ modelOverrides: {},
+ },
+ });
+ // Future selections use the authoritative config, never stale discovery routes.
+ delete this.discovered.get(provider)![modelId];
+ }
+}
diff --git a/apps/tui/src/generated/protocol/native.ts b/apps/tui/src/generated/protocol/native.ts
index 48dbee28..6f5933d8 100644
--- a/apps/tui/src/generated/protocol/native.ts
+++ b/apps/tui/src/generated/protocol/native.ts
@@ -811,7 +811,15 @@ origin?: ProviderModelOrigin | null, name?: string | null, family?: string | nul
* as OpenCode/models.dev (for example tools, input/output, attachment,
* and interleaved reasoning support).
*/
-capabilities?: JsonValue | null, wireApi?: ProviderWireApi | null, contextWindow?: number | null, effectiveContextWindowPercent?: number | null, maxTokens?: number | null, temperature?: number | null, topP?: number | null, topK?: number | null, reasoningCapability?: ReasoningCapability | null,
+capabilities?: JsonValue | null, wireApi?: ProviderWireApi | null,
+/**
+ * Explicit per-model endpoint, independent of the provider default.
+ */
+baseUrl?: string | null,
+/**
+ * Wire model id when this entry is a user-named alias.
+ */
+requestModel?: string | null, contextWindow?: number | null, effectiveContextWindowPercent?: number | null, maxTokens?: number | null, temperature?: number | null, topP?: number | null, topK?: number | null, reasoningCapability?: ReasoningCapability | null,
/**
* pi-ai-compatible flag: model supports configurable thinking.
*/
diff --git a/apps/tui/src/generated/protocol/schema.json b/apps/tui/src/generated/protocol/schema.json
index 3d313660..0727403e 100644
--- a/apps/tui/src/generated/protocol/schema.json
+++ b/apps/tui/src/generated/protocol/schema.json
@@ -40147,6 +40147,10 @@
"null"
]
},
+ "configureConnection": {
+ "description": "Explicit OAuth connect action: initialize missing transport from its auth adapter. Credential synchronization and token refresh must leave this false.",
+ "type": "boolean"
+ },
"enterpriseUrl": {
"type": [
"string",
@@ -91711,6 +91715,13 @@
"null"
]
},
+ "baseUrl": {
+ "description": "Explicit per-model endpoint, independent of the provider default.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"capabilities": {
"description": "Open-ended model capabilities, compatible with directory sources such as OpenCode/models.dev (for example tools, input/output, attachment, and interleaved reasoning support)."
},
@@ -91854,6 +91865,13 @@
]
},
"request": true,
+ "requestModel": {
+ "description": "Wire model id when this entry is a user-named alias.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"status": {
"type": [
"string",
@@ -92280,6 +92298,13 @@
"null"
]
},
+ "baseUrl": {
+ "description": "Explicit per-model endpoint, independent of the provider default.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"capabilities": {
"description": "Open-ended model capabilities, compatible with directory sources such as OpenCode/models.dev (for example tools, input/output, attachment, and interleaved reasoning support)."
},
@@ -92423,6 +92448,13 @@
]
},
"request": true,
+ "requestModel": {
+ "description": "Wire model id when this entry is a user-named alias.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"status": {
"type": [
"string",
@@ -92870,6 +92902,13 @@
"null"
]
},
+ "baseUrl": {
+ "description": "Explicit per-model endpoint, independent of the provider default.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"capabilities": {
"description": "Open-ended model capabilities, compatible with directory sources such as OpenCode/models.dev (for example tools, input/output, attachment, and interleaved reasoning support)."
},
@@ -93013,6 +93052,13 @@
]
},
"request": true,
+ "requestModel": {
+ "description": "Wire model id when this entry is a user-named alias.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"status": {
"type": [
"string",
@@ -93417,6 +93463,13 @@
"null"
]
},
+ "baseUrl": {
+ "description": "Explicit per-model endpoint, independent of the provider default.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"capabilities": {
"description": "Open-ended model capabilities, compatible with directory sources such as OpenCode/models.dev (for example tools, input/output, attachment, and interleaved reasoning support)."
},
@@ -93560,6 +93613,13 @@
]
},
"request": true,
+ "requestModel": {
+ "description": "Wire model id when this entry is a user-named alias.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"status": {
"type": [
"string",
@@ -93963,6 +94023,13 @@
"null"
]
},
+ "baseUrl": {
+ "description": "Explicit per-model endpoint, independent of the provider default.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"capabilities": {
"description": "Open-ended model capabilities, compatible with directory sources such as OpenCode/models.dev (for example tools, input/output, attachment, and interleaved reasoning support)."
},
@@ -94106,6 +94173,13 @@
]
},
"request": true,
+ "requestModel": {
+ "description": "Wire model id when this entry is a user-named alias.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
"status": {
"type": [
"string",
diff --git a/apps/tui/src/host.ts b/apps/tui/src/host.ts
index 11802442..b0c4f011 100644
--- a/apps/tui/src/host.ts
+++ b/apps/tui/src/host.ts
@@ -61,8 +61,9 @@ export function createDevoUiServices(options: {
const authPath = path.join(home, "auth.json");
const authStorage = AuthStorage.create(authPath, { usePrimeCliConfig: false });
- const modelsJsonPath = path.join(home, "models.json");
- const modelRegistry = ModelRegistry.create(authStorage, modelsJsonPath);
+ // Native owns the model directory. Retain auth helpers without loading legacy
+ // models.json or adjacent provider snapshots as a competing catalog.
+ const modelRegistry = ModelRegistry.inMemory(authStorage);
const settingsManager = SettingsManager.create(cwd, home);
return {
@@ -141,6 +142,12 @@ function createInteractiveMode(
logo: DEVO_COMPACT_ORBIT_LOGO,
title: DEVO_SPLASH_TITLE,
},
+ onProviderAuthenticated: async (provider, authType, kind) => {
+ if (authType !== "oauth" || kind !== "provider" || provider.startsWith("mcp:")) return;
+ const credential = uiServices.modelRegistry.authStorage.get(provider);
+ if (!credential || credential.type !== "oauth") throw new Error(`Missing OAuth credential for ${provider}`);
+ await connection.completeExplicitOAuthLogin(provider, credential);
+ },
excludedLoginProviderIds: ["prime-inference"],
excludedBuiltinCommands: DEVO_EXCLUDED_BUILTIN_COMMANDS,
});
diff --git a/apps/tui/src/model-catalog-refresh.test.ts b/apps/tui/src/model-catalog-refresh.test.ts
index 8538e1b7..85f89aa1 100644
--- a/apps/tui/src/model-catalog-refresh.test.ts
+++ b/apps/tui/src/model-catalog-refresh.test.ts
@@ -24,7 +24,7 @@ test("background checks coalesce, respect cooldown and retry when due", async ()
assert.equal(calls.length, 2);
});
-test("refresh updates authenticated Codex models without forcing network requests", async () => {
+test("refresh only updates models.dev and never discovers provider models", async () => {
const calls: unknown[] = [];
const refresh = new ModelCatalogRefresh({ request: async (method, params) => {
calls.push({ method, params });
@@ -33,8 +33,6 @@ test("refresh updates authenticated Codex models without forcing network request
await refresh.refresh();
assert.deepEqual(calls, [
{ method: "model/catalog/refresh", params: { policy: "ifStale" } },
- { method: "provider/list", params: {} },
- { method: "provider/discover", params: { providerId: "openai-codex", forceRefresh: false } },
]);
});
diff --git a/apps/tui/src/model-catalog-refresh.ts b/apps/tui/src/model-catalog-refresh.ts
index ffa9dc73..51f65339 100644
--- a/apps/tui/src/model-catalog-refresh.ts
+++ b/apps/tui/src/model-catalog-refresh.ts
@@ -20,13 +20,6 @@ export class ModelCatalogRefresh {
}
private async update(): Promise {
- const result = await this.rpc.request("model/catalog/refresh", { policy: "ifStale" }) as { status?: string };
- if (result?.status === "offline") return;
- // Codex's authenticated directory includes models absent from public models.dev.
- // Other providers use the public catalog; their custom directories stay user-managed.
- const providers = await this.rpc.request("provider/list", {}) as { connectedProviderIds?: string[] };
- if (providers?.connectedProviderIds?.includes("openai-codex")) {
- await this.rpc.request("provider/discover", { providerId: "openai-codex", forceRefresh: false });
- }
+ await this.rpc.request("model/catalog/refresh", { policy: "ifStale" });
}
}
diff --git a/apps/tui/src/native-agent-connection.test.ts b/apps/tui/src/native-agent-connection.test.ts
index f48f2eb6..51ba91b5 100644
--- a/apps/tui/src/native-agent-connection.test.ts
+++ b/apps/tui/src/native-agent-connection.test.ts
@@ -2122,3 +2122,65 @@ test("token-only usage events retain the known server window", async () => {
assert.deepEqual(updates.at(-1), { tokens: 200, contextWindow: 1000, percent: 20 });
await conn.dispose();
});
+
+test("OAuth startup and refresh sync never configure connections or discover models", async () => {
+ const { conn, fake } = await bootConnection();
+ const credential = { type: "oauth" as const, access: "test-access", refresh: "test-refresh", expires: 123 };
+ fake.requests.length = 0;
+ await conn.syncAuthStorage({ list: () => ["openai-codex"], get: () => credential });
+ await conn.setCredentialFromAuth("openai-codex", credential);
+ await conn.refreshModelCatalog();
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "credential/set"), [
+ { method: "credential/set", params: { provider: "openai-codex", kind: "oauth", access: "test-access", refresh: "test-refresh", expiresAt: 123 } },
+ { method: "credential/set", params: { provider: "openai-codex", kind: "oauth", access: "test-access", refresh: "test-refresh", expiresAt: 123 } },
+ ]);
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "provider/discover" || method === "provider/upsert"), []);
+ await conn.dispose();
+});
+
+test("explicit OAuth discovers transient models and pins only the selected transport before session change", async () => {
+ const { conn, fake } = await bootConnection([
+ (method, _params, respond) => {
+ if (method === "provider/list") {
+ respond({ providers: [{ id: "openai-codex", name: "Codex", baseUrl: "https://pinned.example", wireApis: ["openai_responses"], enabled: true }] });
+ } else if (method === "provider/discover") {
+ respond({ providerId: "openai-codex", models: {
+ "chosen": { name: "Live chosen", contextWindow: 123456, cost: { input: 2 }, capabilities: { tools: true } },
+ "other": { name: "Do not persist", cost: { input: 3 } },
+ } });
+ } else if (method === "provider/upsert") {
+ respond({});
+ } else return false;
+ return true;
+ },
+ ]);
+ fake.requests.length = 0;
+ await conn.completeExplicitOAuthLogin("openai-codex", { type: "oauth", access: "test-access" });
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "credential/set" || method === "provider/discover"), [
+ { method: "credential/set", params: { provider: "openai-codex", kind: "oauth", access: "test-access", configureConnection: true } },
+ { method: "provider/discover", params: { providerId: "openai-codex", forceRefresh: true } },
+ ]);
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "provider/upsert"), []);
+ assert.deepEqual((await conn.getAvailableModels()).filter(m => m.provider === "openai-codex").map(m => m.id).sort(), ["chosen", "other"]);
+ fake.requests.length = 0;
+ await conn.setModel("openai-codex", "chosen");
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "provider/upsert"), [{
+ method: "provider/upsert", params: { provider: {
+ id: "openai-codex", name: "Codex", baseUrl: "https://pinned.example", wireApis: ["openai_responses"], enabled: true,
+ models: { chosen: { origin: "user", baseUrl: "https://pinned.example", wireApi: "openai_responses", requestModel: "chosen" } },
+ modelOverrides: {},
+ } },
+ }]);
+ assert.ok(fake.requests.findIndex(r => r.method === "provider/upsert") < fake.requests.findIndex(r => r.method === "session/metadata/update"));
+ assert.deepEqual(fake.requests.filter(({ method }) => method === "provider/discover"), []);
+ await conn.dispose();
+});
+
+test("explicit login setup ignores API keys and MCP OAuth", async () => {
+ const { conn, fake } = await bootConnection();
+ fake.requests.length = 0;
+ await conn.completeExplicitOAuthLogin("openai", { type: "api_key", key: "test-key" });
+ await conn.completeExplicitOAuthLogin("mcp:test", { type: "oauth", access: "test-access" });
+ assert.deepEqual(fake.requests, []);
+ await conn.dispose();
+});
diff --git a/apps/tui/src/native-agent-connection.ts b/apps/tui/src/native-agent-connection.ts
index 5630613c..146f4336 100644
--- a/apps/tui/src/native-agent-connection.ts
+++ b/apps/tui/src/native-agent-connection.ts
@@ -5,6 +5,7 @@
* is projected inside this adapter (see native-to-pi/events.ts).
*/
+import { ExplicitLoginModels } from "./explicit-login-models.js";
import { ModelCatalogRefresh } from "./model-catalog-refresh.js";
import { randomUUID } from "node:crypto";
import fs from "node:fs";
@@ -276,6 +277,7 @@ export class NativeAgentConnection implements AgentConnection {
*/
private deferredReverseEmits: Array<() => void> = [];
private readonly modelCatalogRefresh: ModelCatalogRefresh;
+ private readonly explicitLoginModels: ExplicitLoginModels;
private disposed = false;
private trafficLog: NativeTrafficLog | undefined;
private idleWaiters = new Set<() => void>();
@@ -297,6 +299,7 @@ export class NativeAgentConnection implements AgentConnection {
},
);
this.modelCatalogRefresh = new ModelCatalogRefresh(this.rpc);
+ this.explicitLoginModels = new ExplicitLoginModels(this.rpc);
this.cwd = options.cwd ?? process.cwd();
this.nativeApiVersion = options.nativeApiVersion ?? DEFAULT_NATIVE_API_VERSION;
@@ -1442,6 +1445,9 @@ export class NativeAgentConnection implements AgentConnection {
} catch {
// optional enrichment
}
+ for (const model of this.explicitLoginModels.models()) {
+ if (!byKey.has(`${model.provider}/${model.id}`)) add(normalizeAgentModel(model));
+ }
const models = [...byKey.values()];
if (models.length === 0 && this.model) {
return {
@@ -2657,6 +2663,7 @@ export class NativeAgentConnection implements AgentConnection {
}
async setModel(provider: string, modelId: string): Promise {
+ await this.explicitLoginModels.pinSelected(provider, modelId);
await this.updateSessionMetadata({
model: { provider, model: modelId },
});
@@ -3389,12 +3396,29 @@ export class NativeAgentConnection implements AgentConnection {
return this.rpc.request("credential/set", params);
}
+ /** Explicit user login, never invoked by startup sync or token refresh. */
+ async completeExplicitOAuthLogin(provider: string, credential: AuthCredentialLike): Promise {
+ if (credential.type !== "oauth" || provider.startsWith("mcp:")) return;
+ await this.rpc.request("credential/set", {
+ ...credentialSetParamsFromAuth(provider, credential),
+ configureConnection: true,
+ });
+ this.explicitLoginModels.clear(provider);
+ const catalog = await this.getAvailableModels();
+ if (!catalog.some((model) => model.provider === provider && model.id !== "unknown")) {
+ await this.explicitLoginModels.discover(provider);
+ }
+ }
+
async listCredentials(): Promise<{ credentials: unknown[] }> {
return (await this.rpc.request("credential/list", {})) as { credentials: unknown[] };
}
async deleteCredential(credentialId: string): Promise {
+ const listed = await this.listCredentials();
await this.rpc.request("credential/delete", { credentialId });
+ const credential = listed.credentials.find((entry) => (entry as { id?: string }).id === credentialId) as { provider?: string } | undefined;
+ if (credential?.provider) this.explicitLoginModels.clear(credential.provider);
}
/**
diff --git a/apps/tui/src/native-model-sources.test.ts b/apps/tui/src/native-model-sources.test.ts
new file mode 100644
index 00000000..a306129c
--- /dev/null
+++ b/apps/tui/src/native-model-sources.test.ts
@@ -0,0 +1,39 @@
+import assert from "node:assert/strict";
+import { mkdtempSync, readFileSync, rmSync, writeFileSync } from "node:fs";
+import { tmpdir } from "node:os";
+import { join } from "node:path";
+import { test } from "node:test";
+import { getModel, getModels, getProviders } from "../lib/ai/src/models.js";
+import { createDevoUiServices } from "./host.js";
+
+test("legacy model helpers expose no bundled directory or fallback", () => {
+ assert.deepEqual({
+ providers: getProviders(),
+ models: getModels("openai"),
+ model: getModel("openai", "gpt-4o"),
+ }, { providers: [], models: [], model: undefined });
+});
+
+test("Native host preserves but never loads legacy model files", () => {
+ const home = mkdtempSync(join(tmpdir(), "devo-model-sources-"));
+ const legacy = JSON.stringify({ providers: { legacy: {
+ baseUrl: "https://example.invalid/v1", api: "openai-completions",
+ models: [{ id: "legacy-model" }],
+ } } });
+ const snapshot = JSON.stringify({ data: [{ id: "snapshot-model" }] });
+ try {
+ writeFileSync(join(home, "models.json"), legacy);
+ writeFileSync(join(home, "prime-inference-models-cache.json"), snapshot);
+ const services = createDevoUiServices({ home, cwd: home });
+ services.modelRegistry.refresh();
+ assert.deepEqual({
+ models: services.modelRegistry.getAll(),
+ error: services.modelRegistry.getError(),
+ legacy: readFileSync(join(home, "models.json"), "utf8"),
+ snapshot: readFileSync(join(home, "prime-inference-models-cache.json"), "utf8"),
+ }, { models: [], error: undefined, legacy, snapshot });
+ assert.ok(services.modelRegistry.authStorage === services.authStorage);
+ } finally {
+ rmSync(home, { recursive: true, force: true });
+ }
+});
diff --git a/apps/web/content/docs/core-concepts/models-and-providers.mdx b/apps/web/content/docs/core-concepts/models-and-providers.mdx
index 417ba84d..cd107476 100644
--- a/apps/web/content/docs/core-concepts/models-and-providers.mdx
+++ b/apps/web/content/docs/core-concepts/models-and-providers.mdx
@@ -3,26 +3,22 @@ title: Models and Provider Connections
description: Understand provider templates, Connections, models, and variants.
---
-Devo uses one catalog to describe provider templates and their models, and a
-separate user overlay to record the Connections a user has configured. A model
-is owned by its provider, so its stable public identity is `provider/model`.
-
-## Three concepts
-
-| Concept | Meaning | Stored where |
-| --- | --- | --- |
-| Provider template | Built-in endpoint defaults, supported wire API, and model metadata. | Git-tracked `crates/core/providers.json` |
-| Connection | A configured instance of a provider, with endpoint overrides and a credential reference. | User/workspace `providers.json` |
-| Model | A provider-facing model id plus optional capability and request metadata. | Nested under the provider in both files |
-
-The API key itself is stored in the user-scoped `auth.json`. `providers.json`
-contains only the credential id. A provider template cannot be deleted from the
-TUI; disconnecting a Connection removes the user's provider overlay.
+Devo has two model data sources: the live models.dev directory and user
+configuration. Public provider endpoints and model metadata are fetched into
+server memory, never bundled or persisted as catalog snapshots. Configured
+Connections pin endpoint, protocol and model IDs in user/workspace
+`providers.json`; credentials remain in user-scoped `auth.json`.
+
+Refresh failures keep the same process's last successful directory and all
+configured models. A fresh offline start has no public directory. Provider
+Discover is read-only: save selected suggestions explicitly to configure them.
+Older sparse connections without pinned endpoints must be reconnected explicitly.
+Existing configuration files are preserved; old snapshots are ignored, not deleted.
## Provider and model identity
-Provider ids and nested model ids are map keys. Devo does not require a second
-model slug, model name, request model, or description to keep synchronized:
+Provider ids and nested model ids are map keys. The optional `request_model` field overrides the upstream request ID without
+changing the stable selection identity:
```json
{
@@ -43,8 +39,9 @@ model slug, model name, request model, or description to keep synchronized:
}
```
-The nested model key is both the provider-facing id sent in the request and the
-second half of the `provider/model` reference. `name` is only a display label.
+The nested key is the second half of `provider/model` and defaults to the upstream
+request ID. Model-level `base_url` and `wire_api` can pin a route independently
+of provider defaults. `name` is only a display label.
## Model metadata
diff --git a/apps/web/content/docs/core-concepts/models-and-providers.zh.mdx b/apps/web/content/docs/core-concepts/models-and-providers.zh.mdx
index f9c1e980..6a508ab1 100644
--- a/apps/web/content/docs/core-concepts/models-and-providers.zh.mdx
+++ b/apps/web/content/docs/core-concepts/models-and-providers.zh.mdx
@@ -3,24 +3,17 @@ title: Models and Provider Connections
description: 理解 provider template、Connection、model 和 variant。
---
-Devo 用一个目录描述 provider template 及其模型,再用用户覆盖文件记录用户已经配置的
-Connection。模型归属于 provider,因此稳定的公开身份是 `provider/model`。
+Devo 的模型数据只有两类:实时 models.dev 目录和用户配置。公共 provider endpoint 和模型
+元数据只保存在服务端内存中,不内置目录,也不保存磁盘快照。用户配置的 Connection 在
+用户/工作区 `providers.json` 中固定 endpoint、协议和 model ID;凭据仍保存在用户级 `auth.json`。
-## 三个概念
-
-| 概念 | 含义 | 存储位置 |
-| --- | --- | --- |
-| Provider template | 内置的 endpoint 默认值、wire API 和模型元数据。 | git 跟踪的 `crates/core/providers.json` |
-| Connection | 用户配置的 provider 实例,包含 endpoint 覆盖项和 credential 引用。 | 用户/工作区 `providers.json` |
-| Model | provider-facing model id,以及可选的能力和请求元数据。 | 两个文件中 provider 的嵌套 map |
-
-API key 本身存储在用户级 `auth.json`;`providers.json` 只保存 credential id。TUI 中不能删除
-provider template;断开 Connection 会删除用户的 provider 覆盖项。
+刷新失败会保留本进程最近一次成功的目录和全部用户配置模型。首次离线启动没有公共目录。
+Provider Discover 只返回临时建议,不会写入配置;需要显式保存选中的模型。
+旧的稀疏连接若没有固定 endpoint,需要显式重新连接。现有配置文件保留,旧快照忽略但不删除。
## Provider 和 Model 身份
-Provider id 和嵌套 model id 都是 map key。Devo 不再需要额外的 model slug、model name、request
-model 或 description 来保持同步:
+Provider id 和嵌套 model id 都是 map key。可选的 `request_model` 字段可以覆盖上游请求 ID,不改变稳定的选择身份:
```json
{
@@ -41,8 +34,8 @@ model 或 description 来保持同步:
}
```
-嵌套 model key 同时是发送给 provider 的 id,也是 `provider/model` 引用的后半部分;`name`
-仅用于显示。
+嵌套 model key 是 `provider/model` 引用的后半部分,默认也是上游请求 ID。模型级
+`base_url` 和 `wire_api` 可以独立固定路由;`name` 仅用于显示。
## Model 元数据
diff --git a/crates/config/src/app.rs b/crates/config/src/app.rs
index 785a2dd0..ff7ec3fb 100644
--- a/crates/config/src/app.rs
+++ b/crates/config/src/app.rs
@@ -46,8 +46,6 @@ mod mcp_store;
#[path = "provider_connection.rs"]
mod provider_connection;
-pub use provider_connection::sparsify_provider_entry_against_builtin;
-
pub use mcp_store::mcp_server_record_for_cli;
/// Stores the fully normalized runtime configuration.
@@ -140,17 +138,17 @@ pub struct UpdatesConfig {
/// `source` at a local `api.json` file instead of the public URL.
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct CatalogConfig {
- /// When true, never fetch over the network. Local `source` file paths still
- /// refresh the on-disk cache; the embedded builtin catalog always remains.
+ /// When true, never fetch over the network. Local `source` file paths
+ /// can still supply metadata in memory. Saved user connections remain usable.
#[serde(default)]
pub offline: bool,
/// `https://models.dev/api.json` or a filesystem path to a models.dev dump.
#[serde(default = "default_catalog_source")]
pub source: String,
- /// Whether bootstrap should refresh the cached remote directory.
+ /// Whether bootstrap should fetch the live remote directory into memory.
#[serde(default = "default_catalog_refresh_on_startup")]
pub refresh_on_startup: bool,
- /// Minimum hours between network refreshes when `source` is a URL.
+ /// Minimum hours between in-memory network refreshes when `source` is a URL.
#[serde(default = "default_catalog_refresh_interval_hours")]
pub refresh_interval_hours: u64,
}
@@ -416,10 +414,9 @@ impl AppConfigStore {
.split_once('/')
.ok_or_else(|| anyhow::anyhow!("model must use `provider/model` form"))?;
let catalog = self.config.provider_catalog_config();
- // Sparse overlays omit unchanged builtin models. Reject only an
- // explicitly disabled Connection / model in the user overlay;
- // builtin inheritance is validated at runtime via the effective
- // (builtin + overlay) catalog.
+ // Reject explicitly disabled user connections and models. The
+ // runtime validates live-directory selections and pins their
+ // transport before persisting this preference.
if let Some(provider) = catalog.providers.get(provider_id) {
if provider.enabled == Some(false) {
anyhow::bail!("provider `{provider_id}` is disabled");
diff --git a/crates/config/src/provider/catalog.rs b/crates/config/src/provider/catalog.rs
index 330554d3..e3b6124a 100644
--- a/crates/config/src/provider/catalog.rs
+++ b/crates/config/src/provider/catalog.rs
@@ -106,7 +106,7 @@ pub struct ProviderConfigEntry {
/// Optional provider-hosted web fetch behavior.
#[serde(default, skip_serializing_if = "Option::is_none")]
pub web_fetch: Option,
- /// Sparse patches applied to inherited models before `models`.
+ /// Explicit user patches applied after this layer's `models`.
#[serde(default, skip_serializing_if = "BTreeMap::is_empty")]
pub model_overrides: BTreeMap,
/// Models keyed by the model id sent to the provider.
@@ -121,6 +121,12 @@ pub struct ProviderConfigEntry {
/// description field is needed in the persisted format.
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct ProviderModelConfig {
+ /// Explicit endpoint for this model, taking precedence over the provider endpoint.
+ #[serde(default, skip_serializing_if = "Option::is_none")]
+ pub base_url: Option,
+ /// Wire model identifier when different from the catalog map key.
+ #[serde(default, skip_serializing_if = "Option::is_none")]
+ pub request_model: Option,
/// Persisted ownership; missing provenance is conservatively read-only.
#[serde(default, skip_serializing_if = "Option::is_none")]
pub origin: Option,
@@ -280,6 +286,28 @@ impl ProviderConfigFile {
});
}
+ // Session settings can retain a selected model id even when discovery
+ // is unavailable after restart. An explicit pinned connection can send
+ // that id without needing a persisted directory snapshot.
+ if !requested_model_id.is_empty()
+ && !provider.models.contains_key(requested_model_id)
+ && !requested_model_id
+ .rsplit_once('/')
+ .is_some_and(|(model, _)| provider.models.contains_key(model))
+ && provider
+ .base_url
+ .as_deref()
+ .is_some_and(|url| !url.trim().is_empty())
+ && let Some(wire_api) = provider.wire_api
+ {
+ return Ok(ProviderModelSelection {
+ provider_id: provider_id.to_string(),
+ model_id: requested_model_id.to_string(),
+ variant_id: None,
+ wire_api,
+ });
+ }
+
let (model_id, variant_id) = if provider.models.contains_key(requested_model_id) {
(requested_model_id, None)
} else if let Some((model_id, variant_id)) = requested_model_id.rsplit_once('/') {
@@ -410,6 +438,15 @@ impl ProviderConfigFile {
};
for (provider_id, provider) in &self.providers {
+ let mut provider = provider.clone();
+ for (model_id, patch) in provider.model_overrides.clone() {
+ provider
+ .models
+ .entry(model_id)
+ .or_default()
+ .apply_overlay(patch);
+ }
+
let wire_api = provider
.wire_api
.unwrap_or(ProviderWireApi::OpenAIChatCompletions);
@@ -439,7 +476,10 @@ impl ProviderConfigFile {
LegacyModelBindingConfig {
model_slug: model_ref.clone(),
provider: provider_id.clone(),
- request_model: model_id.clone(),
+ request_model: model
+ .request_model
+ .clone()
+ .unwrap_or_else(|| model_id.clone()),
display_name: model.name.clone(),
invocation_method: model_wire_api,
default_reasoning_effort: model
@@ -457,7 +497,7 @@ impl ProviderConfigFile {
);
section
.model_overrides
- .insert(model_ref, model.to_model_override(model_wire_api));
+ .insert(model_ref, model.to_model_override());
}
}
@@ -719,6 +759,8 @@ impl ProviderModelConfig {
};
}
replace_some!(name);
+ replace_some!(base_url);
+ replace_some!(request_model);
replace_some!(wire_api);
replace_some!(context_window);
replace_some!(effective_context_window_percent);
@@ -768,7 +810,7 @@ impl ProviderModelConfig {
replace_some!(default_variant);
}
- fn to_model_override(&self, provider_wire_api: ProviderWireApi) -> ModelOverrideConfig {
+ fn to_model_override(&self) -> ModelOverrideConfig {
ModelOverrideConfig {
display_name: self.name.clone(),
context_window: self.context_window,
@@ -777,7 +819,8 @@ impl ProviderModelConfig {
temperature: self.temperature,
top_p: self.top_p,
top_k: self.top_k,
- provider: Some(self.wire_api.unwrap_or(provider_wire_api)),
+ // Inherited provider defaults are not authored model overrides.
+ provider: self.wire_api,
reasoning_capability: self.reasoning_capability.clone(),
reasoning: self.reasoning,
thinking_level_map: self.thinking_level_map.clone(),
@@ -844,6 +887,9 @@ fn merge_provider_entry(base: &mut ProviderConfigEntry, overlay: ProviderConfigE
}
replace_some!(web_search);
replace_some!(web_fetch);
+ for (model_id, overlay_model) in overlay.models {
+ merge_model_entry(base.models.entry(model_id).or_default(), overlay_model);
+ }
for (model_id, model_override) in overlay.model_overrides {
merge_model_entry(
base.models.entry(model_id.clone()).or_default(),
@@ -854,9 +900,6 @@ fn merge_provider_entry(base: &mut ProviderConfigEntry, overlay: ProviderConfigE
model_override,
);
}
- for (model_id, overlay_model) in overlay.models {
- merge_model_entry(base.models.entry(model_id).or_default(), overlay_model);
- }
}
fn merge_model_entry(base: &mut ProviderModelConfig, overlay: ProviderModelConfig) {
diff --git a/crates/config/src/provider/runtime.rs b/crates/config/src/provider/runtime.rs
index 39e6aad2..dceef819 100644
--- a/crates/config/src/provider/runtime.rs
+++ b/crates/config/src/provider/runtime.rs
@@ -35,19 +35,21 @@ fn provider_runtime_fields_changed(
|| current.headers != inherited.headers
|| current.wire_api != inherited.wire_api
|| current.enabled != inherited.enabled
- || model_wire_apis(current) != model_wire_apis(inherited)
+ || model_routes(current) != model_routes(inherited)
}
-fn model_wire_apis(provider: &ProviderConfigEntry) -> Vec {
- let mut wire_apis = provider
+fn model_routes(provider: &ProviderConfigEntry) -> Vec<(&str, Option<&str>, Option<&str>)> {
+ provider
.models
- .values()
- .filter_map(|model| model.wire_api)
- .map(|wire_api| wire_api.as_str().to_string())
- .collect::>();
- wire_apis.sort();
- wire_apis.dedup();
- wire_apis
+ .iter()
+ .map(|(id, model)| {
+ (
+ id.as_str(),
+ model.base_url.as_deref(),
+ model.wire_api.map(|api| api.as_str()),
+ )
+ })
+ .collect()
}
#[cfg(test)]
@@ -100,6 +102,34 @@ mod tests {
assert_eq!(provider_runtime_config_changed(¤t, &inherited), false);
}
+ #[test]
+ fn detects_model_endpoint_changes() {
+ let base = ProviderConfigFile {
+ providers: [(
+ "custom".to_string(),
+ ProviderConfigEntry {
+ models: [("model".to_string(), ProviderModelConfig::default())]
+ .into_iter()
+ .collect(),
+ ..ProviderConfigEntry::default()
+ },
+ )]
+ .into_iter()
+ .collect(),
+ ..ProviderConfigFile::default()
+ };
+ let mut changed = base.clone();
+ changed
+ .providers
+ .get_mut("custom")
+ .unwrap()
+ .models
+ .get_mut("model")
+ .unwrap()
+ .base_url = Some("https://model.example/v1".to_string());
+ assert_eq!(provider_runtime_config_changed(&changed, &base), true);
+ }
+
#[test]
fn detects_endpoint_credential_and_route_changes() {
let base = ProviderConfigFile {
diff --git a/crates/config/src/provider_connection.rs b/crates/config/src/provider_connection.rs
index b481a441..ade7c35d 100644
--- a/crates/config/src/provider_connection.rs
+++ b/crates/config/src/provider_connection.rs
@@ -14,7 +14,7 @@ use crate::{
impl AppConfigStore {
/// Returns the effective user provider Connections in canonical form.
///
- /// Built-in directory templates are supplied by `ModelCatalog`; this
+ /// Live directory templates are supplied by `ModelCatalog`; this
/// method only exposes persisted user entries and their explicit models.
pub fn provider_connections(&self) -> anyhow::Result> {
Ok(self
@@ -27,7 +27,7 @@ impl AppConfigStore {
/// Returns the model directory explicitly stored for each user Connection.
///
- /// The embedded provider directory is deliberately excluded. This keeps
+ /// The remote provider directory is deliberately excluded. This keeps
/// Connection management separate from read-only provider templates.
pub fn provider_connection_models(
&self,
@@ -146,12 +146,10 @@ impl AppConfigStore {
)
}
- /// Like [`Self::upsert_provider_connection`], but when `builtin_baseline` is
- /// the embedded catalog entry for this provider id, only novel models and
- /// sparse `model_overrides` are written (sparse overlay semantics).
- ///
- /// Builtin Connections are stored in `providers.json`. User-owned custom
- /// providers/models are stored in `custom-providers.json`.
+ /// Saves a connection selected from a live directory baseline. Remote models
+ /// retain only explicit transport settings; authored metadata edits belong in
+ /// `model_overrides` and are merged with existing user settings.
+ /// The baseline is not persisted and is never required for offline requests.
pub fn upsert_provider_connection_with_baseline(
&mut self,
provider: ProviderInfo,
@@ -170,21 +168,19 @@ impl AppConfigStore {
validate_model(&provider_id, &provider.wire_apis, model_id, model)?;
}
- let target_config_file = if builtin_baseline.is_some() {
- self.user_provider_config_file()
- } else {
- self.user_custom_provider_config_file()
- };
- let other_config_file = if builtin_baseline.is_some() {
- self.user_custom_provider_config_file()
+ // Keep existing authored entries in their original file. Never delete a
+ // second overlay merely because the connection was edited.
+ let connection_path = self.user_provider_config_file();
+ let custom_path = self.user_custom_provider_config_file();
+ let connections = read_provider_catalog_config(&connection_path)?;
+ let customs = read_provider_catalog_config(&custom_path)?;
+ let target_is_connection = !customs.providers.contains_key(&provider_id)
+ && (connections.providers.contains_key(&provider_id) || builtin_baseline.is_some());
+ let (target_config_file, mut config, other) = if target_is_connection {
+ (connection_path, connections, customs)
} else {
- self.user_provider_config_file()
+ (custom_path, customs, connections)
};
- let mut config = read_provider_catalog_config(&target_config_file)?;
- let mut other = read_provider_catalog_config(&other_config_file)?;
- if other.providers.remove(&provider_id).is_some() {
- write_provider_catalog_config(&other_config_file, &other)?;
- }
let api_key = api_key.as_deref().and_then(non_empty_string);
let credential = provider
@@ -220,27 +216,35 @@ impl AppConfigStore {
let entry = config.providers.entry(provider_id.clone()).or_default();
apply_provider_info(entry, &provider, credential.clone());
for (model_id, mut model_info) in provider.models {
- let existing = entry
- .models
- .get(&model_id)
- .or_else(|| entry.model_overrides.get(&model_id));
- model_info.origin = if existing.and_then(|model| model.origin)
+ let existing = entry.models.get(&model_id);
+ let remote = existing.and_then(|model| model.origin)
== Some(ProviderModelOrigin::Remote)
|| model_info.origin == Some(ProviderModelOrigin::Remote)
- {
- Some(ProviderModelOrigin::Remote)
- } else if builtin_baseline
- .is_some_and(|baseline| baseline.models.contains_key(&model_id))
- {
- None
- } else if let Some(existing) = existing {
- existing.origin
+ || builtin_baseline
+ .is_some_and(|baseline| baseline.models.contains_key(&model_id));
+ if remote {
+ // Persist only the transport selected by the user, never a
+ // copy of the remote catalog's capabilities or pricing.
+ let model = entry.models.entry(model_id).or_default();
+ if model_info.base_url.is_some() {
+ model.base_url = model_info.base_url;
+ }
+ if model_info.request_model.is_some() {
+ model.request_model = model_info.request_model;
+ }
+ model.wire_api = model_info.wire_api.or(entry.wire_api);
+ model.origin.get_or_insert(ProviderModelOrigin::Remote);
} else {
- Some(ProviderModelOrigin::User)
- };
- entry
- .models
- .insert(model_id, provider_model_config_from_info(model_info));
+ model_info.origin = existing
+ .and_then(|model| model.origin)
+ .or(model_info.origin)
+ .or(Some(ProviderModelOrigin::User));
+ entry
+ .models
+ .entry(model_id)
+ .or_default()
+ .apply_overlay(provider_model_config_from_info(model_info));
+ }
}
if let Some(model) = default_model.as_deref().and_then(non_empty_string) {
if !provider_has_model(entry, &provider_id, &model)
@@ -269,11 +273,6 @@ impl AppConfigStore {
}
super::write_user_session_default(&self.user_config_file, "small_model", &model)?;
}
-
- // Builtin providers persist sparse overlays; custom providers stay full.
- if let Some(baseline) = builtin_baseline {
- sparsify_provider_entry_against_builtin(entry, baseline);
- }
}
// Session defaults are preferences in config.toml, not catalog fields.
@@ -297,6 +296,61 @@ impl AppConfigStore {
Ok(provider_info_from_config(&provider_id, effective))
}
+ /// Saves the transport of a selected model without copying remote metadata.
+ /// Existing user-authored model settings and credential references are preserved.
+ /// A legacy connection without an explicit endpoint must be reconnected first.
+ pub fn pin_provider_model(
+ &mut self,
+ provider_id: &str,
+ model_id: &str,
+ model: ProviderModelConfig,
+ ) -> anyhow::Result<()> {
+ let custom_path = self.user_custom_provider_config_file();
+ let custom = read_provider_catalog_config(&custom_path)?;
+ let (path, mut config) = if custom.providers.contains_key(provider_id) {
+ (custom_path, custom)
+ } else {
+ let path = self.user_provider_config_file();
+ let config = read_provider_catalog_config(&path)?;
+ (path, config)
+ };
+ let entry = config
+ .providers
+ .get_mut(provider_id)
+ .ok_or_else(|| anyhow::anyhow!("provider `{provider_id}` is not connected"))?;
+ let existing = entry.models.get(model_id);
+ if entry
+ .base_url
+ .as_deref()
+ .and_then(non_empty_string)
+ .is_none()
+ && existing
+ .and_then(|model| model.base_url.as_deref())
+ .and_then(non_empty_string)
+ .is_none()
+ {
+ anyhow::bail!(
+ "provider `{provider_id}` has no pinned endpoint; reconnect it with an explicit endpoint before selecting a model"
+ );
+ }
+ let pinned = entry.models.entry(model_id.to_string()).or_default();
+ // Missing incoming transport preserves existing authored transport.
+ if model.base_url.is_some() {
+ pinned.base_url = model.base_url;
+ }
+ if model.request_model.is_some() {
+ pinned.request_model = model.request_model;
+ }
+ pinned.wire_api = model.wire_api.or(pinned.wire_api).or(entry.wire_api);
+ pinned.origin = pinned.origin.or(model.origin);
+ write_provider_catalog_config(&path, &config)?;
+ self.config = self
+ .loader
+ .load(self.workspace_root.as_deref())
+ .map_err(|error| anyhow::anyhow!(error))?;
+ Ok(())
+ }
+
fn load_editable_provider_catalog(&self) -> anyhow::Result {
let mut config = read_provider_catalog_config(&self.user_provider_config_file())?;
config.merge_overlay(read_provider_catalog_config(
@@ -306,40 +360,6 @@ impl AppConfigStore {
}
}
-/// Rewrites a user provider entry so built-in models become sparse
-/// `model_overrides` (or are omitted when identical) and only novel models stay
-/// in `models` — matching the `models.json` sparse overlay rules.
-pub fn sparsify_provider_entry_against_builtin(
- entry: &mut ProviderConfigEntry,
- builtin: &ProviderConfigEntry,
-) {
- let mut custom_models = BTreeMap::new();
- let mut overrides = entry.model_overrides.clone();
- for (model_id, model) in std::mem::take(&mut entry.models) {
- match builtin.models.get(&model_id) {
- None => {
- custom_models.insert(model_id, model);
- }
- Some(baseline_model) if model == *baseline_model => {
- // Identical to builtin — inherit; do not persist.
- }
- Some(_) => {
- overrides.insert(model_id, model);
- }
- }
- }
- entry.models = custom_models;
- entry.model_overrides = overrides;
-
- if entry.name.is_some() && entry.name == builtin.name {
- // Keep display name; harmless. Prefer omitting when equal to shrink file.
- entry.name = None;
- }
- if entry.description.is_some() && entry.description == builtin.description {
- entry.description = None;
- }
-}
-
fn provider_has_model_in_overrides_or_baseline(
provider: &ProviderConfigEntry,
builtin_baseline: Option<&ProviderConfigEntry>,
@@ -402,26 +422,42 @@ fn apply_provider_info(
provider: &ProviderInfo,
credential: Option,
) {
- entry.name = non_empty_string(&provider.name);
+ entry.name = non_empty_string(&provider.name).or_else(|| entry.name.clone());
entry.description = provider.description.as_deref().and_then(non_empty_string);
- entry.base_url = provider.base_url.as_deref().and_then(non_empty_string);
+ entry.base_url = provider
+ .base_url
+ .as_deref()
+ .and_then(non_empty_string)
+ .or_else(|| entry.base_url.clone());
entry.credential = credential;
entry.headers = (!provider.headers.is_empty()).then(|| provider.headers.clone());
- entry.options = provider.options.clone();
- entry.request = provider.request.clone();
- entry.compat = provider.compat.clone();
- entry.model_overrides = provider
- .model_overrides
- .clone()
- .into_iter()
- .map(|(model_id, model)| (model_id, provider_model_config_from_info(model)))
- .collect();
+ if provider.options.is_some() {
+ entry.options = provider.options.clone();
+ }
+ if provider.request.is_some() {
+ entry.request = provider.request.clone();
+ }
+ if provider.compat.is_some() {
+ entry.compat = provider.compat.clone();
+ }
+ for (model_id, model_info) in &provider.model_overrides {
+ let mut patch = provider_model_config_from_info(model_info.clone());
+ // A settings patch cannot change model ownership or removability.
+ patch.origin = None;
+ entry
+ .model_overrides
+ .entry(model_id.clone())
+ .or_default()
+ .apply_overlay(patch);
+ }
entry.wire_api = provider.wire_apis.first().copied();
entry.enabled = Some(provider.enabled);
}
fn provider_model_config_from_info(info: ProviderModelInfo) -> ProviderModelConfig {
ProviderModelConfig {
+ base_url: info.base_url,
+ request_model: info.request_model,
origin: info.origin,
name: info.name,
family: info.family,
@@ -496,11 +532,19 @@ fn provider_info_from_config(provider_id: &str, config: &ProviderConfigEntry) ->
options: config.options.clone(),
request: config.request.clone(),
compat: config.compat.clone(),
- wire_apis: vec![
- config
- .wire_api
- .unwrap_or(devo_protocol::ProviderWireApi::OpenAIChatCompletions),
- ],
+ wire_apis: {
+ let mut protocols = vec![
+ config
+ .wire_api
+ .unwrap_or(devo_protocol::ProviderWireApi::OpenAIChatCompletions),
+ ];
+ for protocol in config.models.values().filter_map(|model| model.wire_api) {
+ if !protocols.contains(&protocol) {
+ protocols.push(protocol);
+ }
+ }
+ protocols
+ },
model_overrides: config
.model_overrides
.iter()
@@ -532,6 +576,8 @@ fn provider_model_info_from_config(config: &ProviderModelConfig) -> ProviderMode
.is_some_and(|map| !map.is_empty())
|| !matches!(capability, devo_protocol::ReasoningCapability::Unsupported);
ProviderModelInfo {
+ base_url: config.base_url.clone(),
+ request_model: config.request_model.clone(),
origin: config.origin,
name: config.name.clone(),
family: config.family.clone(),
@@ -601,3 +647,7 @@ fn provider_model_info_from_config(config: &ProviderModelConfig) -> ProviderMode
priority: config.priority,
}
}
+
+#[cfg(test)]
+#[path = "provider_connection_tests.rs"]
+mod tests;
diff --git a/crates/config/src/provider_connection_tests.rs b/crates/config/src/provider_connection_tests.rs
new file mode 100644
index 00000000..4e267c45
--- /dev/null
+++ b/crates/config/src/provider_connection_tests.rs
@@ -0,0 +1,361 @@
+use super::*;
+use pretty_assertions::assert_eq;
+
+#[test]
+fn model_transport_round_trips_and_projects_wire_alias() {
+ let model = ProviderModelConfig {
+ base_url: Some("https://example.com/anthropic".into()),
+ request_model: Some("wire-model".into()),
+ wire_api: Some(devo_protocol::ProviderWireApi::AnthropicMessages),
+ ..ProviderModelConfig::default()
+ };
+ assert_eq!(
+ provider_model_config_from_info(provider_model_info_from_config(&model)),
+ model
+ );
+ let catalog = ProviderConfigFile {
+ providers: BTreeMap::from([(
+ "custom".into(),
+ ProviderConfigEntry {
+ models: BTreeMap::from([("alias".into(), model)]),
+ ..ProviderConfigEntry::default()
+ },
+ )]),
+ ..ProviderConfigFile::default()
+ };
+ assert_eq!(
+ catalog.to_provider_config_section().model_bindings["custom/alias"].request_model,
+ "wire-model"
+ );
+}
+
+#[test]
+fn transport_overlay_preserves_authored_metadata() {
+ let mut model = ProviderModelConfig {
+ name: Some("My model".into()),
+ context_window: Some(12345),
+ ..ProviderModelConfig::default()
+ };
+ model.apply_overlay(ProviderModelConfig {
+ base_url: Some("https://example.com/v1".into()),
+ request_model: Some("wire-id".into()),
+ ..ProviderModelConfig::default()
+ });
+ assert_eq!(
+ model,
+ ProviderModelConfig {
+ name: Some("My model".into()),
+ context_window: Some(12345),
+ base_url: Some("https://example.com/v1".into()),
+ request_model: Some("wire-id".into()),
+ ..ProviderModelConfig::default()
+ }
+ );
+}
+
+#[test]
+fn remote_connection_persists_only_transport_and_preserves_existing_overrides() {
+ let root = std::env::temp_dir().join(format!(
+ "devo-live-connection-{}-{}",
+ std::process::id(),
+ std::time::SystemTime::now()
+ .duration_since(std::time::UNIX_EPOCH)
+ .unwrap()
+ .as_nanos()
+ ));
+ std::fs::create_dir_all(&root).unwrap();
+ let original = ProviderConfigFile {
+ providers: BTreeMap::from([(
+ "custom".into(),
+ ProviderConfigEntry {
+ base_url: Some("https://pinned.example/v1".into()),
+ credential: Some("saved-credential".into()),
+ model_overrides: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelConfig {
+ context_window: Some(12345),
+ ..ProviderModelConfig::default()
+ },
+ )]),
+ ..ProviderConfigEntry::default()
+ },
+ )]),
+ ..ProviderConfigFile::default()
+ };
+ write_provider_catalog_config(&root.join("providers.json"), &original).unwrap();
+ let mut store = AppConfigStore::load(root.clone(), None).unwrap();
+ store
+ .upsert_provider_connection(
+ ProviderInfo {
+ id: "custom".into(),
+ name: "custom".into(),
+ base_url: Some("https://pinned.example/v1".into()),
+ wire_apis: vec![devo_protocol::ProviderWireApi::OpenAIChatCompletions],
+ models: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelInfo {
+ origin: Some(ProviderModelOrigin::Remote),
+ context_window: Some(999999),
+ cost: Some(serde_json::json!({"input": 10})),
+ request_model: Some("wire-id".into()),
+ ..ProviderModelInfo::default()
+ },
+ )]),
+ enabled: true,
+ ..ProviderInfo::default()
+ },
+ None,
+ None,
+ None,
+ )
+ .unwrap();
+ let saved = read_provider_catalog_config(&root.join("providers.json")).unwrap();
+ assert_eq!(
+ saved.providers["custom"].models["remote"],
+ ProviderModelConfig {
+ origin: Some(ProviderModelOrigin::Remote),
+ request_model: Some("wire-id".into()),
+ wire_api: Some(devo_protocol::ProviderWireApi::OpenAIChatCompletions),
+ ..ProviderModelConfig::default()
+ }
+ );
+ assert_eq!(
+ saved.providers["custom"].credential,
+ original.providers["custom"].credential
+ );
+ assert_eq!(
+ saved.providers["custom"].model_overrides,
+ original.providers["custom"].model_overrides
+ );
+ std::fs::remove_dir_all(root).unwrap();
+}
+
+#[test]
+fn pinning_legacy_connection_requires_explicit_existing_endpoint() {
+ let root = std::env::temp_dir().join(format!(
+ "devo-unpinned-connection-{}-{}",
+ std::process::id(),
+ std::time::SystemTime::now()
+ .duration_since(std::time::UNIX_EPOCH)
+ .unwrap()
+ .as_nanos()
+ ));
+ std::fs::create_dir_all(&root).unwrap();
+ let config = ProviderConfigFile {
+ providers: BTreeMap::from([(
+ "legacy".into(),
+ ProviderConfigEntry {
+ credential: Some("saved-credential".into()),
+ ..ProviderConfigEntry::default()
+ },
+ )]),
+ ..ProviderConfigFile::default()
+ };
+ let path = root.join("providers.json");
+ write_provider_catalog_config(&path, &config).unwrap();
+ let mut store = AppConfigStore::load(root.clone(), None).unwrap();
+ let error = store
+ .pin_provider_model(
+ "legacy",
+ "model",
+ ProviderModelConfig {
+ base_url: Some("https://remote.example/v1".into()),
+ ..ProviderModelConfig::default()
+ },
+ )
+ .unwrap_err();
+ assert!(error.to_string().contains("no pinned endpoint"));
+ assert_eq!(read_provider_catalog_config(&path).unwrap(), config);
+ std::fs::remove_dir_all(root).unwrap();
+}
+
+#[test]
+fn explicit_model_ids_resolve_offline_only_on_pinned_connections() {
+ let mut catalog = ProviderConfigFile {
+ providers: BTreeMap::from([(
+ "custom".into(),
+ ProviderConfigEntry {
+ base_url: Some("https://backend.example/v1".into()),
+ wire_api: Some(devo_protocol::ProviderWireApi::OpenAIChatCompletions),
+ models: BTreeMap::from([("known".into(), ProviderModelConfig::default())]),
+ ..Default::default()
+ },
+ )]),
+ ..Default::default()
+ };
+ assert_eq!(
+ catalog.resolve_model(Some("custom/vendor/model")).unwrap(),
+ crate::ProviderModelSelection {
+ provider_id: "custom".into(),
+ model_id: "vendor/model".into(),
+ variant_id: None,
+ wire_api: devo_protocol::ProviderWireApi::OpenAIChatCompletions,
+ }
+ );
+ assert!(
+ catalog
+ .resolve_model(Some("custom/known/unknown-variant"))
+ .is_err()
+ );
+ catalog.providers.get_mut("custom").unwrap().base_url = None;
+ assert!(catalog.resolve_model(Some("custom/vendor/model")).is_err());
+}
+
+#[test]
+fn explicit_remote_model_edits_merge_without_copying_live_metadata() {
+ let root = std::env::temp_dir().join(format!(
+ "devo-remote-overrides-{}-{}",
+ std::process::id(),
+ std::time::SystemTime::now()
+ .duration_since(std::time::UNIX_EPOCH)
+ .unwrap()
+ .as_nanos()
+ ));
+ std::fs::create_dir_all(&root).unwrap();
+ let original = ProviderConfigFile {
+ providers: BTreeMap::from([(
+ "custom".into(),
+ ProviderConfigEntry {
+ base_url: Some("https://pinned.example/v1".into()),
+ credential: Some("saved-credential".into()),
+ wire_api: Some(devo_protocol::ProviderWireApi::OpenAIChatCompletions),
+ models: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelConfig {
+ origin: Some(ProviderModelOrigin::Remote),
+ context_window: Some(1000), // Previously authored metadata must yield to the new edit.
+ ..ProviderModelConfig::default()
+ },
+ )]),
+ model_overrides: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelConfig {
+ temperature: Some(0.4),
+ request: Some(serde_json::json!({"previous": true})),
+ ..ProviderModelConfig::default()
+ },
+ )]),
+ ..ProviderConfigEntry::default()
+ },
+ )]),
+ ..ProviderConfigFile::default()
+ };
+ let path = root.join("providers.json");
+ write_provider_catalog_config(&path, &original).unwrap();
+ let mut store = AppConfigStore::load(root.clone(), None).unwrap();
+ store
+ .upsert_provider_connection(
+ ProviderInfo {
+ id: "custom".into(),
+ name: "custom".into(),
+ enabled: true,
+ wire_apis: vec![devo_protocol::ProviderWireApi::OpenAIChatCompletions],
+ models: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelInfo {
+ origin: Some(ProviderModelOrigin::Remote),
+ context_window: Some(999999),
+ cost: Some(serde_json::json!({"input": 10})),
+ ..ProviderModelInfo::default()
+ },
+ )]),
+ model_overrides: BTreeMap::from([(
+ "remote".into(),
+ ProviderModelInfo {
+ origin: Some(ProviderModelOrigin::User), // Malformed client must not change ownership.
+ context_window: Some(64000),
+ request: Some(serde_json::json!({"edited": true})),
+ ..ProviderModelInfo::default()
+ },
+ )]),
+ ..ProviderInfo::default()
+ },
+ None,
+ None,
+ None,
+ )
+ .unwrap();
+ let saved = read_provider_catalog_config(&path).unwrap();
+ assert_eq!(
+ saved.providers["custom"].model_overrides["remote"],
+ ProviderModelConfig {
+ context_window: Some(64000),
+ temperature: Some(0.4),
+ request: Some(serde_json::json!({"previous": true, "edited": true})),
+ ..ProviderModelConfig::default()
+ }
+ );
+ assert_eq!(saved.providers["custom"].models["remote"].cost, None);
+ let reloaded = AppConfigStore::load(root.clone(), None).unwrap();
+ let effective = reloaded.effective_config().provider_catalog_config();
+ let effective_model = &effective.providers["custom"].models["remote"];
+ assert_eq!(
+ (
+ effective_model.context_window,
+ effective_model.temperature,
+ effective_model.origin
+ ),
+ (Some(64000), Some(0.4), Some(ProviderModelOrigin::Remote))
+ );
+ assert!(
+ store
+ .remove_provider_model("custom", "remote")
+ .unwrap_err()
+ .to_string()
+ .contains("read-only")
+ );
+ std::fs::remove_dir_all(root).unwrap();
+}
+
+#[test]
+fn provider_protocol_overlay_updates_only_inheriting_models() {
+ let root = std::env::temp_dir().join(format!(
+ "devo-inherited-protocol-{}-{}",
+ std::process::id(),
+ std::time::SystemTime::now()
+ .duration_since(std::time::UNIX_EPOCH)
+ .unwrap()
+ .as_nanos()
+ ));
+ std::fs::create_dir_all(&root).unwrap();
+ let original: ProviderConfigFile = serde_json::from_value(serde_json::json!({
+ "provider": {"custom": {
+ "base_url": "https://pinned.example/v1", "wire_api": "anthropic_messages",
+ "models": {"inherited": {"context_window": 128000},
+ "pinned": {"wire_api": "anthropic_messages", "context_window": 128000}}
+ }}
+ }))
+ .unwrap();
+ write_provider_catalog_config(&root.join("providers.json"), &original).unwrap();
+ let overlay: ProviderConfigFile = serde_json::from_value(serde_json::json!({
+ "provider": {"custom": {"wire_api": "openai_responses"}}
+ }))
+ .unwrap();
+ write_provider_catalog_config(&root.join("custom-providers.json"), &overlay).unwrap();
+ let store = AppConfigStore::load(root.clone(), None).unwrap();
+ let effective = store.effective_config().provider_catalog_config();
+ assert_eq!(
+ (
+ effective.providers["custom"].wire_api,
+ effective.providers["custom"].models["inherited"].wire_api,
+ effective.providers["custom"].models["pinned"].wire_api
+ ),
+ (
+ Some(devo_protocol::ProviderWireApi::OpenAIResponses),
+ None,
+ Some(devo_protocol::ProviderWireApi::AnthropicMessages)
+ )
+ );
+ let projected = effective.to_provider_config_section();
+ assert_eq!(
+ (
+ projected.model_bindings["custom/inherited"].invocation_method,
+ projected.model_bindings["custom/pinned"].invocation_method
+ ),
+ (
+ devo_protocol::ProviderWireApi::OpenAIResponses,
+ devo_protocol::ProviderWireApi::AnthropicMessages
+ )
+ );
+ std::fs::remove_dir_all(root).unwrap();
+}
diff --git a/crates/config/src/tests.rs b/crates/config/src/tests.rs
index 236d4634..016561c0 100644
--- a/crates/config/src/tests.rs
+++ b/crates/config/src/tests.rs
@@ -1002,8 +1002,8 @@ provider = "Deepseek"
)
.expect("upsert provider");
- let user_config = std::fs::read_to_string(fixture.home.join("custom-providers.json"))
- .expect("provider config");
+ let user_config =
+ std::fs::read_to_string(fixture.home.join("providers.json")).expect("provider config");
let document: serde_json::Value =
serde_json::from_str(&user_config).expect("parse provider config");
let provider = &document["provider"]["Deepseek"];
diff --git a/crates/core/README.md b/crates/core/README.md
index b715b496..dab21d96 100644
--- a/crates/core/README.md
+++ b/crates/core/README.md
@@ -1,70 +1,46 @@
# devo-core
-## Built-in provider catalog (`providers.json`)
-
-`crates/core/providers.json` is the git-tracked built-in provider/model
-directory. It is embedded at compile time via `include_str!` in
-`src/model_catalog.rs` and is always available offline.
-
-### Runtime refresh from models.dev
-
-At server startup Devo can download
-[https://models.dev/api.json](https://models.dev/api.json) into:
-
-```text
-$DEVO_HOME/cache/models.dev-api.json # raw dump (source of truth)
-$DEVO_HOME/cache/models.dev-meta.json # fetch time + counts (refresh interval)
-```
-
-On catalog load, Devo **converts `models.dev-api.json` in memory** into a
-provider overlay and merges it onto the embedded builtin. There is no separate
-converted cache file.
-
-Effective merge order:
-
-1. Embedded `crates/core/providers.json`
-2. Converted overlay from cached `models.dev-api.json`
-3. User `providers.json` (builtin Connection overlays)
-4. User `custom-providers.json` (user-owned providers/models)
-5. Workspace `.devo/providers.json` / `.devo/custom-providers.json`
-6. CLI / `[model.*]` overrides
-
-### Why not only `models.dev-api.json`?
-
-That **is** the durable network artifact. Devo does not keep a second converted
-JSON for correctness — conversion runs when the catalog loads. `meta.json` only
-records when the dump was fetched so refresh can honor
-`catalog.refresh_interval_hours`.
-
-### DeepSeek V4.1 Flash naming
-
-Under the official `deepseek` provider, models.dev uses id `deepseek-flash`
-with display name "DeepSeek V4.1 Flash". Other gateways may list a different
-model id such as `deepseek-v4.1-flash`. Those are separate catalog entries —
-Devo persists whichever `provider/model` id the user selects, with no remap.
-
-### Offline / no-internet configuration
-
-In `$DEVO_HOME/config.toml`:
+## Model data sources
+
+There are exactly two sources: the live [models.dev](https://models.dev/api.json)
+directory and user configuration. The server fetches and converts models.dev in
+memory. No provider/model directory is embedded and no remote snapshot is written
+to or restored from disk.
+
+Public metadata is refreshed at startup and on demand through
+`model/catalog/refresh`, respecting `catalog.refresh_interval_hours` unless forced.
+Failed refreshes retain the same process's last successful directory. A fresh
+offline process has only configured providers/models, not an offline public catalog.
+
+User configuration is layered from `$DEVO_HOME/providers.json` and
+`custom-providers.json`, workspace `.devo` equivalents, and explicit overrides.
+Connections pin endpoint, wire API and model IDs; remote metadata cannot silently
+change their request routing. Credentials stay separate in `auth.json`.
+models.dev SDK packages without a supported adapter are omitted, not guessed.
+Native OpenAI/Anthropic/Google endpoint defaults belong to their adapters, not a
+separate catalog; explicit connect pins the resolved `base_url`.
+Provider discovery, including authenticated Codex discovery, is explicit and
+read-only. Results become user configuration only when explicitly saved.
+
+## Offline or local source
```toml
[catalog]
-# Never fetch over the network.
offline = true
-# Optional local dump of models.dev api.json (still works when offline).
-source = "C:/path/to/models.dev-api.json"
+# Optional explicit local models.dev-format source, usable offline.
+# source = "/path/to/models.dev-api.json"
refresh_on_startup = true
-refresh_interval_hours = 24
+refresh_interval_hours = 1
```
-### User-owned providers/models
+Offline mode blocks catalog and provider-discovery network requests. An explicit
+local source is an input, not an automatically maintained cache.
-Put custom providers in `$DEVO_HOME/custom-providers.json` (same JSON shape as
-`providers.json`). Builtin Connection credentials/overlays stay in
-`providers.json`.
+## Migration and tradeoffs
-### Build-time regeneration
-
-```bash
-node --experimental-strip-types scripts/import-pi-ai-catalog.mjs --refresh-snapshot
-```
+Existing configuration files are preserved. Sparse legacy connections that relied
+on built-in endpoint defaults must be explicitly reconnected or configured with
+an endpoint. Old `cache/models.dev-api.json`, `cache/models.dev-meta.json` and
+provider snapshot files are ignored, not deleted. There is no build-time catalog
+regeneration step. Live metadata and stable configured routes take priority over
+first-run offline browsing.
diff --git a/crates/core/providers.json b/crates/core/providers.json
deleted file mode 100644
index 480dc343..00000000
--- a/crates/core/providers.json
+++ /dev/null
@@ -1,30517 +0,0 @@
-{
- "model": "openai/gpt-5.5",
- "provider": {
- "anthropic": {
- "name": "Anthropic",
- "description": "Claude models via Anthropic API",
- "base_url": "https://api.anthropic.com",
- "wire_api": "anthropic_messages",
- "models": {
- "claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "claude-fable-5-1": {
- "name": "Claude Fable 5.1",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- }
- },
- "claude-haiku-4-5": {
- "name": "Claude Haiku 4.5 (latest)",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- }
- },
- "claude-haiku-4-5-20251001": {
- "name": "Claude Haiku 4.5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- }
- },
- "claude-opus-4-5": {
- "name": "Claude Opus 4.5 (latest)",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-opus-4-5-20251101": {
- "name": "Claude Opus 4.5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-opus-4-6": {
- "name": "Claude Opus 4.6",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-opus-4-7": {
- "name": "Claude Opus 4.7",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-opus-4-8": {
- "name": "Claude Opus 4.8",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "claude-sonnet-4-5": {
- "name": "Claude Sonnet 4.5 (latest)",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "claude-sonnet-4-5-20250929": {
- "name": "Claude Sonnet 4.5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "claude-sonnet-4-6": {
- "name": "Claude Sonnet 4.6",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "Anthropic",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- }
- }
- }
- },
- "cerebras": {
- "name": "Cerebras",
- "description": "Cerebras models",
- "base_url": "https://api.cerebras.ai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "gemma-4-31b": {
- "name": "Gemma 4 31B IT",
- "channel": "Cerebras",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 40960,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.99,
- "output": 1.49,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Cerebras",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 40960,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 0.75,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "cloudflare-ai-gateway": {
- "name": "Cloudflare AI Gateway",
- "description": "Cloudflare AI Gateway",
- "base_url": "https://gateway.ai.cloudflare.com/v1/{CLOUDFLARE_ACCOUNT_ID}/{CLOUDFLARE_GATEWAY_ID}/anthropic",
- "wire_api": "openai_responses",
- "models": {
- "claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-fable-5.1": {
- "name": "Claude Fable 5.1",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-haiku-4.5": {
- "name": "Claude Haiku 4.5 (latest)",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.5": {
- "name": "Claude Opus 4.5 (latest)",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.6": {
- "name": "Claude Opus 4.6",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.7": {
- "name": "Claude Opus 4.7",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.8": {
- "name": "Claude Opus 4.8",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4.5": {
- "name": "Claude Sonnet 4.5 (latest)",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4.6": {
- "name": "Claude Sonnet 4.6",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- },
- "wire_api": "anthropic_messages"
- },
- "gpt-4.1": {
- "name": "GPT-4.1",
- "channel": "Cloudflare AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "gpt-4.1-mini": {
- "name": "GPT-4.1 mini",
- "channel": "Cloudflare AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.6,
- "cacheRead": 0.1,
- "cacheWrite": 0
- }
- },
- "gpt-4.1-nano": {
- "name": "GPT-4.1 nano",
- "channel": "Cloudflare AI Gateway",
- "context_window": 1000000,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.4,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-4o": {
- "name": "GPT-4o",
- "channel": "Cloudflare AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 5,
- "cacheRead": 0.625,
- "cacheWrite": 0
- }
- },
- "gpt-4o-mini": {
- "name": "GPT-4o mini",
- "channel": "Cloudflare AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.3,
- "cacheRead": 0.0375,
- "cacheWrite": 0
- }
- },
- "gpt-5": {
- "name": "GPT-5",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5-mini": {
- "name": "GPT-5 Mini",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-5-nano": {
- "name": "GPT-5 Nano",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.4,
- "cacheRead": 0.005,
- "cacheWrite": 0
- }
- },
- "gpt-5.1": {
- "name": "GPT-5.1",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.4": {
- "name": "GPT-5.4",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-mini": {
- "name": "GPT-5.4 mini",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-nano": {
- "name": "GPT-5.4 nano",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-pro": {
- "name": "GPT-5.4 Pro",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.5": {
- "name": "GPT-5.5",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.5-pro": {
- "name": "GPT-5.5 Pro",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "gpt-5.6-sol": {
- "name": "GPT-5.6 Sol",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.25,
- "cacheWrite": 3.125
- }
- },
- "gpt-5.6-terra": {
- "name": "GPT-5.6 Terra",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- }
- },
- "o3": {
- "name": "o3",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "o3-mini": {
- "name": "o3-mini",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "o4-mini": {
- "name": "o4-mini",
- "channel": "Cloudflare AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.275,
- "cacheWrite": 0
- }
- }
- }
- },
- "cloudflare-workers-ai": {
- "name": "Cloudflare Workers AI",
- "description": "Cloudflare Workers AI",
- "base_url": "https://api.cloudflare.com/client/v4/accounts/{CLOUDFLARE_ACCOUNT_ID}/ai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "@cf/deepseek-ai/deepseek-v4-flash-0731": {
- "name": "DeepSeek V4 Flash 0731",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1310720,
- "max_tokens": 1048576,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44,
- "output": 1.32,
- "cacheRead": 0.014,
- "cacheWrite": 0
- }
- },
- "@cf/deepseek-ai/deepseek-v4-pro-0813": {
- "name": "DeepSeek V4 Pro 0813",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.32,
- "output": 3.96,
- "cacheRead": 0.044,
- "cacheWrite": 0
- }
- },
- "@cf/google/gemma-4-26b-a4b-it": {
- "name": "Gemma 4 26B A4B IT",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/ibm-granite/granite-4.0-h-micro": {
- "name": "Granite 4.0 H Micro",
- "channel": "Cloudflare Workers AI",
- "context_window": 131000,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.017,
- "output": 0.112,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/meta/llama-3.3-70b-instruct-fp8-fast": {
- "name": "Llama 3.3 70B Instruct fp8 Fast",
- "channel": "Cloudflare Workers AI",
- "context_window": 24000,
- "max_tokens": 24000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.293,
- "output": 2.253,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/meta/llama-4-scout-17b-16e-instruct": {
- "name": "Llama 4 Scout 17B 16E Instruct",
- "channel": "Cloudflare Workers AI",
- "context_window": 131000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 0.85,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/mistralai/mistral-small-3.1-24b-instruct": {
- "name": "Mistral Small 3.1 24B Instruct",
- "channel": "Cloudflare Workers AI",
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.351,
- "output": 0.555,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/moonshotai/kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "@cf/moonshotai/kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "@cf/nvidia/nemotron-3-120b-a12b": {
- "name": "Nemotron 3 Super 120B",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/openai/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 0.75,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/openai/gpt-oss-20b": {
- "name": "GPT OSS 20B",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/qwen/qwen3-30b-a3b-fp8": {
- "name": "Qwen3 30B A3b fp8",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 32768,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.0509,
- "output": 0.335,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/qwen/qwen3.8-27b": {
- "name": "Qwen3.8 27B",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.45,
- "output": 3.2,
- "cacheRead": 0.05,
- "cacheWrite": 0
- }
- },
- "@cf/zai-org/glm-4.7-flash": {
- "name": "GLM-4.7-Flash",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.0605,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "@cf/zai-org/glm-5.2": {
- "name": "Glm 5.2",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "@cf/zai-org/glm-5.3": {
- "name": "Glm 5.3",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1310720,
- "max_tokens": 1310720,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "@cf/zai-org/glm-5.3-flash": {
- "name": "Glm 5.3 Flash",
- "channel": "Cloudflare Workers AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1310720,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- }
- }
- },
- "deepseek": {
- "name": "DeepSeek",
- "description": "DeepSeek models",
- "base_url": "https://api.deepseek.com",
- "wire_api": "openai_chat_completions",
- "models": {
- "deepseek-v4-flash": {
- "name": "DeepSeek V4 Flash",
- "channel": "DeepSeek",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "deepseek-v4-pro": {
- "name": "DeepSeek V4 Pro",
- "channel": "DeepSeek",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.003625,
- "cacheWrite": 0
- }
- }
- }
- },
- "fireworks": {
- "name": "Fireworks",
- "description": "Fireworks AI models",
- "base_url": "https://api.fireworks.ai/inference",
- "wire_api": "anthropic_messages",
- "models": {
- "accounts/fireworks/models/deepseek-v4-flash-0731": {
- "name": "DeepSeek V4 Flash 0731",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.66,
- "cacheRead": 0.007,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/deepseek-v4-flash-vision-exp": {
- "name": "DeepSeek V4 Flash Vision Exp",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.66,
- "cacheRead": 0.007,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/deepseek-v4-pro-0813": {
- "name": "DeepSeek V4 Pro 0813",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.32,
- "output": 3.96,
- "cacheRead": 0.044,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/glm-5p2": {
- "name": "GLM 5.2",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048575,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.14,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/glm-5p3": {
- "name": "GLM 5.3",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/glm-5p3-flash": {
- "name": "GLM 5.3 Flash",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/inkling": {
- "name": "Inkling",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 4.05,
- "cacheRead": 0.17,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/kimi-k2p6": {
- "name": "Kimi K2.6",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262000,
- "max_tokens": 262000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/kimi-k2p7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262000,
- "max_tokens": 262000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/kimi-k3": {
- "name": "Kimi K3",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/minimax-m3": {
- "name": "MiniMax-M3",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 512000,
- "max_tokens": 512000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/muse-glimmer-30b": {
- "name": "Muse Glimmer 30B",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 1.5,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/nemotron-3-ultra-nvfp4": {
- "name": "Nemotron 3 Ultra 550B A55B",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.119,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/nemotron-lightning-3p5-30b-a3b": {
- "name": "Nemotron 3.5 Lightning 30B A3B",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.2,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/qwen3p7-plus": {
- "name": "Qwen 3.7 Plus",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.6,
- "cacheRead": 0.08,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/qwen3p8-2p4t-a95b": {
- "name": "Qwen3.8 2.4T A95B",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/models/qwen3p8-max": {
- "name": "Qwen3.8 Max",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/routers/glm-5p2-fast": {
- "name": "GLM 5.2 Fast",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048575,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.1,
- "output": 6.6,
- "cacheRead": 0.21,
- "cacheWrite": 0
- }
- },
- "accounts/fireworks/routers/kimi-k3-fast": {
- "name": "Kimi K3 Fast",
- "channel": "Fireworks",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4.5,
- "output": 22.5,
- "cacheRead": 0.45,
- "cacheWrite": 0
- }
- }
- }
- },
- "github-copilot": {
- "name": "GitHub Copilot",
- "description": "GitHub Copilot models",
- "base_url": "https://api.individual.githubcopilot.com",
- "wire_api": "openai_chat_completions",
- "models": {
- "claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-fable-5.1": {
- "name": "Claude Fable 5.1",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-haiku-4.5": {
- "name": "Claude Haiku 4.5 (latest)",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.7": {
- "name": "Claude Opus 4.7",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4.8": {
- "name": "Claude Opus 4.8",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4.6": {
- "name": "Claude Sonnet 4.6",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- },
- "wire_api": "anthropic_messages"
- },
- "gemini-3.5-flash": {
- "name": "Gemini 3.5 Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "gemini-3.6-flash": {
- "name": "Gemini 3.6 Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-3.7-flash": {
- "name": "Gemini 3.7 Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-3.8-flash": {
- "name": "Gemini 3.8 Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5-mini": {
- "name": "GPT-5 Mini",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 264000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.025,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.3-codex": {
- "name": "GPT-5.3 Codex",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.4": {
- "name": "GPT-5.4",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.4-mini": {
- "name": "GPT-5.4 mini",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.4-nano": {
- "name": "GPT-5.4 nano",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.5": {
- "name": "GPT-5.5",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.6-sol": {
- "name": "GPT-5.6 Sol",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 20,
- "cacheRead": 0.4,
- "cacheWrite": 5
- },
- "wire_api": "openai_responses"
- },
- "gpt-5.6-terra": {
- "name": "GPT-5.6 Terra",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- },
- "wire_api": "openai_responses"
- },
- "gpt-6-astra": {
- "name": "GPT-6 Astra",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max",
- "off": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- },
- "wire_api": "openai_responses"
- },
- "grok-4.5": {
- "name": "Grok 4.5",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "grok-4.6": {
- "name": "Grok 4.6",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "mai-code-1-flash-picker": {
- "name": "MAI-Code-1-Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "mai-code-1.1-flash": {
- "name": "MAI-Code-1.1-Flash",
- "channel": "GitHub Copilot",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- }
- }
- },
- "google": {
- "name": "Google",
- "description": "Google AI Studio / Gemini",
- "base_url": "https://generativelanguage.googleapis.com/v1beta",
- "wire_api": "google_generative_ai",
- "models": {
- "gemini-2.5-flash": {
- "name": "Gemini 2.5 Flash",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "gemini-2.5-flash-lite": {
- "name": "Gemini 2.5 Flash-Lite",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.4,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "gemini-2.5-pro": {
- "name": "Gemini 2.5 Pro",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gemini-3-flash-preview": {
- "name": "Gemini 3 Flash Preview",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.05,
- "cacheWrite": 0
- }
- },
- "gemini-3.1-flash-lite": {
- "name": "Gemini 3.1 Flash Lite",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.5,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gemini-3.1-flash-lite-preview": {
- "name": "Gemini 3.1 Flash Lite Preview",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.5,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gemini-3.1-pro-preview": {
- "name": "Gemini 3.1 Pro Preview",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "LOW",
- "medium": null,
- "high": "HIGH"
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "gemini-3.1-pro-preview-customtools": {
- "name": "Gemini 3.1 Pro Preview Custom Tools",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "LOW",
- "medium": null,
- "high": "HIGH"
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "gemini-3.5-flash": {
- "name": "Gemini 3.5 Flash",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "gemini-3.5-flash-lite": {
- "name": "Gemini 3.5 Flash Lite",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "gemini-3.6-flash": {
- "name": "Gemini 3.6 Flash",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-3.7-flash": {
- "name": "Gemini 3.7 Flash",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-3.8-flash": {
- "name": "Gemini 3.8 Flash",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-flash-latest": {
- "name": "Gemini Flash Latest",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gemini-flash-lite-latest": {
- "name": "Gemini Flash-Lite Latest",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "gemma-4-26b-a4b-it": {
- "name": "Gemma 4 26B A4B IT",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "MINIMAL",
- "low": null,
- "medium": null,
- "high": "HIGH"
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gemma-4-31b-it": {
- "name": "Gemma 4 31B IT",
- "channel": "Google",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "MINIMAL",
- "low": null,
- "medium": null,
- "high": "HIGH"
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "groq": {
- "name": "Groq",
- "description": "Groq models",
- "base_url": "https://api.groq.com/openai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "llama-3.1-8b-instant": {
- "name": "Llama 3.1 8B",
- "channel": "Groq",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.08,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "llama-3.3-70b-versatile": {
- "name": "Llama 3.3 70B",
- "channel": "Groq",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.59,
- "output": 0.79,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Groq",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-20b": {
- "name": "GPT OSS 20B",
- "channel": "Groq",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.3,
- "cacheRead": 0.0375,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-safeguard-20b": {
- "name": "Safety GPT OSS 20B",
- "channel": "Groq",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.6-27b": {
- "name": "Qwen3.6 27B",
- "channel": "Groq",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.8-27b": {
- "name": "Qwen3.8 27B",
- "channel": "Groq",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131042,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.8,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "huggingface": {
- "name": "Hugging Face",
- "description": "Hugging Face Inference",
- "base_url": "https://router.huggingface.co/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "MiniMaxAI/MiniMax-M2": {
- "name": "MiniMax-M2",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "MiniMaxAI/MiniMax-M2.1": {
- "name": "MiniMax-M2.1",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "MiniMaxAI/MiniMax-M2.5": {
- "name": "MiniMax-M2.5",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "MiniMaxAI/MiniMax-M2.7": {
- "name": "MiniMax-M2.7",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "MiniMaxAI/MiniMax-M3": {
- "name": "MiniMax-M3",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 524288,
- "max_tokens": 512000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen2.5-Coder-32B-Instruct": {
- "name": "Qwen2.5-Coder-32B-Instruct",
- "channel": "Hugging Face",
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-235B-A22B": {
- "name": "Qwen3 235B-A22B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 40960,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 0.8,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-235B-A22B-Instruct-2507": {
- "name": "Qwen3 235B-A22B Instruct 2507",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.855,
- "output": 2.565,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-235B-A22B-Thinking-2507": {
- "name": "Qwen3-235B-A22B-Thinking-2507",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-30B-A3B": {
- "name": "Qwen3 30B A3B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 40960,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-32B": {
- "name": "Qwen3 32B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.29,
- "output": 0.59,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
- "name": "Qwen3-Coder 30B-A3B Instruct",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.26,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
- "name": "Qwen3-Coder-480B-A35B-Instruct",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 66536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-Coder-Next": {
- "name": "Qwen3-Coder-Next",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-Next-80B-A3B-Instruct": {
- "name": "Qwen3-Next-80B-A3B-Instruct",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 66536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-Next-80B-A3B-Thinking": {
- "name": "Qwen3-Next-80B-A3B-Thinking",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-VL-235B-A22B-Instruct": {
- "name": "Qwen3 VL 235B A22B Instruct",
- "channel": "Hugging Face",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3-VL-235B-A22B-Thinking": {
- "name": "Qwen3 VL 235B A22B Thinking",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.98,
- "output": 3.95,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.5-122B-A10B": {
- "name": "Qwen3.5 122B-A10B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 3.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.5-27B": {
- "name": "Qwen3.5 27B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.5-35B-A3B": {
- "name": "Qwen3.5 35B-A3B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.5-397B-A17B": {
- "name": "Qwen3.5-397B-A17B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.5-9B": {
- "name": "Qwen3.5 9B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.17,
- "output": 0.25,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.6-27B": {
- "name": "Qwen3.6 27B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.47,
- "output": 3.19,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.6-35B-A3B": {
- "name": "Qwen3.6 35B-A3B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.95,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.8-2.4T-A95B": {
- "name": "Qwen3.8 2.4T A95B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 6.25,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "Qwen/Qwen3.8-27B": {
- "name": "Qwen3.8 27B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "XiaomiMiMo/MiMo-V2-Flash": {
- "name": "MiMo-V2-Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "XiaomiMiMo/MiMo-V2.5": {
- "name": "MiMo-V2.5",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "XiaomiMiMo/MiMo-V2.5-Pro": {
- "name": "MiMo-V2.5-Pro",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-R1": {
- "name": "DeepSeek-R1",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 64000,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-R1-0528": {
- "name": "DeepSeek-R1-0528",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 163840,
- "max_tokens": 163840,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V3": {
- "name": "DeepSeek-V3",
- "channel": "Hugging Face",
- "context_window": 64000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V3-0324": {
- "name": "DeepSeek V3 0324",
- "channel": "Hugging Face",
- "context_window": 163840,
- "max_tokens": 163840,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1.12,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V3.1": {
- "name": "DeepSeek-V3.1",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V3.2": {
- "name": "DeepSeek-V3.2",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 163840,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.28,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V4-Flash": {
- "name": "DeepSeek V4 Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V4-Flash-0731": {
- "name": "DeepSeek V4 Flash 0731",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V4-Flash-Vision-Exp": {
- "name": "DeepSeek V4 Flash Vision Exp",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44,
- "output": 1.32,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V4-Pro": {
- "name": "DeepSeek V4 Pro",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 393216,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.003625,
- "cacheWrite": 0
- }
- },
- "deepseek-ai/DeepSeek-V4-Pro-0813": {
- "name": "DeepSeek V4 Pro 0813",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.32,
- "output": 3.96,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-26B-A4B-it": {
- "name": "Gemma 4 26B A4B IT",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.13,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-31B-it": {
- "name": "Gemma 4 31B IT",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/Llama-3.1-8B-Instruct": {
- "name": "Llama-3.1-8B-Instruct",
- "channel": "Hugging Face",
- "context_window": 131072,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.06,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/Llama-3.3-70B-Instruct": {
- "name": "Llama-3.3-70B-Instruct",
- "channel": "Hugging Face",
- "context_window": 131072,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.59,
- "output": 0.79,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2-Instruct": {
- "name": "Kimi-K2-Instruct",
- "channel": "Hugging Face",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2-Instruct-0905": {
- "name": "Kimi-K2-Instruct-0905",
- "channel": "Hugging Face",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2-Thinking": {
- "name": "Kimi-K2-Thinking",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2.5": {
- "name": "Kimi-K2.5",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.1,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2.6": {
- "name": "Kimi-K2.6",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K2.7-Code": {
- "name": "Kimi K2.7 Code",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/Kimi-K3": {
- "name": "Kimi K3",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.69,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-20b": {
- "name": "GPT OSS 20B",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "stepfun-ai/Step-3.5-Flash": {
- "name": "Step 3.5 Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "stepfun-ai/Step-3.7-Flash": {
- "name": "Step 3.7 Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "tencent/Hy3": {
- "name": "Hy3",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.58,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/Inkling": {
- "name": "Inkling",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 4.05,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/Inkling-Small": {
- "name": "Inkling Small",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 524288,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.5": {
- "name": "GLM-4.5",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.5-Air": {
- "name": "GLM-4.5-Air",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.13,
- "output": 0.85,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.5V": {
- "name": "GLM-4.5V",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 65536,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 1.8,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.6": {
- "name": "GLM-4.6",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.55,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.6V-Flash": {
- "name": "GLM-4.6V-Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 0.9,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.7": {
- "name": "GLM-4.7",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-4.7-Flash": {
- "name": "GLM-4.7-Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-5": {
- "name": "GLM-5",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202752,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3.2,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-5.1": {
- "name": "GLM-5.1",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202752,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3.2,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-5.2": {
- "name": "GLM-5.2",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-5.3": {
- "name": "GLM-5.3",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai-org/GLM-5.3-Flash": {
- "name": "GLM-5.3-Flash",
- "channel": "Hugging Face",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "kimi": {
- "name": "Kimi",
- "description": "Moonshot AI models",
- "base_url": "https://api.moonshot.ai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "Kimi",
- "reasoning_capability": {
- "levels": [
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 100
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Kimi",
- "reasoning_capability": {
- "levels": [
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 98
- },
- "kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Kimi",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "medium",
- "context_window": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 96
- }
- }
- },
- "kimi-coding": {
- "name": "Kimi Coding",
- "description": "Kimi coding models",
- "base_url": "https://api.kimi.com/coding",
- "wire_api": "anthropic_messages",
- "models": {
- "k3": {
- "name": "Kimi K3",
- "channel": "Kimi Coding",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "k3-256k": {
- "name": "Kimi K3-256K",
- "channel": "Kimi Coding",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "kimi-for-coding": {
- "name": "Kimi K2.7 Code",
- "channel": "Kimi Coding",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "kimi-for-coding-highspeed": {
- "name": "Kimi For Coding HighSpeed",
- "channel": "Kimi Coding",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "minimax": {
- "name": "MiniMax",
- "description": "MiniMax models",
- "base_url": "https://api.minimax.io/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "MiniMax-M2.7": {
- "name": "MiniMax-M2.7",
- "channel": "MiniMax",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- },
- "MiniMax-M2.7-highspeed": {
- "name": "MiniMax-M2.7-highspeed",
- "channel": "MiniMax",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- }
- }
- },
- "minimax-cn": {
- "name": "MiniMax (CN)",
- "description": "MiniMax China endpoint",
- "base_url": "https://api.minimaxi.com/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "MiniMax-M2.7": {
- "name": "MiniMax-M2.7",
- "channel": "MiniMax (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- },
- "MiniMax-M2.7-highspeed": {
- "name": "MiniMax-M2.7-highspeed",
- "channel": "MiniMax (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- }
- }
- },
- "moonshotai": {
- "name": "Moonshot AI",
- "description": "Moonshot / Kimi API",
- "base_url": "https://api.moonshot.ai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "kimi-k2-0711-preview": {
- "name": "Kimi K2 0711",
- "channel": "Moonshot AI",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-0905-preview": {
- "name": "Kimi K2 0905",
- "channel": "Moonshot AI",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-thinking": {
- "name": "Kimi K2 Thinking",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-thinking-turbo": {
- "name": "Kimi K2 Thinking Turbo",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.15,
- "output": 8,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-turbo-preview": {
- "name": "Kimi K2 Turbo",
- "channel": "Moonshot AI",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.4,
- "output": 10,
- "cacheRead": 0.6,
- "cacheWrite": 0
- }
- },
- "kimi-k2.5": {
- "name": "Kimi K2.5",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.1,
- "cacheWrite": 0
- }
- },
- "kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code-highspeed": {
- "name": "Kimi K2.7 Code HighSpeed",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.9,
- "output": 8,
- "cacheRead": 0.38,
- "cacheWrite": 0
- }
- },
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "Moonshot AI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- }
- }
- },
- "moonshotai-cn": {
- "name": "Moonshot AI (CN)",
- "description": "Moonshot China endpoint",
- "base_url": "https://api.moonshot.cn/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "kimi-k2-0711-preview": {
- "name": "Kimi K2 0711",
- "channel": "Moonshot AI (CN)",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-0905-preview": {
- "name": "Kimi K2 0905",
- "channel": "Moonshot AI (CN)",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-thinking": {
- "name": "Kimi K2 Thinking",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-thinking-turbo": {
- "name": "Kimi K2 Thinking Turbo",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.15,
- "output": 8,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "kimi-k2-turbo-preview": {
- "name": "Kimi K2 Turbo",
- "channel": "Moonshot AI (CN)",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.4,
- "output": 10,
- "cacheRead": 0.6,
- "cacheWrite": 0
- }
- },
- "kimi-k2.5": {
- "name": "Kimi K2.5",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.1,
- "cacheWrite": 0
- }
- },
- "kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code-highspeed": {
- "name": "Kimi K2.7 Code HighSpeed",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.9,
- "output": 8,
- "cacheRead": 0.38,
- "cacheWrite": 0
- }
- },
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "Moonshot AI (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- }
- }
- },
- "ollama": {
- "name": "Ollama (Local)",
- "description": "Run models locally",
- "base_url": "http://localhost:11434/v1",
- "wire_api": "openai_chat_completions",
- "models": {}
- },
- "openai": {
- "name": "OpenAI",
- "description": "OpenAI API models",
- "base_url": "https://api.openai.com/v1",
- "wire_api": "openai_responses",
- "models": {
- "gpt-4": {
- "name": "GPT-4",
- "channel": "OpenAI",
- "context_window": 8192,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 60,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-4-turbo": {
- "name": "GPT-4 Turbo",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-4.1": {
- "name": "GPT-4.1",
- "channel": "OpenAI",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "gpt-4.1-mini": {
- "name": "GPT-4.1 mini",
- "channel": "OpenAI",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.6,
- "cacheRead": 0.1,
- "cacheWrite": 0
- }
- },
- "gpt-4.1-nano": {
- "name": "GPT-4.1 nano",
- "channel": "OpenAI",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.4,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-4o": {
- "name": "GPT-4o",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "gpt-4o-2024-05-13": {
- "name": "GPT-4o (2024-05-13)",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-4o-2024-08-06": {
- "name": "GPT-4o (2024-08-06)",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "gpt-4o-2024-11-20": {
- "name": "GPT-4o (2024-11-20)",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "gpt-4o-mini": {
- "name": "GPT-4o mini",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5": {
- "name": "GPT-5",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5-chat-latest": {
- "name": "GPT-5 Chat Latest",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5-mini": {
- "name": "GPT-5 Mini",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-5-nano": {
- "name": "GPT-5 Nano",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.4,
- "cacheRead": 0.005,
- "cacheWrite": 0
- }
- },
- "gpt-5-pro": {
- "name": "GPT-5 Pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 272000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 120,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.1": {
- "name": "GPT-5.1",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex": {
- "name": "GPT-5.1 Codex",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 5,
- "cacheRead": 0.125,
- "cacheWrite": 1.25
- }
- },
- "gpt-5.1-codex-max": {
- "name": "GPT-5.1 Codex Max",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.2": {
- "name": "GPT-5.2",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.2-chat-latest": {
- "name": "GPT-5.2 Chat",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.2-pro": {
- "name": "GPT-5.2 Pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 21,
- "output": 168,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-chat-latest": {
- "name": "GPT-5.3 Chat (latest)",
- "channel": "OpenAI",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-codex": {
- "name": "GPT-5.3 Codex",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-codex-spark": {
- "name": "GPT-5.3 Codex Spark",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 128000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.4": {
- "name": "GPT-5.4",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-mini": {
- "name": "GPT-5.4 mini",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-nano": {
- "name": "GPT-5.4 nano",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-pro": {
- "name": "GPT-5.4 Pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.5": {
- "name": "GPT-5.5",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "gpt-5.5-pro": {
- "name": "GPT-5.5 Pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.6": {
- "name": "GPT-5.6",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 20,
- "cacheRead": 0.4,
- "cacheWrite": 5
- }
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "gpt-5.6-sol": {
- "name": "GPT-5.6 Sol",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 20,
- "cacheRead": 0.4,
- "cacheWrite": 5
- }
- },
- "gpt-5.6-terra": {
- "name": "GPT-5.6 Terra",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": "none",
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- }
- },
- "gpt-6-astra": {
- "name": "GPT-6 Astra",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max",
- "off": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "gpt-realtime-2.1": {
- "name": "GPT-Realtime-2.1",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 24,
- "cacheRead": 0.4,
- "cacheWrite": 0
- }
- },
- "o1": {
- "name": "o1",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 60,
- "cacheRead": 7.5,
- "cacheWrite": 0
- }
- },
- "o1-pro": {
- "name": "o1-pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 150,
- "output": 600,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "o3": {
- "name": "o3",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "o3-mini": {
- "name": "o3-mini",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "o3-pro": {
- "name": "o3-pro",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 20,
- "output": 80,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "o4-mini": {
- "name": "o4-mini",
- "channel": "OpenAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.275,
- "cacheWrite": 0
- }
- }
- }
- },
- "openai-codex": {
- "name": "ChatGPT",
- "description": "ChatGPT Plus/Pro via Codex",
- "base_url": "https://chatgpt.com/backend-api/codex",
- "wire_api": "openai_responses",
- "models": {
- "gpt-5.1": {
- "name": "GPT-5.1",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex-max": {
- "name": "GPT-5.1 Codex Max",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex-mini": {
- "name": "GPT-5.1 Codex Mini",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "medium",
- "low": "medium",
- "medium": "medium",
- "high": "high"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-5.2": {
- "name": "GPT-5.2",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.2-codex": {
- "name": "GPT-5.2 Codex",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-codex": {
- "name": "GPT-5.3 Codex",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-codex-spark": {
- "name": "GPT-5.3 Codex Spark",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "gpt-5.4": {
- "name": "GPT-5.4",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-mini": {
- "name": "GPT-5.4 Mini",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5.5": {
- "name": "GPT-5.5",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": "low"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 6,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- }
- },
- "gpt-5.6-sol": {
- "name": "GPT-5.6 Sol",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "gpt-5.6-terra": {
- "name": "GPT-5.6 Terra",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 3.125
- }
- },
- "gpt-6-astra": {
- "name": "GPT-6 Astra",
- "channel": "ChatGPT",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max",
- "off": null
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- }
- },
- "headers": {
- "OpenAI-Beta": "responses=experimental",
- "originator": "pi",
- "User-Agent": "pi (linux x64)"
- }
- },
- "opencode": {
- "name": "OpenCode",
- "description": "OpenCode catalog models",
- "base_url": "https://opencode.ai/zen/v1",
- "wire_api": "openai_responses",
- "models": {
- "big-pickle": {
- "name": "Big Pickle",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-fable-5-1": {
- "name": "Claude Fable 5.1",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- },
- "wire_api": "anthropic_messages"
- },
- "claude-haiku-4-5": {
- "name": "Claude Haiku 4.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4-5": {
- "name": "Claude Opus 4.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4-6": {
- "name": "Claude Opus 4.6",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4-7": {
- "name": "Claude Opus 4.7",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-4-8": {
- "name": "Claude Opus 4.8",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4": {
- "name": "Claude Sonnet 4",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4-5": {
- "name": "Claude Sonnet 4.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-4-6": {
- "name": "Claude Sonnet 4.6",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- },
- "wire_api": "anthropic_messages"
- },
- "claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- },
- "wire_api": "anthropic_messages"
- },
- "deepseek-v4-flash": {
- "name": "DeepSeek V4 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.028,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "deepseek-v4-flash-vision-exp": {
- "name": "DeepSeek V4 Flash Vision Exp",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.028,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "deepseek-v4-pro": {
- "name": "DeepSeek V4 Pro",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.74,
- "output": 3.84,
- "cacheRead": 0.145,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "gemini-3-flash": {
- "name": "Gemini 3 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.05,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.1-pro": {
- "name": "Gemini 3.1 Pro Preview",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "LOW",
- "medium": null,
- "high": "HIGH"
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.2,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.5-flash": {
- "name": "Gemini 3.5 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.5-flash-lite": {
- "name": "Gemini 3.5 Flash Lite",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.6-flash": {
- "name": "Gemini 3.6 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.7-flash": {
- "name": "Gemini 3.7 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "gemini-3.8-flash": {
- "name": "Gemini 3.8 Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- },
- "wire_api": "google_generative_ai"
- },
- "glm-5": {
- "name": "GLM-5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3.2,
- "cacheRead": 0.2,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "glm-5.1": {
- "name": "GLM-5.1",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "glm-5.2": {
- "name": "GLM-5.2",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "glm-5.3": {
- "name": "GLM-5.3",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "glm-5.3-flash": {
- "name": "GLM-5.3-Flash",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "gpt-5": {
- "name": "GPT-5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.07,
- "output": 8.5,
- "cacheRead": 0.107,
- "cacheWrite": 0
- }
- },
- "gpt-5-codex": {
- "name": "GPT-5 Codex",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.07,
- "output": 8.5,
- "cacheRead": 0.107,
- "cacheWrite": 0
- }
- },
- "gpt-5-nano": {
- "name": "GPT-5 Nano",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.4,
- "cacheRead": 0.005,
- "cacheWrite": 0
- }
- },
- "gpt-5.1": {
- "name": "GPT-5.1",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.07,
- "output": 8.5,
- "cacheRead": 0.107,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex": {
- "name": "GPT-5.1 Codex",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.07,
- "output": 8.5,
- "cacheRead": 0.107,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex-max": {
- "name": "GPT-5.1 Codex Max",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "gpt-5.1-codex-mini": {
- "name": "GPT-5.1 Codex Mini",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.025,
- "cacheWrite": 0
- }
- },
- "gpt-5.2": {
- "name": "GPT-5.2",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.2-codex": {
- "name": "GPT-5.2 Codex",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.3-codex": {
- "name": "GPT-5.3 Codex",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "gpt-5.4": {
- "name": "GPT-5.4",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 272000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-mini": {
- "name": "GPT-5.4 Mini",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-nano": {
- "name": "GPT-5.4 Nano",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "gpt-5.4-pro": {
- "name": "GPT-5.4 Pro",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 30,
- "cacheWrite": 0
- }
- },
- "gpt-5.5": {
- "name": "GPT-5.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "gpt-5.5-pro": {
- "name": "GPT-5.5 Pro",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 30,
- "cacheWrite": 0
- }
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "gpt-5.6-sol": {
- "name": "GPT-5.6 Sol (50% Off)",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- }
- },
- "gpt-5.6-terra": {
- "name": "GPT-5.6 Terra",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 3.125
- }
- },
- "gpt-6-astra": {
- "name": "GPT-6 Astra",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max",
- "off": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "grok-4.5": {
- "name": "Grok 4.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "grok-4.6": {
- "name": "Grok 4.6",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "grok-build-0.1": {
- "name": "Grok Build 0.1",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 2,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "kimi-k2.5": {
- "name": "Kimi K2.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.08,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "ling-3.0-flash-fin-free": {
- "name": "Ling 3.0 Flash Fin Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "mimo-v2.5-free": {
- "name": "MiMo V2.5 Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "minimax-m2.5": {
- "name": "MiniMax-M2.5",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "minimax-m2.7": {
- "name": "MiniMax-M2.7",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "minimax-m3": {
- "name": "MiniMax-M3",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 512000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "muse-spark-1.2": {
- "name": "Muse Spark 1.2",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "muse-spark-1.2-contributor-free": {
- "name": "Muse Spark 1.2 Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "muse-spark-1.3": {
- "name": "Muse Spark 1.3",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "muse-spark-1.3-contributor-free": {
- "name": "Muse Spark 1.3 Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nemotron-3-ultra-free": {
- "name": "Nemotron 3 Ultra Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "nemotron-3.5-lightning-free": {
- "name": "Nemotron 3.5 Lightning Free",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- },
- "wire_api": "openai_chat_completions"
- },
- "qwen3.5-plus": {
- "name": "Qwen3.5 Plus",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- },
- "wire_api": "anthropic_messages"
- },
- "qwen3.6-plus": {
- "name": "Qwen3.6 Plus",
- "channel": "OpenCode",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.05,
- "cacheWrite": 0.625
- },
- "wire_api": "anthropic_messages"
- }
- }
- },
- "opencode-go": {
- "name": "OpenCode Go",
- "description": "OpenCode Go models",
- "base_url": "https://opencode.ai/zen/go/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "deepseek-v4-flash": {
- "name": "DeepSeek V4 Flash",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.66,
- "cacheRead": 0.007,
- "cacheWrite": 0
- }
- },
- "deepseek-v4-flash-vision-exp": {
- "name": "DeepSeek V4 Flash Vision Exp",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.66,
- "cacheRead": 0.007,
- "cacheWrite": 0
- }
- },
- "deepseek-v4-pro": {
- "name": "DeepSeek V4 Pro (New)",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.66,
- "output": 1.98,
- "cacheRead": 0.022,
- "cacheWrite": 0
- }
- },
- "glm-5.1": {
- "name": "GLM-5.1",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202752,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "glm-5.2": {
- "name": "GLM-5.2",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "glm-5.3": {
- "name": "GLM-5.3",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "glm-5.3-flash": {
- "name": "GLM-5.3-Flash (2x usage)",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.25,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "gpt-5.6-luna": {
- "name": "GPT-5.6 Luna",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- },
- "wire_api": "openai_responses"
- },
- "grok-4.6": {
- "name": "Grok 4.6",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "hy3": {
- "name": "Hy3",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.58,
- "cacheRead": 0.035,
- "cacheWrite": 0
- }
- },
- "hy4-preview": {
- "name": "Hy4 preview",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1024000,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.834,
- "output": 2.501,
- "cacheRead": 0.042,
- "cacheWrite": 0
- }
- },
- "kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.19,
- "cacheWrite": 0
- }
- },
- "kimi-k3": {
- "name": "Kimi K3",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "longcat-2.0": {
- "name": "LongCat-2.0",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.006,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5": {
- "name": "MiMo V2.5",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro": {
- "name": "MiMo V2.5 Pro",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.003625,
- "cacheWrite": 0
- }
- },
- "minimax-m2.7": {
- "name": "MiniMax-M2.7",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "minimax-m3": {
- "name": "MiniMax-M3",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- },
- "wire_api": "anthropic_messages"
- },
- "muse-spark-1.2-contributor": {
- "name": "Muse Spark 1.2 Contributor",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.2,
- "cacheRead": 0.002,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "muse-spark-1.3-contributor": {
- "name": "Muse Spark 1.3 Contributor",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.2,
- "cacheRead": 0.002,
- "cacheWrite": 0
- },
- "wire_api": "openai_responses"
- },
- "omen-alpha": {
- "name": "Omen Alpha",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 0.66,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "qwen3.6-plus": {
- "name": "Qwen3.6 Plus",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.05,
- "cacheWrite": 0.625
- }
- },
- "qwen3.7-max": {
- "name": "Qwen3.7 Max",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 7.5,
- "cacheRead": 0.5,
- "cacheWrite": 3.125
- }
- },
- "qwen3.7-plus": {
- "name": "Qwen3.7 Plus",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.6,
- "cacheRead": 0.04,
- "cacheWrite": 0.5
- }
- },
- "qwen3.8-flash": {
- "name": "Qwen3.8 Flash",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.47,
- "cacheRead": 0.016,
- "cacheWrite": 0.2
- }
- },
- "qwen3.8-max": {
- "name": "Qwen3.8 Max",
- "channel": "OpenCode Go",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 2.5
- }
- }
- }
- },
- "openrouter": {
- "name": "OpenRouter",
- "description": "OpenRouter model gateway",
- "base_url": "https://openrouter.ai/api/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "aion-labs/aion-2.0": {
- "name": "AionLabs: Aion-2.0",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7999999999999999,
- "output": 1.5999999999999999,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "aion-labs/aion-3.0": {
- "name": "AionLabs: Aion-3.0",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 6,
- "cacheRead": 0.75,
- "cacheWrite": 0
- }
- },
- "aion-labs/aion-3.0-mini": {
- "name": "AionLabs: Aion-3.0-Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 1.4,
- "cacheRead": 0.18,
- "cacheWrite": 0
- }
- },
- "amazon/nova-2-lite-v1": {
- "name": "Amazon: Nova 2 Lite",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "amazon/nova-lite-v1": {
- "name": "Amazon: Nova Lite 1.0",
- "channel": "OpenRouter",
- "context_window": 300000,
- "max_tokens": 5120,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "amazon/nova-micro-v1": {
- "name": "Amazon: Nova Micro 1.0",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 5120,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.035,
- "output": 0.14,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "amazon/nova-premier-v1": {
- "name": "Amazon: Nova Premier 1.0",
- "channel": "OpenRouter",
- "context_window": 1000000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 12.5,
- "cacheRead": 0.625,
- "cacheWrite": 0
- }
- },
- "amazon/nova-pro-v1": {
- "name": "Amazon: Nova Pro 1.0",
- "channel": "OpenRouter",
- "context_window": 300000,
- "max_tokens": 5120,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7999999999999999,
- "output": 3.1999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "anthropic/claude-3-haiku": {
- "name": "Anthropic: Claude 3 Haiku",
- "channel": "OpenRouter",
- "context_window": 200000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.25,
- "cacheRead": 0.03,
- "cacheWrite": 0.3
- }
- },
- "anthropic/claude-fable-5": {
- "name": "Anthropic: Claude Fable 5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-fable-5.1": {
- "name": "Anthropic: Claude Fable 5.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-haiku-4.5": {
- "name": "Anthropic: Claude Haiku 4.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 1.25
- }
- },
- "anthropic/claude-opus-4": {
- "name": "Anthropic: Claude Opus 4",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 75,
- "cacheRead": 1.5,
- "cacheWrite": 18.75
- }
- },
- "anthropic/claude-opus-4.1": {
- "name": "Anthropic: Claude Opus 4.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 75,
- "cacheRead": 1.5,
- "cacheWrite": 18.75
- }
- },
- "anthropic/claude-opus-4.5": {
- "name": "Anthropic: Claude Opus 4.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.6": {
- "name": "Anthropic: Claude Opus 4.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.7": {
- "name": "Anthropic: Claude Opus 4.7",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.8": {
- "name": "Anthropic: Claude Opus 4.8",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-sonnet-4": {
- "name": "Anthropic: Claude Sonnet 4",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.5": {
- "name": "Anthropic: Claude Sonnet 4.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.6": {
- "name": "Anthropic: Claude Sonnet 4.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-5": {
- "name": "Anthropic: Claude Sonnet 5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "arcee-ai/trinity-large-thinking": {
- "name": "Arcee AI: Trinity Large Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 80000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.7999999999999999,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "auto": {
- "name": "Auto",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-1.6": {
- "name": "ByteDance Seed: Seed 1.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-1.6-flash": {
- "name": "ByteDance Seed: Seed 1.6 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-2-1-turbo": {
- "name": "ByteDance Seed: Seed 2.1 Turbo",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-2.0-code": {
- "name": "ByteDance Seed: Seed-2.0-Code",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-2.0-lite": {
- "name": "ByteDance Seed: Seed-2.0-Lite",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance-seed/seed-2.0-mini": {
- "name": "ByteDance Seed: Seed-2.0-Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "cohere/command-r-08-2024": {
- "name": "Cohere: Command R (08-2024)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "cohere/command-r-plus-08-2024": {
- "name": "Cohere: Command R+ (08-2024)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "cohere/north-mini-code:free": {
- "name": "Cohere: North Mini Code (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 256000,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-chat": {
- "name": "DeepSeek: DeepSeek V3",
- "channel": "OpenRouter",
- "context_window": 163840,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.32,
- "output": 0.8899999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-chat-v3-0324": {
- "name": "DeepSeek: DeepSeek V3 0324",
- "channel": "OpenRouter",
- "context_window": 163840,
- "max_tokens": 147456,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-chat-v3.1": {
- "name": "DeepSeek: DeepSeek V3.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 144900,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.55,
- "output": 1.6500000000000001,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-r1": {
- "name": "DeepSeek: R1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 64000,
- "max_tokens": 16000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-r1-0528": {
- "name": "DeepSeek: R1 0528",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 2.1500000000000004,
- "cacheRead": 0.35,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.1-terminus": {
- "name": "DeepSeek: DeepSeek V3.1 Terminus",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1,
- "cacheRead": 0.135,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2": {
- "name": "DeepSeek: DeepSeek V3.2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.26899999999999996,
- "output": 0.39999999999999997,
- "cacheRead": 0.13449999999999998,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2-exp": {
- "name": "DeepSeek: DeepSeek V3.2 Exp",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 0.41,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash": {
- "name": "DeepSeek: DeepSeek V4 Flash 0423",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.08106,
- "output": 0.16212,
- "cacheRead": 0.016212,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash-0731": {
- "name": "DeepSeek: DeepSeek V4 Flash 0731",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1310720,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049980000000000004,
- "output": 0.09996000000000001,
- "cacheRead": 0.009996000000000001,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash-vision-exp": {
- "name": "DeepSeek: DeepSeek V4 Flash Vision Exp",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44,
- "output": 1.32,
- "cacheRead": 0.014,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-pro": {
- "name": "DeepSeek: DeepSeek V4 Pro 0423",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7078319999999999,
- "output": 1.4156639999999998,
- "cacheRead": 0.058986000000000004,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-pro-0813": {
- "name": "DeepSeek: DeepSeek V4 Pro 0813",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.12068,
- "output": 3.36204,
- "cacheRead": 0.037356,
- "cacheWrite": 0
- }
- },
- "dots-studio/dots-3-note-preview:free": {
- "name": "Dots Studio: Dots3-Note Preview (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 512000,
- "max_tokens": 460800,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-flash": {
- "name": "Google: Gemini 2.5 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-2.5-flash-lite": {
- "name": "Google: Gemini 2.5 Flash Lite",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0.01,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-2.5-pro": {
- "name": "Google: Gemini 2.5 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-2.5-pro-preview": {
- "name": "Google: Gemini 2.5 Pro Preview 06-05",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-2.5-pro-preview-05-06": {
- "name": "Google: Gemini 2.5 Pro Preview 05-06",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-3-flash-preview": {
- "name": "Google: Gemini 3 Flash Preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-3-pro-image": {
- "name": "Google: Nano Banana Pro (Gemini 3 Pro Image)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-3.1-flash-lite": {
- "name": "Google: Gemini 3.1 Flash Lite",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.5,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-3.1-flash-lite-preview": {
- "name": "Google: Gemini 3.1 Flash Lite Preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.5,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-3.1-pro-preview": {
- "name": "Google: Gemini 3.1 Pro Preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-3.1-pro-preview-customtools": {
- "name": "Google: Gemini 3.1 Pro Preview Custom Tools",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0.375
- }
- },
- "google/gemini-3.5-flash": {
- "name": "Google: Gemini 3.5 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-3.5-flash-lite": {
- "name": "Google: Gemini 3.5 Flash Lite",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0.0833333333333333
- }
- },
- "google/gemini-3.6-flash": {
- "name": "Google: Gemini 3.6 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0.0416666666666667
- }
- },
- "google/gemini-3.7-flash": {
- "name": "Google: Gemini 3.7 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0.0416666666666667
- }
- },
- "google/gemini-3.8-flash": {
- "name": "Google: Gemini 3.8 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0.0416666666666667
- }
- },
- "google/gemma-3-12b-it": {
- "name": "Google: Gemma 3 12B",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-3-27b-it": {
- "name": "Google: Gemma 3 27B",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.08,
- "output": 0.44999999999999996,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-26b-a4b-it": {
- "name": "Google: Gemma 4 26B A4B ",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.33999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-26b-a4b-it:free": {
- "name": "Google: Gemma 4 26B A4B (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-31b-it": {
- "name": "Google: Gemma 4 31B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09,
- "output": 0.33999999999999997,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-31b-it:free": {
- "name": "Google: Gemma 4 31B (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "ibm-granite/granite-4.2-8b": {
- "name": "IBM: Granite 4.2 8B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.15,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "inception/mercury-2": {
- "name": "Inception: Mercury 2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 128000,
- "max_tokens": 50000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.75,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "inception/mercury-2.5-preview": {
- "name": "Inception: Mercury 2.5 Preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 260000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.04,
- "output": 0.15,
- "cacheRead": 0.004,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash": {
- "name": "inclusionAI: Ling 3.0 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.020999999999999998,
- "output": 0.063,
- "cacheRead": 0.004200000000000001,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-fin": {
- "name": "inclusionAI: Ling 3.0 Flash Fin",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.18,
- "cacheRead": 0.012,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-fin:free": {
- "name": "inclusionAI: Ling 3.0 Flash Fin (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-sante:free": {
- "name": "inclusionAI: Ling 3.0 Flash Sante (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-pro-v2": {
- "name": "Kwaipilot: KAT-Coder-Pro V2",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 144000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-pro-v2.5": {
- "name": "Kwaipilot: KAT-Coder-Pro V2.5",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.74,
- "output": 2.96,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "liquid/lfm-2.5-2.6b:free": {
- "name": "LiquidAI: LFM2.5-2.6B (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 65536,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meituan/longcat-2.0": {
- "name": "Meituan: LongCat 2.0",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048756,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.006,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-3.1-70b-instruct": {
- "name": "Meta: Llama 3.1 70B Instruct",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-3.1-8b-instruct": {
- "name": "Meta: Llama 3.1 8B Instruct",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.08,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-3.3-70b-instruct": {
- "name": "Meta: Llama 3.3 70B Instruct",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.32,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-4-maverick": {
- "name": "Meta: Llama 4 Maverick",
- "channel": "OpenRouter",
- "context_window": 1048576,
- "max_tokens": 115200,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.696,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-4-scout": {
- "name": "Meta: Llama 4 Scout",
- "channel": "OpenRouter",
- "context_window": 1310720,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/muse-glimmer-30b": {
- "name": "Meta: Muse Glimmer 30B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.1,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.1": {
- "name": "Meta: Muse Spark 1.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.2": {
- "name": "Meta: Muse Spark 1.2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.2-contributor": {
- "name": "Meta: Muse Spark 1.2 Contributor",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0.002,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.3": {
- "name": "Meta: Muse Spark 1.3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.3-contributor": {
- "name": "Meta: Muse Spark 1.3 Contributor",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0.002,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m1": {
- "name": "MiniMax: MiniMax M1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 40000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.55,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2": {
- "name": "MiniMax: MiniMax M2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.255,
- "output": 1.02,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.1": {
- "name": "MiniMax: MiniMax M2.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.5": {
- "name": "MiniMax: MiniMax M2.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1.08,
- "cacheRead": 0.027,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.7": {
- "name": "MiniMax: MiniMax M2.7",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.7:free": {
- "name": "MiniMax: MiniMax M2.7 (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 196608,
- "max_tokens": 176947,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m3": {
- "name": "MiniMax: MiniMax M3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 512000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m3:free": {
- "name": "MiniMax: MiniMax M3 (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/codestral-2508": {
- "name": "Mistral: Codestral 2508",
- "channel": "OpenRouter",
- "context_window": 256000,
- "max_tokens": 204800,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 0.8999999999999999,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "mistralai/devstral-2512": {
- "name": "Mistral: Devstral 2 2512",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "mistralai/ministral-14b-2512": {
- "name": "Mistral: Ministral 3 14B 2512",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.19999999999999998,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "mistralai/ministral-3b-2512": {
- "name": "Mistral: Ministral 3 3B 2512",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 104857,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.09999999999999999,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "mistralai/ministral-8b-2512": {
- "name": "Mistral: Ministral 3 8B 2512",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.15,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-large": {
- "name": "Mistral Large",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 102400,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-large-2407": {
- "name": "Mistral Large 2407",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 104857,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-large-2512": {
- "name": "Mistral: Mistral Large 3 2512",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-medium-3": {
- "name": "Mistral: Mistral Medium 3",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 104857,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-medium-3-5": {
- "name": "Mistral: Mistral Medium 3.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-medium-3.1": {
- "name": "Mistral: Mistral Medium 3.1",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 104857,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-nemo": {
- "name": "Mistral: Mistral Nemo",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.019000000000000003,
- "output": 0.03,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-saba": {
- "name": "Mistral: Saba",
- "channel": "OpenRouter",
- "context_window": 32768,
- "max_tokens": 26214,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.6,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-small-2603": {
- "name": "Mistral: Mistral Small 4",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-small-3.2-24b-instruct": {
- "name": "Mistral: Mistral Small 3.2 24B",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.19999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mixtral-8x22b-instruct": {
- "name": "Mistral: Mixtral 8x22B Instruct",
- "channel": "OpenRouter",
- "context_window": 65536,
- "max_tokens": 52428,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "mistralai/voxtral-small-24b-2507": {
- "name": "Mistral: Voxtral Small 24B 2507",
- "channel": "OpenRouter",
- "context_window": 32768,
- "max_tokens": 26214,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.3,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2": {
- "name": "MoonshotAI: Kimi K2 0711",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 100352,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5700000000000001,
- "output": 2.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2-0905": {
- "name": "MoonshotAI: Kimi K2 0905",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 100352,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2-thinking": {
- "name": "MoonshotAI: Kimi K2 Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 100352,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.5": {
- "name": "MoonshotAI: Kimi K2.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.41,
- "output": 2.06,
- "cacheRead": 0.07,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.6": {
- "name": "MoonshotAI: Kimi K2.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.7-code": {
- "name": "MoonshotAI: Kimi K2.7 Code",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.66,
- "output": 3.4,
- "cacheRead": 0.18,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k3": {
- "name": "MoonshotAI: Kimi K3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "nex-agi/nex-n2-mini": {
- "name": "Nex AGI: Nex-N2-Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.024999999999999998,
- "output": 0.09999999999999999,
- "cacheRead": 0.0025,
- "cacheWrite": 0
- }
- },
- "nex-agi/nex-n2-pro": {
- "name": "Nex AGI: Nex-N2-Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-nano-30b-a3b": {
- "name": "NVIDIA: Nemotron 3 Nano 30B A3B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.19999999999999998,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free": {
- "name": "NVIDIA: Nemotron 3 Nano Omni (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 256000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-super-120b-a12b": {
- "name": "NVIDIA: Nemotron 3 Super",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium"
- ]
- },
- "default_reasoning_effort": "medium",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": null,
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.08499999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-super-120b-a12b:free": {
- "name": "NVIDIA: Nemotron 3 Super (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium"
- ]
- },
- "default_reasoning_effort": "medium",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": null,
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-ultra-550b-a55b": {
- "name": "NVIDIA: Nemotron 3 Ultra",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.625,
- "output": 3.125,
- "cacheRead": 0.1875,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-ultra-550b-a55b:free": {
- "name": "NVIDIA: Nemotron 3 Ultra (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3.5-lightning": {
- "name": "NVIDIA: Nemotron 3.5 Lightning",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.08,
- "output": 0.19999999999999998,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3.5-lightning:free": {
- "name": "NVIDIA: Nemotron 3.5 Lightning (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-3.5-turbo": {
- "name": "OpenAI: GPT-3.5 Turbo",
- "channel": "OpenRouter",
- "context_window": 16385,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-3.5-turbo-0613": {
- "name": "OpenAI: GPT-3.5 Turbo (older v0613)",
- "channel": "OpenRouter",
- "context_window": 4095,
- "max_tokens": 3685,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-3.5-turbo-16k": {
- "name": "OpenAI: GPT-3.5 Turbo 16k",
- "channel": "OpenRouter",
- "context_window": 16385,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4": {
- "name": "OpenAI: GPT-4",
- "channel": "OpenRouter",
- "context_window": 8191,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 60,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4-turbo": {
- "name": "OpenAI: GPT-4 Turbo",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4-turbo-preview": {
- "name": "OpenAI: GPT-4 Turbo Preview",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1": {
- "name": "OpenAI: GPT-4.1",
- "channel": "OpenRouter",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-mini": {
- "name": "OpenAI: GPT-4.1 Mini",
- "channel": "OpenRouter",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.5999999999999999,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-nano": {
- "name": "OpenAI: GPT-4.1 Nano",
- "channel": "OpenRouter",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o": {
- "name": "OpenAI: GPT-4o",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-2024-05-13": {
- "name": "OpenAI: GPT-4o (2024-05-13)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-2024-08-06": {
- "name": "OpenAI: GPT-4o (2024-08-06)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-2024-11-20": {
- "name": "OpenAI: GPT-4o (2024-11-20)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-mini": {
- "name": "OpenAI: GPT-4o-mini",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-mini-2024-07-18": {
- "name": "OpenAI: GPT-4o-mini (2024-07-18)",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5": {
- "name": "OpenAI: GPT-5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-mini": {
- "name": "OpenAI: GPT-5 Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-nano": {
- "name": "OpenAI: GPT-5 Nano",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.39999999999999997,
- "cacheRead": 0.005,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-pro": {
- "name": "OpenAI: GPT-5 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 120,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1": {
- "name": "OpenAI: GPT-5.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex": {
- "name": "OpenAI: GPT-5.1-Codex",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex-max": {
- "name": "OpenAI: GPT-5.1-Codex-Max",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex-mini": {
- "name": "OpenAI: GPT-5.1-Codex-Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2": {
- "name": "OpenAI: GPT-5.2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-chat": {
- "name": "OpenAI: GPT-5.2 Chat",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-codex": {
- "name": "OpenAI: GPT-5.2-Codex",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-pro": {
- "name": "OpenAI: GPT-5.2 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 21,
- "output": 168,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.3-codex": {
- "name": "OpenAI: GPT-5.3-Codex",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4": {
- "name": "OpenAI: GPT-5.4",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-mini": {
- "name": "OpenAI: GPT-5.4 Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-nano": {
- "name": "OpenAI: GPT-5.4 Nano",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-pro": {
- "name": "OpenAI: GPT-5.4 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5": {
- "name": "OpenAI: GPT-5.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5-pro": {
- "name": "OpenAI: GPT-5.5 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-luna": {
- "name": "OpenAI: GPT-5.6 Luna",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "openai/gpt-5.6-luna-pro": {
- "name": "OpenAI: GPT-5.6 Luna Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "openai/gpt-5.6-sol": {
- "name": "OpenAI: GPT-5.6 Sol",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-5.6-sol-pro": {
- "name": "OpenAI: GPT-5.6 Sol Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-5.6-terra": {
- "name": "OpenAI: GPT-5.6 Terra",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-5.6-terra-pro": {
- "name": "OpenAI: GPT-5.6 Terra Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-6-astra": {
- "name": "OpenAI: GPT-6 Astra",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "openai/gpt-6-astra-pro": {
- "name": "OpenAI: GPT-6 Astra Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "openai/gpt-audio": {
- "name": "OpenAI: GPT Audio",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-audio-mini": {
- "name": "OpenAI: GPT Audio Mini",
- "channel": "OpenRouter",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-chat-latest": {
- "name": "OpenAI: GPT Chat Latest",
- "channel": "OpenRouter",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-120b": {
- "name": "OpenAI: gpt-oss-120b",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.037,
- "output": 0.16999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-20b": {
- "name": "OpenAI: gpt-oss-20b",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.03,
- "output": 0.13,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-safeguard-20b": {
- "name": "OpenAI: gpt-oss-safeguard-20b",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.3,
- "cacheRead": 0.0375,
- "cacheWrite": 0
- }
- },
- "openai/o1": {
- "name": "OpenAI: o1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 60,
- "cacheRead": 7.5,
- "cacheWrite": 0
- }
- },
- "openai/o3": {
- "name": "OpenAI: o3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/o3-mini": {
- "name": "OpenAI: o3 Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "openai/o3-mini-high": {
- "name": "OpenAI: o3 Mini High",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "openai/o3-pro": {
- "name": "OpenAI: o3 Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 20,
- "output": 80,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/o4-mini": {
- "name": "OpenAI: o4 Mini",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.275,
- "cacheWrite": 0
- }
- },
- "openai/o4-mini-high": {
- "name": "OpenAI: o4 Mini High",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.275,
- "cacheWrite": 0
- }
- },
- "openrouter/auto": {
- "name": "Auto Router",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openrouter/auto-beta": {
- "name": "Auto Router (Beta)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openrouter/free": {
- "name": "Free Models Router",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-s-2.1": {
- "name": "Poolside: Laguna S 2.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09,
- "output": 0.18,
- "cacheRead": 0.009,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-s-2.1:free": {
- "name": "Poolside: Laguna S 2.1 (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-xs-2.1": {
- "name": "Poolside: Laguna XS 2.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.12,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-xs-2.1:free": {
- "name": "Poolside: Laguna XS 2.1 (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen-2.5-72b-instruct": {
- "name": "Qwen2.5 72B Instruct",
- "channel": "OpenRouter",
- "context_window": 32768,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.36,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen-2.5-7b-instruct": {
- "name": "Qwen: Qwen2.5 7B Instruct",
- "channel": "OpenRouter",
- "context_window": 32768,
- "max_tokens": 29491,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen-plus": {
- "name": "Qwen: Qwen-Plus",
- "channel": "OpenRouter",
- "context_window": 1000000,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.26,
- "output": 0.78,
- "cacheRead": 0.052000000000000005,
- "cacheWrite": 0.325
- }
- },
- "qwen/qwen-plus-2025-07-28": {
- "name": "Qwen: Qwen Plus 0728",
- "channel": "OpenRouter",
- "context_window": 1000000,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.26,
- "output": 0.78,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-14b": {
- "name": "Qwen: Qwen3 14B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-235b-a22b": {
- "name": "Qwen: Qwen3 235B A22B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.45499999999999996,
- "output": 1.8199999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-235b-a22b-2507": {
- "name": "Qwen: Qwen3 235B A22B Instruct 2507",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09,
- "output": 0.55,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-235b-a22b-thinking-2507": {
- "name": "Qwen: Qwen3 235B A22B Thinking 2507",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22999999999999998,
- "output": 2.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-30b-a3b": {
- "name": "Qwen: Qwen3 30B A3B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-30b-a3b-instruct-2507": {
- "name": "Qwen: Qwen3 30B A3B Instruct 2507",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.04815,
- "output": 0.19305,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-30b-a3b-thinking-2507": {
- "name": "Qwen: Qwen3 30B A3B Thinking 2507",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 81920,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-32b": {
- "name": "Qwen: Qwen3 32B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.08,
- "output": 0.28,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-8b": {
- "name": "Qwen: Qwen3 8B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.117,
- "output": 0.45499999999999996,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder": {
- "name": "Qwen: Qwen3 Coder 480B A35B",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder-30b-a3b-instruct": {
- "name": "Qwen: Qwen3 Coder 30B A3B Instruct",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.28,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder-flash": {
- "name": "Qwen: Qwen3 Coder Flash",
- "channel": "OpenRouter",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.195,
- "output": 0.975,
- "cacheRead": 0.039,
- "cacheWrite": 0.24375
- }
- },
- "qwen/qwen3-coder-next": {
- "name": "Qwen: Qwen3 Coder Next",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.7999999999999999,
- "cacheRead": 0.07,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder-plus": {
- "name": "Qwen: Qwen3 Coder Plus",
- "channel": "OpenRouter",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.65,
- "output": 3.25,
- "cacheRead": 0.13,
- "cacheWrite": 0.8125
- }
- },
- "qwen/qwen3-max": {
- "name": "Qwen: Qwen3 Max",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.78,
- "output": 3.9,
- "cacheRead": 0.156,
- "cacheWrite": 0.975
- }
- },
- "qwen/qwen3-max-thinking": {
- "name": "Qwen: Qwen3 Max Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.78,
- "output": 3.9,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-next-80b-a3b-instruct": {
- "name": "Qwen: Qwen3 Next 80B A3B Instruct",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 1.1,
- "cacheRead": 0.07,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-next-80b-a3b-thinking": {
- "name": "Qwen: Qwen3 Next 80B A3B Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-235b-a22b-instruct": {
- "name": "Qwen: Qwen3 VL 235B A22B Instruct",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.21,
- "output": 1.9,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-235b-a22b-thinking": {
- "name": "Qwen: Qwen3 VL 235B A22B Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-30b-a3b-instruct": {
- "name": "Qwen: Qwen3 VL 30B A3B Instruct",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-30b-a3b-thinking": {
- "name": "Qwen: Qwen3 VL 30B A3B Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-32b-instruct": {
- "name": "Qwen: Qwen3 VL 32B Instruct",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.10400000000000001,
- "output": 0.41600000000000004,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-8b-instruct": {
- "name": "Qwen: Qwen3 VL 8B Instruct",
- "channel": "OpenRouter",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.117,
- "output": 0.45499999999999996,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-8b-thinking": {
- "name": "Qwen: Qwen3 VL 8B Thinking",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.18,
- "output": 2.0999999999999996,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-122b-a10b": {
- "name": "Qwen: Qwen3.5-122B-A10B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 81920,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.29,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-27b": {
- "name": "Qwen: Qwen3.5-27B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.195,
- "output": 1.56,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-35b-a3b": {
- "name": "Qwen: Qwen3.5-35B-A3B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3125,
- "output": 1.25,
- "cacheRead": 0.15625,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-397b-a17b": {
- "name": "Qwen: Qwen3.5 397B A17B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.55,
- "output": 3.5,
- "cacheRead": 0.22499999999999998,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-9b": {
- "name": "Qwen: Qwen3.5-9B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-flash-02-23": {
- "name": "Qwen: Qwen3.5-Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.065,
- "output": 0.26,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-plus-02-15": {
- "name": "Qwen: Qwen3.5 Plus 2026-02-15",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.26,
- "output": 1.56,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-plus-20260420": {
- "name": "Qwen: Qwen3.5 Plus 2026-04-20",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.7999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0.375
- }
- },
- "qwen/qwen3.6-27b": {
- "name": "Qwen: Qwen3.6 27B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.6-35b-a3b": {
- "name": "Qwen: Qwen3.6 35B A3B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.8999999999999999,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.6-flash": {
- "name": "Qwen: Qwen3.6 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1875,
- "output": 1.125,
- "cacheRead": 0,
- "cacheWrite": 0.234375
- }
- },
- "qwen/qwen3.6-max-preview": {
- "name": "Qwen: Qwen3.6 Max Preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.0270000000000001,
- "output": 6.162,
- "cacheRead": 0,
- "cacheWrite": 1.28375
- }
- },
- "qwen/qwen3.6-plus": {
- "name": "Qwen: Qwen3.6 Plus",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.325,
- "output": 1.95,
- "cacheRead": 0,
- "cacheWrite": 0.40625
- }
- },
- "qwen/qwen3.7-flash": {
- "name": "Qwen: Qwen3.7 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.03,
- "output": 0.13,
- "cacheRead": 0.006,
- "cacheWrite": 0.038000000000000006
- }
- },
- "qwen/qwen3.7-max": {
- "name": "Qwen: Qwen3.7 Max",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.475,
- "output": 4.425,
- "cacheRead": 0.295,
- "cacheWrite": 1.84375
- }
- },
- "qwen/qwen3.7-plus": {
- "name": "Qwen: Qwen3.7 Plus",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.32,
- "output": 1.28,
- "cacheRead": 0.064,
- "cacheWrite": 0.39999999999999997
- }
- },
- "qwen/qwen3.8-2.4t-a95b": {
- "name": "Qwen: Qwen3.8 2.4T A95B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "medium",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": null,
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.8-27b": {
- "name": "Qwen: Qwen3.8 27B",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "medium",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": null,
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.42,
- "output": 3,
- "cacheRead": 0.08499999999999999,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.8-flash": {
- "name": "Qwen: Qwen3.8 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.47,
- "cacheRead": 0.016,
- "cacheWrite": 0.19999999999999998
- }
- },
- "qwen/qwen3.8-max-0902": {
- "name": "Qwen: Qwen3.8 Max (0902)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 2.5
- }
- },
- "rekaai/reka-edge": {
- "name": "Reka Edge",
- "channel": "OpenRouter",
- "context_window": 16384,
- "max_tokens": 14745,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.09999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "relace/relace-search": {
- "name": "Relace: Relace Search",
- "channel": "OpenRouter",
- "context_window": 256000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "sakana/fugu-ultra": {
- "name": "Sakana: Fugu Ultra",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "sakana/sakana-namazu": {
- "name": "Sakana: Sakana Namazu",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "sao10k/l3.1-euryale-70b": {
- "name": "Sao10K: Llama 3.1 Euryale 70B v2.2",
- "channel": "OpenRouter",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.85,
- "output": 0.85,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "stepfun/step-3.5-flash": {
- "name": "StepFun: Step 3.5 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "stepfun/step-3.7-flash": {
- "name": "StepFun: Step 3.7 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 230400,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.15,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "tencent/hy3": {
- "name": "Tencent: Hy3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.13199999999999998,
- "output": 0.5279999999999999,
- "cacheRead": 0.032999999999999995,
- "cacheWrite": 0
- }
- },
- "tencent/hy3-preview": {
- "name": "Tencent: Hy3 preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.18,
- "output": 0.6,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "tencent/hy4-preview": {
- "name": "Tencent: Hy4 preview",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.834,
- "output": 2.501,
- "cacheRead": 0.041999999999999996,
- "cacheWrite": 0
- }
- },
- "thedrummer/unslopnemo-12b": {
- "name": "TheDrummer: UnslopNemo 12B",
- "channel": "OpenRouter",
- "context_window": 1024000,
- "max_tokens": 819200,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling": {
- "name": "Thinking Machines: Inkling",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 471859,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 4.05,
- "cacheRead": 0.16999999999999998,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling-small": {
- "name": "Thinking Machines: Inkling Small",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44999999999999996,
- "output": 1.2,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling-small:free": {
- "name": "Thinking Machines: Inkling Small (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling:free": {
- "name": "Thinking Machines: Inkling (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "upstage/solar-pro-3": {
- "name": "Upstage: Solar Pro 3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "upstage/solar-pro4": {
- "name": "Upstage: Solar Pro 4",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 524288,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.03,
- "output": 0.12,
- "cacheRead": 0.006,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.20": {
- "name": "SpaceXAI: Grok 4.20",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 2000000,
- "max_tokens": 1800000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.3": {
- "name": "SpaceXAI: Grok 4.3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 900000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.5": {
- "name": "SpaceXAI: Grok 4.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 500000,
- "max_tokens": 450000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.6": {
- "name": "SpaceXAI: Grok 4.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 500000,
- "max_tokens": 450000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-build-0.1": {
- "name": "SpaceXAI: Grok Build 0.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 256000,
- "max_tokens": 230400,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 2,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5": {
- "name": "Xiaomi: MiMo-V2.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5-pro": {
- "name": "Xiaomi: MiMo-V2.5-Pro",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.5": {
- "name": "Z.ai: GLM 4.5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.5-air": {
- "name": "Z.ai: GLM 4.5 Air",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.13,
- "output": 0.85,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.5v": {
- "name": "Z.ai: GLM 4.5V",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 65536,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 1.7999999999999998,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.6": {
- "name": "Z.ai: GLM 4.6",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.55,
- "output": 2.2,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.6v": {
- "name": "Z.ai: GLM 4.6V",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 0.8999999999999999,
- "cacheRead": 0.055,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.7": {
- "name": "Z.ai: GLM 4.7",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.75,
- "cacheRead": 0.08,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.7-flash": {
- "name": "Z.ai: GLM 4.7 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 202752,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.39999999999999997,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5": {
- "name": "Z.ai: GLM 5",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 1.9,
- "cacheRead": 0.119,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5-turbo": {
- "name": "Z.ai: GLM 5 Turbo",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 202752,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 4,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.1": {
- "name": "Z.ai: GLM 5.1",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.966,
- "output": 3.036,
- "cacheRead": 0.1794,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.2": {
- "name": "Z.ai: GLM 5.2",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.966,
- "output": 3.036,
- "cacheRead": 0.1932,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.2:free": {
- "name": "Z.ai: GLM 5.2 (free)",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 256000,
- "max_tokens": 230400,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.3": {
- "name": "Z.ai: GLM 5.3",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.14,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.3-flash": {
- "name": "Z.ai: GLM 5.3 Flash",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.25,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5v-turbo": {
- "name": "Z.ai: GLM 5V Turbo",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 202752,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 4,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "~anthropic/claude-fable-latest": {
- "name": "Anthropic: Claude Fable Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- }
- },
- "~anthropic/claude-haiku-latest": {
- "name": "Anthropic Claude Haiku Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 1.25
- }
- },
- "~anthropic/claude-opus-latest": {
- "name": "Anthropic: Claude Opus Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "~anthropic/claude-sonnet-latest": {
- "name": "Anthropic Claude Sonnet Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "~deepseek/deepseek-v4-flash-latest": {
- "name": "DeepSeek V4 Flash Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1310720,
- "max_tokens": 943718,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.045,
- "output": 0.09,
- "cacheRead": 0.009,
- "cacheWrite": 0
- }
- },
- "~google/gemini-flash-latest": {
- "name": "Google Gemini Flash Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0.0416666666666667
- }
- },
- "~google/gemini-pro-latest": {
- "name": "Google Gemini Pro Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0.375
- }
- },
- "~moonshotai/kimi-latest": {
- "name": "MoonshotAI Kimi Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5500000000000003,
- "output": 12.75,
- "cacheRead": 0.25599998999999996,
- "cacheWrite": 0
- }
- },
- "~openai/gpt-latest": {
- "name": "OpenAI GPT Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "~openai/gpt-mini-latest": {
- "name": "OpenAI GPT Mini Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "~x-ai/grok-latest": {
- "name": "xAI: Grok Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 500000,
- "max_tokens": 450000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "~z-ai/glm-flash-latest": {
- "name": "Z.ai: GLM Flash Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 943718,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.075,
- "output": 0.25,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "~z-ai/glm-latest": {
- "name": "Z.ai: GLM Latest",
- "channel": "OpenRouter",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.17,
- "output": 3.9600000000000004,
- "cacheRead": 0.234,
- "cacheWrite": 0
- }
- }
- }
- },
- "poolside": {
- "name": "Poolside",
- "description": "Enterprise coding models",
- "wire_api": "openai_chat_completions",
- "models": {
- "laguna-s-2.1": {
- "name": "Laguna S 2.1",
- "channel": "Poolside",
- "reasoning_capability": "toggle",
- "context_window": 1048576,
- "input_modalities": [
- "text"
- ],
- "priority": 90
- }
- }
- },
- "prime-inference": {
- "name": "Hosted Inference",
- "description": "Hosted inference models",
- "base_url": "https://api.pinference.ai/api/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "anthropic/claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-fable-5.1": {
- "name": "Claude Fable 5.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-haiku-4.5": {
- "name": "Claude Haiku 4.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.1,
- "cacheWrite": 1.25
- }
- },
- "anthropic/claude-opus-4.1": {
- "name": "Claude Opus 4.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 75,
- "cacheRead": 1.5,
- "cacheWrite": 18.75
- }
- },
- "anthropic/claude-opus-4.5": {
- "name": "Claude Opus 4.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.6": {
- "name": "Claude Opus 4.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.7": {
- "name": "Claude Opus 4.7",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.8": {
- "name": "Claude Opus 4.8",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-sonnet-4": {
- "name": "Claude Sonnet 4",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.30000000000000004,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.5": {
- "name": "Claude Sonnet 4.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.30000000000000004,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.6": {
- "name": "Claude Sonnet 4.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.30000000000000004,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.2,
- "cacheWrite": 2.5
- }
- },
- "deepseek/deepseek-chat": {
- "name": "Deepseek Chat",
- "channel": "Hosted Inference",
- "context_window": 163840,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-chat-v3-0324": {
- "name": "Deepseek Chat V3 0324",
- "channel": "Hosted Inference",
- "context_window": 163840,
- "max_tokens": 147456,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1.12,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-chat-v3.1": {
- "name": "Deepseek Chat V3.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 144900,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 1.7,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.1-terminus": {
- "name": "Deepseek V3.1 Terminus",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2": {
- "name": "Deepseek V3.2",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.3705,
- "output": 1.1115,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2-exp": {
- "name": "Deepseek V3.2 EXP",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 163840,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 0.41,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash": {
- "name": "Deepseek V4 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.44,
- "output": 1.32,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash-0731": {
- "name": "Deepseek V4 Flash 0731",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1310720,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44,
- "output": 1.32,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-pro": {
- "name": "Deepseek V4 PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "max",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 1.91,
- "output": 3.83,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-flash": {
- "name": "Gemini 2.5 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-flash-lite": {
- "name": "Gemini 2.5 Flash Lite",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-pro": {
- "name": "Gemini 2.5 PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3-flash-preview": {
- "name": "Gemini 3 Flash Preview",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.1-pro-preview": {
- "name": "Gemini 3.1 PRO Preview",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.5-flash": {
- "name": "Gemini 3.5 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.6-flash": {
- "name": "Gemini 3.6 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.7-flash": {
- "name": "Gemini 3.7 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.35,
- "output": 6.75,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.8-flash": {
- "name": "Gemini 3.8 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "google/gemma-3-27b-it": {
- "name": "Gemma 3 27B IT",
- "channel": "Hosted Inference",
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.119,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/Llama-3.2-1B-Instruct": {
- "name": "Llama 3.2 1B Instruct",
- "channel": "Hosted Inference",
- "context_window": 60000,
- "max_tokens": 54000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.027,
- "output": 0.201,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/Llama-3.2-3B-Instruct": {
- "name": "Llama 3.2 3B Instruct",
- "channel": "Hosted Inference",
- "context_window": 80000,
- "max_tokens": 80000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.0509,
- "output": 0.335,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-3.3-70b-instruct": {
- "name": "Llama 3.3 70B Instruct",
- "channel": "Hosted Inference",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.04,
- "output": 2.253,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta-llama/llama-4-maverick": {
- "name": "Llama 4 Maverick",
- "channel": "Hosted Inference",
- "context_window": 1048576,
- "max_tokens": 115200,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 1.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.5": {
- "name": "Minimax M2.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.7": {
- "name": "Minimax M2.7",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m3": {
- "name": "Minimax M3",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 524288,
- "max_tokens": 512000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-large-2512": {
- "name": "Mistral Large 2512",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-nemo": {
- "name": "Mistral Nemo",
- "channel": "Hosted Inference",
- "context_window": 131072,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.165,
- "output": 0.17,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mistral-small-2603": {
- "name": "Mistral Small 2603",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 209715,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.165,
- "output": 0.66,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistralai/mixtral-8x22b-instruct": {
- "name": "Mixtral 8X22B Instruct",
- "channel": "Hosted Inference",
- "context_window": 65536,
- "max_tokens": 52428,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.2,
- "output": 6.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2-0905": {
- "name": "Kimi K2 0905",
- "channel": "Hosted Inference",
- "context_window": 98304,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.5": {
- "name": "Kimi K2.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65535,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 1.9,
- "output": 8,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k3": {
- "name": "Kimi K3",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 3.45,
- "output": 17.25,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-nano-30b-a3b": {
- "name": "Nemotron 3 Nano 30B A3B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.06,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-super-120b-a12b": {
- "name": "Nemotron 3 Super 120B A12B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium"
- ]
- },
- "default_reasoning_effort": "medium",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": null,
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.3,
- "output": 0.65,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1": {
- "name": "GPT 4.1",
- "channel": "Hosted Inference",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-mini": {
- "name": "GPT 4.1 Mini",
- "channel": "Hosted Inference",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.4,
- "output": 1.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-nano": {
- "name": "GPT 4.1 Nano",
- "channel": "Hosted Inference",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.1,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o": {
- "name": "GPT 4O",
- "channel": "Hosted Inference",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-mini": {
- "name": "GPT 4O Mini",
- "channel": "Hosted Inference",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5": {
- "name": "GPT 5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-mini": {
- "name": "GPT 5 Mini",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-nano": {
- "name": "GPT 5 Nano",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.05,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1": {
- "name": "GPT 5.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2": {
- "name": "GPT 5.2",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-pro": {
- "name": "GPT 5.2 PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 21,
- "output": 168,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.3-codex": {
- "name": "GPT 5.3 Codex",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4": {
- "name": "GPT 5.4",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-mini": {
- "name": "GPT 5.4 Mini",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-nano": {
- "name": "GPT 5.4 Nano",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.25,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-pro": {
- "name": "GPT 5.4 PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5": {
- "name": "GPT 5.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6": {
- "name": "GPT 5.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-luna": {
- "name": "GPT 5.6 Luna",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-luna-pro": {
- "name": "GPT 5.6 Luna PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-sol": {
- "name": "GPT 5.6 SOL",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-sol-pro": {
- "name": "GPT 5.6 SOL PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-terra": {
- "name": "GPT 5.6 Terra",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-terra-pro": {
- "name": "GPT 5.6 Terra PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-6-astra": {
- "name": "GPT 6 Astra",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 117964,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 0.75,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-20b": {
- "name": "GPT OSS 20B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-s-2.1": {
- "name": "Laguna S 2.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09,
- "output": 0.18,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-xs-2.1": {
- "name": "Laguna XS 2.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.12,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-235b-a22b-2507": {
- "name": "QWEN3 235B A22B 2507",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-30b-a3b-instruct-2507": {
- "name": "QWEN3 30B A3B Instruct 2507",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.13,
- "output": 0.52,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-8b": {
- "name": "QWEN3 8B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.117,
- "output": 0.455,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder": {
- "name": "QWEN3 Coder",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.975,
- "output": 4.875,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-coder-next": {
- "name": "QWEN3 Coder Next",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 0.3,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-max": {
- "name": "QWEN3 MAX",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 1.2,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-235b-a22b-instruct": {
- "name": "QWEN3 VL 235B A22B Instruct",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-235b-a22b-thinking": {
- "name": "QWEN3 VL 235B A22B Thinking",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 0.98,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-30b-a3b-instruct": {
- "name": "QWEN3 VL 30B A3B Instruct",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 0.7,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3-vl-8b-instruct": {
- "name": "QWEN3 VL 8B Instruct",
- "channel": "Hosted Inference",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.117,
- "output": 0.455,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-35b-a3b": {
- "name": "QWEN3.5 35B A3B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.5-397b-a17b": {
- "name": "QWEN3.5 397B A17B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.6-27b": {
- "name": "QWEN3.6 27B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.6-35b-a3b": {
- "name": "QWEN3.6 35B A3B",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 262144,
- "max_tokens": 235929,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.25,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.7-flash": {
- "name": "QWEN3.7 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.03,
- "output": 0.13,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "qwen/qwen3.8-max": {
- "name": "QWEN3.8 MAX",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": "minimal",
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.20": {
- "name": "Grok 4.20",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 2000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.20-multi-agent": {
- "name": "Grok 4.20 Multi Agent",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 2000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 50,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "x-ai/grok-4.6": {
- "name": "Grok 4.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": "medium",
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 500000,
- "max_tokens": 450000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5": {
- "name": "Mimo V2.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.168,
- "output": 0.336,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5-pro": {
- "name": "Mimo V2.5 PRO",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 1050000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.48024,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.5": {
- "name": "GLM 4.5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.5-air": {
- "name": "GLM 4.5 AIR",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 131072,
- "max_tokens": 98304,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.6": {
- "name": "GLM 4.6",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.7": {
- "name": "GLM 4.7",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-4.7-flash": {
- "name": "GLM 4.7 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 202752,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5": {
- "name": "GLM 5",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 1,
- "output": 3.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.1": {
- "name": "GLM 5.1",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": null
- },
- "context_window": 204800,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.2": {
- "name": "GLM 5.2",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "low": null,
- "medium": null,
- "high": "high",
- "xhigh": "xhigh",
- "max": null
- },
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 50,
- "cost": {
- "input": 1.54,
- "output": 4.84,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.3": {
- "name": "GLM 5.3",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "z-ai/glm-5.3-flash": {
- "name": "GLM 5.3 Flash",
- "channel": "Hosted Inference",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "low",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": "low",
- "medium": null,
- "high": "high",
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1310720,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "qwen": {
- "name": "Alibaba Cloud",
- "description": "DashScope Qwen models",
- "base_url": "https://dashscope.aliyuncs.com/compatible-mode/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "qwen3.8-max": {
- "name": "Qwen3.8 Max",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 64
- },
- "qwen3.8-flash": {
- "name": "Qwen3.8 Flash",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "medium",
- "context_window": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 62
- },
- "qwen3.7-plus": {
- "name": "Qwen3.7 Plus",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 60
- },
- "qwen3.7-flash": {
- "name": "Qwen3.7 Flash",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "medium",
- "context_window": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 58
- },
- "qwen3-coder-plus": {
- "name": "Qwen3 Coder Plus",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 56
- },
- "qwen3-coder-next": {
- "name": "Qwen3 Coder Next",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "high"
- ]
- },
- "context_window": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 54
- },
- "qwen3-32b": {
- "name": "Qwen3 32B",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 52
- },
- "qwen3-8b": {
- "name": "Qwen3 8B",
- "channel": "Qwen",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 50
- }
- }
- },
- "tencent": {
- "name": "Tencent Hunyuan",
- "description": "Tencent Hunyuan models",
- "base_url": "https://api.hunyuan.cloud.tencent.com/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "hunyuan-a13b": {
- "name": "Hunyuan A13B",
- "channel": "Tencent Hunyuan",
- "context_window": 224000,
- "input_modalities": [
- "text"
- ],
- "priority": 38
- },
- "Hunyuan3": {
- "name": "Hunyuan3",
- "channel": "Tencent Hunyuan",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "high"
- ]
- },
- "default_reasoning_effort": "low",
- "context_window": 256000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 37
- },
- "hunyuan-vision-1.5-instruct": {
- "name": "Hunyuan Vision 1.5 Instruct",
- "channel": "Tencent Hunyuan",
- "context_window": 24000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 36
- }
- }
- },
- "vercel-ai-gateway": {
- "name": "Vercel AI Gateway",
- "description": "Vercel AI Gateway models",
- "base_url": "https://ai-gateway.vercel.sh",
- "wire_api": "anthropic_messages",
- "models": {
- "alibaba/qwen-3-14b": {
- "name": "Qwen3-14B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 40960,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen-3-235b": {
- "name": "Qwen3 235B A22B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.88,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen-3-30b": {
- "name": "Qwen3-30B-A3B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 40960,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen-3-32b": {
- "name": "Qwen 3 32B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.16,
- "output": 0.64,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen-3.6-max-preview": {
- "name": "Qwen 3.6 Max Preview",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 240000,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.3,
- "output": 7.8,
- "cacheRead": 0.26,
- "cacheWrite": 1.625
- }
- },
- "alibaba/qwen3-235b-a22b-thinking": {
- "name": "Qwen3 VL 235B A22B Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-coder": {
- "name": "Qwen3 Coder 480B A35B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-coder-30b-a3b": {
- "name": "Qwen 3 Coder 30B A3B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 262144,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-coder-next": {
- "name": "Qwen3 Coder Next",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-coder-plus": {
- "name": "Qwen3 Coder Plus",
- "channel": "Vercel AI Gateway",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-max": {
- "name": "Qwen3 Max",
- "channel": "Vercel AI Gateway",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 6,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-max-preview": {
- "name": "Qwen3 Max Preview",
- "channel": "Vercel AI Gateway",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 6,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-max-thinking": {
- "name": "Qwen 3 Max Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 6,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-next-80b-a3b-instruct": {
- "name": "Qwen3 Next 80B A3B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-next-80b-a3b-thinking": {
- "name": "Qwen3 Next 80B A3B Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 1.2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-vl-235b-a22b-instruct": {
- "name": "Qwen3 VL 235B A22B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 131072,
- "max_tokens": 129024,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.5999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-vl-instruct": {
- "name": "Qwen3 VL 235B A22B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 131072,
- "max_tokens": 129024,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.5999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3-vl-thinking": {
- "name": "Qwen3 VL 235B A22B Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3.5-flash": {
- "name": "Qwen 3.5 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0.001,
- "cacheWrite": 0.125
- }
- },
- "alibaba/qwen3.5-plus": {
- "name": "Qwen 3.5 Plus",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2.4,
- "cacheRead": 0.04,
- "cacheWrite": 0.5
- }
- },
- "alibaba/qwen3.6-27b": {
- "name": "Qwen 3.6 27B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3.5999999999999996,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3.6-plus": {
- "name": "Qwen 3.6 Plus",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0.625
- }
- },
- "alibaba/qwen3.7-flash": {
- "name": "Qwen 3.7 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 991000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.03,
- "output": 0.13,
- "cacheRead": 0.006,
- "cacheWrite": 0.038000000000000006
- }
- },
- "alibaba/qwen3.7-max": {
- "name": "Qwen 3.7 Max",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 991000,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 7.5,
- "cacheRead": 0.5,
- "cacheWrite": 3.125
- }
- },
- "alibaba/qwen3.7-plus": {
- "name": "Qwen 3.7 Plus",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.5999999999999999,
- "cacheRead": 0.08,
- "cacheWrite": 0.5
- }
- },
- "alibaba/qwen3.8-2.4t-a95b": {
- "name": "Qwen3.8 2.4T A95B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3.8-27b": {
- "name": "Qwen3.8 27B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0.625
- }
- },
- "alibaba/qwen3.8-flash": {
- "name": "Qwen 3.8 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 991000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.16,
- "output": 0.47,
- "cacheRead": 0.016,
- "cacheWrite": 0.19999999999999998
- }
- },
- "alibaba/qwen3.8-flash-next": {
- "name": "Qwen 3.8 Flash Next",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.12,
- "output": 0.39999999999999997,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "alibaba/qwen3.8-max": {
- "name": "Qwen 3.8 Max",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 2.5
- }
- },
- "alibaba/qwen3.8-max-0902": {
- "name": "Qwen3.8 Max 0902",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 991000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.25,
- "cacheWrite": 2.5
- }
- },
- "amazon/nova-2-lite": {
- "name": "Nova 2 Lite",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "amazon/nova-lite": {
- "name": "Nova Lite",
- "channel": "Vercel AI Gateway",
- "context_window": 300000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "amazon/nova-micro": {
- "name": "Nova Micro",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.035,
- "output": 0.14,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "amazon/nova-pro": {
- "name": "Nova Pro",
- "channel": "Vercel AI Gateway",
- "context_window": 300000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7999999999999999,
- "output": 3.1999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "anthropic/claude-3-haiku": {
- "name": "Claude 3 Haiku",
- "channel": "Vercel AI Gateway",
- "context_window": 200000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.25,
- "cacheRead": 0.03,
- "cacheWrite": 0.3
- }
- },
- "anthropic/claude-fable-5": {
- "name": "Claude Fable 5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-fable-5.1": {
- "name": "Claude Fable 5.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "off": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 0.25,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-haiku-4.5": {
- "name": "Claude Haiku 4.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 5,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 1.25
- }
- },
- "anthropic/claude-opus-4": {
- "name": "Claude Opus 4",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 75,
- "cacheRead": 1.5,
- "cacheWrite": 18.75
- }
- },
- "anthropic/claude-opus-4.5": {
- "name": "Claude Opus 4.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.6": {
- "name": "Claude Opus 4.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.7": {
- "name": "Claude Opus 4.7",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.8": {
- "name": "Claude Opus 4.8",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-4.8-fast": {
- "name": "Claude Opus 4.8 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-opus-5": {
- "name": "Claude Opus 5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 25,
- "cacheRead": 0.5,
- "cacheWrite": 6.25
- }
- },
- "anthropic/claude-opus-5-fast": {
- "name": "Claude Opus 5 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "anthropic/claude-sonnet-4": {
- "name": "Claude Sonnet 4",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.5": {
- "name": "Claude Sonnet 4.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-4.6": {
- "name": "Claude Sonnet 4.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 3.75
- }
- },
- "anthropic/claude-sonnet-5": {
- "name": "Claude Sonnet 5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "arcee-ai/trinity-large-thinking": {
- "name": "Trinity Large Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262100,
- "max_tokens": 80000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.8999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "bytedance/seed-1.6": {
- "name": "Seed 1.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "bytedance/seed-1.8": {
- "name": "Bytedance Seed 1.8",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "cohere/command-a": {
- "name": "Command A",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 8000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-r1": {
- "name": "DeepSeek-R1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.35,
- "output": 5.4,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.1": {
- "name": "DeepSeek V3.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 163840,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.95,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.1-terminus": {
- "name": "DeepSeek V3.1 Terminus",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.27,
- "output": 1,
- "cacheRead": 0.135,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2": {
- "name": "DeepSeek V3.2",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.28,
- "output": 0.42,
- "cacheRead": 0.028,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v3.2-thinking": {
- "name": "DeepSeek V3.2 Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 8000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.62,
- "output": 1.85,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash": {
- "name": "DeepSeek V4 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.13,
- "output": 0.26,
- "cacheRead": 0.028,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash-0731": {
- "name": "DeepSeek V4 Flash 0731",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07600000000000001,
- "output": 0.153,
- "cacheRead": 0.014,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-flash-vision-exp": {
- "name": "DeepSeek V4 Flash Vision Exp",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.66,
- "cacheRead": 0.007,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-pro": {
- "name": "DeepSeek V4 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.66,
- "output": 1.9800000000000002,
- "cacheRead": 0.022,
- "cacheWrite": 0
- }
- },
- "deepseek/deepseek-v4-pro-0813": {
- "name": "DeepSeek V4 Pro 0813",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 384000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.66,
- "output": 1.9800000000000002,
- "cacheRead": 0.06599999999999999,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-flash": {
- "name": "Gemini 2.5 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-flash-lite": {
- "name": "Gemini 2.5 Flash Lite",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "google/gemini-2.5-pro": {
- "name": "Gemini 2.5 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "google/gemini-3-flash": {
- "name": "Gemini 3 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 3,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.1-flash-lite": {
- "name": "Gemini 3.1 Flash Lite",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.1-pro-preview": {
- "name": "Gemini 3.1 Pro Preview",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.5-flash": {
- "name": "Gemini 3.5 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.5-flash-lite": {
- "name": "Gemini 3.5 Flash Lite",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.6-flash": {
- "name": "Gemini 3.6 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.7-flash": {
- "name": "Gemini 3.7 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "google/gemini-3.8-flash": {
- "name": "Gemini 3.8 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65536,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 3.75,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-26b-a4b-it": {
- "name": "Google Gemma 4 26B A4B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.015,
- "cacheWrite": 0
- }
- },
- "google/gemma-4-31b-it": {
- "name": "Gemma 4 31B IT",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inception/mercury-2": {
- "name": "Mercury 2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 0.75,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "inception/mercury-coder-small": {
- "name": "Mercury Coder Small Beta",
- "channel": "Vercel AI Gateway",
- "context_window": 32000,
- "max_tokens": 16384,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash": {
- "name": "Ling 3.0 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.18,
- "cacheRead": 0.012,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-fin": {
- "name": "Ling 3.0 Flash Fin",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-fin-free": {
- "name": "Ling 3.0 Flash Fin (Free)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-sante": {
- "name": "Ling 3.0 Flash Sante",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "inclusionai/ling-3.0-flash-sante-free": {
- "name": "Ling 3.0 Flash Sante (Free)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "interfaze/interfaze-beta": {
- "name": "Interfaze Beta",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 32000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 3.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-air-v2.5": {
- "name": "Kat Coder Air V2.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 80000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-pro-v1": {
- "name": "KAT-Coder-Pro V1",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-pro-v2": {
- "name": "Kat Coder Pro V2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "kwaipilot/kat-coder-pro-v2.5": {
- "name": "Kat Coder Pro V2.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 80000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.74,
- "output": 2.96,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/llama-3.1-70b": {
- "name": "Llama 3.1 70B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.72,
- "output": 0.72,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/llama-3.1-8b": {
- "name": "Llama 3.1 8B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.22,
- "output": 0.22,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/llama-3.3-70b": {
- "name": "Llama 3.3 70B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.72,
- "output": 0.72,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/llama-4-maverick": {
- "name": "Llama 4 Maverick 17B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.24,
- "output": 0.9700000000000001,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/llama-4-scout": {
- "name": "Llama 4 Scout 17B Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 8192,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.16999999999999998,
- "output": 0.66,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "meta/muse-glimmer-30b": {
- "name": "Muse Glimmer 30B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.35,
- "output": 1.5,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.1": {
- "name": "Muse Spark 1.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.2": {
- "name": "Muse Spark 1.2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.2-contributor": {
- "name": "Muse Spark 1.2 Contributor",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0.002,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.3": {
- "name": "Muse Spark 1.3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 4.25,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "meta/muse-spark-1.3-contributor": {
- "name": "Muse Spark 1.3 Contributor",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0.002,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2": {
- "name": "MiniMax M2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 205000,
- "max_tokens": 205000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.03,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.1": {
- "name": "MiniMax M2.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.03,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.1-lightning": {
- "name": "MiniMax M2.1 Lightning",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 2.4,
- "cacheRead": 0.03,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.5": {
- "name": "MiniMax M2.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.03,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.5-highspeed": {
- "name": "MiniMax M2.5 High Speed",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.03,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.7": {
- "name": "MiniMax M2.7",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m2.7-free": {
- "name": "MiniMax M2.7 (Free)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 196608,
- "max_tokens": 196608,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m2.7-highspeed": {
- "name": "MiniMax M2.7 High Speed",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131100,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.06,
- "cacheWrite": 0.375
- }
- },
- "minimax/minimax-m3": {
- "name": "MiniMax M3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 512000,
- "max_tokens": 512000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 1.2,
- "cacheRead": 0.06,
- "cacheWrite": 0
- }
- },
- "minimax/minimax-m3-free": {
- "name": "MiniMax M3 (Free)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/codestral": {
- "name": "Mistral Codestral",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.3,
- "output": 0.8999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/devstral-2": {
- "name": "Devstral 2",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/devstral-small-2": {
- "name": "Devstral Small 2",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/ministral-14b": {
- "name": "Ministral 14B",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.19999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/ministral-3b": {
- "name": "Ministral 3B",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.09999999999999999,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/ministral-8b": {
- "name": "Ministral 8B",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/mistral-large-3": {
- "name": "Mistral Large 3",
- "channel": "Vercel AI Gateway",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/mistral-medium": {
- "name": "Mistral Medium 3.1",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 64000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/mistral-medium-3.5": {
- "name": "Mistral Medium Latest",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 7.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/mistral-nemo": {
- "name": "Mistral Nemo 12B",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/mistral-small": {
- "name": "Mistral Small",
- "channel": "Vercel AI Gateway",
- "context_window": 32000,
- "max_tokens": 4000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "mistral/pixtral-12b": {
- "name": "Pixtral 12B 2409",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 4000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.15,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2": {
- "name": "Kimi K2 Instruct",
- "channel": "Vercel AI Gateway",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5700000000000001,
- "output": 2.3,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2-thinking": {
- "name": "Kimi K2 Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 216144,
- "max_tokens": 216144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.47,
- "output": 2,
- "cacheRead": 0.14100000000000001,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.5": {
- "name": "Kimi K2.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262114,
- "max_tokens": 262114,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 3,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.6": {
- "name": "Kimi K2.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262000,
- "max_tokens": 262000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.7-code": {
- "name": "Kimi K2.7 Code",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k2.7-code-highspeed": {
- "name": "Kimi K2.7 Code High Speed",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.9,
- "output": 8,
- "cacheRead": 0.38,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k3": {
- "name": "Kimi K3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3,
- "output": 15,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "moonshotai/kimi-k3-fast": {
- "name": "Kimi K3 Fast",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "max"
- ]
- },
- "default_reasoning_effort": "max",
- "thinking_level_map": {
- "off": null,
- "minimal": null,
- "low": null,
- "medium": null,
- "high": null,
- "xhigh": null,
- "max": "max"
- },
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4.5,
- "output": 22.5,
- "cacheRead": 0.44999999999999996,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-nano-30b-a3b": {
- "name": "Nemotron 3 Nano 30B A3B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.24,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-super-120b-a12b": {
- "name": "NVIDIA Nemotron 3 Super 120B A12B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.65,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3-ultra-550b-a55b": {
- "name": "Nemotron 3 Ultra",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 65000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.4,
- "cacheRead": 0.12,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-3.5-lightning": {
- "name": "Nemotron 3.5 Lightning 30B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.19999999999999998,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-nano-12b-v2-vl": {
- "name": "Nvidia Nemotron Nano 12B V2 VL",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "nvidia/nemotron-nano-9b-v2": {
- "name": "Nvidia Nemotron Nano 9B V2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.22999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-3.5-turbo": {
- "name": "GPT-3.5 Turbo",
- "channel": "Vercel AI Gateway",
- "context_window": 16385,
- "max_tokens": 4096,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4-turbo": {
- "name": "GPT-4 Turbo",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 4096,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 30,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1": {
- "name": "GPT-4.1",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-fast": {
- "name": "GPT-4.1 (Fast)",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3.5,
- "output": 14,
- "cacheRead": 0.875,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-mini": {
- "name": "GPT-4.1 mini",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 1.5999999999999999,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-mini-fast": {
- "name": "GPT-4.1 mini (Fast)",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 2.8,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-nano": {
- "name": "GPT-4.1 nano",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.39999999999999997,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4.1-nano-fast": {
- "name": "GPT-4.1 nano (Fast)",
- "channel": "Vercel AI Gateway",
- "context_window": 1047576,
- "max_tokens": 32768,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.7999999999999999,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o": {
- "name": "GPT-4o",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 10,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-fast": {
- "name": "GPT-4o (Fast)",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4.25,
- "output": 17,
- "cacheRead": 2.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-mini": {
- "name": "GPT-4o mini",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-4o-mini-fast": {
- "name": "GPT-4o mini (Fast)",
- "channel": "Vercel AI Gateway",
- "context_window": 128000,
- "max_tokens": 16384,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 1,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5": {
- "name": "GPT-5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-codex": {
- "name": "GPT-5-Codex",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-fast": {
- "name": "GPT-5 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 20,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-mini": {
- "name": "GPT-5 mini",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.024999999999999998,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-mini-fast": {
- "name": "GPT-5 mini (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.44999999999999996,
- "output": 3.5999999999999996,
- "cacheRead": 0.045,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-nano": {
- "name": "GPT-5 nano",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.39999999999999997,
- "cacheRead": 0.005,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5-pro": {
- "name": "GPT-5 pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 272000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 120,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex": {
- "name": "GPT-5.1-Codex",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex-max": {
- "name": "GPT 5.1 Codex Max",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-codex-mini": {
- "name": "GPT 5.1 Codex Mini",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.25,
- "output": 2,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-thinking": {
- "name": "GPT 5.1 Thinking",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 10,
- "cacheRead": 0.125,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.1-thinking-fast": {
- "name": "GPT 5.1 Thinking (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 20,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2": {
- "name": "GPT 5.2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-codex": {
- "name": "GPT 5.2 Codex",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-fast": {
- "name": "GPT 5.2 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3.5,
- "output": 28,
- "cacheRead": 0.35,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.2-pro": {
- "name": "GPT 5.2 ",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 21,
- "output": 168,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.3-codex": {
- "name": "GPT 5.3 Codex",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.75,
- "output": 14,
- "cacheRead": 0.175,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.3-codex-fast": {
- "name": "GPT 5.3 Codex (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3.5,
- "output": 28,
- "cacheRead": 0.35,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4": {
- "name": "GPT 5.4",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2.5,
- "output": 15,
- "cacheRead": 0.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-fast": {
- "name": "GPT 5.4 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-mini": {
- "name": "GPT 5.4 Mini",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.75,
- "output": 4.5,
- "cacheRead": 0.075,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-mini-fast": {
- "name": "GPT 5.4 Mini (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.5,
- "output": 9,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-nano": {
- "name": "GPT 5.4 Nano",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 400000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.25,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.4-pro": {
- "name": "GPT 5.4 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5": {
- "name": "GPT 5.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5-fast": {
- "name": "GPT 5.5 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 12.5,
- "output": 75,
- "cacheRead": 1.25,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.5-pro": {
- "name": "GPT 5.5 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "minimal",
- "low",
- "medium",
- "high",
- "xhigh"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh"
- },
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 30,
- "output": 180,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-5.6-luna": {
- "name": "GPT 5.6 Luna",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.2,
- "cacheRead": 0.02,
- "cacheWrite": 0.25
- }
- },
- "openai/gpt-5.6-luna-fast": {
- "name": "GPT 5.6 Luna (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.39999999999999997,
- "output": 2.4,
- "cacheRead": 0.04,
- "cacheWrite": 0.5
- }
- },
- "openai/gpt-5.6-sol": {
- "name": "GPT 5.6 Sol",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 10,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-5.6-sol-fast": {
- "name": "GPT 5.6 Sol (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 20,
- "cacheRead": 0.39999999999999997,
- "cacheWrite": 5
- }
- },
- "openai/gpt-5.6-terra": {
- "name": "GPT 5.6 Terra",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 12,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 2.5
- }
- },
- "openai/gpt-5.6-terra-fast": {
- "name": "GPT 5.6 Terra (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "xhigh": "xhigh",
- "minimal": null,
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 4,
- "output": 24,
- "cacheRead": 0.39999999999999997,
- "cacheWrite": 5
- }
- },
- "openai/gpt-6-astra": {
- "name": "GPT-6 Astra",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 10,
- "output": 50,
- "cacheRead": 1,
- "cacheWrite": 12.5
- }
- },
- "openai/gpt-6-astra-fast": {
- "name": "GPT-6 Astra (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "xhigh",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "thinking_level_map": {
- "minimal": null,
- "xhigh": "xhigh",
- "max": "max"
- },
- "context_window": 1050000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 20,
- "output": 100,
- "cacheRead": 2,
- "cacheWrite": 25
- }
- },
- "openai/gpt-oss-120b": {
- "name": "GPT OSS 120B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.5,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-20b": {
- "name": "GPT OSS 20B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 131072,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.049999999999999996,
- "output": 0.19999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-safeguard-120b": {
- "name": "GPT OSS Safeguard 120B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 16000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.6,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/gpt-oss-safeguard-20b": {
- "name": "GPT OSS Safeguard 20B",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 16000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.19999999999999998,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/o1": {
- "name": "o1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 15,
- "output": 60,
- "cacheRead": 7.5,
- "cacheWrite": 0
- }
- },
- "openai/o3": {
- "name": "o3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "openai/o3-fast": {
- "name": "o3 (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 3.5,
- "output": 14,
- "cacheRead": 0.875,
- "cacheWrite": 0
- }
- },
- "openai/o3-mini": {
- "name": "o3-mini",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.55,
- "cacheWrite": 0
- }
- },
- "openai/o3-pro": {
- "name": "o3 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 20,
- "output": 80,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "openai/o4-mini": {
- "name": "o4-mini",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.1,
- "output": 4.4,
- "cacheRead": 0.275,
- "cacheWrite": 0
- }
- },
- "openai/o4-mini-fast": {
- "name": "o4-mini (Fast)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 100000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 8,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-s-2.1": {
- "name": "Laguna S 2.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09999999999999999,
- "output": 0.19999999999999998,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "poolside/laguna-s-2.1-free": {
- "name": "Laguna S 2.1 Free",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 32768,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "sakana/fugu-ultra": {
- "name": "Fugu Ultra",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 5,
- "output": 30,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "sakana/namazu": {
- "name": "Sakana Namazu",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.95,
- "output": 4,
- "cacheRead": 0.15,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.1-fast-non-reasoning": {
- "name": "Grok 4.1 Fast Non-Reasoning",
- "channel": "Vercel AI Gateway",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.5,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.1-fast-reasoning": {
- "name": "Grok 4.1 Fast Reasoning",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 0.5,
- "cacheRead": 0.049999999999999996,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-multi-agent": {
- "name": "Grok 4.20 Multi-Agent",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-multi-agent-beta": {
- "name": "Grok 4.20 Multi Agent Beta",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-non-reasoning": {
- "name": "Grok 4.20 Non-Reasoning",
- "channel": "Vercel AI Gateway",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-non-reasoning-beta": {
- "name": "Grok 4.20 Beta Non-Reasoning",
- "channel": "Vercel AI Gateway",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-reasoning": {
- "name": "Grok 4.20 Reasoning",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.20-reasoning-beta": {
- "name": "Grok 4.20 Beta Reasoning",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 2000000,
- "max_tokens": 2000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.3": {
- "name": "Grok 4.3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.5": {
- "name": "Grok 4.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-4.6": {
- "name": "Grok 4.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "spacexai/grok-build-0.1": {
- "name": "Grok Build 0.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 2,
- "cacheRead": 0.19999999999999998,
- "cacheWrite": 0
- }
- },
- "stepfun/step-3.5-flash": {
- "name": "StepFun 3.5 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262114,
- "max_tokens": 262114,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.09,
- "output": 0.3,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- },
- "stepfun/step-3.7-flash": {
- "name": "Step 3.7 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.15,
- "cacheRead": 0.04,
- "cacheWrite": 0
- }
- },
- "tencent/hy3": {
- "name": "Hy3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.58,
- "cacheRead": 0.035,
- "cacheWrite": 0
- }
- },
- "tencent/hy4-preview": {
- "name": "Tencent Hy4 Preview",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1024000,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.834,
- "output": 2.501,
- "cacheRead": 0.041999999999999996,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling": {
- "name": "Inkling",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 4.05,
- "cacheRead": 0.16999999999999998,
- "cacheWrite": 0
- }
- },
- "thinkingmachines/inkling-small": {
- "name": "Inkling Small",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.5,
- "output": 1.2,
- "cacheRead": 0.09999999999999999,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5": {
- "name": "MiMo M2.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1050000,
- "max_tokens": 131100,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5-pro": {
- "name": "MiMo V2.5 Pro",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1050000,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "xiaomi/mimo-v2.5-pro-ultraspeed": {
- "name": "MiMo V2.5 Pro UltraSpeed",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.305,
- "output": 2.61,
- "cacheRead": 0.0108,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.5": {
- "name": "GLM 4.5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 96000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.5-air": {
- "name": "GLM 4.5 Air",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 128000,
- "max_tokens": 96000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.19999999999999998,
- "output": 1.1,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.5v": {
- "name": "GLM 4.5V",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 66000,
- "max_tokens": 16000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 1.7999999999999998,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.6": {
- "name": "GLM 4.6",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 96000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0.11,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.7": {
- "name": "GLM 4.7",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 120000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.6,
- "output": 2.2,
- "cacheRead": 0.12,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.7-flash": {
- "name": "GLM 4.7 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 131000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.07,
- "output": 0.39999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai/glm-4.7-flashx": {
- "name": "GLM 4.7 FlashX",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.06,
- "output": 0.39999999999999997,
- "cacheRead": 0.01,
- "cacheWrite": 0
- }
- },
- "zai/glm-5": {
- "name": "GLM 5",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202800,
- "max_tokens": 131100,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 3.1999999999999997,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "zai/glm-5-turbo": {
- "name": "GLM 5 Turbo",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202800,
- "max_tokens": 131100,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 4,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.1": {
- "name": "GLM 5.1",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 202800,
- "max_tokens": 64000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.4,
- "output": 4.4,
- "cacheRead": 0.26,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.2": {
- "name": "GLM 5.2",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7999999999999999,
- "output": 2.5500000000000003,
- "cacheRead": 0.16,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.2-fast": {
- "name": "GLM 5.2 Fast",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 128000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.0999999999999996,
- "output": 6.6000000000000005,
- "cacheRead": 0.21,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.3": {
- "name": "GLM 5.3",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 2.2,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.3-fast": {
- "name": "GLM 5.3 Fast",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 262144,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 2.0999999999999996,
- "output": 6.6000000000000005,
- "cacheRead": 0.21,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.3-flash": {
- "name": "GLM 5.3 Flash",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.15,
- "output": 0.5,
- "cacheRead": 0.03,
- "cacheWrite": 0
- }
- },
- "zai/glm-5.3-promo-50": {
- "name": "GLM 5.3 (50% off)",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 1048576,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.7,
- "output": 2.2,
- "cacheRead": 0.13,
- "cacheWrite": 0
- }
- },
- "zai/glm-5v-turbo": {
- "name": "GLM 5V Turbo",
- "channel": "Vercel AI Gateway",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 128000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.2,
- "output": 4,
- "cacheRead": 0.24,
- "cacheWrite": 0
- }
- }
- }
- },
- "xai": {
- "name": "xAI",
- "description": "xAI Grok models",
- "base_url": "https://api.x.ai/v1",
- "wire_api": "openai_chat_completions",
- "models": {
- "grok-4.20-0309-non-reasoning": {
- "name": "Grok 4.20 (Non-Reasoning)",
- "channel": "xAI",
- "context_window": 1000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "grok-4.20-0309-reasoning": {
- "name": "Grok 4.20 (Reasoning)",
- "channel": "xAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "grok-4.3": {
- "name": "Grok 4.3",
- "channel": "xAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 30000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1.25,
- "output": 2.5,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "grok-4.5": {
- "name": "Grok 4.5",
- "channel": "xAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.3,
- "cacheWrite": 0
- }
- },
- "grok-4.6": {
- "name": "Grok 4.6",
- "channel": "xAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 500000,
- "max_tokens": 500000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 2,
- "output": 6,
- "cacheRead": 0.5,
- "cacheWrite": 0
- }
- },
- "grok-build-0.1": {
- "name": "Grok Build 0.1",
- "channel": "xAI",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 256000,
- "max_tokens": 256000,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 1,
- "output": 2,
- "cacheRead": 0.2,
- "cacheWrite": 0
- }
- },
- "grok-code-fast-1": {
- "name": "Grok Code Fast 1",
- "channel": "xAI",
- "context_window": 32768,
- "max_tokens": 8192,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.2,
- "output": 1.5,
- "cacheRead": 0.02,
- "cacheWrite": 0
- }
- }
- }
- },
- "xiaomi": {
- "name": "Xiaomi",
- "description": "Xiaomi MiMo models",
- "base_url": "https://api.xiaomimimo.com/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "mimo-v2-flash": {
- "name": "MiMo-V2-Flash",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-omni": {
- "name": "MiMo-V2-Omni",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-pro": {
- "name": "MiMo-V2-Pro",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5": {
- "name": "MiMo-V2.5",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro": {
- "name": "MiMo-V2.5-Pro",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro-ultraspeed": {
- "name": "MiMo-V2.5-Pro-UltraSpeed",
- "channel": "Xiaomi",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.305,
- "output": 2.61,
- "cacheRead": 0.0108,
- "cacheWrite": 0
- }
- }
- }
- },
- "xiaomi-token-plan-ams": {
- "name": "Xiaomi Token Plan (AMS)",
- "description": "Xiaomi token plan AMS",
- "base_url": "https://token-plan-ams.xiaomimimo.com/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "mimo-v2-flash": {
- "name": "MiMo-V2-Flash",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-omni": {
- "name": "MiMo-V2-Omni",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-pro": {
- "name": "MiMo-V2-Pro",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5": {
- "name": "MiMo-V2.5",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro": {
- "name": "MiMo-V2.5-Pro",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro-ultraspeed": {
- "name": "MiMo-V2.5-Pro-UltraSpeed",
- "channel": "Xiaomi Token Plan (AMS)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.305,
- "output": 2.61,
- "cacheRead": 0.0108,
- "cacheWrite": 0
- }
- }
- }
- },
- "xiaomi-token-plan-cn": {
- "name": "Xiaomi Token Plan (CN)",
- "description": "Xiaomi token plan CN",
- "base_url": "https://token-plan-cn.xiaomimimo.com/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "mimo-v2-flash": {
- "name": "MiMo-V2-Flash",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-omni": {
- "name": "MiMo-V2-Omni",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-pro": {
- "name": "MiMo-V2-Pro",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5": {
- "name": "MiMo-V2.5",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro": {
- "name": "MiMo-V2.5-Pro",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro-ultraspeed": {
- "name": "MiMo-V2.5-Pro-UltraSpeed",
- "channel": "Xiaomi Token Plan (CN)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.305,
- "output": 2.61,
- "cacheRead": 0.0108,
- "cacheWrite": 0
- }
- }
- }
- },
- "xiaomi-token-plan-sgp": {
- "name": "Xiaomi Token Plan (SGP)",
- "description": "Xiaomi token plan SGP",
- "base_url": "https://token-plan-sgp.xiaomimimo.com/anthropic",
- "wire_api": "anthropic_messages",
- "models": {
- "mimo-v2-flash": {
- "name": "MiMo-V2-Flash",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 65536,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-omni": {
- "name": "MiMo-V2-Omni",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 262144,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2-pro": {
- "name": "MiMo-V2-Pro",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5": {
- "name": "MiMo-V2.5",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0.14,
- "output": 0.28,
- "cacheRead": 0.0028,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro": {
- "name": "MiMo-V2.5-Pro",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0.435,
- "output": 0.87,
- "cacheRead": 0.0036,
- "cacheWrite": 0
- }
- },
- "mimo-v2.5-pro-ultraspeed": {
- "name": "MiMo-V2.5-Pro-UltraSpeed",
- "channel": "Xiaomi Token Plan (SGP)",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1048576,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 1.305,
- "output": 2.61,
- "cacheRead": 0.0108,
- "cacheWrite": 0
- }
- }
- }
- },
- "zai": {
- "name": "Z.ai",
- "description": "International GLM API",
- "base_url": "https://api.z.ai/api/coding/paas/v4",
- "wire_api": "openai_chat_completions",
- "models": {
- "glm-4.7": {
- "name": "GLM-4.7",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 204800,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5-turbo": {
- "name": "GLM-5-Turbo",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 200000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5.2": {
- "name": "GLM-5.2",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5.2-highspeed": {
- "name": "GLM-5.2 Highspeed",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5.3": {
- "name": "GLM-5.3",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5.3-flash": {
- "name": "GLM-5.3-Flash",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text",
- "image"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- },
- "glm-5.3-highspeed": {
- "name": "GLM-5.3 Highspeed",
- "channel": "Z.ai",
- "reasoning": true,
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "max_tokens": 131072,
- "input_modalities": [
- "text"
- ],
- "priority": 10,
- "cost": {
- "input": 0,
- "output": 0,
- "cacheRead": 0,
- "cacheWrite": 0
- }
- }
- }
- },
- "zhipu": {
- "name": "Zhipu AI",
- "description": "China BigModel GLM API",
- "base_url": "https://open.bigmodel.cn/api/paas/v4",
- "wire_api": "openai_chat_completions",
- "models": {
- "glm-5.3": {
- "name": "GLM 5.3",
- "channel": "\u667a\u8c31 GLM",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 73
- },
- "glm-5.3-flash": {
- "name": "GLM 5.3 Flash",
- "channel": "\u667a\u8c31 GLM",
- "reasoning_capability": {
- "levels": [
- "off",
- "low",
- "medium",
- "high",
- "max"
- ]
- },
- "default_reasoning_effort": "high",
- "context_window": 1000000,
- "input_modalities": [
- "text"
- ],
- "priority": 71
- }
- }
- }
- }
-}
diff --git a/crates/core/src/model_catalog.rs b/crates/core/src/model_catalog.rs
index a760c875..47a08713 100644
--- a/crates/core/src/model_catalog.rs
+++ b/crates/core/src/model_catalog.rs
@@ -1,7 +1,4 @@
-//! Builtin model catalog loading and resolution for core.
-//!
-//! The embedded `providers.json` asset is the canonical provider/model
-//! directory. Provider and model identity are resolved from the same map.
+//! Model catalog resolution from live models.dev discovery and user configuration.
use std::collections::BTreeMap;
use crate::{
@@ -10,7 +7,6 @@ use crate::{
};
use devo_config::{ModelOverrideConfig, ProviderConfigFile, ProviderModelConfig, model_reference};
-const BUILTIN_PROVIDERS_JSON: &str = include_str!("../providers.json");
const DEFAULT_BASE_INSTRUCTIONS: &str = include_str!("../default_base_instructions.txt");
/// Returns the shared fallback base instructions used when a catalog model
@@ -19,31 +15,29 @@ pub fn default_base_instructions() -> &'static str {
DEFAULT_BASE_INSTRUCTIONS
}
-/// A catalog resolved from embedded presets and configuration overrides.
+/// A catalog resolved from live discovery and user configuration.
#[derive(Debug, Clone, Default)]
pub struct PresetModelCatalog {
models: Vec,
providers: Vec,
provider_models: BTreeMap>,
- builtin_provider_ids: Vec,
+ remote_provider_ids: Vec,
}
impl PresetModelCatalog {
- /// Loads the embedded provider/model directory without user overlays.
+ /// Loads an empty catalog without a home or user configuration.
pub fn load() -> Result {
Self::load_from_provider_config(&ProviderConfigFile::default())
}
- /// Loads the embedded provider/model directory and overlays user-defined
- /// providers and models on top of it.
+ /// Loads user-defined providers and models without remote discovery.
pub fn load_from_provider_config(
provider_config: &ProviderConfigFile,
) -> Result {
Self::load_from_provider_config_with_home(provider_config, &BTreeMap::new(), None)
}
- /// Loads the embedded catalog, merges the user provider file, then applies
- /// `[model.]` overlays onto matching builtin or user models.
+ /// Loads user configuration and applies `[model.]` overrides.
pub fn load_from_provider_config_with_overrides(
provider_config: &ProviderConfigFile,
model_overrides: &BTreeMap,
@@ -52,16 +46,15 @@ impl PresetModelCatalog {
}
/// Like [`Self::load_from_provider_config_with_overrides`], and also merges
- /// a cached models.dev overlay from `$DEVO_HOME/cache/` when `home_dir` is
- /// provided.
+ /// process-local models.dev catalog when `home_dir` is provided.
pub fn load_from_provider_config_with_home(
provider_config: &ProviderConfigFile,
model_overrides: &BTreeMap,
home_dir: Option<&std::path::Path>,
) -> Result {
let mut directory = load_base_provider_config(home_dir)?;
- let builtin_provider_ids = directory.providers.keys().cloned().collect();
- directory.merge_overlay(provider_config.clone());
+ let remote_provider_ids = directory.providers.keys().cloned().collect();
+ merge_user_connections(&mut directory, provider_config);
directory.apply_model_overrides(model_overrides);
let providers = directory
.providers
@@ -154,7 +147,7 @@ impl PresetModelCatalog {
models,
providers,
provider_models,
- builtin_provider_ids,
+ remote_provider_ids,
})
}
@@ -164,7 +157,7 @@ impl PresetModelCatalog {
models,
providers: Vec::new(),
provider_models: BTreeMap::new(),
- builtin_provider_ids: Vec::new(),
+ remote_provider_ids: Vec::new(),
}
}
@@ -184,7 +177,7 @@ impl ModelCatalog for PresetModelCatalog {
}
fn list_template_provider_ids(&self) -> Vec {
- self.builtin_provider_ids.clone()
+ self.remote_provider_ids.clone()
}
fn list_provider_models(&self, provider_id: &str) -> BTreeMap {
@@ -213,36 +206,38 @@ impl ModelCatalog for PresetModelCatalog {
}
}
-fn load_builtin_provider_config() -> Result {
- serde_json::from_str(BUILTIN_PROVIDERS_JSON).map_err(Into::into)
-}
-
fn load_base_provider_config(
home_dir: Option<&std::path::Path>,
) -> Result {
- let mut directory = load_builtin_provider_config()?;
- if let Some(home_dir) = home_dir {
- match crate::load_remote_catalog_overlay(home_dir) {
- Ok(Some(remote)) => directory.merge_overlay(remote),
- Ok(None) => {}
- Err(error) => {
- tracing::warn!(
- error = %error,
- "failed to load cached models.dev catalog overlay"
- );
- }
- }
+ match home_dir {
+ Some(home) => crate::load_remote_catalog_overlay(home)
+ .map(|catalog| catalog.unwrap_or_default())
+ .map_err(|error| PresetModelCatalogError::InvalidProviderConfig {
+ message: error.to_string(),
+ }),
+ None => Ok(ProviderConfigFile::default()),
}
- Ok(directory)
}
-/// Returns the embedded built-in provider directory (no user overlays).
-pub fn builtin_provider_config() -> Result {
- load_builtin_provider_config()
+/// Remote metadata may enrich a user connection, never change its transport.
+/// In particular, a remote model override must not redirect an existing credential.
+fn merge_user_connections(directory: &mut ProviderConfigFile, overlay: &ProviderConfigFile) {
+ for id in overlay.providers.keys() {
+ if let Some(remote) = directory.providers.get_mut(id) {
+ remote.base_url = None;
+ remote.wire_api = None;
+ remote.env.clear();
+ for model in remote.models.values_mut() {
+ model.base_url = None;
+ model.wire_api = None;
+ model.request_model = None;
+ }
+ }
+ }
+ directory.merge_overlay(overlay.clone());
}
-/// Builds the effective provider catalog: embedded builtins merged with a
-/// sparse user/project overlay (sparse overlay semantics).
+/// Builds the effective provider catalog from user configuration.
///
/// Prefer this for model resolution and routing. Persist/edit paths should
/// keep reading the sparse overlay alone.
@@ -252,14 +247,13 @@ pub fn effective_provider_catalog(
effective_provider_catalog_with_home(overlay, None)
}
-/// Like [`effective_provider_catalog`], including a cached models.dev overlay
-/// from `$DEVO_HOME/cache/` when `home_dir` is set.
+/// Like [`effective_provider_catalog`], including process-local live discovery.
pub fn effective_provider_catalog_with_home(
overlay: &ProviderConfigFile,
home_dir: Option<&std::path::Path>,
) -> Result {
let mut directory = load_base_provider_config(home_dir)?;
- directory.merge_overlay(overlay.clone());
+ merge_user_connections(&mut directory, overlay);
// Session defaults live on the overlay / config.toml projection.
if directory.model.is_none() {
directory.model = overlay.model.clone();
@@ -273,46 +267,6 @@ pub fn effective_provider_catalog_with_home(
Ok(directory)
}
-/// Rewrites user `providers.json` so built-in Connections store sparse overlays
-/// (sparse overlay semantics) and credential ids are provider-keyed.
-pub fn migrate_user_provider_catalog_overlays(
- user_config_dir: &std::path::Path,
-) -> anyhow::Result {
- use crate::{
- PROVIDER_CONFIG_FILE_NAME, provider_id_from_credential_id, read_provider_catalog_config,
- sparsify_provider_entry_against_builtin, write_provider_catalog_config,
- };
-
- let path = user_config_dir.join(PROVIDER_CONFIG_FILE_NAME);
- if !path.exists() {
- return Ok(false);
- }
- let mut config = read_provider_catalog_config(&path)?;
- let builtin = load_builtin_provider_config()?;
- let mut changed = false;
- for (provider_id, entry) in config.providers.iter_mut() {
- if let Some(credential) = entry.credential.clone() {
- let migrated = provider_id_from_credential_id(&credential);
- if migrated != credential {
- entry.credential = Some(migrated);
- changed = true;
- }
- }
- let Some(baseline) = builtin.providers.get(provider_id) else {
- continue;
- };
- let before = entry.clone();
- sparsify_provider_entry_against_builtin(entry, baseline);
- if *entry != before {
- changed = true;
- }
- }
- if changed {
- write_provider_catalog_config(&path, &config)?;
- }
- Ok(changed)
-}
-
fn model_from_provider_config(
provider_id: &str,
model_id: &str,
@@ -375,6 +329,14 @@ fn provider_info_from_config(
let wire_api = config
.wire_api
.unwrap_or(ProviderWireApi::OpenAIChatCompletions);
+ let mut wire_apis = vec![wire_api];
+ for model in config.models.values() {
+ if let Some(model_api) = model.wire_api
+ && !wire_apis.contains(&model_api)
+ {
+ wire_apis.push(model_api);
+ }
+ }
ProviderInfo {
id: provider_id.to_string(),
name: config
@@ -388,7 +350,7 @@ fn provider_info_from_config(
options: config.options.clone(),
request: config.request.clone(),
compat: config.compat.clone(),
- wire_apis: vec![wire_api],
+ wire_apis,
model_overrides: config
.model_overrides
.iter()
@@ -425,6 +387,8 @@ fn provider_model_info_from_config(
|| !matches!(capability, ReasoningCapability::Unsupported);
ProviderModelInfo {
origin: config.origin,
+ base_url: config.base_url.clone(),
+ request_model: config.request_model.clone(),
name: config.name.clone(),
family: config.family.clone(),
release_date: config.release_date.clone(),
@@ -494,11 +458,11 @@ fn provider_model_info_from_config(
}
}
-/// Errors produced while loading the builtin catalog.
+/// Errors produced while loading the provider catalog.
#[derive(Debug, thiserror::Error)]
pub enum PresetModelCatalogError {
- /// Parsing the bundled provider directory failed.
- #[error("failed to parse builtin provider catalog: {0}")]
+ /// Parsing a provider directory failed.
+ #[error("failed to parse provider catalog: {0}")]
Parse(#[from] serde_json::Error),
/// Writing or validating user provider catalog config failed.
#[error("invalid provider catalog config: {message}")]
@@ -507,367 +471,112 @@ pub enum PresetModelCatalogError {
#[cfg(test)]
mod tests {
- use std::collections::BTreeMap;
-
+ use super::*;
use pretty_assertions::assert_eq;
-
- use super::{PresetModelCatalog, default_base_instructions};
- use crate::{
- Model, ModelCatalog, ProviderInfo, ProviderWireApi, ReasoningCapability, ThinkingLevelMap,
- };
- use devo_protocol::resolve_thinking_fields_for_model_info;
+ use serde_json::json;
#[test]
- fn builtin_models_load_from_provider_directory() {
- let catalog = PresetModelCatalog::load().expect("load provider catalog");
- assert!(!catalog.list_visible().is_empty());
- assert_eq!(catalog.list_visible()[0].slug, "openai/gpt-5.5");
- }
-
- #[test]
- fn builtin_catalog_resolves_visible_defaults() {
- let catalog = PresetModelCatalog::load().expect("load catalog");
- let model = catalog.resolve_for_turn(None).expect("resolve default");
- assert!(!model.slug.is_empty());
- }
-
- #[test]
- fn default_base_instructions_are_available() {
+ fn empty_catalog_has_no_embedded_fallback() {
+ let catalog = PresetModelCatalog::load().unwrap();
+ assert!(catalog.list_visible().is_empty());
+ assert!(catalog.list_providers().is_empty());
+ assert!(catalog.resolve_for_turn(None).is_err());
assert!(!default_base_instructions().trim().is_empty());
}
#[test]
- fn builtin_models_have_channel_fields() {
- let catalog = PresetModelCatalog::load().expect("load provider catalog");
- assert!(
- catalog
- .list_visible()
- .iter()
- .any(|model| model.channel.as_deref() == Some("DeepSeek"))
- );
- }
-
- #[test]
- fn provider_catalog_uses_provider_model_references_and_accepts_custom_models() {
- let config = crate::ProviderConfigFile {
- providers: BTreeMap::from([(
- "local".to_string(),
- crate::ProviderConfigEntry {
- wire_api: Some(ProviderWireApi::OpenAIResponses),
- models: BTreeMap::from([(
- "qwen3".to_string(),
- crate::ProviderModelConfig {
- name: Some("Qwen 3".to_string()),
- context_window: Some(131_072),
- ..crate::ProviderModelConfig::default()
- },
- )]),
- ..crate::ProviderConfigEntry::default()
- },
- )]),
- model: Some("local/qwen3".to_string()),
- ..crate::ProviderConfigFile::default()
- };
-
- let catalog =
- PresetModelCatalog::load_from_provider_config(&config).expect("load provider catalog");
- assert_eq!(
- catalog
- .resolve_for_turn(None)
- .expect("resolve default")
- .slug,
- "local/qwen3"
- );
- assert_eq!(
- catalog
- .get("local/qwen3")
- .expect("custom model")
- .display_name,
- "Qwen 3"
- );
- assert_eq!(
- catalog.get("local/qwen3").expect("custom model").provider,
- ProviderWireApi::OpenAIResponses
- );
- }
-
- /// Verifies: authored thinking fields survive catalog load and model/list metadata projection.
- #[test]
- fn custom_catalog_preserves_authored_thinking_fields() {
- let thinking_level_map = ThinkingLevelMap::from([
- ("off".to_string(), Some("none".to_string())),
- ("high".to_string(), Some("maximum".to_string())),
- ]);
- let config = crate::ProviderConfigFile {
- providers: BTreeMap::from([(
- "custom".to_string(),
- crate::ProviderConfigEntry {
- models: BTreeMap::from([(
- "reasoner".to_string(),
- crate::ProviderModelConfig {
- reasoning_capability: Some(ReasoningCapability::Toggle),
- reasoning: Some(true),
- thinking_level_map: Some(thinking_level_map.clone()),
- ..crate::ProviderModelConfig::default()
- },
- )]),
- ..crate::ProviderConfigEntry::default()
- },
- )]),
- ..crate::ProviderConfigFile::default()
- };
-
- let catalog =
- PresetModelCatalog::load_from_provider_config(&config).expect("load custom catalog");
+ fn configured_models_work_without_remote_data() {
+ let config: ProviderConfigFile = serde_json::from_value(json!({
+ "model": "local/custom", "provider": {"local": {
+ "base_url": "http://localhost:8000/v1", "wire_api": "openai_chat_completions",
+ "models": {"custom": {"name": "My model", "context_window": 8192}}
+ }}
+ }))
+ .unwrap();
+ let catalog = PresetModelCatalog::load_from_provider_config(&config).unwrap();
+ assert_eq!(catalog.resolve_for_turn(None).unwrap().slug, "local/custom");
assert_eq!(
- catalog
- .get("custom/reasoner")
- .and_then(|model| model.thinking_level_map.clone()),
- Some(thinking_level_map.clone())
+ catalog.list_provider_models("local")["custom"].context_window,
+ Some(8192)
);
- let info = &catalog.list_provider_models("custom")["reasoner"];
- assert_eq!(info.reasoning, Some(true));
- assert_eq!(info.thinking_level_map, Some(thinking_level_map));
+ assert!(catalog.list_template_provider_ids().is_empty());
}
- /// Verifies: sparse user overlays still resolve pure builtin model defaults.
#[test]
- fn effective_provider_catalog_resolves_builtin_model_under_sparse_overlay() {
- let overlay = crate::ProviderConfigFile {
- model: Some("deepseek/deepseek-v4-flash".to_string()),
- providers: BTreeMap::from([(
- "deepseek".to_string(),
- crate::ProviderConfigEntry {
- base_url: Some("https://api.deepseek.com/anthropic".to_string()),
- wire_api: Some(ProviderWireApi::AnthropicMessages),
- credential: Some("deepseek".to_string()),
- enabled: Some(true),
- models: BTreeMap::from([(
- "deepseek-flash".to_string(),
- crate::ProviderModelConfig {
- name: Some("DeepSeek Flash".to_string()),
- ..crate::ProviderModelConfig::default()
- },
- )]),
- ..crate::ProviderConfigEntry::default()
- },
- )]),
- ..crate::ProviderConfigFile::default()
- };
-
- let effective =
- super::effective_provider_catalog(&overlay).expect("merge builtin + overlay");
- let selection = effective
- .resolve_model(Some("deepseek/deepseek-v4-flash"))
- .expect("resolve builtin default through sparse overlay");
- assert_eq!(selection.provider_id, "deepseek");
- assert_eq!(selection.model_id, "deepseek-v4-flash");
- assert_eq!(selection.wire_api, ProviderWireApi::AnthropicMessages);
- assert!(
- effective.providers["deepseek"]
- .models
- .contains_key("deepseek-flash"),
- "custom models from the overlay must remain"
- );
+ fn remote_metadata_never_redirects_user_credentials() {
+ let mut remote: ProviderConfigFile = serde_json::from_value(json!({"provider": {"custom": {
+ "base_url": "https://remote.example", "wire_api": "anthropic_messages",
+ "models": {"model": {"base_url": "https://model-remote.example",
+ "wire_api": "google_generative_ai", "request_model": "redirected", "context_window": 64000}}
+ }}})).unwrap();
+ let user: ProviderConfigFile = serde_json::from_value(json!({"provider": {"custom": {
+ "base_url": "https://user.example", "wire_api": "openai_chat_completions", "credential": "private"
+ }}})).unwrap();
+ merge_user_connections(&mut remote, &user);
+ let expected: ProviderConfigFile = serde_json::from_value(json!({"provider": {"custom": {
+ "base_url": "https://user.example", "wire_api": "openai_chat_completions", "credential": "private",
+ "models": {"model": {"context_window": 64000}}
+ }}})).unwrap();
+ assert_eq!(remote, expected);
}
- /// Verifies: DeepSeek builtin `reasoning_capability.levels` drive chips and
- /// the authored map stays verbatim upstream (pi-ai import): the API's real
- /// `max` level is aliased at the UI's `xhigh` slot (`xhigh` → wire `max`),
- /// so selecting xhigh still sends the model's strongest level.
#[test]
- fn deepseek_v4_flash_thinking_levels_follow_builtin_capability() {
- let catalog =
- PresetModelCatalog::load_from_provider_config(&crate::ProviderConfigFile::default())
- .expect("load builtin provider catalog");
- let model = catalog
- .get("deepseek/deepseek-v4-flash")
- .expect("deepseek-v4-flash");
- let (reasoning, map, available) = resolve_thinking_fields_for_model_info(
- &model.reasoning_capability,
- model.reasoning,
- model.thinking_level_map.as_ref(),
- );
- assert!(reasoning);
- assert_eq!(map.get("high"), Some(&Some("high".to_string())));
- assert_eq!(map.get("xhigh"), Some(&Some("max".to_string())));
- assert_eq!(map.get("max"), Some(&None));
- assert_eq!(
- available,
- vec!["off".to_string(), "high".to_string(), "xhigh".to_string()]
- );
- // The selection layer keeps the canonical level; the wire layer maps
- // it through `thinking_level_map` ("xhigh" → API level "max").
- assert_eq!(
- model
- .normalize_reasoning_effort_selection(Some("xhigh"))
- .as_deref(),
- Some("xhigh")
- );
- assert_eq!(
- model
- .normalize_reasoning_effort_selection(Some("disabled"))
- .as_deref(),
- Some("off")
- );
+ fn sparse_credential_config_does_not_trust_remote_endpoint() {
+ let mut remote: ProviderConfigFile =
+ serde_json::from_value(json!({"provider": {"custom": {
+ "base_url": "https://untrusted.example", "wire_api": "anthropic_messages"
+ }}}))
+ .unwrap();
+ let user: ProviderConfigFile =
+ serde_json::from_value(json!({"provider": {"custom": {"credential": "private"}}}))
+ .unwrap();
+ merge_user_connections(&mut remote, &user);
+ assert_eq!(remote, user);
}
-
- /// Verifies: builtin catalog mirrors pi-ai static providers plus Devo-local templates.
#[test]
- fn builtin_provider_catalog_contains_current_cloud_and_local_models() {
- let catalog =
- PresetModelCatalog::load_from_provider_config(&crate::ProviderConfigFile::default())
- .expect("load builtin provider catalog");
-
- assert_eq!(
- catalog
- .resolve_for_turn(None)
- .expect("resolve builtin default")
- .slug,
- "openai/gpt-5.5"
- );
- // pi-ai static catalog (supported wire APIs only)
- for model in [
- "openai/gpt-5.5",
- "anthropic/claude-sonnet-4-6",
- "openai-codex/gpt-5.4",
- "github-copilot/gpt-5.4",
- "xai/grok-4.6",
- "google/gemini-2.5-pro",
- "deepseek/deepseek-v4-flash",
- "zai/glm-5.3-flash",
- ] {
- assert!(
- catalog.get(model).is_some(),
- "missing pi-ai-derived builtin model {model}"
- );
- }
- // Devo-local templates preserved alongside the pi-ai import
- for model in [
- "kimi/kimi-k3",
- "zhipu/glm-5.3-flash",
- "qwen/qwen3.7-plus",
- "tencent/hunyuan-a13b",
- "poolside/laguna-s-2.1",
- ] {
- assert!(
- catalog.get(model).is_some(),
- "missing Devo-local builtin model {model}"
- );
- }
- assert!(
- catalog
- .list_providers()
- .iter()
- .any(|provider| provider.id == "ollama"),
- "missing builtin ollama provider"
- );
- for oauth_provider in ["openai-codex", "anthropic", "github-copilot", "xai"] {
- assert!(
- catalog
- .list_providers()
- .iter()
- .any(|provider| provider.id == oauth_provider),
- "missing builtin OAuth provider {oauth_provider}"
- );
- assert!(
- !catalog.list_provider_models(oauth_provider).is_empty(),
- "oauth provider {oauth_provider} must ship at least one model"
- );
- }
- assert!(
- catalog
- .list_providers()
- .iter()
- .any(|provider| provider.id == "openai"),
- "missing builtin OpenAI API provider"
- );
- assert!(
- catalog.list_provider_models("ollama").is_empty(),
- "ollama template must not ship placeholder models"
- );
-
- let zai_models = catalog
- .list_visible()
- .into_iter()
- .filter(|model| model.slug.starts_with("zai/"))
- .map(|model| model.slug.clone())
- .collect::>();
- assert!(
- zai_models.iter().any(|slug| slug == "zai/glm-5.3-flash"),
- "expected zai/glm-5.3-flash in {zai_models:?}"
- );
-
- let zhipu_models = catalog
- .list_visible()
- .into_iter()
- .filter(|model| model.slug.starts_with("zhipu/"))
- .map(|model| model.slug.clone())
- .collect::>();
- assert_eq!(zhipu_models, ["zhipu/glm-5.3", "zhipu/glm-5.3-flash"]);
-
+ fn authored_model_transport_and_thinking_survive_projection() {
+ let config: ProviderConfigFile = serde_json::from_value(json!({"provider": {"custom": {
+ "wire_api": "openai_chat_completions", "models": {"reasoner": {
+ "base_url": "https://messages.example", "request_model": "wire-reasoner",
+ "wire_api": "anthropic_messages", "reasoning": true,
+ "thinking_level_map": {"off": "none", "high": "maximum"}
+ }}
+ }}}))
+ .unwrap();
+ let catalog = PresetModelCatalog::load_from_provider_config(&config).unwrap();
+ let model = &catalog.list_provider_models("custom")["reasoner"];
assert_eq!(
- catalog
- .get("deepseek/deepseek-v4-flash")
- .expect("deepseek model")
- .provider,
- ProviderWireApi::OpenAIChatCompletions
+ (
+ model.base_url.as_deref(),
+ model.request_model.as_deref(),
+ model.wire_api
+ ),
+ (
+ Some("https://messages.example"),
+ Some("wire-reasoner"),
+ Some(ProviderWireApi::AnthropicMessages)
+ )
);
-
- let providers = catalog.list_providers();
assert_eq!(
- providers
- .iter()
- .find(|provider| provider.id == "zhipu")
- .cloned(),
- Some(ProviderInfo {
- id: "zhipu".to_string(),
- name: "Zhipu AI".to_string(),
- description: Some("China BigModel GLM API".to_string()),
- base_url: Some("https://open.bigmodel.cn/api/paas/v4".to_string()),
- credential: None,
- headers: BTreeMap::new(),
- options: None,
- request: None,
- compat: None,
- wire_apis: vec![ProviderWireApi::OpenAIChatCompletions],
- model_overrides: BTreeMap::new(),
- models: BTreeMap::new(),
- enabled: true,
- })
+ model.thinking_level_map,
+ config.providers["custom"].models["reasoner"].thinking_level_map
);
assert_eq!(
- providers
- .iter()
- .find(|provider| provider.id == "deepseek")
- .map(|provider| provider.wire_apis.clone()),
- Some(vec![ProviderWireApi::OpenAIChatCompletions])
+ catalog.list_providers()[0].wire_apis,
+ vec![
+ ProviderWireApi::OpenAIChatCompletions,
+ ProviderWireApi::AnthropicMessages
+ ]
);
}
#[test]
- fn provider_catalog_materializes_a_minimal_referenced_custom_model() {
- let config = crate::ProviderConfigFile {
- model: Some("local/qwen3".to_string()),
- providers: BTreeMap::from([(
- "local".to_string(),
- crate::ProviderConfigEntry::default(),
- )]),
- ..crate::ProviderConfigFile::default()
- };
-
- let catalog =
- PresetModelCatalog::load_from_provider_config(&config).expect("load provider catalog");
-
- assert_eq!(
- catalog.get("local/qwen3").expect("referenced custom model"),
- &Model {
- slug: "local/qwen3".to_string(),
- display_name: "qwen3".to_string(),
- default_reasoning_effort: None,
- base_instructions: default_base_instructions().to_string(),
- ..Model::default()
- }
- );
+ fn explicitly_referenced_custom_model_is_materialized_offline() {
+ let config: ProviderConfigFile = serde_json::from_value(json!({
+ "model": "local/custom", "provider": {"local": {}}
+ }))
+ .unwrap();
+ let catalog = PresetModelCatalog::load_from_provider_config(&config).unwrap();
+ assert_eq!(catalog.resolve_for_turn(None).unwrap().slug, "local/custom");
}
}
diff --git a/crates/core/src/remote_catalog.rs b/crates/core/src/remote_catalog.rs
index b74403f1..63f858a8 100644
--- a/crates/core/src/remote_catalog.rs
+++ b/crates/core/src/remote_catalog.rs
@@ -1,36 +1,18 @@
-//! Runtime refresh of the built-in provider directory from models.dev.
-//!
-//! Devo always embeds `crates/core/providers.json`. On startup (unless
-//! `[catalog].offline = true`), it may download `https://models.dev/api.json`
-//! (or read a local dump), convert overlapping providers into a sparse overlay,
-//! and cache the result under `$DEVO_HOME/cache/`.
+//! Live models.dev discovery. Successful results live only in this process.
+//! Neither loading nor refreshing reads or writes a persisted catalog snapshot.
-use std::fs;
-use std::path::Path;
-use std::path::PathBuf;
-use std::time::Duration;
-use std::time::SystemTime;
-use std::time::UNIX_EPOCH;
-
-use chrono::DateTime;
-use chrono::Utc;
-use serde::Deserialize;
-use serde::Serialize;
-use serde_json::Value;
-
-use crate::builtin_provider_config;
use crate::{
CatalogConfig, InputModality, ProviderConfigEntry, ProviderConfigFile, ProviderModelConfig,
- ReasoningCapability, ReasoningEffort, levels_with_leading_off,
+ ProviderWireApi, ReasoningCapability, ReasoningEffort, levels_with_leading_off,
};
+use serde_json::Value;
+use std::collections::BTreeMap;
+use std::path::{Path, PathBuf};
+use std::sync::{Mutex, OnceLock};
+use std::time::{Duration, Instant};
-const CACHE_DIR_NAME: &str = "cache";
-/// Raw models.dev dump (source of truth on disk).
-const RAW_CACHE_FILE_NAME: &str = "models.dev-api.json";
-/// Stale converted overlay from older Devo builds; deleted on refresh, never read.
-const STALE_OVERLAY_CACHE_FILE_NAME: &str = "models.dev-catalog.json";
-const META_CACHE_FILE_NAME: &str = "models.dev-meta.json";
const DEFAULT_MODELS_DEV_URL: &str = "https://models.dev/api.json";
+const MAX_CATALOG_BYTES: usize = 32 * 1024 * 1024;
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum CatalogRefreshOutcome {
@@ -54,46 +36,27 @@ pub enum CatalogRefreshStage {
HttpStatus,
Parse,
Convert,
- CacheWrite,
}
-#[derive(Debug, Clone, Serialize, Deserialize)]
-struct CatalogCacheMeta {
- fetched_at: DateTime,
+#[derive(Clone)]
+struct LiveCatalog {
source: String,
- providers: usize,
- models: usize,
-}
-
-/// Cache directory under the user Devo home (`$DEVO_HOME/cache`).
-pub fn catalog_cache_dir(home_dir: &Path) -> PathBuf {
- home_dir.join(CACHE_DIR_NAME)
+ fetched_at: Instant,
+ catalog: ProviderConfigFile,
}
+static LIVE_CATALOGS: OnceLock>> = OnceLock::new();
+static REFRESH_LOCK: tokio::sync::Mutex<()> = tokio::sync::Mutex::const_new(());
-/// Path to the raw models.dev api.json cache.
-pub fn remote_catalog_api_path(home_dir: &Path) -> PathBuf {
- catalog_cache_dir(home_dir).join(RAW_CACHE_FILE_NAME)
-}
-
-/// Loads a models.dev overlay for catalog merge.
-///
-/// Converts `$DEVO_HOME/cache/models.dev-api.json` in memory. Returns `Ok(None)`
-/// when that dump is absent — there is no converted-file fallback.
+/// Returns the last successful catalog for this home, without disk access.
pub fn load_remote_catalog_overlay(home_dir: &Path) -> anyhow::Result