diff --git a/packages/ai/.changes/res-1273-catalog-update-qwen-gpt6.md b/packages/ai/.changes/res-1273-catalog-update-qwen-gpt6.md new file mode 100644 index 0000000000..6a3a7b1da1 --- /dev/null +++ b/packages/ai/.changes/res-1273-catalog-update-qwen-gpt6.md @@ -0,0 +1 @@ +- Refreshed the generated model catalog (1262 -> 1280 models): added GPT-6 Astra across eight providers with correct Responses routing and thinking levels, restored the Prime Inference Qwen 3.8 Max effort metadata after OpenRouter's route rename, and picked up upstream price and listing updates. diff --git a/packages/ai/scripts/generate-models.ts b/packages/ai/scripts/generate-models.ts index 1ba0fc83c4..9c9604293b 100644 --- a/packages/ai/scripts/generate-models.ts +++ b/packages/ai/scripts/generate-models.ts @@ -209,10 +209,12 @@ const PRIME_INFERENCE_FEATURED_MODELS = new Set([ "z-ai/glm-5.2", ]); -// Prime ids whose OpenRouter listing uses a different id. Empty today — Prime -// currently publishes ids that match OpenRouter's, but HF-style ids show up -// whenever a new route is added, so the mapping stays. -const PRIME_INFERENCE_OPENROUTER_ALIASES: Record = {}; +// Prime ids whose OpenRouter listing uses a different id (e.g. after an +// OpenRouter route rename); metadata lookups resolve through this mapping. +const PRIME_INFERENCE_OPENROUTER_ALIASES: Record = { + // OpenRouter renamed its route to the dated id; Prime still serves the undated one. + "qwen/qwen3.8-max": "qwen/qwen3.8-max-0902", +}; // Conservative fallbacks for catalog models with no OpenRouter match and no // override above: an under-declared window degrades gracefully, an @@ -300,6 +302,16 @@ function applyThinkingLevelMetadata(model: Model): void { if (model.id.includes("gpt-5.6")) { mergeThinkingLevelMap(model, { minimal: null, max: "max" }); } + // gpt-6 reasoning is mandatory with no minimal effort; xhigh/max are supported (OpenRouter capability data). + if (model.id.includes("gpt-6")) { + mergeThinkingLevelMap(model, { minimal: null, xhigh: "xhigh", max: "max" }); + } + if ( + (model.api === "openai-responses" || model.api === "azure-openai-responses") && + model.id.startsWith("gpt-6") + ) { + mergeThinkingLevelMap(model, { off: null }); + } // Per-family effort support per the Anthropic effort docs. Opus 4.6 / Sonnet 4.6 // have no xhigh; Fable 5 / Mythos 5 / Mythos Preview think every turn (off: null). if ( @@ -1371,8 +1383,9 @@ async function loadModelsDevData(): Promise[]> { // Copilot proxies Claude via the Anthropic Messages API const isCopilotClaude = modelId.startsWith("claude-"); - // gpt-5 models require responses API, others use completions - const needsResponsesApi = modelId.startsWith("gpt-5") || modelId.startsWith("oswe"); + // gpt-5/gpt-6 models require responses API, others use completions + const needsResponsesApi = + modelId.startsWith("gpt-5") || modelId.startsWith("gpt-6") || modelId.startsWith("oswe"); const api: Api = isCopilotClaude ? "anthropic-messages" diff --git a/packages/ai/src/models.generated.ts b/packages/ai/src/models.generated.ts index a0a645884c..7110880d06 100644 --- a/packages/ai/src/models.generated.ts +++ b/packages/ai/src/models.generated.ts @@ -2980,6 +2980,24 @@ export const MODELS = { 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", @@ -4345,6 +4363,23 @@ export const MODELS = { 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", @@ -4771,10 +4806,10 @@ export const MODELS = { thinkingLevelMap: {"off":null,"xhigh":"xhigh","minimal":null,"max":"max"}, input: ["text", "image"], cost: { - input: 2, - output: 10, - cacheRead: 0.2, - cacheWrite: 2.5, + input: 4, + output: 20, + cacheRead: 0.4, + cacheWrite: 5, }, contextWindow: 1050000, maxTokens: 128000, @@ -4798,6 +4833,25 @@ export const MODELS = { 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.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","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", @@ -8509,6 +8563,24 @@ export const MODELS = { 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", @@ -9112,6 +9184,25 @@ export const MODELS = { 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", @@ -9308,6 +9399,40 @@ export const MODELS = { 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", @@ -9650,6 +9775,24 @@ export const MODELS = { 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", @@ -9889,6 +10032,23 @@ export const MODELS = { 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", @@ -11224,9 +11384,9 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null}, input: ["text"], cost: { - input: 0.088606, - output: 0.177212, - cacheRead: 0.017721200000000003, + input: 0.08526, + output: 0.17052, + cacheRead: 0.017051999999999998, cacheWrite: 0, }, contextWindow: 1048576, @@ -11262,9 +11422,9 @@ export const MODELS = { 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, + input: 0.22, + output: 0.66, + cacheRead: 0.007, cacheWrite: 0, }, contextWindow: 1048576, @@ -11281,9 +11441,9 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null}, input: ["text"], cost: { - input: 1.04226, - output: 2.08452, - cacheRead: 0.086855, + input: 0.890358, + output: 1.780716, + cacheRead: 0.0741965, cacheWrite: 0, }, contextWindow: 1048576, @@ -11300,9 +11460,9 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null}, input: ["text"], cost: { - input: 1.1154, - output: 3.3461999999999996, - cacheRead: 0.03718, + input: 1.12068, + output: 3.36204, + cacheRead: 0.037356, cacheWrite: 0, }, contextWindow: 1048576, @@ -11731,23 +11891,6 @@ export const MODELS = { contextWindow: 262144, maxTokens: 32768, } satisfies Model<"openai-completions">, - "ibm-granite/granite-4.1-8b": { - id: "ibm-granite/granite-4.1-8b", - name: "IBM: Granite 4.1 8B", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: false, - input: ["text"], - cost: { - input: 0.049999999999999996, - output: 0.09999999999999999, - cacheRead: 0.049999999999999996, - cacheWrite: 0, - }, - contextWindow: 131072, - maxTokens: 117964, - } satisfies Model<"openai-completions">, "ibm-granite/granite-4.2-8b": { id: "ibm-granite/granite-4.2-8b", name: "IBM: Granite 4.2 8B", @@ -11804,7 +11947,7 @@ export const MODELS = { } satisfies Model<"openai-completions">, "inclusionai/ling-3.0-flash": { id: "inclusionai/ling-3.0-flash", - name: "Ling-3.0-flash", + name: "inclusionAI: Ling 3.0 Flash", api: "openai-completions", provider: "openrouter", baseUrl: "https://openrouter.ai/api/v1", @@ -11823,7 +11966,7 @@ export const MODELS = { } satisfies Model<"openai-completions">, "inclusionai/ling-3.0-flash-fin": { id: "inclusionai/ling-3.0-flash-fin", - name: "Ling 3.0 Flash Fin", + name: "inclusionAI: Ling 3.0 Flash Fin", api: "openai-completions", provider: "openrouter", baseUrl: "https://openrouter.ai/api/v1", @@ -11842,7 +11985,26 @@ export const MODELS = { } satisfies Model<"openai-completions">, "inclusionai/ling-3.0-flash-fin:free": { id: "inclusionai/ling-3.0-flash-fin:free", - name: "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", @@ -12095,7 +12257,7 @@ export const MODELS = { 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}, + thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"}, input: ["text", "image"], cost: { input: 1.25, @@ -12113,7 +12275,7 @@ export const MODELS = { 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}, + thinkingLevelMap: {"off":null,"minimal":"minimal","low":"low","medium":"medium","high":"high","xhigh":"xhigh","max":"max"}, input: ["text", "image"], cost: { input: 0.09999999999999999, @@ -13586,6 +13748,42 @@ export const MODELS = { 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", @@ -14065,13 +14263,13 @@ export const MODELS = { reasoning: false, input: ["text"], cost: { - input: 0.0875, - output: 0.35, - cacheRead: 0.0175, + input: 0.09, + output: 0.55, + cacheRead: 0, cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 16384, } satisfies Model<"openai-completions">, "qwen/qwen3-235b-a22b-thinking-2507": { id: "qwen/qwen3-235b-a22b-thinking-2507", @@ -14516,13 +14714,13 @@ export const MODELS = { 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.25, + input: 0.08, + output: 0.75, + cacheRead: 0, cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 16384, } satisfies Model<"openai-completions">, "qwen/qwen3.5-397b-a17b": { id: "qwen/qwen3.5-397b-a17b", @@ -14630,13 +14828,13 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":null,"max":null}, input: ["text", "image"], cost: { - input: 0.6, - output: 3.5999999999999996, - cacheRead: 0.12, + input: 0.3, + output: 2, + cacheRead: 0.03, cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 65536, } satisfies Model<"openai-completions">, "qwen/qwen3.6-35b-a3b": { id: "qwen/qwen3.6-35b-a3b", @@ -14826,9 +15024,9 @@ export const MODELS = { contextWindow: 1000000, maxTokens: 131072, } satisfies Model<"openai-completions">, - "qwen/qwen3.8-max": { - id: "qwen/qwen3.8-max", - name: "Qwen: Qwen3.8 Max", + "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", @@ -15644,13 +15842,13 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":null,"medium":null,"high":"high","xhigh":"max","max":null}, input: ["text"], cost: { - input: 0.049999999999999996, - output: 0.16, - cacheRead: 0.013000000000000001, + input: 0.049980000000000004, + output: 0.09996000000000001, + cacheRead: 0.009996000000000001, cacheWrite: 0, }, contextWindow: 1310720, - maxTokens: 393216, + maxTokens: 131072, } satisfies Model<"openai-completions">, "~google/gemini-flash-latest": { id: "~google/gemini-flash-latest", @@ -15698,9 +15896,9 @@ export const MODELS = { thinkingLevelMap: {"minimal":null,"low":"low","medium":null,"high":"high","xhigh":null,"max":"max"}, input: ["text", "image"], cost: { - input: 2.5, - output: 14, - cacheRead: 0.29, + input: 2.5500000000000003, + output: 12.75, + cacheRead: 0.25599998999999996, cacheWrite: 0, }, contextWindow: 1048576, @@ -15818,6 +16016,25 @@ export const MODELS = { 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", @@ -16358,6 +16575,25 @@ export const MODELS = { 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", @@ -17171,6 +17407,25 @@ export const MODELS = { 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", @@ -17263,7 +17518,7 @@ export const MODELS = { cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 16384, } satisfies Model<"openai-completions">, "qwen/qwen3-30b-a3b-instruct-2507": { id: "qwen/qwen3-30b-a3b-instruct-2507", @@ -17450,7 +17705,7 @@ export const MODELS = { cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 16384, } satisfies Model<"openai-completions">, "qwen/qwen3.5-397b-a17b": { id: "qwen/qwen3.5-397b-a17b", @@ -17488,7 +17743,7 @@ export const MODELS = { cacheWrite: 0, }, contextWindow: 262144, - maxTokens: 235929, + maxTokens: 65536, } satisfies Model<"openai-completions">, "qwen/qwen3.6-35b-a3b": { id: "qwen/qwen3.6-35b-a3b", @@ -19261,6 +19516,40 @@ export const MODELS = { 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", @@ -20856,7 +21145,7 @@ export const MODELS = { input: 0.39999999999999997, output: 2.4, cacheRead: 0.04, - cacheWrite: 0.25, + cacheWrite: 0.5, }, contextWindow: 1050000, maxTokens: 128000, @@ -20892,7 +21181,7 @@ export const MODELS = { input: 4, output: 20, cacheRead: 0.39999999999999997, - cacheWrite: 2.5, + cacheWrite: 5, }, contextWindow: 1050000, maxTokens: 128000, @@ -20928,7 +21217,43 @@ export const MODELS = { input: 4, output: 24, cacheRead: 0.39999999999999997, - cacheWrite: 2.5, + 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,