diff --git a/packages/ai-openrouter/src/model-meta.ts b/packages/ai-openrouter/src/model-meta.ts index 42122cd2c..efda72058 100644 --- a/packages/ai-openrouter/src/model-meta.ts +++ b/packages/ai-openrouter/src/model-meta.ts @@ -1083,37 +1083,6 @@ const ARCEE_AI_MAESTRO_REASONING = { image: 0, }, } as const -const ARCEE_AI_SPOTLIGHT = { - id: 'arcee-ai/spotlight', - name: 'Arcee AI: Spotlight', - supports: { - input: ['image', 'text'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'logitBias', - 'maxCompletionTokens', - 'presencePenalty', - 'stop', - 'temperature', - 'topP', - ], - }, - context_window: 131072, - max_output_tokens: 65537, - pricing: { - text: { - input: { - normal: 0.18, - cached: 0, - }, - output: { - normal: 0.18, - }, - }, - image: 0, - }, -} as const const ARCEE_AI_TRINITY_LARGE_THINKING = { id: 'arcee-ai/trinity-large-thinking', name: 'Arcee AI: Trinity Large Thinking', @@ -1213,39 +1182,6 @@ const ARCEE_AI_VIRTUOSO_LARGE = { image: 0, }, } as const -const BAIDU_ERNIE_4_5_VL_28B_A3B = { - id: 'baidu/ernie-4.5-vl-28b-a3b', - name: 'Baidu: ERNIE 4.5 VL 28B A3B', - supports: { - input: ['text', 'image'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'maxCompletionTokens', - 'presencePenalty', - 'reasoning', - 'seed', - 'stop', - 'temperature', - 'toolChoice', - 'topP', - ], - }, - context_window: 131072, - max_output_tokens: 8000, - pricing: { - text: { - input: { - normal: 0.14, - cached: 0, - }, - output: { - normal: 0.56, - }, - }, - image: 0, - }, -} as const const BAIDU_ERNIE_4_5_VL_424B_A47B = { id: 'baidu/ernie-4.5-vl-424b-a47b', name: 'Baidu: ERNIE 4.5 VL 424B A47B ', @@ -2812,15 +2748,15 @@ const GOOGLE_GEMMA_4_31B_IT = { ], }, context_window: 262144, - max_output_tokens: 16384, + max_output_tokens: 8192, pricing: { text: { input: { normal: 0.12, - cached: 0, + cached: 0.09, }, output: { - normal: 0.37, + normal: 0.36, }, }, image: 0, @@ -3394,23 +3330,20 @@ const META_LLAMA_LLAMA_3_8B_INSTRUCT = { 'logitBias', 'maxCompletionTokens', 'presencePenalty', - 'responseFormat', - 'seed', 'stop', 'temperature', 'topP', ], }, context_window: 8192, - max_output_tokens: 8192, pricing: { text: { input: { - normal: 0.04, + normal: 0.14, cached: 0, }, output: { - normal: 0.04, + normal: 0.14, }, }, image: 0, @@ -3478,7 +3411,7 @@ const META_LLAMA_LLAMA_3_1_8B_INSTRUCT = { cached: 0, }, output: { - normal: 0.05, + normal: 0.03, }, }, image: 0, @@ -4116,7 +4049,7 @@ const MINIMAX_MINIMAX_M2_7 = { ], }, context_window: 204800, - max_output_tokens: 131072, + max_output_tokens: 196608, pricing: { text: { input: { @@ -5054,38 +4987,6 @@ const NEX_AGI_DEEPSEEK_V3_1_NEX_N1 = { image: 0, }, } as const -const NOUSRESEARCH_HERMES_2_PRO_LLAMA_3_8B = { - id: 'nousresearch/hermes-2-pro-llama-3-8b', - name: 'NousResearch: Hermes 2 Pro - Llama-3 8B', - supports: { - input: ['text'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'maxCompletionTokens', - 'presencePenalty', - 'responseFormat', - 'seed', - 'stop', - 'temperature', - 'topP', - ], - }, - context_window: 8192, - max_output_tokens: 8192, - pricing: { - text: { - input: { - normal: 0.14, - cached: 0, - }, - output: { - normal: 0.14, - }, - }, - image: 0, - }, -} as const const NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B = { id: 'nousresearch/hermes-3-llama-3.1-405b', name: 'Nous: Hermes 3 405B Instruct', @@ -5437,6 +5338,100 @@ const NVIDIA_NEMOTRON_3_SUPER_120B_A12B_FREE = { image: 0, }, } as const +const NVIDIA_NEMOTRON_3_ULTRA_550B_A55B = { + id: 'nvidia/nemotron-3-ultra-550b-a55b', + name: 'NVIDIA: Nemotron 3 Ultra', + supports: { + input: ['text'], + output: ['text'], + supports: [ + 'frequencyPenalty', + 'logitBias', + 'maxCompletionTokens', + 'presencePenalty', + 'reasoning', + 'responseFormat', + 'seed', + 'stop', + 'temperature', + 'toolChoice', + 'topP', + ], + }, + context_window: 1000000, + max_output_tokens: 16384, + pricing: { + text: { + input: { + normal: 0.5, + cached: 0.15, + }, + output: { + normal: 2.5, + }, + }, + image: 0, + }, +} as const +const NVIDIA_NEMOTRON_3_ULTRA_550B_A55B_FREE = { + id: 'nvidia/nemotron-3-ultra-550b-a55b:free', + name: 'NVIDIA: Nemotron 3 Ultra (free)', + supports: { + input: ['text'], + output: ['text'], + supports: [ + 'maxCompletionTokens', + 'reasoning', + 'seed', + 'temperature', + 'toolChoice', + 'topP', + ], + }, + context_window: 1000000, + max_output_tokens: 65536, + pricing: { + text: { + input: { + normal: 0, + cached: 0, + }, + output: { + normal: 0, + }, + }, + image: 0, + }, +} as const +const NVIDIA_NEMOTRON_3_5_CONTENT_SAFETY_FREE = { + id: 'nvidia/nemotron-3.5-content-safety:free', + name: 'NVIDIA: Nemotron 3.5 Content Safety (free)', + supports: { + input: ['text', 'image'], + output: ['text'], + supports: [ + 'maxCompletionTokens', + 'reasoning', + 'seed', + 'temperature', + 'topP', + ], + }, + context_window: 128000, + max_output_tokens: 8192, + pricing: { + text: { + input: { + normal: 0, + cached: 0, + }, + output: { + normal: 0, + }, + }, + image: 0, + }, +} as const const NVIDIA_NEMOTRON_NANO_12B_V2_VL_FREE = { id: 'nvidia/nemotron-nano-12b-v2-vl:free', name: 'NVIDIA: Nemotron Nano 12B 2 VL (free)', @@ -5713,78 +5708,6 @@ const OPENAI_GPT_4 = { image: 0, }, } as const -const OPENAI_GPT_4_0314 = { - id: 'openai/gpt-4-0314', - name: 'OpenAI: GPT-4 (older v0314)', - supports: { - input: ['text'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'logitBias', - 'logprobs', - 'maxCompletionTokens', - 'presencePenalty', - 'responseFormat', - 'seed', - 'stop', - 'temperature', - 'toolChoice', - 'topLogprobs', - 'topP', - ], - }, - context_window: 8191, - max_output_tokens: 4096, - pricing: { - text: { - input: { - normal: 30, - cached: 0, - }, - output: { - normal: 60, - }, - }, - image: 0, - }, -} as const -const OPENAI_GPT_4_1106_PREVIEW = { - id: 'openai/gpt-4-1106-preview', - name: 'OpenAI: GPT-4 Turbo (older v1106)', - supports: { - input: ['text'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'logitBias', - 'logprobs', - 'maxCompletionTokens', - 'presencePenalty', - 'responseFormat', - 'seed', - 'stop', - 'temperature', - 'toolChoice', - 'topLogprobs', - 'topP', - ], - }, - context_window: 128000, - max_output_tokens: 4096, - pricing: { - text: { - input: { - normal: 10, - cached: 0, - }, - output: { - normal: 30, - }, - }, - image: 0, - }, -} as const const OPENAI_GPT_4_TURBO = { id: 'openai/gpt-4-turbo', name: 'OpenAI: GPT-4 Turbo', @@ -8237,7 +8160,7 @@ const QWEN_QWEN3_30B_A3B = { ], }, context_window: 131072, - max_output_tokens: 20000, + max_output_tokens: 16384, pricing: { text: { input: { @@ -8275,11 +8198,11 @@ const QWEN_QWEN3_30B_A3B_INSTRUCT_2507 = { pricing: { text: { input: { - normal: 0.0428, + normal: 0.04815, cached: 0, }, output: { - normal: 0.1716, + normal: 0.19305, }, }, image: 0, @@ -9284,15 +9207,15 @@ const QWEN_QWEN3_6_27B = { ], }, context_window: 262144, - max_output_tokens: 262140, + max_output_tokens: 131072, pricing: { text: { input: { - normal: 0.29, + normal: 0.289, cached: 0, }, output: { - normal: 3.2, + normal: 2.4, }, }, image: 0, @@ -9467,6 +9390,40 @@ const QWEN_QWEN3_7_MAX = { image: 0, }, } as const +const QWEN_QWEN3_7_PLUS = { + id: 'qwen/qwen3.7-plus', + name: 'Qwen: Qwen3.7 Plus', + supports: { + input: ['text', 'image'], + output: ['text'], + supports: [ + 'logprobs', + 'maxCompletionTokens', + 'presencePenalty', + 'reasoning', + 'responseFormat', + 'seed', + 'temperature', + 'toolChoice', + 'topLogprobs', + 'topP', + ], + }, + context_window: 1000000, + max_output_tokens: 65536, + pricing: { + text: { + input: { + normal: 0.4, + cached: 0.58, + }, + output: { + normal: 1.6, + }, + }, + image: 0, + }, +} as const const REKAAI_REKA_EDGE = { id: 'rekaai/reka-edge', name: 'Reka Edge', @@ -9584,38 +9541,6 @@ const RELACE_RELACE_SEARCH = { image: 0, }, } as const -const SAO10K_L3_EURYALE_70B = { - id: 'sao10k/l3-euryale-70b', - name: 'Sao10k: Llama 3 Euryale 70B v2.1', - supports: { - input: ['text'], - output: ['text'], - supports: [ - 'frequencyPenalty', - 'maxCompletionTokens', - 'presencePenalty', - 'seed', - 'stop', - 'temperature', - 'toolChoice', - 'topP', - ], - }, - context_window: 8192, - max_output_tokens: 8192, - pricing: { - text: { - input: { - normal: 1.48, - cached: 0, - }, - output: { - normal: 1.48, - }, - }, - image: 0, - }, -} as const const SAO10K_L3_LUNARIS_8B = { id: 'sao10k/l3-lunaris-8b', name: 'Sao10K: Llama 3 8B Lunaris', @@ -10273,7 +10198,6 @@ const XIAOMI_MIMO_V2_FLASH = { 'presencePenalty', 'reasoning', 'responseFormat', - 'seed', 'stop', 'temperature', 'toolChoice', @@ -11141,17 +11065,6 @@ export type OpenRouterModelOptionsByName = { | 'temperature' | 'topP' > - [ARCEE_AI_SPOTLIGHT.id]: OpenRouterCommonOptions & - Pick< - OpenRouterBaseOptions, - | 'frequencyPenalty' - | 'logitBias' - | 'maxCompletionTokens' - | 'presencePenalty' - | 'stop' - | 'temperature' - | 'topP' - > [ARCEE_AI_TRINITY_LARGE_THINKING.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, @@ -11191,19 +11104,6 @@ export type OpenRouterModelOptionsByName = { | 'toolChoice' | 'topP' > - [BAIDU_ERNIE_4_5_VL_28B_A3B.id]: OpenRouterCommonOptions & - Pick< - OpenRouterBaseOptions, - | 'frequencyPenalty' - | 'maxCompletionTokens' - | 'presencePenalty' - | 'reasoning' - | 'seed' - | 'stop' - | 'temperature' - | 'toolChoice' - | 'topP' - > [BAIDU_ERNIE_4_5_VL_424B_A47B.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, @@ -12032,8 +11932,6 @@ export type OpenRouterModelOptionsByName = { | 'logitBias' | 'maxCompletionTokens' | 'presencePenalty' - | 'responseFormat' - | 'seed' | 'stop' | 'temperature' | 'topP' @@ -12670,18 +12568,6 @@ export type OpenRouterModelOptionsByName = { | 'toolChoice' | 'topP' > - [NOUSRESEARCH_HERMES_2_PRO_LLAMA_3_8B.id]: OpenRouterCommonOptions & - Pick< - OpenRouterBaseOptions, - | 'frequencyPenalty' - | 'maxCompletionTokens' - | 'presencePenalty' - | 'responseFormat' - | 'seed' - | 'stop' - | 'temperature' - | 'topP' - > [NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, @@ -12818,82 +12704,79 @@ export type OpenRouterModelOptionsByName = { | 'toolChoice' | 'topP' > - [NVIDIA_NEMOTRON_NANO_12B_V2_VL_FREE.id]: OpenRouterCommonOptions & + [NVIDIA_NEMOTRON_3_ULTRA_550B_A55B.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, + | 'frequencyPenalty' + | 'logitBias' | 'maxCompletionTokens' + | 'presencePenalty' | 'reasoning' + | 'responseFormat' | 'seed' + | 'stop' | 'temperature' | 'toolChoice' | 'topP' > - [NVIDIA_NEMOTRON_NANO_9B_V2.id]: OpenRouterCommonOptions & + [NVIDIA_NEMOTRON_3_ULTRA_550B_A55B_FREE.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, - | 'frequencyPenalty' - | 'logitBias' | 'maxCompletionTokens' - | 'presencePenalty' | 'reasoning' - | 'responseFormat' | 'seed' - | 'stop' | 'temperature' | 'toolChoice' | 'topP' > - [NVIDIA_NEMOTRON_NANO_9B_V2_FREE.id]: OpenRouterCommonOptions & + [NVIDIA_NEMOTRON_3_5_CONTENT_SAFETY_FREE.id]: OpenRouterCommonOptions & + Pick< + OpenRouterBaseOptions, + 'maxCompletionTokens' | 'reasoning' | 'seed' | 'temperature' | 'topP' + > + [NVIDIA_NEMOTRON_NANO_12B_V2_VL_FREE.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'maxCompletionTokens' | 'reasoning' - | 'responseFormat' | 'seed' | 'temperature' | 'toolChoice' | 'topP' > - [OPENAI_GPT_3_5_TURBO.id]: OpenRouterCommonOptions & + [NVIDIA_NEMOTRON_NANO_9B_V2.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' | 'logitBias' - | 'logprobs' | 'maxCompletionTokens' | 'presencePenalty' + | 'reasoning' | 'responseFormat' | 'seed' | 'stop' | 'temperature' | 'toolChoice' - | 'topLogprobs' | 'topP' > - [OPENAI_GPT_3_5_TURBO_0613.id]: OpenRouterCommonOptions & + [NVIDIA_NEMOTRON_NANO_9B_V2_FREE.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, - | 'frequencyPenalty' - | 'logitBias' - | 'logprobs' | 'maxCompletionTokens' - | 'presencePenalty' + | 'reasoning' | 'responseFormat' | 'seed' - | 'stop' | 'temperature' | 'toolChoice' - | 'topLogprobs' | 'topP' > - [OPENAI_GPT_3_5_TURBO_16K.id]: OpenRouterCommonOptions & + [OPENAI_GPT_3_5_TURBO.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' | 'logitBias' | 'logprobs' | 'maxCompletionTokens' - | 'maxCompletionTokens' | 'presencePenalty' | 'responseFormat' | 'seed' @@ -12903,7 +12786,7 @@ export type OpenRouterModelOptionsByName = { | 'topLogprobs' | 'topP' > - [OPENAI_GPT_3_5_TURBO_INSTRUCT.id]: OpenRouterCommonOptions & + [OPENAI_GPT_3_5_TURBO_0613.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' @@ -12915,10 +12798,11 @@ export type OpenRouterModelOptionsByName = { | 'seed' | 'stop' | 'temperature' + | 'toolChoice' | 'topLogprobs' | 'topP' > - [OPENAI_GPT_4.id]: OpenRouterCommonOptions & + [OPENAI_GPT_3_5_TURBO_16K.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' @@ -12935,7 +12819,7 @@ export type OpenRouterModelOptionsByName = { | 'topLogprobs' | 'topP' > - [OPENAI_GPT_4_0314.id]: OpenRouterCommonOptions & + [OPENAI_GPT_3_5_TURBO_INSTRUCT.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' @@ -12947,17 +12831,17 @@ export type OpenRouterModelOptionsByName = { | 'seed' | 'stop' | 'temperature' - | 'toolChoice' | 'topLogprobs' | 'topP' > - [OPENAI_GPT_4_1106_PREVIEW.id]: OpenRouterCommonOptions & + [OPENAI_GPT_4.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' | 'logitBias' | 'logprobs' | 'maxCompletionTokens' + | 'maxCompletionTokens' | 'presencePenalty' | 'responseFormat' | 'seed' @@ -14364,48 +14248,50 @@ export type OpenRouterModelOptionsByName = { | 'topLogprobs' | 'topP' > - [REKAAI_REKA_EDGE.id]: OpenRouterCommonOptions & + [QWEN_QWEN3_7_PLUS.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, - | 'frequencyPenalty' + | 'logprobs' | 'maxCompletionTokens' | 'presencePenalty' + | 'reasoning' + | 'responseFormat' | 'seed' - | 'stop' | 'temperature' | 'toolChoice' + | 'topLogprobs' | 'topP' > - [REKAAI_REKA_FLASH_3.id]: OpenRouterCommonOptions & + [REKAAI_REKA_EDGE.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, | 'frequencyPenalty' | 'maxCompletionTokens' | 'presencePenalty' - | 'reasoning' | 'seed' | 'stop' | 'temperature' + | 'toolChoice' | 'topP' > - [RELACE_RELACE_APPLY_3.id]: OpenRouterCommonOptions & - Pick - [RELACE_RELACE_SEARCH.id]: OpenRouterCommonOptions & + [REKAAI_REKA_FLASH_3.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, + | 'frequencyPenalty' | 'maxCompletionTokens' + | 'presencePenalty' + | 'reasoning' | 'seed' | 'stop' | 'temperature' - | 'toolChoice' | 'topP' > - [SAO10K_L3_EURYALE_70B.id]: OpenRouterCommonOptions & + [RELACE_RELACE_APPLY_3.id]: OpenRouterCommonOptions & + Pick + [RELACE_RELACE_SEARCH.id]: OpenRouterCommonOptions & Pick< OpenRouterBaseOptions, - | 'frequencyPenalty' | 'maxCompletionTokens' - | 'presencePenalty' | 'seed' | 'stop' | 'temperature' @@ -14675,7 +14561,6 @@ export type OpenRouterModelOptionsByName = { | 'presencePenalty' | 'reasoning' | 'responseFormat' - | 'seed' | 'stop' | 'temperature' | 'toolChoice' @@ -14943,11 +14828,9 @@ export type OpenRouterModelInputModalitiesByName = { [ANTHROPIC_CLAUDE_SONNET_4_6.id]: ReadonlyArray<'text' | 'image' | 'document'> [ARCEE_AI_CODER_LARGE.id]: ReadonlyArray<'text'> [ARCEE_AI_MAESTRO_REASONING.id]: ReadonlyArray<'text'> - [ARCEE_AI_SPOTLIGHT.id]: ReadonlyArray<'image' | 'text'> [ARCEE_AI_TRINITY_LARGE_THINKING.id]: ReadonlyArray<'text'> [ARCEE_AI_TRINITY_MINI.id]: ReadonlyArray<'text'> [ARCEE_AI_VIRTUOSO_LARGE.id]: ReadonlyArray<'text'> - [BAIDU_ERNIE_4_5_VL_28B_A3B.id]: ReadonlyArray<'text' | 'image'> [BAIDU_ERNIE_4_5_VL_424B_A47B.id]: ReadonlyArray<'image' | 'text'> [BYTEDANCE_SEED_SEED_1_6.id]: ReadonlyArray<'image' | 'text' | 'video'> [BYTEDANCE_SEED_SEED_1_6_FLASH.id]: ReadonlyArray<'image' | 'text' | 'video'> @@ -15098,7 +14981,6 @@ export type OpenRouterModelInputModalitiesByName = { [MORPH_MORPH_V3_FAST.id]: ReadonlyArray<'text'> [MORPH_MORPH_V3_LARGE.id]: ReadonlyArray<'text'> [NEX_AGI_DEEPSEEK_V3_1_NEX_N1.id]: ReadonlyArray<'text'> - [NOUSRESEARCH_HERMES_2_PRO_LLAMA_3_8B.id]: ReadonlyArray<'text'> [NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B.id]: ReadonlyArray<'text'> [NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B_FREE.id]: ReadonlyArray<'text'> [NOUSRESEARCH_HERMES_3_LLAMA_3_1_70B.id]: ReadonlyArray<'text'> @@ -15112,6 +14994,9 @@ export type OpenRouterModelInputModalitiesByName = { > [NVIDIA_NEMOTRON_3_SUPER_120B_A12B.id]: ReadonlyArray<'text'> [NVIDIA_NEMOTRON_3_SUPER_120B_A12B_FREE.id]: ReadonlyArray<'text'> + [NVIDIA_NEMOTRON_3_ULTRA_550B_A55B.id]: ReadonlyArray<'text'> + [NVIDIA_NEMOTRON_3_ULTRA_550B_A55B_FREE.id]: ReadonlyArray<'text'> + [NVIDIA_NEMOTRON_3_5_CONTENT_SAFETY_FREE.id]: ReadonlyArray<'text' | 'image'> [NVIDIA_NEMOTRON_NANO_12B_V2_VL_FREE.id]: ReadonlyArray< 'image' | 'text' | 'video' > @@ -15122,8 +15007,6 @@ export type OpenRouterModelInputModalitiesByName = { [OPENAI_GPT_3_5_TURBO_16K.id]: ReadonlyArray<'text'> [OPENAI_GPT_3_5_TURBO_INSTRUCT.id]: ReadonlyArray<'text'> [OPENAI_GPT_4.id]: ReadonlyArray<'text'> - [OPENAI_GPT_4_0314.id]: ReadonlyArray<'text'> - [OPENAI_GPT_4_1106_PREVIEW.id]: ReadonlyArray<'text'> [OPENAI_GPT_4_TURBO.id]: ReadonlyArray<'text' | 'image'> [OPENAI_GPT_4_TURBO_PREVIEW.id]: ReadonlyArray<'text'> [OPENAI_GPT_4_1.id]: ReadonlyArray<'image' | 'text' | 'document'> @@ -15243,11 +15126,11 @@ export type OpenRouterModelInputModalitiesByName = { [QWEN_QWEN3_6_MAX_PREVIEW.id]: ReadonlyArray<'text'> [QWEN_QWEN3_6_PLUS.id]: ReadonlyArray<'text' | 'image' | 'video'> [QWEN_QWEN3_7_MAX.id]: ReadonlyArray<'text'> + [QWEN_QWEN3_7_PLUS.id]: ReadonlyArray<'text' | 'image'> [REKAAI_REKA_EDGE.id]: ReadonlyArray<'image' | 'text' | 'video'> [REKAAI_REKA_FLASH_3.id]: ReadonlyArray<'text'> [RELACE_RELACE_APPLY_3.id]: ReadonlyArray<'text'> [RELACE_RELACE_SEARCH.id]: ReadonlyArray<'text'> - [SAO10K_L3_EURYALE_70B.id]: ReadonlyArray<'text'> [SAO10K_L3_LUNARIS_8B.id]: ReadonlyArray<'text'> [SAO10K_L3_1_70B_HANAMI_X1.id]: ReadonlyArray<'text'> [SAO10K_L3_1_EURYALE_70B.id]: ReadonlyArray<'text'> @@ -15327,11 +15210,9 @@ export const OPENROUTER_CHAT_MODELS = [ ANTHROPIC_CLAUDE_SONNET_4_6.id, ARCEE_AI_CODER_LARGE.id, ARCEE_AI_MAESTRO_REASONING.id, - ARCEE_AI_SPOTLIGHT.id, ARCEE_AI_TRINITY_LARGE_THINKING.id, ARCEE_AI_TRINITY_MINI.id, ARCEE_AI_VIRTUOSO_LARGE.id, - BAIDU_ERNIE_4_5_VL_28B_A3B.id, BAIDU_ERNIE_4_5_VL_424B_A47B.id, BYTEDANCE_SEED_SEED_1_6.id, BYTEDANCE_SEED_SEED_1_6_FLASH.id, @@ -15448,7 +15329,6 @@ export const OPENROUTER_CHAT_MODELS = [ MORPH_MORPH_V3_FAST.id, MORPH_MORPH_V3_LARGE.id, NEX_AGI_DEEPSEEK_V3_1_NEX_N1.id, - NOUSRESEARCH_HERMES_2_PRO_LLAMA_3_8B.id, NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B.id, NOUSRESEARCH_HERMES_3_LLAMA_3_1_405B_FREE.id, NOUSRESEARCH_HERMES_3_LLAMA_3_1_70B.id, @@ -15460,6 +15340,9 @@ export const OPENROUTER_CHAT_MODELS = [ NVIDIA_NEMOTRON_3_NANO_OMNI_30B_A3B_REASONING_FREE.id, NVIDIA_NEMOTRON_3_SUPER_120B_A12B.id, NVIDIA_NEMOTRON_3_SUPER_120B_A12B_FREE.id, + NVIDIA_NEMOTRON_3_ULTRA_550B_A55B.id, + NVIDIA_NEMOTRON_3_ULTRA_550B_A55B_FREE.id, + NVIDIA_NEMOTRON_3_5_CONTENT_SAFETY_FREE.id, NVIDIA_NEMOTRON_NANO_12B_V2_VL_FREE.id, NVIDIA_NEMOTRON_NANO_9B_V2.id, NVIDIA_NEMOTRON_NANO_9B_V2_FREE.id, @@ -15468,8 +15351,6 @@ export const OPENROUTER_CHAT_MODELS = [ OPENAI_GPT_3_5_TURBO_16K.id, OPENAI_GPT_3_5_TURBO_INSTRUCT.id, OPENAI_GPT_4.id, - OPENAI_GPT_4_0314.id, - OPENAI_GPT_4_1106_PREVIEW.id, OPENAI_GPT_4_TURBO.id, OPENAI_GPT_4_TURBO_PREVIEW.id, OPENAI_GPT_4_1.id, @@ -15585,11 +15466,11 @@ export const OPENROUTER_CHAT_MODELS = [ QWEN_QWEN3_6_MAX_PREVIEW.id, QWEN_QWEN3_6_PLUS.id, QWEN_QWEN3_7_MAX.id, + QWEN_QWEN3_7_PLUS.id, REKAAI_REKA_EDGE.id, REKAAI_REKA_FLASH_3.id, RELACE_RELACE_APPLY_3.id, RELACE_RELACE_SEARCH.id, - SAO10K_L3_EURYALE_70B.id, SAO10K_L3_LUNARIS_8B.id, SAO10K_L3_1_70B_HANAMI_X1.id, SAO10K_L3_1_EURYALE_70B.id, diff --git a/scripts/.sync-models-last-run b/scripts/.sync-models-last-run index be7a0996a..bebb5addd 100644 --- a/scripts/.sync-models-last-run +++ b/scripts/.sync-models-last-run @@ -1 +1 @@ -1780482493 +1780821668 diff --git a/scripts/openrouter.models.json b/scripts/openrouter.models.json index bcc2eeacd..dc7cd78de 100644 --- a/scripts/openrouter.models.json +++ b/scripts/openrouter.models.json @@ -1878,51 +1878,6 @@ "details": "/api/v1/models/arcee-ai/maestro-reasoning/endpoints" } }, - { - "id": "arcee-ai/spotlight", - "canonical_slug": "arcee-ai/spotlight", - "hugging_face_id": "", - "name": "Arcee AI: Spotlight", - "created": 1746481552, - "description": "Spotlight is a 7‑billion‑parameter vision‑language model derived from Qwen 2.5‑VL and fine‑tuned by Arcee AI for tight image‑text grounding tasks. It offers a 32 k‑token context window, enabling rich multimodal...", - "context_length": 131072, - "architecture": { - "modality": "text+image->text", - "input_modalities": ["image", "text"], - "output_modalities": ["text"], - "tokenizer": "Other", - "instruct_type": null - }, - "pricing": { - "prompt": "0.00000018", - "completion": "0.00000018" - }, - "top_provider": { - "context_length": 131072, - "max_completion_tokens": 65537, - "is_moderated": false - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "logit_bias", - "max_tokens", - "min_p", - "presence_penalty", - "repetition_penalty", - "stop", - "temperature", - "top_k", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2025-03-31", - "expiration_date": null, - "links": { - "details": "/api/v1/models/arcee-ai/spotlight/endpoints" - } - }, { "id": "arcee-ai/trinity-large-thinking", "canonical_slug": "arcee-ai/trinity-large-thinking", @@ -2079,54 +2034,6 @@ "details": "/api/v1/models/arcee-ai/virtuoso-large/endpoints" } }, - { - "id": "baidu/ernie-4.5-vl-28b-a3b", - "canonical_slug": "baidu/ernie-4.5-vl-28b-a3b", - "hugging_face_id": "baidu/ERNIE-4.5-VL-28B-A3B-PT", - "name": "Baidu: ERNIE 4.5 VL 28B A3B", - "created": 1755032836, - "description": "A powerful multimodal Mixture-of-Experts chat model featuring 28B total parameters with 3B activated per token, delivering exceptional text and vision understanding through its innovative heterogeneous MoE structure with modality-isolated routing....", - "context_length": 131072, - "architecture": { - "modality": "text+image->text", - "input_modalities": ["text", "image"], - "output_modalities": ["text"], - "tokenizer": "Other", - "instruct_type": null - }, - "pricing": { - "prompt": "0.00000014", - "completion": "0.00000056" - }, - "top_provider": { - "context_length": 30000, - "max_completion_tokens": 8000, - "is_moderated": false - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "include_reasoning", - "max_tokens", - "presence_penalty", - "reasoning", - "repetition_penalty", - "seed", - "stop", - "temperature", - "tool_choice", - "tools", - "top_k", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2025-03-31", - "expiration_date": null, - "links": { - "details": "/api/v1/models/baidu/ernie-4.5-vl-28b-a3b/endpoints" - } - }, { "id": "baidu/ernie-4.5-vl-424b-a47b", "canonical_slug": "baidu/ernie-4.5-vl-424b-a47b", @@ -3016,7 +2923,7 @@ "default_parameters": {}, "supported_voices": null, "knowledge_cutoff": "2024-07-31", - "expiration_date": null, + "expiration_date": "2026-06-11", "links": { "details": "/api/v1/models/deepseek/deepseek-r1-distill-llama-70b/endpoints" } @@ -4628,11 +4535,12 @@ }, "pricing": { "prompt": "0.00000012", - "completion": "0.00000037" + "completion": "0.00000036", + "input_cache_read": "0.00000009" }, "top_provider": { - "context_length": 262144, - "max_completion_tokens": 16384, + "context_length": 256000, + "max_completion_tokens": 8192, "is_moderated": false }, "per_request_limits": null, @@ -5564,7 +5472,7 @@ "default_parameters": {}, "supported_voices": null, "knowledge_cutoff": "2023-12-31", - "expiration_date": null, + "expiration_date": "2026-06-19", "links": { "details": "/api/v1/models/meta-llama/llama-3-70b-instruct/endpoints" } @@ -5585,12 +5493,12 @@ "instruct_type": "llama3" }, "pricing": { - "prompt": "0.00000004", - "completion": "0.00000004" + "prompt": "0.00000014", + "completion": "0.00000014" }, "top_provider": { "context_length": 8192, - "max_completion_tokens": 8192, + "max_completion_tokens": null, "is_moderated": false }, "per_request_limits": null, @@ -5601,8 +5509,6 @@ "min_p", "presence_penalty", "repetition_penalty", - "response_format", - "seed", "stop", "temperature", "top_k", @@ -5683,10 +5589,10 @@ }, "pricing": { "prompt": "0.00000002", - "completion": "0.00000005" + "completion": "0.00000003" }, "top_provider": { - "context_length": 16384, + "context_length": 131072, "max_completion_tokens": 16384, "is_moderated": false }, @@ -6653,7 +6559,7 @@ }, "top_provider": { "context_length": 196608, - "max_completion_tokens": 131072, + "max_completion_tokens": 196608, "is_moderated": false }, "per_request_limits": null, @@ -8167,52 +8073,6 @@ "details": "/api/v1/models/nex-agi/deepseek-v3.1-nex-n1/endpoints" } }, - { - "id": "nousresearch/hermes-2-pro-llama-3-8b", - "canonical_slug": "nousresearch/hermes-2-pro-llama-3-8b", - "hugging_face_id": "NousResearch/Hermes-2-Pro-Llama-3-8B", - "name": "NousResearch: Hermes 2 Pro - Llama-3 8B", - "created": 1716768000, - "description": "Hermes 2 Pro is an upgraded, retrained version of Nous Hermes 2, consisting of an updated and cleaned version of the OpenHermes 2.5 Dataset, as well as a newly introduced...", - "context_length": 8192, - "architecture": { - "modality": "text->text", - "input_modalities": ["text"], - "output_modalities": ["text"], - "tokenizer": "Llama3", - "instruct_type": "chatml" - }, - "pricing": { - "prompt": "0.00000014", - "completion": "0.00000014" - }, - "top_provider": { - "context_length": 8192, - "max_completion_tokens": 8192, - "is_moderated": false - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "max_tokens", - "presence_penalty", - "repetition_penalty", - "response_format", - "seed", - "stop", - "structured_outputs", - "temperature", - "top_k", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2023-12-31", - "expiration_date": "2026-06-05", - "links": { - "details": "/api/v1/models/nousresearch/hermes-2-pro-llama-3-8b/endpoints" - } - }, { "id": "nousresearch/hermes-3-llama-3.1-405b", "canonical_slug": "nousresearch/hermes-3-llama-3.1-405b", @@ -8763,6 +8623,164 @@ "details": "/api/v1/models/nvidia/nemotron-3-super-120b-a12b-20230311/endpoints" } }, + { + "id": "nvidia/nemotron-3-ultra-550b-a55b", + "canonical_slug": "nvidia/nemotron-3-ultra-550b-a55b-20260604", + "hugging_face_id": "nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B-BF16", + "name": "NVIDIA: Nemotron 3 Ultra", + "created": 1780551208, + "description": "NVIDIA Nemotron 3 Ultra is an open frontier-reasoning and orchestration model from NVIDIA, with 55B active parameters out of 550B total (MoE). Built on a hybrid Transformer-Mamba mixture-of-experts architecture, it...", + "context_length": 1000000, + "architecture": { + "modality": "text->text", + "input_modalities": ["text"], + "output_modalities": ["text"], + "tokenizer": "Other", + "instruct_type": null + }, + "pricing": { + "prompt": "0.0000005", + "completion": "0.0000025", + "input_cache_read": "0.00000015" + }, + "top_provider": { + "context_length": 262144, + "max_completion_tokens": 16384, + "is_moderated": false + }, + "per_request_limits": null, + "supported_parameters": [ + "frequency_penalty", + "include_reasoning", + "logit_bias", + "max_tokens", + "min_p", + "presence_penalty", + "reasoning", + "repetition_penalty", + "response_format", + "seed", + "stop", + "structured_outputs", + "temperature", + "tool_choice", + "tools", + "top_k", + "top_p" + ], + "default_parameters": { + "temperature": 1, + "top_p": 0.95, + "top_k": null, + "frequency_penalty": null, + "presence_penalty": null, + "repetition_penalty": null + }, + "supported_voices": null, + "knowledge_cutoff": null, + "expiration_date": null, + "links": { + "details": "/api/v1/models/nvidia/nemotron-3-ultra-550b-a55b-20260604/endpoints" + } + }, + { + "id": "nvidia/nemotron-3-ultra-550b-a55b:free", + "canonical_slug": "nvidia/nemotron-3-ultra-550b-a55b-20260604", + "hugging_face_id": "nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B-BF16", + "name": "NVIDIA: Nemotron 3 Ultra (free)", + "created": 1780551208, + "description": "NVIDIA Nemotron 3 Ultra is an open frontier-reasoning and orchestration model from NVIDIA, with 55B active parameters out of 550B total (MoE). Built on a hybrid Transformer-Mamba mixture-of-experts architecture, it...", + "context_length": 1000000, + "architecture": { + "modality": "text->text", + "input_modalities": ["text"], + "output_modalities": ["text"], + "tokenizer": "Other", + "instruct_type": null + }, + "pricing": { + "prompt": "0", + "completion": "0" + }, + "top_provider": { + "context_length": 1000000, + "max_completion_tokens": 65536, + "is_moderated": false + }, + "per_request_limits": null, + "supported_parameters": [ + "include_reasoning", + "max_tokens", + "reasoning", + "seed", + "temperature", + "tool_choice", + "tools", + "top_p" + ], + "default_parameters": { + "temperature": 1, + "top_p": 0.95, + "top_k": null, + "frequency_penalty": null, + "presence_penalty": null, + "repetition_penalty": null + }, + "supported_voices": null, + "knowledge_cutoff": null, + "expiration_date": null, + "links": { + "details": "/api/v1/models/nvidia/nemotron-3-ultra-550b-a55b-20260604/endpoints" + } + }, + { + "id": "nvidia/nemotron-3.5-content-safety:free", + "canonical_slug": "nvidia/nemotron-3.5-content-safety-20260604", + "hugging_face_id": "nvidia/Nemotron-3.5-Content-Safety", + "name": "NVIDIA: Nemotron 3.5 Content Safety (free)", + "created": 1780581864, + "description": "NVIDIA Nemotron 3.5 Content Safety is a compact 4B-parameter multimodal guardrail model from NVIDIA, fine-tuned from Google Gemma-3-4B. It moderates both inputs to and responses from LLMs and VLMs, accepting...", + "context_length": 128000, + "architecture": { + "modality": "text+image->text", + "input_modalities": ["text", "image"], + "output_modalities": ["text"], + "tokenizer": "Other", + "instruct_type": null + }, + "pricing": { + "prompt": "0", + "completion": "0" + }, + "top_provider": { + "context_length": 128000, + "max_completion_tokens": 8192, + "is_moderated": false + }, + "per_request_limits": null, + "supported_parameters": [ + "include_reasoning", + "max_tokens", + "reasoning", + "seed", + "temperature", + "top_p" + ], + "default_parameters": { + "temperature": null, + "top_p": null, + "top_k": null, + "frequency_penalty": null, + "presence_penalty": null, + "repetition_penalty": null + }, + "supported_voices": null, + "knowledge_cutoff": null, + "expiration_date": null, + "links": { + "details": "/api/v1/models/nvidia/nemotron-3.5-content-safety-20260604/endpoints" + } + }, { "id": "nvidia/nemotron-nano-12b-v2-vl:free", "canonical_slug": "nvidia/nemotron-nano-12b-v2-vl", @@ -8860,7 +8878,7 @@ }, "supported_voices": null, "knowledge_cutoff": "2025-03-31", - "expiration_date": null, + "expiration_date": "2026-06-11", "links": { "details": "/api/v1/models/nvidia/nemotron-nano-9b-v2/endpoints" } @@ -9159,105 +9177,6 @@ "details": "/api/v1/models/openai/gpt-4/endpoints" } }, - { - "id": "openai/gpt-4-0314", - "canonical_slug": "openai/gpt-4-0314", - "hugging_face_id": null, - "name": "OpenAI: GPT-4 (older v0314)", - "created": 1685232000, - "description": "GPT-4-0314 is the first version of GPT-4 released, with a context length of 8,192 tokens, and was supported until June 14. Training data: up to Sep 2021.", - "context_length": 8191, - "architecture": { - "modality": "text->text", - "input_modalities": ["text"], - "output_modalities": ["text"], - "tokenizer": "GPT", - "instruct_type": null - }, - "pricing": { - "prompt": "0.00003", - "completion": "0.00006" - }, - "top_provider": { - "context_length": 8191, - "max_completion_tokens": 4096, - "is_moderated": true - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "logit_bias", - "logprobs", - "max_tokens", - "presence_penalty", - "response_format", - "seed", - "stop", - "structured_outputs", - "temperature", - "tool_choice", - "tools", - "top_logprobs", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2021-09-30", - "expiration_date": null, - "links": { - "details": "/api/v1/models/openai/gpt-4-0314/endpoints" - } - }, - { - "id": "openai/gpt-4-1106-preview", - "canonical_slug": "openai/gpt-4-1106-preview", - "hugging_face_id": null, - "name": "OpenAI: GPT-4 Turbo (older v1106)", - "created": 1699228800, - "description": "The latest GPT-4 Turbo model with vision capabilities. Vision requests can now use JSON mode and function calling.\n\nTraining data: up to April 2023.", - "context_length": 128000, - "architecture": { - "modality": "text->text", - "input_modalities": ["text"], - "output_modalities": ["text"], - "tokenizer": "GPT", - "instruct_type": null - }, - "pricing": { - "prompt": "0.00001", - "completion": "0.00003", - "web_search": "0.01" - }, - "top_provider": { - "context_length": 128000, - "max_completion_tokens": 4096, - "is_moderated": true - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "logit_bias", - "logprobs", - "max_tokens", - "presence_penalty", - "response_format", - "seed", - "stop", - "structured_outputs", - "temperature", - "tool_choice", - "tools", - "top_logprobs", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2023-04-30", - "expiration_date": null, - "links": { - "details": "/api/v1/models/openai/gpt-4-1106-preview/endpoints" - } - }, { "id": "openai/gpt-4-turbo", "canonical_slug": "openai/gpt-4-turbo", @@ -13184,7 +13103,7 @@ }, "top_provider": { "context_length": 40960, - "max_completion_tokens": 20000, + "max_completion_tokens": 16384, "is_moderated": false }, "per_request_limits": null, @@ -13216,7 +13135,7 @@ }, "supported_voices": null, "knowledge_cutoff": "2025-03-31", - "expiration_date": "2026-06-05", + "expiration_date": null, "links": { "details": "/api/v1/models/qwen/qwen3-30b-a3b-04-28/endpoints" } @@ -13237,8 +13156,8 @@ "instruct_type": null }, "pricing": { - "prompt": "0.0000000428", - "completion": "0.0000001716" + "prompt": "0.00000004815", + "completion": "0.00000019305" }, "top_provider": { "context_length": 128000, @@ -14830,12 +14749,12 @@ "instruct_type": null }, "pricing": { - "prompt": "0.00000029", - "completion": "0.0000032" + "prompt": "0.000000289", + "completion": "0.0000024" }, "top_provider": { - "context_length": 262140, - "max_completion_tokens": 262140, + "context_length": 131072, + "max_completion_tokens": 131072, "is_moderated": false }, "per_request_limits": null, @@ -15140,6 +15059,56 @@ "details": "/api/v1/models/qwen/qwen3.7-max-20260520/endpoints" } }, + { + "id": "qwen/qwen3.7-plus", + "canonical_slug": "qwen/qwen3.7-plus-20260602", + "hugging_face_id": null, + "name": "Qwen: Qwen3.7 Plus", + "created": 1780491783, + "description": "Qwen3.7-Plus is a cost-effective model in Alibaba's Qwen3.7 series. It supports text and image input with text output, building on the series' text capabilities with a comprehensive upgrade to its...", + "context_length": 1000000, + "architecture": { + "modality": "text+image->text", + "input_modalities": ["text", "image"], + "output_modalities": ["text"], + "tokenizer": "Qwen", + "instruct_type": null + }, + "pricing": { + "prompt": "0.0000004", + "completion": "0.0000016", + "input_cache_read": "0.00000008", + "input_cache_write": "0.0000005" + }, + "top_provider": { + "context_length": 1000000, + "max_completion_tokens": 65536, + "is_moderated": false + }, + "per_request_limits": null, + "supported_parameters": [ + "include_reasoning", + "logprobs", + "max_tokens", + "presence_penalty", + "reasoning", + "response_format", + "seed", + "structured_outputs", + "temperature", + "tool_choice", + "tools", + "top_logprobs", + "top_p" + ], + "default_parameters": {}, + "supported_voices": null, + "knowledge_cutoff": null, + "expiration_date": null, + "links": { + "details": "/api/v1/models/qwen/qwen3.7-plus-20260602/endpoints" + } + }, { "id": "rekaai/reka-edge", "canonical_slug": "rekaai/reka-edge-2603", @@ -15329,52 +15298,6 @@ "details": "/api/v1/models/relace/relace-search-20251208/endpoints" } }, - { - "id": "sao10k/l3-euryale-70b", - "canonical_slug": "sao10k/l3-euryale-70b", - "hugging_face_id": "Sao10K/L3-70B-Euryale-v2.1", - "name": "Sao10k: Llama 3 Euryale 70B v2.1", - "created": 1718668800, - "description": "Euryale 70B v2.1 is a model focused on creative roleplay from [Sao10k](https://ko-fi.com/sao10k). - Better prompt adherence. - Better anatomy / spatial awareness. - Adapts much better to unique and custom...", - "context_length": 8192, - "architecture": { - "modality": "text->text", - "input_modalities": ["text"], - "output_modalities": ["text"], - "tokenizer": "Llama3", - "instruct_type": "llama3" - }, - "pricing": { - "prompt": "0.00000148", - "completion": "0.00000148" - }, - "top_provider": { - "context_length": 8192, - "max_completion_tokens": 8192, - "is_moderated": false - }, - "per_request_limits": null, - "supported_parameters": [ - "frequency_penalty", - "max_tokens", - "presence_penalty", - "repetition_penalty", - "seed", - "stop", - "temperature", - "tool_choice", - "tools", - "top_k", - "top_p" - ], - "default_parameters": {}, - "supported_voices": null, - "knowledge_cutoff": "2023-12-31", - "expiration_date": "2026-06-05", - "links": { - "details": "/api/v1/models/sao10k/l3-euryale-70b/endpoints" - } - }, { "id": "sao10k/l3-lunaris-8b", "canonical_slug": "sao10k/l3-lunaris-8b", @@ -16425,14 +16348,11 @@ "max_tokens", "presence_penalty", "reasoning", - "repetition_penalty", "response_format", - "seed", "stop", "temperature", "tool_choice", "tools", - "top_k", "top_p" ], "default_parameters": { @@ -16654,7 +16574,7 @@ }, "supported_voices": null, "knowledge_cutoff": "2024-12-31", - "expiration_date": null, + "expiration_date": "2026-06-19", "links": { "details": "/api/v1/models/z-ai/glm-4.5/endpoints" }