@tanstack/ai-vercel-gateway 0.2.6 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -0
- package/dist/esm/model-meta.d.ts +25 -11
- package/dist/esm/model-meta.js +8 -1
- package/dist/esm/model-meta.js.map +1 -1
- package/package.json +3 -3
- package/src/model-meta.ts +95 -14
package/README.md
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<picture>
|
|
3
|
+
<source
|
|
4
|
+
media="(prefers-color-scheme: dark)"
|
|
5
|
+
srcset="https://tanstack.com/api/readme/ai.png?theme=dark"
|
|
6
|
+
/>
|
|
7
|
+
<source
|
|
8
|
+
media="(prefers-color-scheme: light)"
|
|
9
|
+
srcset="https://tanstack.com/api/readme/ai.png"
|
|
10
|
+
/>
|
|
11
|
+
<img
|
|
12
|
+
src="https://tanstack.com/api/readme/ai.png"
|
|
13
|
+
alt="TanStack AI"
|
|
14
|
+
width="900"
|
|
15
|
+
/>
|
|
16
|
+
</picture>
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
<br />
|
|
20
|
+
|
|
1
21
|
# @tanstack/ai-vercel-gateway
|
|
2
22
|
|
|
3
23
|
Vercel AI Gateway adapter for TanStack AI.
|
package/dist/esm/model-meta.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VercelGatewayEmbeddingProviderOptions } from './embedding/embedding-provider-options.js';
|
|
2
2
|
import { VercelGatewayImageProviderOptions, VercelGatewayImageSize } from './image/image-provider-options.js';
|
|
3
3
|
import { VercelGatewayBaseOptions, VercelGatewayCommonOptions, VercelGatewayTextProviderOptions } from './text/text-provider-options.js';
|
|
4
|
-
export declare const VERCEL_GATEWAY_CHAT_MODELS: readonly ["alibaba/qwen-3-14b", "alibaba/qwen-3-235b", "alibaba/qwen-3-30b", "alibaba/qwen-3-32b", "alibaba/qwen-3.6-max-preview", "alibaba/qwen3-235b-a22b-thinking", "alibaba/qwen3-coder", "alibaba/qwen3-coder-30b-a3b", "alibaba/qwen3-coder-next", "alibaba/qwen3-coder-plus", "alibaba/qwen3-max", "alibaba/qwen3-max-preview", "alibaba/qwen3-max-thinking", "alibaba/qwen3-next-80b-a3b-instruct", "alibaba/qwen3-next-80b-a3b-thinking", "alibaba/qwen3-vl-235b-a22b-instruct", "alibaba/qwen3-vl-instruct", "alibaba/qwen3-vl-thinking", "alibaba/qwen3.5-flash", "alibaba/qwen3.5-plus", "alibaba/qwen3.6-27b", "alibaba/qwen3.6-plus", "alibaba/qwen3.7-flash", "alibaba/qwen3.7-max", "alibaba/qwen3.7-plus", "alibaba/qwen3.8-2.4t-a95b", "alibaba/qwen3.8-27b", "alibaba/qwen3.8-flash", "alibaba/qwen3.8-flash-next", "alibaba/qwen3.8-max", "amazon/nova-2-lite", "amazon/nova-lite", "amazon/nova-micro", "amazon/nova-pro", "anthropic/claude-3-haiku", "anthropic/claude-fable-5", "anthropic/claude-haiku-4.5", "anthropic/claude-opus-4", "anthropic/claude-opus-4.5", "anthropic/claude-opus-4.6", "anthropic/claude-opus-4.7", "anthropic/claude-opus-4.8", "anthropic/claude-opus-4.8-fast", "anthropic/claude-opus-5", "anthropic/claude-opus-5-fast", "anthropic/claude-sonnet-4", "anthropic/claude-sonnet-4.5", "anthropic/claude-sonnet-4.6", "anthropic/claude-sonnet-5", "arcee-ai/trinity-large-thinking", "bytedance/seed-1.6", "bytedance/seed-1.8", "cohere/command-a", "deepseek/deepseek-r1", "deepseek/deepseek-v3
|
|
4
|
+
export declare const VERCEL_GATEWAY_CHAT_MODELS: readonly ["alibaba/qwen-3-14b", "alibaba/qwen-3-235b", "alibaba/qwen-3-30b", "alibaba/qwen-3-32b", "alibaba/qwen-3.6-max-preview", "alibaba/qwen3-235b-a22b-thinking", "alibaba/qwen3-coder", "alibaba/qwen3-coder-30b-a3b", "alibaba/qwen3-coder-next", "alibaba/qwen3-coder-plus", "alibaba/qwen3-max", "alibaba/qwen3-max-preview", "alibaba/qwen3-max-thinking", "alibaba/qwen3-next-80b-a3b-instruct", "alibaba/qwen3-next-80b-a3b-thinking", "alibaba/qwen3-vl-235b-a22b-instruct", "alibaba/qwen3-vl-instruct", "alibaba/qwen3-vl-thinking", "alibaba/qwen3.5-flash", "alibaba/qwen3.5-plus", "alibaba/qwen3.6-27b", "alibaba/qwen3.6-plus", "alibaba/qwen3.7-flash", "alibaba/qwen3.7-max", "alibaba/qwen3.7-plus", "alibaba/qwen3.8-2.4t-a95b", "alibaba/qwen3.8-27b", "alibaba/qwen3.8-flash", "alibaba/qwen3.8-flash-next", "alibaba/qwen3.8-max", "alibaba/qwen3.8-max-0902", "amazon/nova-2-lite", "amazon/nova-lite", "amazon/nova-micro", "amazon/nova-pro", "anthropic/claude-3-haiku", "anthropic/claude-fable-5", "anthropic/claude-fable-5.1", "anthropic/claude-haiku-4.5", "anthropic/claude-opus-4", "anthropic/claude-opus-4.5", "anthropic/claude-opus-4.6", "anthropic/claude-opus-4.7", "anthropic/claude-opus-4.8", "anthropic/claude-opus-4.8-fast", "anthropic/claude-opus-5", "anthropic/claude-opus-5-fast", "anthropic/claude-sonnet-4", "anthropic/claude-sonnet-4.5", "anthropic/claude-sonnet-4.6", "anthropic/claude-sonnet-5", "arcee-ai/trinity-large-thinking", "bytedance/seed-1.6", "bytedance/seed-1.8", "cohere/command-a", "deepseek/deepseek-r1", "deepseek/deepseek-v3.1", "deepseek/deepseek-v3.1-terminus", "deepseek/deepseek-v3.2", "deepseek/deepseek-v3.2-thinking", "deepseek/deepseek-v4-flash", "deepseek/deepseek-v4-flash-0731", "deepseek/deepseek-v4-flash-vision-exp", "deepseek/deepseek-v4-pro", "deepseek/deepseek-v4-pro-0813", "fish-audio/s1", "fish-audio/s1-free", "fish-audio/s2-pro", "fish-audio/s2-pro-free", "fish-audio/s2.1-pro", "fish-audio/s2.1-pro-free", "fish-audio/transcribe-1", "fish-audio/transcribe-1-free", "google/gemini-2.5-flash", "google/gemini-2.5-flash-image", "google/gemini-2.5-flash-lite", "google/gemini-2.5-pro", "google/gemini-3-flash", "google/gemini-3-pro-image", "google/gemini-3.1-flash-image", "google/gemini-3.1-flash-image-preview", "google/gemini-3.1-flash-lite", "google/gemini-3.1-flash-lite-image", "google/gemini-3.1-pro-preview", "google/gemini-3.5-flash", "google/gemini-3.5-flash-lite", "google/gemini-3.5-transcribe", "google/gemini-3.5-transcribe-live", "google/gemini-3.6-flash", "google/gemini-3.7-flash", "google/gemini-3.8-flash", "google/gemini-omni-flash-preview", "google/gemma-4-26b-a4b-it", "google/gemma-4-31b-it", "inception/mercury-2", "inception/mercury-coder-small", "inclusionai/ling-3.0-flash", "inclusionai/ling-3.0-flash-fin", "inclusionai/ling-3.0-flash-fin-free", "interfaze/interfaze-beta", "kwaipilot/kat-coder-air-v2.5", "kwaipilot/kat-coder-pro-v1", "kwaipilot/kat-coder-pro-v2", "kwaipilot/kat-coder-pro-v2.5", "meta/llama-3.1-70b", "meta/llama-3.1-8b", "meta/llama-3.3-70b", "meta/llama-4-maverick", "meta/llama-4-scout", "meta/muse-glimmer-30b", "meta/muse-spark-1.1", "meta/muse-spark-1.2", "meta/muse-spark-1.2-contributor", "meta/muse-spark-1.3", "meta/muse-spark-1.3-contributor", "minimax/minimax-m2", "minimax/minimax-m2.1", "minimax/minimax-m2.1-lightning", "minimax/minimax-m2.5", "minimax/minimax-m2.5-highspeed", "minimax/minimax-m2.7", "minimax/minimax-m2.7-free", "minimax/minimax-m2.7-highspeed", "minimax/minimax-m3", "minimax/minimax-m3-free", "mistral/codestral", "mistral/devstral-2", "mistral/devstral-small-2", "mistral/ministral-14b", "mistral/ministral-3b", "mistral/ministral-8b", "mistral/mistral-large-3", "mistral/mistral-medium", "mistral/mistral-medium-3.5", "mistral/mistral-nemo", "mistral/mistral-small", "mistral/pixtral-12b", "moonshotai/kimi-k2", "moonshotai/kimi-k2-thinking", "moonshotai/kimi-k2.5", "moonshotai/kimi-k2.6", "moonshotai/kimi-k2.7-code", "moonshotai/kimi-k2.7-code-highspeed", "moonshotai/kimi-k3", "moonshotai/kimi-k3-fast", "morph/morph-v3-fast", "morph/morph-v3-large", "nvidia/nemotron-3-nano-30b-a3b", "nvidia/nemotron-3-super-120b-a12b", "nvidia/nemotron-3-ultra-550b-a55b", "nvidia/nemotron-3.5-lightning", "nvidia/nemotron-nano-12b-v2-vl", "nvidia/nemotron-nano-9b-v2", "openai/gpt-3.5-turbo", "openai/gpt-4-turbo", "openai/gpt-4.1", "openai/gpt-4.1-fast", "openai/gpt-4.1-mini", "openai/gpt-4.1-mini-fast", "openai/gpt-4.1-nano", "openai/gpt-4.1-nano-fast", "openai/gpt-4o", "openai/gpt-4o-fast", "openai/gpt-4o-mini", "openai/gpt-4o-mini-fast", "openai/gpt-4o-mini-transcribe", "openai/gpt-4o-transcribe", "openai/gpt-5", "openai/gpt-5-codex", "openai/gpt-5-fast", "openai/gpt-5-mini", "openai/gpt-5-mini-fast", "openai/gpt-5-nano", "openai/gpt-5-pro", "openai/gpt-5.1-codex", "openai/gpt-5.1-codex-max", "openai/gpt-5.1-codex-mini", "openai/gpt-5.1-thinking", "openai/gpt-5.1-thinking-fast", "openai/gpt-5.2", "openai/gpt-5.2-codex", "openai/gpt-5.2-fast", "openai/gpt-5.2-pro", "openai/gpt-5.3-codex", "openai/gpt-5.3-codex-fast", "openai/gpt-5.4", "openai/gpt-5.4-fast", "openai/gpt-5.4-mini", "openai/gpt-5.4-mini-fast", "openai/gpt-5.4-nano", "openai/gpt-5.4-pro", "openai/gpt-5.5", "openai/gpt-5.5-fast", "openai/gpt-5.5-pro", "openai/gpt-5.6-luna", "openai/gpt-5.6-luna-fast", "openai/gpt-5.6-sol", "openai/gpt-5.6-sol-fast", "openai/gpt-5.6-terra", "openai/gpt-5.6-terra-fast", "openai/gpt-oss-120b", "openai/gpt-oss-20b", "openai/gpt-oss-safeguard-120b", "openai/gpt-oss-safeguard-20b", "openai/gpt-realtime-1.5", "openai/gpt-realtime-2", "openai/gpt-realtime-2.1", "openai/gpt-realtime-mini", "openai/gpt-realtime-whisper", "openai/o1", "openai/o3", "openai/o3-fast", "openai/o3-mini", "openai/o3-pro", "openai/o4-mini", "openai/o4-mini-fast", "openai/tts-1", "openai/tts-1-hd", "openai/whisper-1", "perplexity/sonar", "perplexity/sonar-pro", "perplexity/sonar-reasoning-pro", "poolside/laguna-s-2.1", "poolside/laguna-s-2.1-free", "sakana/fugu-ultra", "sakana/namazu", "spacexai/grok-4.1-fast-non-reasoning", "spacexai/grok-4.1-fast-reasoning", "spacexai/grok-4.20-multi-agent", "spacexai/grok-4.20-multi-agent-beta", "spacexai/grok-4.20-non-reasoning", "spacexai/grok-4.20-non-reasoning-beta", "spacexai/grok-4.20-reasoning", "spacexai/grok-4.20-reasoning-beta", "spacexai/grok-4.3", "spacexai/grok-4.5", "spacexai/grok-4.6", "spacexai/grok-build-0.1", "spacexai/grok-stt", "spacexai/grok-tts", "spacexai/grok-voice-think-fast-1.0", "spacexai/grok-voice-think-fast-2.0", "stepfun/step-3.5-flash", "stepfun/step-3.7-flash", "tencent/hy-mt2-lite", "tencent/hy-mt2-plus", "tencent/hy-mt2-pro", "tencent/hy3", "tencent/hy4-preview", "thinkingmachines/inkling", "thinkingmachines/inkling-small", "xiaomi/mimo-v2.5", "xiaomi/mimo-v2.5-pro", "xiaomi/mimo-v2.5-pro-ultraspeed", "zai/glm-4.5", "zai/glm-4.5-air", "zai/glm-4.5v", "zai/glm-4.6", "zai/glm-4.7", "zai/glm-4.7-flash", "zai/glm-4.7-flashx", "zai/glm-5", "zai/glm-5-turbo", "zai/glm-5.1", "zai/glm-5.2", "zai/glm-5.2-fast", "zai/glm-5.3", "zai/glm-5.3-fast", "zai/glm-5.3-flash", "zai/glm-5.3-promo-50", "zai/glm-5v-turbo"];
|
|
5
5
|
export type VercelGatewayChatModel = (typeof VERCEL_GATEWAY_CHAT_MODELS)[number];
|
|
6
6
|
export declare const VERCEL_GATEWAY_PROVIDERS: readonly ["alibaba", "amazon", "anthropic", "arcee-ai", "bfl", "bytedance", "cohere", "deepseek", "fish-audio", "google", "inception", "inclusionai", "interfaze", "klingai", "kwaipilot", "meta", "minimax", "mistral", "moonshotai", "morph", "nvidia", "openai", "perplexity", "poolside", "prodia", "quiverai", "recraft", "sakana", "spacexai", "stepfun", "tencent", "thinkingmachines", "voyage", "xiaomi", "zai"];
|
|
7
7
|
export type VercelGatewayProvider = (typeof VERCEL_GATEWAY_PROVIDERS)[number];
|
|
@@ -42,12 +42,14 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
42
42
|
'alibaba/qwen3.8-flash': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
43
43
|
'alibaba/qwen3.8-flash-next': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
44
44
|
'alibaba/qwen3.8-max': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
45
|
+
'alibaba/qwen3.8-max-0902': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
45
46
|
'amazon/nova-2-lite': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
46
47
|
'amazon/nova-lite': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
47
48
|
'amazon/nova-micro': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
48
49
|
'amazon/nova-pro': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
49
50
|
'anthropic/claude-3-haiku': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
50
|
-
'anthropic/claude-fable-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
51
|
+
'anthropic/claude-fable-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
52
|
+
'anthropic/claude-fable-5.1': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
51
53
|
'anthropic/claude-haiku-4.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
52
54
|
'anthropic/claude-opus-4': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
53
55
|
'anthropic/claude-opus-4.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
@@ -55,18 +57,17 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
55
57
|
'anthropic/claude-opus-4.7': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
56
58
|
'anthropic/claude-opus-4.8': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
57
59
|
'anthropic/claude-opus-4.8-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
58
|
-
'anthropic/claude-opus-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
59
|
-
'anthropic/claude-opus-5-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
60
|
+
'anthropic/claude-opus-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
61
|
+
'anthropic/claude-opus-5-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
60
62
|
'anthropic/claude-sonnet-4': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
61
63
|
'anthropic/claude-sonnet-4.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
62
64
|
'anthropic/claude-sonnet-4.6': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
63
|
-
'anthropic/claude-sonnet-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
65
|
+
'anthropic/claude-sonnet-5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
64
66
|
'arcee-ai/trinity-large-thinking': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
65
67
|
'bytedance/seed-1.6': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
66
68
|
'bytedance/seed-1.8': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
67
69
|
'cohere/command-a': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
68
70
|
'deepseek/deepseek-r1': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
69
|
-
'deepseek/deepseek-v3': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
70
71
|
'deepseek/deepseek-v3.1': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
71
72
|
'deepseek/deepseek-v3.1-terminus': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
72
73
|
'deepseek/deepseek-v3.2': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'>;
|
|
@@ -101,6 +102,7 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
101
102
|
'google/gemini-3.5-transcribe-live': VercelGatewayCommonOptions;
|
|
102
103
|
'google/gemini-3.6-flash': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
103
104
|
'google/gemini-3.7-flash': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
105
|
+
'google/gemini-3.8-flash': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
104
106
|
'google/gemini-omni-flash-preview': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
105
107
|
'google/gemma-4-26b-a4b-it': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
106
108
|
'google/gemma-4-31b-it': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
@@ -123,6 +125,8 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
123
125
|
'meta/muse-spark-1.1': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
124
126
|
'meta/muse-spark-1.2': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
125
127
|
'meta/muse-spark-1.2-contributor': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
128
|
+
'meta/muse-spark-1.3': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
129
|
+
'meta/muse-spark-1.3-contributor': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
126
130
|
'minimax/minimax-m2': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
127
131
|
'minimax/minimax-m2.1': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
128
132
|
'minimax/minimax-m2.1-lightning': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
@@ -200,14 +204,14 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
200
204
|
'openai/gpt-5.4-nano': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
201
205
|
'openai/gpt-5.4-pro': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
202
206
|
'openai/gpt-5.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
203
|
-
'openai/gpt-5.5-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
207
|
+
'openai/gpt-5.5-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
204
208
|
'openai/gpt-5.5-pro': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
205
209
|
'openai/gpt-5.6-luna': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
206
|
-
'openai/gpt-5.6-luna-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
210
|
+
'openai/gpt-5.6-luna-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
207
211
|
'openai/gpt-5.6-sol': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
208
|
-
'openai/gpt-5.6-sol-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
212
|
+
'openai/gpt-5.6-sol-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
209
213
|
'openai/gpt-5.6-terra': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
210
|
-
'openai/gpt-5.6-terra-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | '
|
|
214
|
+
'openai/gpt-5.6-terra-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
211
215
|
'openai/gpt-oss-120b': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
212
216
|
'openai/gpt-oss-20b': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
213
217
|
'openai/gpt-oss-safeguard-120b': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
@@ -261,6 +265,7 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
261
265
|
'thinkingmachines/inkling-small': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
262
266
|
'xiaomi/mimo-v2.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
263
267
|
'xiaomi/mimo-v2.5-pro': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
268
|
+
'xiaomi/mimo-v2.5-pro-ultraspeed': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
264
269
|
'zai/glm-4.5': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
265
270
|
'zai/glm-4.5-air': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
266
271
|
'zai/glm-4.5v': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
@@ -274,7 +279,9 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
274
279
|
'zai/glm-5.2': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
275
280
|
'zai/glm-5.2-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
276
281
|
'zai/glm-5.3': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
282
|
+
'zai/glm-5.3-fast': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
277
283
|
'zai/glm-5.3-flash': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
284
|
+
'zai/glm-5.3-promo-50': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
278
285
|
'zai/glm-5v-turbo': VercelGatewayCommonOptions & Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop' | 'reasoning' | 'include_reasoning'>;
|
|
279
286
|
};
|
|
280
287
|
export type VercelGatewayModelInputModalitiesByName = {
|
|
@@ -308,12 +315,14 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
308
315
|
'alibaba/qwen3.8-flash': readonly ['text', 'image', 'document'];
|
|
309
316
|
'alibaba/qwen3.8-flash-next': readonly ['text', 'image'];
|
|
310
317
|
'alibaba/qwen3.8-max': readonly ['text', 'image'];
|
|
318
|
+
'alibaba/qwen3.8-max-0902': readonly ['text', 'image', 'document'];
|
|
311
319
|
'amazon/nova-2-lite': readonly ['text', 'image', 'document'];
|
|
312
320
|
'amazon/nova-lite': readonly ['text', 'image', 'document'];
|
|
313
321
|
'amazon/nova-micro': readonly ['text'];
|
|
314
322
|
'amazon/nova-pro': readonly ['text', 'image', 'document'];
|
|
315
323
|
'anthropic/claude-3-haiku': readonly ['text', 'image'];
|
|
316
324
|
'anthropic/claude-fable-5': readonly ['text', 'image', 'document'];
|
|
325
|
+
'anthropic/claude-fable-5.1': readonly ['text', 'image', 'document'];
|
|
317
326
|
'anthropic/claude-haiku-4.5': readonly ['text', 'image', 'document'];
|
|
318
327
|
'anthropic/claude-opus-4': readonly ['text', 'image', 'document'];
|
|
319
328
|
'anthropic/claude-opus-4.5': readonly ['text', 'image', 'document'];
|
|
@@ -332,7 +341,6 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
332
341
|
'bytedance/seed-1.8': readonly ['text', 'image'];
|
|
333
342
|
'cohere/command-a': readonly ['text'];
|
|
334
343
|
'deepseek/deepseek-r1': readonly ['text'];
|
|
335
|
-
'deepseek/deepseek-v3': readonly ['text'];
|
|
336
344
|
'deepseek/deepseek-v3.1': readonly ['text'];
|
|
337
345
|
'deepseek/deepseek-v3.1-terminus': readonly ['text'];
|
|
338
346
|
'deepseek/deepseek-v3.2': readonly ['text'];
|
|
@@ -372,6 +380,7 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
372
380
|
'google/gemini-3.5-transcribe-live': readonly ['text', 'audio'];
|
|
373
381
|
'google/gemini-3.6-flash': readonly ['text', 'image', 'document', 'video'];
|
|
374
382
|
'google/gemini-3.7-flash': readonly ['text', 'image', 'document', 'video'];
|
|
383
|
+
'google/gemini-3.8-flash': readonly ['text', 'image', 'document', 'video'];
|
|
375
384
|
'google/gemini-omni-flash-preview': readonly [
|
|
376
385
|
'text',
|
|
377
386
|
'image',
|
|
@@ -399,6 +408,8 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
399
408
|
'meta/muse-spark-1.1': readonly ['text', 'image', 'document'];
|
|
400
409
|
'meta/muse-spark-1.2': readonly ['text', 'image', 'document'];
|
|
401
410
|
'meta/muse-spark-1.2-contributor': readonly ['text', 'image', 'document'];
|
|
411
|
+
'meta/muse-spark-1.3': readonly ['text', 'image', 'document'];
|
|
412
|
+
'meta/muse-spark-1.3-contributor': readonly ['text', 'image', 'document'];
|
|
402
413
|
'minimax/minimax-m2': readonly ['text'];
|
|
403
414
|
'minimax/minimax-m2.1': readonly ['text'];
|
|
404
415
|
'minimax/minimax-m2.1-lightning': readonly ['text'];
|
|
@@ -546,6 +557,7 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
546
557
|
'thinkingmachines/inkling-small': readonly ['text', 'image', 'document'];
|
|
547
558
|
'xiaomi/mimo-v2.5': readonly ['text', 'image'];
|
|
548
559
|
'xiaomi/mimo-v2.5-pro': readonly ['text'];
|
|
560
|
+
'xiaomi/mimo-v2.5-pro-ultraspeed': readonly ['text'];
|
|
549
561
|
'zai/glm-4.5': readonly ['text'];
|
|
550
562
|
'zai/glm-4.5-air': readonly ['text'];
|
|
551
563
|
'zai/glm-4.5v': readonly ['text', 'image'];
|
|
@@ -559,7 +571,9 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
559
571
|
'zai/glm-5.2': readonly ['text'];
|
|
560
572
|
'zai/glm-5.2-fast': readonly ['text'];
|
|
561
573
|
'zai/glm-5.3': readonly ['text'];
|
|
574
|
+
'zai/glm-5.3-fast': readonly ['text'];
|
|
562
575
|
'zai/glm-5.3-flash': readonly ['text', 'image'];
|
|
576
|
+
'zai/glm-5.3-promo-50': readonly ['text'];
|
|
563
577
|
'zai/glm-5v-turbo': readonly ['text', 'image', 'document'];
|
|
564
578
|
};
|
|
565
579
|
export type VercelGatewayChatModelToolCapabilitiesByName = {
|
package/dist/esm/model-meta.js
CHANGED
|
@@ -30,12 +30,14 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
30
30
|
"alibaba/qwen3.8-flash",
|
|
31
31
|
"alibaba/qwen3.8-flash-next",
|
|
32
32
|
"alibaba/qwen3.8-max",
|
|
33
|
+
"alibaba/qwen3.8-max-0902",
|
|
33
34
|
"amazon/nova-2-lite",
|
|
34
35
|
"amazon/nova-lite",
|
|
35
36
|
"amazon/nova-micro",
|
|
36
37
|
"amazon/nova-pro",
|
|
37
38
|
"anthropic/claude-3-haiku",
|
|
38
39
|
"anthropic/claude-fable-5",
|
|
40
|
+
"anthropic/claude-fable-5.1",
|
|
39
41
|
"anthropic/claude-haiku-4.5",
|
|
40
42
|
"anthropic/claude-opus-4",
|
|
41
43
|
"anthropic/claude-opus-4.5",
|
|
@@ -54,7 +56,6 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
54
56
|
"bytedance/seed-1.8",
|
|
55
57
|
"cohere/command-a",
|
|
56
58
|
"deepseek/deepseek-r1",
|
|
57
|
-
"deepseek/deepseek-v3",
|
|
58
59
|
"deepseek/deepseek-v3.1",
|
|
59
60
|
"deepseek/deepseek-v3.1-terminus",
|
|
60
61
|
"deepseek/deepseek-v3.2",
|
|
@@ -89,6 +90,7 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
89
90
|
"google/gemini-3.5-transcribe-live",
|
|
90
91
|
"google/gemini-3.6-flash",
|
|
91
92
|
"google/gemini-3.7-flash",
|
|
93
|
+
"google/gemini-3.8-flash",
|
|
92
94
|
"google/gemini-omni-flash-preview",
|
|
93
95
|
"google/gemma-4-26b-a4b-it",
|
|
94
96
|
"google/gemma-4-31b-it",
|
|
@@ -111,6 +113,8 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
111
113
|
"meta/muse-spark-1.1",
|
|
112
114
|
"meta/muse-spark-1.2",
|
|
113
115
|
"meta/muse-spark-1.2-contributor",
|
|
116
|
+
"meta/muse-spark-1.3",
|
|
117
|
+
"meta/muse-spark-1.3-contributor",
|
|
114
118
|
"minimax/minimax-m2",
|
|
115
119
|
"minimax/minimax-m2.1",
|
|
116
120
|
"minimax/minimax-m2.1-lightning",
|
|
@@ -249,6 +253,7 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
249
253
|
"thinkingmachines/inkling-small",
|
|
250
254
|
"xiaomi/mimo-v2.5",
|
|
251
255
|
"xiaomi/mimo-v2.5-pro",
|
|
256
|
+
"xiaomi/mimo-v2.5-pro-ultraspeed",
|
|
252
257
|
"zai/glm-4.5",
|
|
253
258
|
"zai/glm-4.5-air",
|
|
254
259
|
"zai/glm-4.5v",
|
|
@@ -262,7 +267,9 @@ var VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
262
267
|
"zai/glm-5.2",
|
|
263
268
|
"zai/glm-5.2-fast",
|
|
264
269
|
"zai/glm-5.3",
|
|
270
|
+
"zai/glm-5.3-fast",
|
|
265
271
|
"zai/glm-5.3-flash",
|
|
272
|
+
"zai/glm-5.3-promo-50",
|
|
266
273
|
"zai/glm-5v-turbo"
|
|
267
274
|
];
|
|
268
275
|
var VERCEL_GATEWAY_PROVIDERS = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-meta.js","names":[],"sources":["../../src/model-meta.ts"],"sourcesContent":["/**\n * This file is generated by scripts/convert-vercel-gateway-models.ts. Do not edit by hand.\n */\n\nimport type { VercelGatewayEmbeddingProviderOptions } from './embedding/embedding-provider-options'\nimport type {\n VercelGatewayImageProviderOptions,\n VercelGatewayImageSize,\n} from './image/image-provider-options'\nimport type {\n VercelGatewayBaseOptions,\n VercelGatewayCommonOptions,\n VercelGatewayTextProviderOptions,\n} from './text/text-provider-options'\n\nexport const VERCEL_GATEWAY_CHAT_MODELS = [\n 'alibaba/qwen-3-14b',\n 'alibaba/qwen-3-235b',\n 'alibaba/qwen-3-30b',\n 'alibaba/qwen-3-32b',\n 'alibaba/qwen-3.6-max-preview',\n 'alibaba/qwen3-235b-a22b-thinking',\n 'alibaba/qwen3-coder',\n 'alibaba/qwen3-coder-30b-a3b',\n 'alibaba/qwen3-coder-next',\n 'alibaba/qwen3-coder-plus',\n 'alibaba/qwen3-max',\n 'alibaba/qwen3-max-preview',\n 'alibaba/qwen3-max-thinking',\n 'alibaba/qwen3-next-80b-a3b-instruct',\n 'alibaba/qwen3-next-80b-a3b-thinking',\n 'alibaba/qwen3-vl-235b-a22b-instruct',\n 'alibaba/qwen3-vl-instruct',\n 'alibaba/qwen3-vl-thinking',\n 'alibaba/qwen3.5-flash',\n 'alibaba/qwen3.5-plus',\n 'alibaba/qwen3.6-27b',\n 'alibaba/qwen3.6-plus',\n 'alibaba/qwen3.7-flash',\n 'alibaba/qwen3.7-max',\n 'alibaba/qwen3.7-plus',\n 'alibaba/qwen3.8-2.4t-a95b',\n 'alibaba/qwen3.8-27b',\n 'alibaba/qwen3.8-flash',\n 'alibaba/qwen3.8-flash-next',\n 'alibaba/qwen3.8-max',\n 'amazon/nova-2-lite',\n 'amazon/nova-lite',\n 'amazon/nova-micro',\n 'amazon/nova-pro',\n 'anthropic/claude-3-haiku',\n 'anthropic/claude-fable-5',\n 'anthropic/claude-haiku-4.5',\n 'anthropic/claude-opus-4',\n 'anthropic/claude-opus-4.5',\n 'anthropic/claude-opus-4.6',\n 'anthropic/claude-opus-4.7',\n 'anthropic/claude-opus-4.8',\n 'anthropic/claude-opus-4.8-fast',\n 'anthropic/claude-opus-5',\n 'anthropic/claude-opus-5-fast',\n 'anthropic/claude-sonnet-4',\n 'anthropic/claude-sonnet-4.5',\n 'anthropic/claude-sonnet-4.6',\n 'anthropic/claude-sonnet-5',\n 'arcee-ai/trinity-large-thinking',\n 'bytedance/seed-1.6',\n 'bytedance/seed-1.8',\n 'cohere/command-a',\n 'deepseek/deepseek-r1',\n 'deepseek/deepseek-v3',\n 'deepseek/deepseek-v3.1',\n 'deepseek/deepseek-v3.1-terminus',\n 'deepseek/deepseek-v3.2',\n 'deepseek/deepseek-v3.2-thinking',\n 'deepseek/deepseek-v4-flash',\n 'deepseek/deepseek-v4-flash-0731',\n 'deepseek/deepseek-v4-flash-vision-exp',\n 'deepseek/deepseek-v4-pro',\n 'deepseek/deepseek-v4-pro-0813',\n 'fish-audio/s1',\n 'fish-audio/s1-free',\n 'fish-audio/s2-pro',\n 'fish-audio/s2-pro-free',\n 'fish-audio/s2.1-pro',\n 'fish-audio/s2.1-pro-free',\n 'fish-audio/transcribe-1',\n 'fish-audio/transcribe-1-free',\n 'google/gemini-2.5-flash',\n 'google/gemini-2.5-flash-image',\n 'google/gemini-2.5-flash-lite',\n 'google/gemini-2.5-pro',\n 'google/gemini-3-flash',\n 'google/gemini-3-pro-image',\n 'google/gemini-3.1-flash-image',\n 'google/gemini-3.1-flash-image-preview',\n 'google/gemini-3.1-flash-lite',\n 'google/gemini-3.1-flash-lite-image',\n 'google/gemini-3.1-pro-preview',\n 'google/gemini-3.5-flash',\n 'google/gemini-3.5-flash-lite',\n 'google/gemini-3.5-transcribe',\n 'google/gemini-3.5-transcribe-live',\n 'google/gemini-3.6-flash',\n 'google/gemini-3.7-flash',\n 'google/gemini-omni-flash-preview',\n 'google/gemma-4-26b-a4b-it',\n 'google/gemma-4-31b-it',\n 'inception/mercury-2',\n 'inception/mercury-coder-small',\n 'inclusionai/ling-3.0-flash',\n 'inclusionai/ling-3.0-flash-fin',\n 'inclusionai/ling-3.0-flash-fin-free',\n 'interfaze/interfaze-beta',\n 'kwaipilot/kat-coder-air-v2.5',\n 'kwaipilot/kat-coder-pro-v1',\n 'kwaipilot/kat-coder-pro-v2',\n 'kwaipilot/kat-coder-pro-v2.5',\n 'meta/llama-3.1-70b',\n 'meta/llama-3.1-8b',\n 'meta/llama-3.3-70b',\n 'meta/llama-4-maverick',\n 'meta/llama-4-scout',\n 'meta/muse-glimmer-30b',\n 'meta/muse-spark-1.1',\n 'meta/muse-spark-1.2',\n 'meta/muse-spark-1.2-contributor',\n 'minimax/minimax-m2',\n 'minimax/minimax-m2.1',\n 'minimax/minimax-m2.1-lightning',\n 'minimax/minimax-m2.5',\n 'minimax/minimax-m2.5-highspeed',\n 'minimax/minimax-m2.7',\n 'minimax/minimax-m2.7-free',\n 'minimax/minimax-m2.7-highspeed',\n 'minimax/minimax-m3',\n 'minimax/minimax-m3-free',\n 'mistral/codestral',\n 'mistral/devstral-2',\n 'mistral/devstral-small-2',\n 'mistral/ministral-14b',\n 'mistral/ministral-3b',\n 'mistral/ministral-8b',\n 'mistral/mistral-large-3',\n 'mistral/mistral-medium',\n 'mistral/mistral-medium-3.5',\n 'mistral/mistral-nemo',\n 'mistral/mistral-small',\n 'mistral/pixtral-12b',\n 'moonshotai/kimi-k2',\n 'moonshotai/kimi-k2-thinking',\n 'moonshotai/kimi-k2.5',\n 'moonshotai/kimi-k2.6',\n 'moonshotai/kimi-k2.7-code',\n 'moonshotai/kimi-k2.7-code-highspeed',\n 'moonshotai/kimi-k3',\n 'moonshotai/kimi-k3-fast',\n 'morph/morph-v3-fast',\n 'morph/morph-v3-large',\n 'nvidia/nemotron-3-nano-30b-a3b',\n 'nvidia/nemotron-3-super-120b-a12b',\n 'nvidia/nemotron-3-ultra-550b-a55b',\n 'nvidia/nemotron-3.5-lightning',\n 'nvidia/nemotron-nano-12b-v2-vl',\n 'nvidia/nemotron-nano-9b-v2',\n 'openai/gpt-3.5-turbo',\n 'openai/gpt-4-turbo',\n 'openai/gpt-4.1',\n 'openai/gpt-4.1-fast',\n 'openai/gpt-4.1-mini',\n 'openai/gpt-4.1-mini-fast',\n 'openai/gpt-4.1-nano',\n 'openai/gpt-4.1-nano-fast',\n 'openai/gpt-4o',\n 'openai/gpt-4o-fast',\n 'openai/gpt-4o-mini',\n 'openai/gpt-4o-mini-fast',\n 'openai/gpt-4o-mini-transcribe',\n 'openai/gpt-4o-transcribe',\n 'openai/gpt-5',\n 'openai/gpt-5-codex',\n 'openai/gpt-5-fast',\n 'openai/gpt-5-mini',\n 'openai/gpt-5-mini-fast',\n 'openai/gpt-5-nano',\n 'openai/gpt-5-pro',\n 'openai/gpt-5.1-codex',\n 'openai/gpt-5.1-codex-max',\n 'openai/gpt-5.1-codex-mini',\n 'openai/gpt-5.1-thinking',\n 'openai/gpt-5.1-thinking-fast',\n 'openai/gpt-5.2',\n 'openai/gpt-5.2-codex',\n 'openai/gpt-5.2-fast',\n 'openai/gpt-5.2-pro',\n 'openai/gpt-5.3-codex',\n 'openai/gpt-5.3-codex-fast',\n 'openai/gpt-5.4',\n 'openai/gpt-5.4-fast',\n 'openai/gpt-5.4-mini',\n 'openai/gpt-5.4-mini-fast',\n 'openai/gpt-5.4-nano',\n 'openai/gpt-5.4-pro',\n 'openai/gpt-5.5',\n 'openai/gpt-5.5-fast',\n 'openai/gpt-5.5-pro',\n 'openai/gpt-5.6-luna',\n 'openai/gpt-5.6-luna-fast',\n 'openai/gpt-5.6-sol',\n 'openai/gpt-5.6-sol-fast',\n 'openai/gpt-5.6-terra',\n 'openai/gpt-5.6-terra-fast',\n 'openai/gpt-oss-120b',\n 'openai/gpt-oss-20b',\n 'openai/gpt-oss-safeguard-120b',\n 'openai/gpt-oss-safeguard-20b',\n 'openai/gpt-realtime-1.5',\n 'openai/gpt-realtime-2',\n 'openai/gpt-realtime-2.1',\n 'openai/gpt-realtime-mini',\n 'openai/gpt-realtime-whisper',\n 'openai/o1',\n 'openai/o3',\n 'openai/o3-fast',\n 'openai/o3-mini',\n 'openai/o3-pro',\n 'openai/o4-mini',\n 'openai/o4-mini-fast',\n 'openai/tts-1',\n 'openai/tts-1-hd',\n 'openai/whisper-1',\n 'perplexity/sonar',\n 'perplexity/sonar-pro',\n 'perplexity/sonar-reasoning-pro',\n 'poolside/laguna-s-2.1',\n 'poolside/laguna-s-2.1-free',\n 'sakana/fugu-ultra',\n 'sakana/namazu',\n 'spacexai/grok-4.1-fast-non-reasoning',\n 'spacexai/grok-4.1-fast-reasoning',\n 'spacexai/grok-4.20-multi-agent',\n 'spacexai/grok-4.20-multi-agent-beta',\n 'spacexai/grok-4.20-non-reasoning',\n 'spacexai/grok-4.20-non-reasoning-beta',\n 'spacexai/grok-4.20-reasoning',\n 'spacexai/grok-4.20-reasoning-beta',\n 'spacexai/grok-4.3',\n 'spacexai/grok-4.5',\n 'spacexai/grok-4.6',\n 'spacexai/grok-build-0.1',\n 'spacexai/grok-stt',\n 'spacexai/grok-tts',\n 'spacexai/grok-voice-think-fast-1.0',\n 'spacexai/grok-voice-think-fast-2.0',\n 'stepfun/step-3.5-flash',\n 'stepfun/step-3.7-flash',\n 'tencent/hy-mt2-lite',\n 'tencent/hy-mt2-plus',\n 'tencent/hy-mt2-pro',\n 'tencent/hy3',\n 'tencent/hy4-preview',\n 'thinkingmachines/inkling',\n 'thinkingmachines/inkling-small',\n 'xiaomi/mimo-v2.5',\n 'xiaomi/mimo-v2.5-pro',\n 'zai/glm-4.5',\n 'zai/glm-4.5-air',\n 'zai/glm-4.5v',\n 'zai/glm-4.6',\n 'zai/glm-4.7',\n 'zai/glm-4.7-flash',\n 'zai/glm-4.7-flashx',\n 'zai/glm-5',\n 'zai/glm-5-turbo',\n 'zai/glm-5.1',\n 'zai/glm-5.2',\n 'zai/glm-5.2-fast',\n 'zai/glm-5.3',\n 'zai/glm-5.3-flash',\n 'zai/glm-5v-turbo',\n] as const\n\nexport type VercelGatewayChatModel = (typeof VERCEL_GATEWAY_CHAT_MODELS)[number]\n\nexport const VERCEL_GATEWAY_PROVIDERS = [\n 'alibaba',\n 'amazon',\n 'anthropic',\n 'arcee-ai',\n 'bfl',\n 'bytedance',\n 'cohere',\n 'deepseek',\n 'fish-audio',\n 'google',\n 'inception',\n 'inclusionai',\n 'interfaze',\n 'klingai',\n 'kwaipilot',\n 'meta',\n 'minimax',\n 'mistral',\n 'moonshotai',\n 'morph',\n 'nvidia',\n 'openai',\n 'perplexity',\n 'poolside',\n 'prodia',\n 'quiverai',\n 'recraft',\n 'sakana',\n 'spacexai',\n 'stepfun',\n 'tencent',\n 'thinkingmachines',\n 'voyage',\n 'xiaomi',\n 'zai',\n] as const\n\nexport type VercelGatewayProvider = (typeof VERCEL_GATEWAY_PROVIDERS)[number]\n\nexport const VERCEL_GATEWAY_MODEL_TAGS = [\n 'explicit-caching',\n 'fast',\n 'file-input',\n 'free',\n 'image-generation',\n 'implicit-caching',\n 'reasoning',\n 'structured-output',\n 'tool-use',\n 'video-generation',\n 'video-input',\n 'vision',\n 'web-search',\n 'websocket-realtime',\n 'websocket-transcription',\n] as const\n\nexport type VercelGatewayModelTag = (typeof VERCEL_GATEWAY_MODEL_TAGS)[number]\n\nexport const VERCEL_GATEWAY_EMBEDDING_MODELS = [\n 'alibaba/qwen3-embedding-0.6b',\n 'alibaba/qwen3-embedding-4b',\n 'alibaba/qwen3-embedding-8b',\n 'amazon/titan-embed-text-v2',\n 'cohere/embed-v4.0',\n 'google/gemini-embedding-001',\n 'google/gemini-embedding-2',\n 'google/text-embedding-005',\n 'google/text-multilingual-embedding-002',\n 'mistral/codestral-embed',\n 'mistral/mistral-embed',\n 'openai/text-embedding-3-large',\n 'openai/text-embedding-3-small',\n 'openai/text-embedding-ada-002',\n 'perplexity/pplx-embed-v1-0.6b',\n 'perplexity/pplx-embed-v1-4b',\n 'voyage/voyage-3-large',\n 'voyage/voyage-3.5',\n 'voyage/voyage-3.5-lite',\n 'voyage/voyage-4',\n 'voyage/voyage-4-large',\n 'voyage/voyage-4-lite',\n 'voyage/voyage-code-2',\n 'voyage/voyage-code-3',\n 'voyage/voyage-finance-2',\n 'voyage/voyage-law-2',\n] as const\n\nexport type VercelGatewayEmbeddingModel =\n (typeof VERCEL_GATEWAY_EMBEDDING_MODELS)[number]\n\nexport const VERCEL_GATEWAY_IMAGE_MODELS = [\n 'bfl/flux-2-flex',\n 'bfl/flux-2-klein-4b',\n 'bfl/flux-2-klein-9b',\n 'bfl/flux-2-max',\n 'bfl/flux-2-pro',\n 'bfl/flux-kontext-max',\n 'bfl/flux-kontext-pro',\n 'bfl/flux-pro-1.0-fill',\n 'bfl/flux-pro-1.1',\n 'bfl/flux-pro-1.1-ultra',\n 'bytedance/seedream-4.0',\n 'bytedance/seedream-4.5',\n 'bytedance/seedream-5.0-lite',\n 'bytedance/seedream-5.0-pro',\n 'meta/muse-image-1.0',\n 'openai/gpt-image-1',\n 'openai/gpt-image-1-mini',\n 'openai/gpt-image-1.5',\n 'openai/gpt-image-2',\n 'prodia/flux-fast-schnell',\n 'quiverai/arrow-1.1',\n 'recraft/recraft-v2',\n 'recraft/recraft-v3',\n 'recraft/recraft-v4',\n 'recraft/recraft-v4-pro',\n 'recraft/recraft-v4.1',\n 'recraft/recraft-v4.1-pro',\n 'recraft/recraft-v4.1-utility',\n 'recraft/recraft-v4.1-utility-pro',\n 'spacexai/grok-imagine-image',\n 'spacexai/grok-imagine-image-2.0',\n] as const\n\nexport type VercelGatewayImageModel =\n (typeof VERCEL_GATEWAY_IMAGE_MODELS)[number]\n\nexport type VercelGatewayChatModelProviderOptionsByName = {\n 'alibaba/qwen-3-14b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-235b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-30b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-32b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3.6-max-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-235b-a22b-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-coder': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-30b-a3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-next': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-next-80b-a3b-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-next-80b-a3b-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-vl-235b-a22b-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-vl-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-vl-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.5-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.6-27b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.6-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-2.4t-a95b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-27b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-flash-next': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'amazon/nova-2-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'amazon/nova-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'amazon/nova-micro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'amazon/nova-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'anthropic/claude-3-haiku': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'anthropic/claude-fable-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-haiku-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.8': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.8-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'arcee-ai/trinity-large-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'bytedance/seed-1.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'bytedance/seed-1.8': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'cohere/command-a': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-r1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-v3.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3.1-terminus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-v3.2-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-v4-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-flash-0731': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-flash-vision-exp': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-pro-0813': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'fish-audio/s1': VercelGatewayCommonOptions\n 'fish-audio/s1-free': VercelGatewayCommonOptions\n 'fish-audio/s2-pro': VercelGatewayCommonOptions\n 'fish-audio/s2-pro-free': VercelGatewayCommonOptions\n 'fish-audio/s2.1-pro': VercelGatewayCommonOptions\n 'fish-audio/s2.1-pro-free': VercelGatewayCommonOptions\n 'fish-audio/transcribe-1': VercelGatewayCommonOptions\n 'fish-audio/transcribe-1-free': VercelGatewayCommonOptions\n 'google/gemini-2.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-2.5-flash-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'google/gemini-2.5-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-2.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3-pro-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'google/gemini-3.1-flash-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-image-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-lite-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-pro-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-transcribe': VercelGatewayCommonOptions\n 'google/gemini-3.5-transcribe-live': VercelGatewayCommonOptions\n 'google/gemini-3.6-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-omni-flash-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemma-4-26b-a4b-it': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemma-4-31b-it': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inception/mercury-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inception/mercury-coder-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'inclusionai/ling-3.0-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inclusionai/ling-3.0-flash-fin': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inclusionai/ling-3.0-flash-fin-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'interfaze/interfaze-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-air-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-pro-v1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'kwaipilot/kat-coder-pro-v2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-pro-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/llama-3.1-70b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-3.1-8b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-3.3-70b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-4-maverick': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-4-scout': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/muse-glimmer-30b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.2-contributor': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.1-lightning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.5-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m3-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'mistral/codestral': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/devstral-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/devstral-small-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-14b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-8b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-large-3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-medium': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-medium-3.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'mistral/mistral-nemo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/pixtral-12b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'moonshotai/kimi-k2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'moonshotai/kimi-k2-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.7-code': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.7-code-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k3-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'morph/morph-v3-fast': VercelGatewayCommonOptions &\n Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop'>\n 'morph/morph-v3-large': VercelGatewayCommonOptions &\n Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop'>\n 'nvidia/nemotron-3-nano-30b-a3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3-super-120b-a12b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3-ultra-550b-a55b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3.5-lightning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-nano-12b-v2-vl': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-nano-9b-v2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-3.5-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-nano-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini-transcribe': VercelGatewayCommonOptions\n 'openai/gpt-4o-transcribe': VercelGatewayCommonOptions\n 'openai/gpt-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-thinking-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.3-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.3-codex-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-luna': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-luna-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-sol': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-sol-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-terra': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-terra-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-120b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-20b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-safeguard-120b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-safeguard-20b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-realtime-1.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-realtime-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-whisper': VercelGatewayCommonOptions\n 'openai/o1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o4-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o4-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/tts-1': VercelGatewayCommonOptions\n 'openai/tts-1-hd': VercelGatewayCommonOptions\n 'openai/whisper-1': VercelGatewayCommonOptions\n 'perplexity/sonar': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'perplexity/sonar-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'perplexity/sonar-reasoning-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'poolside/laguna-s-2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'poolside/laguna-s-2.1-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'sakana/fugu-ultra': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'sakana/namazu': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n | 'response_format'\n | 'structured_outputs'\n >\n 'spacexai/grok-4.1-fast-non-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.1-fast-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-multi-agent': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-multi-agent-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-non-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.20-non-reasoning-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.20-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-reasoning-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-build-0.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-stt': VercelGatewayCommonOptions\n 'spacexai/grok-tts': VercelGatewayCommonOptions\n 'spacexai/grok-voice-think-fast-1.0': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-voice-think-fast-2.0': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'stepfun/step-3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'stepfun/step-3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'tencent/hy-mt2-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy-mt2-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy-mt2-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'tencent/hy4-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'thinkingmachines/inkling': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'thinkingmachines/inkling-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'xiaomi/mimo-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'xiaomi/mimo-v2.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5-air': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5v': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7-flashx': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.2-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5v-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n}\n\nexport type VercelGatewayModelInputModalitiesByName = {\n 'alibaba/qwen-3-14b': readonly ['text']\n 'alibaba/qwen-3-235b': readonly ['text']\n 'alibaba/qwen-3-30b': readonly ['text']\n 'alibaba/qwen-3-32b': readonly ['text']\n 'alibaba/qwen-3.6-max-preview': readonly ['text']\n 'alibaba/qwen3-235b-a22b-thinking': readonly ['text', 'image', 'document']\n 'alibaba/qwen3-coder': readonly ['text']\n 'alibaba/qwen3-coder-30b-a3b': readonly ['text']\n 'alibaba/qwen3-coder-next': readonly ['text']\n 'alibaba/qwen3-coder-plus': readonly ['text']\n 'alibaba/qwen3-max': readonly ['text']\n 'alibaba/qwen3-max-preview': readonly ['text']\n 'alibaba/qwen3-max-thinking': readonly ['text']\n 'alibaba/qwen3-next-80b-a3b-instruct': readonly ['text']\n 'alibaba/qwen3-next-80b-a3b-thinking': readonly ['text']\n 'alibaba/qwen3-vl-235b-a22b-instruct': readonly ['text', 'image']\n 'alibaba/qwen3-vl-instruct': readonly ['text', 'image']\n 'alibaba/qwen3-vl-thinking': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.5-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.5-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.6-27b': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.6-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.7-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.7-max': readonly ['text']\n 'alibaba/qwen3.7-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.8-2.4t-a95b': readonly ['text', 'image']\n 'alibaba/qwen3.8-27b': readonly ['text', 'image', 'document', 'video']\n 'alibaba/qwen3.8-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.8-flash-next': readonly ['text', 'image']\n 'alibaba/qwen3.8-max': readonly ['text', 'image']\n 'amazon/nova-2-lite': readonly ['text', 'image', 'document']\n 'amazon/nova-lite': readonly ['text', 'image', 'document']\n 'amazon/nova-micro': readonly ['text']\n 'amazon/nova-pro': readonly ['text', 'image', 'document']\n 'anthropic/claude-3-haiku': readonly ['text', 'image']\n 'anthropic/claude-fable-5': readonly ['text', 'image', 'document']\n 'anthropic/claude-haiku-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.6': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.7': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.8': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.8-fast': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-5-fast': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4.6': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-5': readonly ['text', 'image', 'document']\n 'arcee-ai/trinity-large-thinking': readonly ['text']\n 'bytedance/seed-1.6': readonly ['text', 'image']\n 'bytedance/seed-1.8': readonly ['text', 'image']\n 'cohere/command-a': readonly ['text']\n 'deepseek/deepseek-r1': readonly ['text']\n 'deepseek/deepseek-v3': readonly ['text']\n 'deepseek/deepseek-v3.1': readonly ['text']\n 'deepseek/deepseek-v3.1-terminus': readonly ['text']\n 'deepseek/deepseek-v3.2': readonly ['text']\n 'deepseek/deepseek-v3.2-thinking': readonly ['text']\n 'deepseek/deepseek-v4-flash': readonly ['text']\n 'deepseek/deepseek-v4-flash-0731': readonly ['text']\n 'deepseek/deepseek-v4-flash-vision-exp': readonly ['text', 'image']\n 'deepseek/deepseek-v4-pro': readonly ['text']\n 'deepseek/deepseek-v4-pro-0813': readonly ['text']\n 'fish-audio/s1': readonly ['text']\n 'fish-audio/s1-free': readonly ['text']\n 'fish-audio/s2-pro': readonly ['text']\n 'fish-audio/s2-pro-free': readonly ['text']\n 'fish-audio/s2.1-pro': readonly ['text']\n 'fish-audio/s2.1-pro-free': readonly ['text']\n 'fish-audio/transcribe-1': readonly ['text', 'audio']\n 'fish-audio/transcribe-1-free': readonly ['text', 'audio']\n 'google/gemini-2.5-flash': readonly ['text', 'image', 'document']\n 'google/gemini-2.5-flash-image': readonly ['text', 'image']\n 'google/gemini-2.5-flash-lite': readonly ['text', 'image', 'document']\n 'google/gemini-2.5-pro': readonly ['text', 'image', 'document']\n 'google/gemini-3-flash': readonly ['text', 'image', 'document']\n 'google/gemini-3-pro-image': readonly ['text', 'image']\n 'google/gemini-3.1-flash-image': readonly ['text', 'image']\n 'google/gemini-3.1-flash-image-preview': readonly ['text', 'image']\n 'google/gemini-3.1-flash-lite': readonly ['text', 'image', 'document']\n 'google/gemini-3.1-flash-lite-image': readonly ['text', 'image']\n 'google/gemini-3.1-pro-preview': readonly ['text', 'image', 'document']\n 'google/gemini-3.5-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-3.5-flash-lite': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'google/gemini-3.5-transcribe': readonly ['text', 'audio']\n 'google/gemini-3.5-transcribe-live': readonly ['text', 'audio']\n 'google/gemini-3.6-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-3.7-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-omni-flash-preview': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'google/gemma-4-26b-a4b-it': readonly ['text', 'image', 'document']\n 'google/gemma-4-31b-it': readonly ['text', 'image', 'document']\n 'inception/mercury-2': readonly ['text']\n 'inception/mercury-coder-small': readonly ['text']\n 'inclusionai/ling-3.0-flash': readonly ['text']\n 'inclusionai/ling-3.0-flash-fin': readonly ['text']\n 'inclusionai/ling-3.0-flash-fin-free': readonly ['text']\n 'interfaze/interfaze-beta': readonly ['text', 'image', 'document']\n 'kwaipilot/kat-coder-air-v2.5': readonly ['text', 'image']\n 'kwaipilot/kat-coder-pro-v1': readonly ['text']\n 'kwaipilot/kat-coder-pro-v2': readonly ['text']\n 'kwaipilot/kat-coder-pro-v2.5': readonly ['text', 'image']\n 'meta/llama-3.1-70b': readonly ['text']\n 'meta/llama-3.1-8b': readonly ['text']\n 'meta/llama-3.3-70b': readonly ['text']\n 'meta/llama-4-maverick': readonly ['text', 'image']\n 'meta/llama-4-scout': readonly ['text', 'image']\n 'meta/muse-glimmer-30b': readonly ['text', 'image']\n 'meta/muse-spark-1.1': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.2': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.2-contributor': readonly ['text', 'image', 'document']\n 'minimax/minimax-m2': readonly ['text']\n 'minimax/minimax-m2.1': readonly ['text']\n 'minimax/minimax-m2.1-lightning': readonly ['text']\n 'minimax/minimax-m2.5': readonly ['text']\n 'minimax/minimax-m2.5-highspeed': readonly ['text']\n 'minimax/minimax-m2.7': readonly ['text']\n 'minimax/minimax-m2.7-free': readonly ['text']\n 'minimax/minimax-m2.7-highspeed': readonly ['text']\n 'minimax/minimax-m3': readonly ['text', 'image', 'document']\n 'minimax/minimax-m3-free': readonly ['text', 'image']\n 'mistral/codestral': readonly ['text']\n 'mistral/devstral-2': readonly ['text']\n 'mistral/devstral-small-2': readonly ['text', 'image']\n 'mistral/ministral-14b': readonly ['text', 'image', 'document']\n 'mistral/ministral-3b': readonly ['text', 'image']\n 'mistral/ministral-8b': readonly ['text', 'image']\n 'mistral/mistral-large-3': readonly ['text', 'image']\n 'mistral/mistral-medium': readonly ['text', 'image']\n 'mistral/mistral-medium-3.5': readonly ['text', 'image']\n 'mistral/mistral-nemo': readonly ['text', 'image']\n 'mistral/mistral-small': readonly ['text', 'image']\n 'mistral/pixtral-12b': readonly ['text', 'image']\n 'moonshotai/kimi-k2': readonly ['text']\n 'moonshotai/kimi-k2-thinking': readonly ['text']\n 'moonshotai/kimi-k2.5': readonly ['text', 'image', 'video']\n 'moonshotai/kimi-k2.6': readonly ['text', 'image', 'video']\n 'moonshotai/kimi-k2.7-code': readonly ['text', 'image', 'document', 'video']\n 'moonshotai/kimi-k2.7-code-highspeed': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'moonshotai/kimi-k3': readonly ['text', 'image', 'document', 'video']\n 'moonshotai/kimi-k3-fast': readonly ['text', 'image', 'document']\n 'morph/morph-v3-fast': readonly ['text']\n 'morph/morph-v3-large': readonly ['text']\n 'nvidia/nemotron-3-nano-30b-a3b': readonly ['text']\n 'nvidia/nemotron-3-super-120b-a12b': readonly ['text']\n 'nvidia/nemotron-3-ultra-550b-a55b': readonly ['text']\n 'nvidia/nemotron-3.5-lightning': readonly ['text']\n 'nvidia/nemotron-nano-12b-v2-vl': readonly ['text', 'image']\n 'nvidia/nemotron-nano-9b-v2': readonly ['text']\n 'openai/gpt-3.5-turbo': readonly ['text']\n 'openai/gpt-4-turbo': readonly ['text', 'image']\n 'openai/gpt-4.1': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-nano-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini-transcribe': readonly ['text', 'audio']\n 'openai/gpt-4o-transcribe': readonly ['text', 'audio']\n 'openai/gpt-5': readonly ['text', 'image', 'document']\n 'openai/gpt-5-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-5-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex-max': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-thinking': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-thinking-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.3-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.3-codex-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-luna': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-luna-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-sol': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-sol-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-terra': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-terra-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-oss-120b': readonly ['text']\n 'openai/gpt-oss-20b': readonly ['text']\n 'openai/gpt-oss-safeguard-120b': readonly ['text']\n 'openai/gpt-oss-safeguard-20b': readonly ['text']\n 'openai/gpt-realtime-1.5': readonly ['text', 'audio']\n 'openai/gpt-realtime-2': readonly ['text', 'audio']\n 'openai/gpt-realtime-2.1': readonly ['text', 'audio']\n 'openai/gpt-realtime-mini': readonly ['text', 'audio']\n 'openai/gpt-realtime-whisper': readonly ['text', 'audio']\n 'openai/o1': readonly ['text', 'image', 'document']\n 'openai/o3': readonly ['text', 'image', 'document']\n 'openai/o3-fast': readonly ['text', 'image', 'document']\n 'openai/o3-mini': readonly ['text']\n 'openai/o3-pro': readonly ['text', 'image', 'document']\n 'openai/o4-mini': readonly ['text', 'image', 'document']\n 'openai/o4-mini-fast': readonly ['text', 'image', 'document']\n 'openai/tts-1': readonly ['text']\n 'openai/tts-1-hd': readonly ['text']\n 'openai/whisper-1': readonly ['text', 'audio']\n 'perplexity/sonar': readonly ['text', 'image']\n 'perplexity/sonar-pro': readonly ['text', 'image']\n 'perplexity/sonar-reasoning-pro': readonly ['text', 'image']\n 'poolside/laguna-s-2.1': readonly ['text']\n 'poolside/laguna-s-2.1-free': readonly ['text']\n 'sakana/fugu-ultra': readonly ['text', 'image']\n 'sakana/namazu': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.1-fast-non-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.1-fast-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-multi-agent': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-multi-agent-beta': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-non-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-non-reasoning-beta': readonly [\n 'text',\n 'image',\n 'document',\n ]\n 'spacexai/grok-4.20-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-reasoning-beta': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.3': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.5': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.6': readonly ['text', 'image']\n 'spacexai/grok-build-0.1': readonly ['text', 'image']\n 'spacexai/grok-stt': readonly ['text', 'audio']\n 'spacexai/grok-tts': readonly ['text']\n 'spacexai/grok-voice-think-fast-1.0': readonly ['text', 'audio']\n 'spacexai/grok-voice-think-fast-2.0': readonly ['text', 'audio']\n 'stepfun/step-3.5-flash': readonly ['text', 'image']\n 'stepfun/step-3.7-flash': readonly ['text', 'image']\n 'tencent/hy-mt2-lite': readonly ['text']\n 'tencent/hy-mt2-plus': readonly ['text']\n 'tencent/hy-mt2-pro': readonly ['text']\n 'tencent/hy3': readonly ['text']\n 'tencent/hy4-preview': readonly ['text']\n 'thinkingmachines/inkling': readonly ['text', 'image', 'document']\n 'thinkingmachines/inkling-small': readonly ['text', 'image', 'document']\n 'xiaomi/mimo-v2.5': readonly ['text', 'image']\n 'xiaomi/mimo-v2.5-pro': readonly ['text']\n 'zai/glm-4.5': readonly ['text']\n 'zai/glm-4.5-air': readonly ['text']\n 'zai/glm-4.5v': readonly ['text', 'image']\n 'zai/glm-4.6': readonly ['text']\n 'zai/glm-4.7': readonly ['text']\n 'zai/glm-4.7-flash': readonly ['text']\n 'zai/glm-4.7-flashx': readonly ['text']\n 'zai/glm-5': readonly ['text']\n 'zai/glm-5-turbo': readonly ['text']\n 'zai/glm-5.1': readonly ['text']\n 'zai/glm-5.2': readonly ['text']\n 'zai/glm-5.2-fast': readonly ['text']\n 'zai/glm-5.3': readonly ['text']\n 'zai/glm-5.3-flash': readonly ['text', 'image']\n 'zai/glm-5v-turbo': readonly ['text', 'image', 'document']\n}\n\nexport type VercelGatewayChatModelToolCapabilitiesByName = {\n [K in VercelGatewayChatModel]: readonly []\n}\n\nexport type VercelGatewayEmbeddingModelProviderOptionsByName = {\n [K in VercelGatewayEmbeddingModel]: VercelGatewayEmbeddingProviderOptions\n}\n\nexport type VercelGatewayEmbeddingModelInputModalitiesByName = {\n [K in VercelGatewayEmbeddingModel]: readonly ['text']\n}\n\nexport type VercelGatewayImageModelProviderOptionsByName = {\n [K in VercelGatewayImageModel]: VercelGatewayImageProviderOptions\n}\n\nexport type VercelGatewayImageModelSizeByName = {\n [K in VercelGatewayImageModel]: VercelGatewayImageSize\n}\n\nexport type VercelGatewayImageModelInputModalitiesByName = {\n [K in VercelGatewayImageModel]: readonly []\n}\n\nexport type ResolveProviderOptions<TModel extends string> =\n TModel extends keyof VercelGatewayChatModelProviderOptionsByName\n ? VercelGatewayChatModelProviderOptionsByName[TModel]\n : TModel extends VercelGatewayEmbeddingModel\n ? VercelGatewayEmbeddingProviderOptions\n : TModel extends VercelGatewayImageModel\n ? VercelGatewayImageProviderOptions\n : VercelGatewayTextProviderOptions\n\nexport type ResolveInputModalities<TModel extends string> =\n TModel extends keyof VercelGatewayModelInputModalitiesByName\n ? VercelGatewayModelInputModalitiesByName[TModel]\n : readonly ['text']\n"],"mappings":";AAeA,IAAa,6BAA6B;CACxC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,2BAA2B;CACtC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,4BAA4B;CACvC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,kCAAkC;CAC7C;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAKA,IAAa,8BAA8B;CACzC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF"}
|
|
1
|
+
{"version":3,"file":"model-meta.js","names":[],"sources":["../../src/model-meta.ts"],"sourcesContent":["/**\n * This file is generated by scripts/convert-vercel-gateway-models.ts. Do not edit by hand.\n */\n\nimport type { VercelGatewayEmbeddingProviderOptions } from './embedding/embedding-provider-options'\nimport type {\n VercelGatewayImageProviderOptions,\n VercelGatewayImageSize,\n} from './image/image-provider-options'\nimport type {\n VercelGatewayBaseOptions,\n VercelGatewayCommonOptions,\n VercelGatewayTextProviderOptions,\n} from './text/text-provider-options'\n\nexport const VERCEL_GATEWAY_CHAT_MODELS = [\n 'alibaba/qwen-3-14b',\n 'alibaba/qwen-3-235b',\n 'alibaba/qwen-3-30b',\n 'alibaba/qwen-3-32b',\n 'alibaba/qwen-3.6-max-preview',\n 'alibaba/qwen3-235b-a22b-thinking',\n 'alibaba/qwen3-coder',\n 'alibaba/qwen3-coder-30b-a3b',\n 'alibaba/qwen3-coder-next',\n 'alibaba/qwen3-coder-plus',\n 'alibaba/qwen3-max',\n 'alibaba/qwen3-max-preview',\n 'alibaba/qwen3-max-thinking',\n 'alibaba/qwen3-next-80b-a3b-instruct',\n 'alibaba/qwen3-next-80b-a3b-thinking',\n 'alibaba/qwen3-vl-235b-a22b-instruct',\n 'alibaba/qwen3-vl-instruct',\n 'alibaba/qwen3-vl-thinking',\n 'alibaba/qwen3.5-flash',\n 'alibaba/qwen3.5-plus',\n 'alibaba/qwen3.6-27b',\n 'alibaba/qwen3.6-plus',\n 'alibaba/qwen3.7-flash',\n 'alibaba/qwen3.7-max',\n 'alibaba/qwen3.7-plus',\n 'alibaba/qwen3.8-2.4t-a95b',\n 'alibaba/qwen3.8-27b',\n 'alibaba/qwen3.8-flash',\n 'alibaba/qwen3.8-flash-next',\n 'alibaba/qwen3.8-max',\n 'alibaba/qwen3.8-max-0902',\n 'amazon/nova-2-lite',\n 'amazon/nova-lite',\n 'amazon/nova-micro',\n 'amazon/nova-pro',\n 'anthropic/claude-3-haiku',\n 'anthropic/claude-fable-5',\n 'anthropic/claude-fable-5.1',\n 'anthropic/claude-haiku-4.5',\n 'anthropic/claude-opus-4',\n 'anthropic/claude-opus-4.5',\n 'anthropic/claude-opus-4.6',\n 'anthropic/claude-opus-4.7',\n 'anthropic/claude-opus-4.8',\n 'anthropic/claude-opus-4.8-fast',\n 'anthropic/claude-opus-5',\n 'anthropic/claude-opus-5-fast',\n 'anthropic/claude-sonnet-4',\n 'anthropic/claude-sonnet-4.5',\n 'anthropic/claude-sonnet-4.6',\n 'anthropic/claude-sonnet-5',\n 'arcee-ai/trinity-large-thinking',\n 'bytedance/seed-1.6',\n 'bytedance/seed-1.8',\n 'cohere/command-a',\n 'deepseek/deepseek-r1',\n 'deepseek/deepseek-v3.1',\n 'deepseek/deepseek-v3.1-terminus',\n 'deepseek/deepseek-v3.2',\n 'deepseek/deepseek-v3.2-thinking',\n 'deepseek/deepseek-v4-flash',\n 'deepseek/deepseek-v4-flash-0731',\n 'deepseek/deepseek-v4-flash-vision-exp',\n 'deepseek/deepseek-v4-pro',\n 'deepseek/deepseek-v4-pro-0813',\n 'fish-audio/s1',\n 'fish-audio/s1-free',\n 'fish-audio/s2-pro',\n 'fish-audio/s2-pro-free',\n 'fish-audio/s2.1-pro',\n 'fish-audio/s2.1-pro-free',\n 'fish-audio/transcribe-1',\n 'fish-audio/transcribe-1-free',\n 'google/gemini-2.5-flash',\n 'google/gemini-2.5-flash-image',\n 'google/gemini-2.5-flash-lite',\n 'google/gemini-2.5-pro',\n 'google/gemini-3-flash',\n 'google/gemini-3-pro-image',\n 'google/gemini-3.1-flash-image',\n 'google/gemini-3.1-flash-image-preview',\n 'google/gemini-3.1-flash-lite',\n 'google/gemini-3.1-flash-lite-image',\n 'google/gemini-3.1-pro-preview',\n 'google/gemini-3.5-flash',\n 'google/gemini-3.5-flash-lite',\n 'google/gemini-3.5-transcribe',\n 'google/gemini-3.5-transcribe-live',\n 'google/gemini-3.6-flash',\n 'google/gemini-3.7-flash',\n 'google/gemini-3.8-flash',\n 'google/gemini-omni-flash-preview',\n 'google/gemma-4-26b-a4b-it',\n 'google/gemma-4-31b-it',\n 'inception/mercury-2',\n 'inception/mercury-coder-small',\n 'inclusionai/ling-3.0-flash',\n 'inclusionai/ling-3.0-flash-fin',\n 'inclusionai/ling-3.0-flash-fin-free',\n 'interfaze/interfaze-beta',\n 'kwaipilot/kat-coder-air-v2.5',\n 'kwaipilot/kat-coder-pro-v1',\n 'kwaipilot/kat-coder-pro-v2',\n 'kwaipilot/kat-coder-pro-v2.5',\n 'meta/llama-3.1-70b',\n 'meta/llama-3.1-8b',\n 'meta/llama-3.3-70b',\n 'meta/llama-4-maverick',\n 'meta/llama-4-scout',\n 'meta/muse-glimmer-30b',\n 'meta/muse-spark-1.1',\n 'meta/muse-spark-1.2',\n 'meta/muse-spark-1.2-contributor',\n 'meta/muse-spark-1.3',\n 'meta/muse-spark-1.3-contributor',\n 'minimax/minimax-m2',\n 'minimax/minimax-m2.1',\n 'minimax/minimax-m2.1-lightning',\n 'minimax/minimax-m2.5',\n 'minimax/minimax-m2.5-highspeed',\n 'minimax/minimax-m2.7',\n 'minimax/minimax-m2.7-free',\n 'minimax/minimax-m2.7-highspeed',\n 'minimax/minimax-m3',\n 'minimax/minimax-m3-free',\n 'mistral/codestral',\n 'mistral/devstral-2',\n 'mistral/devstral-small-2',\n 'mistral/ministral-14b',\n 'mistral/ministral-3b',\n 'mistral/ministral-8b',\n 'mistral/mistral-large-3',\n 'mistral/mistral-medium',\n 'mistral/mistral-medium-3.5',\n 'mistral/mistral-nemo',\n 'mistral/mistral-small',\n 'mistral/pixtral-12b',\n 'moonshotai/kimi-k2',\n 'moonshotai/kimi-k2-thinking',\n 'moonshotai/kimi-k2.5',\n 'moonshotai/kimi-k2.6',\n 'moonshotai/kimi-k2.7-code',\n 'moonshotai/kimi-k2.7-code-highspeed',\n 'moonshotai/kimi-k3',\n 'moonshotai/kimi-k3-fast',\n 'morph/morph-v3-fast',\n 'morph/morph-v3-large',\n 'nvidia/nemotron-3-nano-30b-a3b',\n 'nvidia/nemotron-3-super-120b-a12b',\n 'nvidia/nemotron-3-ultra-550b-a55b',\n 'nvidia/nemotron-3.5-lightning',\n 'nvidia/nemotron-nano-12b-v2-vl',\n 'nvidia/nemotron-nano-9b-v2',\n 'openai/gpt-3.5-turbo',\n 'openai/gpt-4-turbo',\n 'openai/gpt-4.1',\n 'openai/gpt-4.1-fast',\n 'openai/gpt-4.1-mini',\n 'openai/gpt-4.1-mini-fast',\n 'openai/gpt-4.1-nano',\n 'openai/gpt-4.1-nano-fast',\n 'openai/gpt-4o',\n 'openai/gpt-4o-fast',\n 'openai/gpt-4o-mini',\n 'openai/gpt-4o-mini-fast',\n 'openai/gpt-4o-mini-transcribe',\n 'openai/gpt-4o-transcribe',\n 'openai/gpt-5',\n 'openai/gpt-5-codex',\n 'openai/gpt-5-fast',\n 'openai/gpt-5-mini',\n 'openai/gpt-5-mini-fast',\n 'openai/gpt-5-nano',\n 'openai/gpt-5-pro',\n 'openai/gpt-5.1-codex',\n 'openai/gpt-5.1-codex-max',\n 'openai/gpt-5.1-codex-mini',\n 'openai/gpt-5.1-thinking',\n 'openai/gpt-5.1-thinking-fast',\n 'openai/gpt-5.2',\n 'openai/gpt-5.2-codex',\n 'openai/gpt-5.2-fast',\n 'openai/gpt-5.2-pro',\n 'openai/gpt-5.3-codex',\n 'openai/gpt-5.3-codex-fast',\n 'openai/gpt-5.4',\n 'openai/gpt-5.4-fast',\n 'openai/gpt-5.4-mini',\n 'openai/gpt-5.4-mini-fast',\n 'openai/gpt-5.4-nano',\n 'openai/gpt-5.4-pro',\n 'openai/gpt-5.5',\n 'openai/gpt-5.5-fast',\n 'openai/gpt-5.5-pro',\n 'openai/gpt-5.6-luna',\n 'openai/gpt-5.6-luna-fast',\n 'openai/gpt-5.6-sol',\n 'openai/gpt-5.6-sol-fast',\n 'openai/gpt-5.6-terra',\n 'openai/gpt-5.6-terra-fast',\n 'openai/gpt-oss-120b',\n 'openai/gpt-oss-20b',\n 'openai/gpt-oss-safeguard-120b',\n 'openai/gpt-oss-safeguard-20b',\n 'openai/gpt-realtime-1.5',\n 'openai/gpt-realtime-2',\n 'openai/gpt-realtime-2.1',\n 'openai/gpt-realtime-mini',\n 'openai/gpt-realtime-whisper',\n 'openai/o1',\n 'openai/o3',\n 'openai/o3-fast',\n 'openai/o3-mini',\n 'openai/o3-pro',\n 'openai/o4-mini',\n 'openai/o4-mini-fast',\n 'openai/tts-1',\n 'openai/tts-1-hd',\n 'openai/whisper-1',\n 'perplexity/sonar',\n 'perplexity/sonar-pro',\n 'perplexity/sonar-reasoning-pro',\n 'poolside/laguna-s-2.1',\n 'poolside/laguna-s-2.1-free',\n 'sakana/fugu-ultra',\n 'sakana/namazu',\n 'spacexai/grok-4.1-fast-non-reasoning',\n 'spacexai/grok-4.1-fast-reasoning',\n 'spacexai/grok-4.20-multi-agent',\n 'spacexai/grok-4.20-multi-agent-beta',\n 'spacexai/grok-4.20-non-reasoning',\n 'spacexai/grok-4.20-non-reasoning-beta',\n 'spacexai/grok-4.20-reasoning',\n 'spacexai/grok-4.20-reasoning-beta',\n 'spacexai/grok-4.3',\n 'spacexai/grok-4.5',\n 'spacexai/grok-4.6',\n 'spacexai/grok-build-0.1',\n 'spacexai/grok-stt',\n 'spacexai/grok-tts',\n 'spacexai/grok-voice-think-fast-1.0',\n 'spacexai/grok-voice-think-fast-2.0',\n 'stepfun/step-3.5-flash',\n 'stepfun/step-3.7-flash',\n 'tencent/hy-mt2-lite',\n 'tencent/hy-mt2-plus',\n 'tencent/hy-mt2-pro',\n 'tencent/hy3',\n 'tencent/hy4-preview',\n 'thinkingmachines/inkling',\n 'thinkingmachines/inkling-small',\n 'xiaomi/mimo-v2.5',\n 'xiaomi/mimo-v2.5-pro',\n 'xiaomi/mimo-v2.5-pro-ultraspeed',\n 'zai/glm-4.5',\n 'zai/glm-4.5-air',\n 'zai/glm-4.5v',\n 'zai/glm-4.6',\n 'zai/glm-4.7',\n 'zai/glm-4.7-flash',\n 'zai/glm-4.7-flashx',\n 'zai/glm-5',\n 'zai/glm-5-turbo',\n 'zai/glm-5.1',\n 'zai/glm-5.2',\n 'zai/glm-5.2-fast',\n 'zai/glm-5.3',\n 'zai/glm-5.3-fast',\n 'zai/glm-5.3-flash',\n 'zai/glm-5.3-promo-50',\n 'zai/glm-5v-turbo',\n] as const\n\nexport type VercelGatewayChatModel = (typeof VERCEL_GATEWAY_CHAT_MODELS)[number]\n\nexport const VERCEL_GATEWAY_PROVIDERS = [\n 'alibaba',\n 'amazon',\n 'anthropic',\n 'arcee-ai',\n 'bfl',\n 'bytedance',\n 'cohere',\n 'deepseek',\n 'fish-audio',\n 'google',\n 'inception',\n 'inclusionai',\n 'interfaze',\n 'klingai',\n 'kwaipilot',\n 'meta',\n 'minimax',\n 'mistral',\n 'moonshotai',\n 'morph',\n 'nvidia',\n 'openai',\n 'perplexity',\n 'poolside',\n 'prodia',\n 'quiverai',\n 'recraft',\n 'sakana',\n 'spacexai',\n 'stepfun',\n 'tencent',\n 'thinkingmachines',\n 'voyage',\n 'xiaomi',\n 'zai',\n] as const\n\nexport type VercelGatewayProvider = (typeof VERCEL_GATEWAY_PROVIDERS)[number]\n\nexport const VERCEL_GATEWAY_MODEL_TAGS = [\n 'explicit-caching',\n 'fast',\n 'file-input',\n 'free',\n 'image-generation',\n 'implicit-caching',\n 'reasoning',\n 'structured-output',\n 'tool-use',\n 'video-generation',\n 'video-input',\n 'vision',\n 'web-search',\n 'websocket-realtime',\n 'websocket-transcription',\n] as const\n\nexport type VercelGatewayModelTag = (typeof VERCEL_GATEWAY_MODEL_TAGS)[number]\n\nexport const VERCEL_GATEWAY_EMBEDDING_MODELS = [\n 'alibaba/qwen3-embedding-0.6b',\n 'alibaba/qwen3-embedding-4b',\n 'alibaba/qwen3-embedding-8b',\n 'amazon/titan-embed-text-v2',\n 'cohere/embed-v4.0',\n 'google/gemini-embedding-001',\n 'google/gemini-embedding-2',\n 'google/text-embedding-005',\n 'google/text-multilingual-embedding-002',\n 'mistral/codestral-embed',\n 'mistral/mistral-embed',\n 'openai/text-embedding-3-large',\n 'openai/text-embedding-3-small',\n 'openai/text-embedding-ada-002',\n 'perplexity/pplx-embed-v1-0.6b',\n 'perplexity/pplx-embed-v1-4b',\n 'voyage/voyage-3-large',\n 'voyage/voyage-3.5',\n 'voyage/voyage-3.5-lite',\n 'voyage/voyage-4',\n 'voyage/voyage-4-large',\n 'voyage/voyage-4-lite',\n 'voyage/voyage-code-2',\n 'voyage/voyage-code-3',\n 'voyage/voyage-finance-2',\n 'voyage/voyage-law-2',\n] as const\n\nexport type VercelGatewayEmbeddingModel =\n (typeof VERCEL_GATEWAY_EMBEDDING_MODELS)[number]\n\nexport const VERCEL_GATEWAY_IMAGE_MODELS = [\n 'bfl/flux-2-flex',\n 'bfl/flux-2-klein-4b',\n 'bfl/flux-2-klein-9b',\n 'bfl/flux-2-max',\n 'bfl/flux-2-pro',\n 'bfl/flux-kontext-max',\n 'bfl/flux-kontext-pro',\n 'bfl/flux-pro-1.0-fill',\n 'bfl/flux-pro-1.1',\n 'bfl/flux-pro-1.1-ultra',\n 'bytedance/seedream-4.0',\n 'bytedance/seedream-4.5',\n 'bytedance/seedream-5.0-lite',\n 'bytedance/seedream-5.0-pro',\n 'meta/muse-image-1.0',\n 'openai/gpt-image-1',\n 'openai/gpt-image-1-mini',\n 'openai/gpt-image-1.5',\n 'openai/gpt-image-2',\n 'prodia/flux-fast-schnell',\n 'quiverai/arrow-1.1',\n 'recraft/recraft-v2',\n 'recraft/recraft-v3',\n 'recraft/recraft-v4',\n 'recraft/recraft-v4-pro',\n 'recraft/recraft-v4.1',\n 'recraft/recraft-v4.1-pro',\n 'recraft/recraft-v4.1-utility',\n 'recraft/recraft-v4.1-utility-pro',\n 'spacexai/grok-imagine-image',\n 'spacexai/grok-imagine-image-2.0',\n] as const\n\nexport type VercelGatewayImageModel =\n (typeof VERCEL_GATEWAY_IMAGE_MODELS)[number]\n\nexport type VercelGatewayChatModelProviderOptionsByName = {\n 'alibaba/qwen-3-14b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-235b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-30b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3-32b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen-3.6-max-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-235b-a22b-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-coder': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-30b-a3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-next': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-coder-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-max-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-next-80b-a3b-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-next-80b-a3b-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3-vl-235b-a22b-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-vl-instruct': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'alibaba/qwen3-vl-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.5-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.6-27b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.6-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.7-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-2.4t-a95b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-27b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-flash-next': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'alibaba/qwen3.8-max-0902': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'amazon/nova-2-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'amazon/nova-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'amazon/nova-micro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'amazon/nova-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'anthropic/claude-3-haiku': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'anthropic/claude-fable-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-fable-5.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-haiku-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.8': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-4.8-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-opus-5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'anthropic/claude-sonnet-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'arcee-ai/trinity-large-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'bytedance/seed-1.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'bytedance/seed-1.8': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'cohere/command-a': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-r1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3.1-terminus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v3.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-v3.2-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'deepseek/deepseek-v4-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-flash-0731': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-flash-vision-exp': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'deepseek/deepseek-v4-pro-0813': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'fish-audio/s1': VercelGatewayCommonOptions\n 'fish-audio/s1-free': VercelGatewayCommonOptions\n 'fish-audio/s2-pro': VercelGatewayCommonOptions\n 'fish-audio/s2-pro-free': VercelGatewayCommonOptions\n 'fish-audio/s2.1-pro': VercelGatewayCommonOptions\n 'fish-audio/s2.1-pro-free': VercelGatewayCommonOptions\n 'fish-audio/transcribe-1': VercelGatewayCommonOptions\n 'fish-audio/transcribe-1-free': VercelGatewayCommonOptions\n 'google/gemini-2.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-2.5-flash-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'google/gemini-2.5-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-2.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3-pro-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'google/gemini-3.1-flash-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-image-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-flash-lite-image': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.1-pro-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-flash-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.5-transcribe': VercelGatewayCommonOptions\n 'google/gemini-3.5-transcribe-live': VercelGatewayCommonOptions\n 'google/gemini-3.6-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-3.8-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemini-omni-flash-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemma-4-26b-a4b-it': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'google/gemma-4-31b-it': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inception/mercury-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inception/mercury-coder-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'inclusionai/ling-3.0-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inclusionai/ling-3.0-flash-fin': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'inclusionai/ling-3.0-flash-fin-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'interfaze/interfaze-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-air-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-pro-v1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'kwaipilot/kat-coder-pro-v2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'kwaipilot/kat-coder-pro-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/llama-3.1-70b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-3.1-8b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-3.3-70b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-4-maverick': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/llama-4-scout': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'meta/muse-glimmer-30b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.2-contributor': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'meta/muse-spark-1.3-contributor': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.1-lightning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.5-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m2.7-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'minimax/minimax-m3-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'mistral/codestral': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/devstral-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/devstral-small-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-14b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/ministral-8b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-large-3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-medium': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-medium-3.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'mistral/mistral-nemo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/mistral-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'mistral/pixtral-12b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'moonshotai/kimi-k2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'moonshotai/kimi-k2-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.7-code': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k2.7-code-highspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'moonshotai/kimi-k3-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'morph/morph-v3-fast': VercelGatewayCommonOptions &\n Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop'>\n 'morph/morph-v3-large': VercelGatewayCommonOptions &\n Pick<VercelGatewayBaseOptions, 'max_tokens' | 'max_output_tokens' | 'stop'>\n 'nvidia/nemotron-3-nano-30b-a3b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3-super-120b-a12b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3-ultra-550b-a55b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-3.5-lightning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-nano-12b-v2-vl': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'nvidia/nemotron-nano-9b-v2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-3.5-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4.1-nano-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-4o-mini-transcribe': VercelGatewayCommonOptions\n 'openai/gpt-4o-transcribe': VercelGatewayCommonOptions\n 'openai/gpt-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex-max': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-codex-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-thinking': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.1-thinking-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.2-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.3-codex': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.3-codex-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-nano': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.4-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-luna': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-luna-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-sol': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-sol-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-terra': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-5.6-terra-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-120b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-20b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-safeguard-120b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-oss-safeguard-20b': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-realtime-1.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/gpt-realtime-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'openai/gpt-realtime-whisper': VercelGatewayCommonOptions\n 'openai/o1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o3-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o4-mini': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/o4-mini-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'openai/tts-1': VercelGatewayCommonOptions\n 'openai/tts-1-hd': VercelGatewayCommonOptions\n 'openai/whisper-1': VercelGatewayCommonOptions\n 'perplexity/sonar': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'perplexity/sonar-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'perplexity/sonar-reasoning-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'poolside/laguna-s-2.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'poolside/laguna-s-2.1-free': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'sakana/fugu-ultra': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'sakana/namazu': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n | 'response_format'\n | 'structured_outputs'\n >\n 'spacexai/grok-4.1-fast-non-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.1-fast-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-multi-agent': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-multi-agent-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-non-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.20-non-reasoning-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-4.20-reasoning': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.20-reasoning-beta': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-build-0.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'spacexai/grok-stt': VercelGatewayCommonOptions\n 'spacexai/grok-tts': VercelGatewayCommonOptions\n 'spacexai/grok-voice-think-fast-1.0': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'spacexai/grok-voice-think-fast-2.0': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'stepfun/step-3.5-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'stepfun/step-3.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'tencent/hy-mt2-lite': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy-mt2-plus': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy-mt2-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n 'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'\n >\n 'tencent/hy3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'tencent/hy4-preview': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'thinkingmachines/inkling': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'thinkingmachines/inkling-small': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'xiaomi/mimo-v2.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'xiaomi/mimo-v2.5-pro': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'xiaomi/mimo-v2.5-pro-ultraspeed': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5-air': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.5v': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.6': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-4.7-flashx': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.1': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.2': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.2-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3-fast': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3-flash': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5.3-promo-50': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n 'zai/glm-5v-turbo': VercelGatewayCommonOptions &\n Pick<\n VercelGatewayBaseOptions,\n | 'max_tokens'\n | 'max_output_tokens'\n | 'temperature'\n | 'stop'\n | 'reasoning'\n | 'include_reasoning'\n >\n}\n\nexport type VercelGatewayModelInputModalitiesByName = {\n 'alibaba/qwen-3-14b': readonly ['text']\n 'alibaba/qwen-3-235b': readonly ['text']\n 'alibaba/qwen-3-30b': readonly ['text']\n 'alibaba/qwen-3-32b': readonly ['text']\n 'alibaba/qwen-3.6-max-preview': readonly ['text']\n 'alibaba/qwen3-235b-a22b-thinking': readonly ['text', 'image', 'document']\n 'alibaba/qwen3-coder': readonly ['text']\n 'alibaba/qwen3-coder-30b-a3b': readonly ['text']\n 'alibaba/qwen3-coder-next': readonly ['text']\n 'alibaba/qwen3-coder-plus': readonly ['text']\n 'alibaba/qwen3-max': readonly ['text']\n 'alibaba/qwen3-max-preview': readonly ['text']\n 'alibaba/qwen3-max-thinking': readonly ['text']\n 'alibaba/qwen3-next-80b-a3b-instruct': readonly ['text']\n 'alibaba/qwen3-next-80b-a3b-thinking': readonly ['text']\n 'alibaba/qwen3-vl-235b-a22b-instruct': readonly ['text', 'image']\n 'alibaba/qwen3-vl-instruct': readonly ['text', 'image']\n 'alibaba/qwen3-vl-thinking': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.5-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.5-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.6-27b': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.6-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.7-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.7-max': readonly ['text']\n 'alibaba/qwen3.7-plus': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.8-2.4t-a95b': readonly ['text', 'image']\n 'alibaba/qwen3.8-27b': readonly ['text', 'image', 'document', 'video']\n 'alibaba/qwen3.8-flash': readonly ['text', 'image', 'document']\n 'alibaba/qwen3.8-flash-next': readonly ['text', 'image']\n 'alibaba/qwen3.8-max': readonly ['text', 'image']\n 'alibaba/qwen3.8-max-0902': readonly ['text', 'image', 'document']\n 'amazon/nova-2-lite': readonly ['text', 'image', 'document']\n 'amazon/nova-lite': readonly ['text', 'image', 'document']\n 'amazon/nova-micro': readonly ['text']\n 'amazon/nova-pro': readonly ['text', 'image', 'document']\n 'anthropic/claude-3-haiku': readonly ['text', 'image']\n 'anthropic/claude-fable-5': readonly ['text', 'image', 'document']\n 'anthropic/claude-fable-5.1': readonly ['text', 'image', 'document']\n 'anthropic/claude-haiku-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.6': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.7': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.8': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-4.8-fast': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-5': readonly ['text', 'image', 'document']\n 'anthropic/claude-opus-5-fast': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4.5': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-4.6': readonly ['text', 'image', 'document']\n 'anthropic/claude-sonnet-5': readonly ['text', 'image', 'document']\n 'arcee-ai/trinity-large-thinking': readonly ['text']\n 'bytedance/seed-1.6': readonly ['text', 'image']\n 'bytedance/seed-1.8': readonly ['text', 'image']\n 'cohere/command-a': readonly ['text']\n 'deepseek/deepseek-r1': readonly ['text']\n 'deepseek/deepseek-v3.1': readonly ['text']\n 'deepseek/deepseek-v3.1-terminus': readonly ['text']\n 'deepseek/deepseek-v3.2': readonly ['text']\n 'deepseek/deepseek-v3.2-thinking': readonly ['text']\n 'deepseek/deepseek-v4-flash': readonly ['text']\n 'deepseek/deepseek-v4-flash-0731': readonly ['text']\n 'deepseek/deepseek-v4-flash-vision-exp': readonly ['text', 'image']\n 'deepseek/deepseek-v4-pro': readonly ['text']\n 'deepseek/deepseek-v4-pro-0813': readonly ['text']\n 'fish-audio/s1': readonly ['text']\n 'fish-audio/s1-free': readonly ['text']\n 'fish-audio/s2-pro': readonly ['text']\n 'fish-audio/s2-pro-free': readonly ['text']\n 'fish-audio/s2.1-pro': readonly ['text']\n 'fish-audio/s2.1-pro-free': readonly ['text']\n 'fish-audio/transcribe-1': readonly ['text', 'audio']\n 'fish-audio/transcribe-1-free': readonly ['text', 'audio']\n 'google/gemini-2.5-flash': readonly ['text', 'image', 'document']\n 'google/gemini-2.5-flash-image': readonly ['text', 'image']\n 'google/gemini-2.5-flash-lite': readonly ['text', 'image', 'document']\n 'google/gemini-2.5-pro': readonly ['text', 'image', 'document']\n 'google/gemini-3-flash': readonly ['text', 'image', 'document']\n 'google/gemini-3-pro-image': readonly ['text', 'image']\n 'google/gemini-3.1-flash-image': readonly ['text', 'image']\n 'google/gemini-3.1-flash-image-preview': readonly ['text', 'image']\n 'google/gemini-3.1-flash-lite': readonly ['text', 'image', 'document']\n 'google/gemini-3.1-flash-lite-image': readonly ['text', 'image']\n 'google/gemini-3.1-pro-preview': readonly ['text', 'image', 'document']\n 'google/gemini-3.5-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-3.5-flash-lite': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'google/gemini-3.5-transcribe': readonly ['text', 'audio']\n 'google/gemini-3.5-transcribe-live': readonly ['text', 'audio']\n 'google/gemini-3.6-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-3.7-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-3.8-flash': readonly ['text', 'image', 'document', 'video']\n 'google/gemini-omni-flash-preview': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'google/gemma-4-26b-a4b-it': readonly ['text', 'image', 'document']\n 'google/gemma-4-31b-it': readonly ['text', 'image', 'document']\n 'inception/mercury-2': readonly ['text']\n 'inception/mercury-coder-small': readonly ['text']\n 'inclusionai/ling-3.0-flash': readonly ['text']\n 'inclusionai/ling-3.0-flash-fin': readonly ['text']\n 'inclusionai/ling-3.0-flash-fin-free': readonly ['text']\n 'interfaze/interfaze-beta': readonly ['text', 'image', 'document']\n 'kwaipilot/kat-coder-air-v2.5': readonly ['text', 'image']\n 'kwaipilot/kat-coder-pro-v1': readonly ['text']\n 'kwaipilot/kat-coder-pro-v2': readonly ['text']\n 'kwaipilot/kat-coder-pro-v2.5': readonly ['text', 'image']\n 'meta/llama-3.1-70b': readonly ['text']\n 'meta/llama-3.1-8b': readonly ['text']\n 'meta/llama-3.3-70b': readonly ['text']\n 'meta/llama-4-maverick': readonly ['text', 'image']\n 'meta/llama-4-scout': readonly ['text', 'image']\n 'meta/muse-glimmer-30b': readonly ['text', 'image']\n 'meta/muse-spark-1.1': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.2': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.2-contributor': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.3': readonly ['text', 'image', 'document']\n 'meta/muse-spark-1.3-contributor': readonly ['text', 'image', 'document']\n 'minimax/minimax-m2': readonly ['text']\n 'minimax/minimax-m2.1': readonly ['text']\n 'minimax/minimax-m2.1-lightning': readonly ['text']\n 'minimax/minimax-m2.5': readonly ['text']\n 'minimax/minimax-m2.5-highspeed': readonly ['text']\n 'minimax/minimax-m2.7': readonly ['text']\n 'minimax/minimax-m2.7-free': readonly ['text']\n 'minimax/minimax-m2.7-highspeed': readonly ['text']\n 'minimax/minimax-m3': readonly ['text', 'image', 'document']\n 'minimax/minimax-m3-free': readonly ['text', 'image']\n 'mistral/codestral': readonly ['text']\n 'mistral/devstral-2': readonly ['text']\n 'mistral/devstral-small-2': readonly ['text', 'image']\n 'mistral/ministral-14b': readonly ['text', 'image', 'document']\n 'mistral/ministral-3b': readonly ['text', 'image']\n 'mistral/ministral-8b': readonly ['text', 'image']\n 'mistral/mistral-large-3': readonly ['text', 'image']\n 'mistral/mistral-medium': readonly ['text', 'image']\n 'mistral/mistral-medium-3.5': readonly ['text', 'image']\n 'mistral/mistral-nemo': readonly ['text', 'image']\n 'mistral/mistral-small': readonly ['text', 'image']\n 'mistral/pixtral-12b': readonly ['text', 'image']\n 'moonshotai/kimi-k2': readonly ['text']\n 'moonshotai/kimi-k2-thinking': readonly ['text']\n 'moonshotai/kimi-k2.5': readonly ['text', 'image', 'video']\n 'moonshotai/kimi-k2.6': readonly ['text', 'image', 'video']\n 'moonshotai/kimi-k2.7-code': readonly ['text', 'image', 'document', 'video']\n 'moonshotai/kimi-k2.7-code-highspeed': readonly [\n 'text',\n 'image',\n 'document',\n 'video',\n ]\n 'moonshotai/kimi-k3': readonly ['text', 'image', 'document', 'video']\n 'moonshotai/kimi-k3-fast': readonly ['text', 'image', 'document']\n 'morph/morph-v3-fast': readonly ['text']\n 'morph/morph-v3-large': readonly ['text']\n 'nvidia/nemotron-3-nano-30b-a3b': readonly ['text']\n 'nvidia/nemotron-3-super-120b-a12b': readonly ['text']\n 'nvidia/nemotron-3-ultra-550b-a55b': readonly ['text']\n 'nvidia/nemotron-3.5-lightning': readonly ['text']\n 'nvidia/nemotron-nano-12b-v2-vl': readonly ['text', 'image']\n 'nvidia/nemotron-nano-9b-v2': readonly ['text']\n 'openai/gpt-3.5-turbo': readonly ['text']\n 'openai/gpt-4-turbo': readonly ['text', 'image']\n 'openai/gpt-4.1': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-4.1-nano-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-4o-mini-transcribe': readonly ['text', 'audio']\n 'openai/gpt-4o-transcribe': readonly ['text', 'audio']\n 'openai/gpt-5': readonly ['text', 'image', 'document']\n 'openai/gpt-5-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-5-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex-max': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-codex-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-thinking': readonly ['text', 'image', 'document']\n 'openai/gpt-5.1-thinking-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.2-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.3-codex': readonly ['text', 'image', 'document']\n 'openai/gpt-5.3-codex-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-mini': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-mini-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-nano': readonly ['text', 'image', 'document']\n 'openai/gpt-5.4-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.5-pro': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-luna': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-luna-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-sol': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-sol-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-terra': readonly ['text', 'image', 'document']\n 'openai/gpt-5.6-terra-fast': readonly ['text', 'image', 'document']\n 'openai/gpt-oss-120b': readonly ['text']\n 'openai/gpt-oss-20b': readonly ['text']\n 'openai/gpt-oss-safeguard-120b': readonly ['text']\n 'openai/gpt-oss-safeguard-20b': readonly ['text']\n 'openai/gpt-realtime-1.5': readonly ['text', 'audio']\n 'openai/gpt-realtime-2': readonly ['text', 'audio']\n 'openai/gpt-realtime-2.1': readonly ['text', 'audio']\n 'openai/gpt-realtime-mini': readonly ['text', 'audio']\n 'openai/gpt-realtime-whisper': readonly ['text', 'audio']\n 'openai/o1': readonly ['text', 'image', 'document']\n 'openai/o3': readonly ['text', 'image', 'document']\n 'openai/o3-fast': readonly ['text', 'image', 'document']\n 'openai/o3-mini': readonly ['text']\n 'openai/o3-pro': readonly ['text', 'image', 'document']\n 'openai/o4-mini': readonly ['text', 'image', 'document']\n 'openai/o4-mini-fast': readonly ['text', 'image', 'document']\n 'openai/tts-1': readonly ['text']\n 'openai/tts-1-hd': readonly ['text']\n 'openai/whisper-1': readonly ['text', 'audio']\n 'perplexity/sonar': readonly ['text', 'image']\n 'perplexity/sonar-pro': readonly ['text', 'image']\n 'perplexity/sonar-reasoning-pro': readonly ['text', 'image']\n 'poolside/laguna-s-2.1': readonly ['text']\n 'poolside/laguna-s-2.1-free': readonly ['text']\n 'sakana/fugu-ultra': readonly ['text', 'image']\n 'sakana/namazu': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.1-fast-non-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.1-fast-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-multi-agent': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-multi-agent-beta': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-non-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-non-reasoning-beta': readonly [\n 'text',\n 'image',\n 'document',\n ]\n 'spacexai/grok-4.20-reasoning': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.20-reasoning-beta': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.3': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.5': readonly ['text', 'image', 'document']\n 'spacexai/grok-4.6': readonly ['text', 'image']\n 'spacexai/grok-build-0.1': readonly ['text', 'image']\n 'spacexai/grok-stt': readonly ['text', 'audio']\n 'spacexai/grok-tts': readonly ['text']\n 'spacexai/grok-voice-think-fast-1.0': readonly ['text', 'audio']\n 'spacexai/grok-voice-think-fast-2.0': readonly ['text', 'audio']\n 'stepfun/step-3.5-flash': readonly ['text', 'image']\n 'stepfun/step-3.7-flash': readonly ['text', 'image']\n 'tencent/hy-mt2-lite': readonly ['text']\n 'tencent/hy-mt2-plus': readonly ['text']\n 'tencent/hy-mt2-pro': readonly ['text']\n 'tencent/hy3': readonly ['text']\n 'tencent/hy4-preview': readonly ['text']\n 'thinkingmachines/inkling': readonly ['text', 'image', 'document']\n 'thinkingmachines/inkling-small': readonly ['text', 'image', 'document']\n 'xiaomi/mimo-v2.5': readonly ['text', 'image']\n 'xiaomi/mimo-v2.5-pro': readonly ['text']\n 'xiaomi/mimo-v2.5-pro-ultraspeed': readonly ['text']\n 'zai/glm-4.5': readonly ['text']\n 'zai/glm-4.5-air': readonly ['text']\n 'zai/glm-4.5v': readonly ['text', 'image']\n 'zai/glm-4.6': readonly ['text']\n 'zai/glm-4.7': readonly ['text']\n 'zai/glm-4.7-flash': readonly ['text']\n 'zai/glm-4.7-flashx': readonly ['text']\n 'zai/glm-5': readonly ['text']\n 'zai/glm-5-turbo': readonly ['text']\n 'zai/glm-5.1': readonly ['text']\n 'zai/glm-5.2': readonly ['text']\n 'zai/glm-5.2-fast': readonly ['text']\n 'zai/glm-5.3': readonly ['text']\n 'zai/glm-5.3-fast': readonly ['text']\n 'zai/glm-5.3-flash': readonly ['text', 'image']\n 'zai/glm-5.3-promo-50': readonly ['text']\n 'zai/glm-5v-turbo': readonly ['text', 'image', 'document']\n}\n\nexport type VercelGatewayChatModelToolCapabilitiesByName = {\n [K in VercelGatewayChatModel]: readonly []\n}\n\nexport type VercelGatewayEmbeddingModelProviderOptionsByName = {\n [K in VercelGatewayEmbeddingModel]: VercelGatewayEmbeddingProviderOptions\n}\n\nexport type VercelGatewayEmbeddingModelInputModalitiesByName = {\n [K in VercelGatewayEmbeddingModel]: readonly ['text']\n}\n\nexport type VercelGatewayImageModelProviderOptionsByName = {\n [K in VercelGatewayImageModel]: VercelGatewayImageProviderOptions\n}\n\nexport type VercelGatewayImageModelSizeByName = {\n [K in VercelGatewayImageModel]: VercelGatewayImageSize\n}\n\nexport type VercelGatewayImageModelInputModalitiesByName = {\n [K in VercelGatewayImageModel]: readonly []\n}\n\nexport type ResolveProviderOptions<TModel extends string> =\n TModel extends keyof VercelGatewayChatModelProviderOptionsByName\n ? VercelGatewayChatModelProviderOptionsByName[TModel]\n : TModel extends VercelGatewayEmbeddingModel\n ? VercelGatewayEmbeddingProviderOptions\n : TModel extends VercelGatewayImageModel\n ? VercelGatewayImageProviderOptions\n : VercelGatewayTextProviderOptions\n\nexport type ResolveInputModalities<TModel extends string> =\n TModel extends keyof VercelGatewayModelInputModalitiesByName\n ? VercelGatewayModelInputModalitiesByName[TModel]\n : readonly ['text']\n"],"mappings":";AAeA,IAAa,6BAA6B;CACxC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,2BAA2B;CACtC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,4BAA4B;CACvC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAIA,IAAa,kCAAkC;CAC7C;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAKA,IAAa,8BAA8B;CACzC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack/ai-vercel-gateway",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"description": "Vercel AI Gateway adapter for TanStack AI chat, embeddings, and image generation.",
|
|
5
5
|
"author": "Tanner Linsley",
|
|
6
6
|
"license": "MIT",
|
|
@@ -56,12 +56,12 @@
|
|
|
56
56
|
"vite": "^8.2.1"
|
|
57
57
|
},
|
|
58
58
|
"peerDependencies": {
|
|
59
|
-
"@tanstack/ai": "^0.
|
|
59
|
+
"@tanstack/ai": "^0.53.0"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
62
|
"openai": "^6.41.0",
|
|
63
63
|
"@tanstack/ai-utils": "^0.4.0",
|
|
64
|
-
"@tanstack/openai-base": "^0.10.
|
|
64
|
+
"@tanstack/openai-base": "^0.10.10"
|
|
65
65
|
},
|
|
66
66
|
"scripts": {
|
|
67
67
|
"build": "vite build",
|
package/src/model-meta.ts
CHANGED
|
@@ -44,12 +44,14 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
44
44
|
'alibaba/qwen3.8-flash',
|
|
45
45
|
'alibaba/qwen3.8-flash-next',
|
|
46
46
|
'alibaba/qwen3.8-max',
|
|
47
|
+
'alibaba/qwen3.8-max-0902',
|
|
47
48
|
'amazon/nova-2-lite',
|
|
48
49
|
'amazon/nova-lite',
|
|
49
50
|
'amazon/nova-micro',
|
|
50
51
|
'amazon/nova-pro',
|
|
51
52
|
'anthropic/claude-3-haiku',
|
|
52
53
|
'anthropic/claude-fable-5',
|
|
54
|
+
'anthropic/claude-fable-5.1',
|
|
53
55
|
'anthropic/claude-haiku-4.5',
|
|
54
56
|
'anthropic/claude-opus-4',
|
|
55
57
|
'anthropic/claude-opus-4.5',
|
|
@@ -68,7 +70,6 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
68
70
|
'bytedance/seed-1.8',
|
|
69
71
|
'cohere/command-a',
|
|
70
72
|
'deepseek/deepseek-r1',
|
|
71
|
-
'deepseek/deepseek-v3',
|
|
72
73
|
'deepseek/deepseek-v3.1',
|
|
73
74
|
'deepseek/deepseek-v3.1-terminus',
|
|
74
75
|
'deepseek/deepseek-v3.2',
|
|
@@ -103,6 +104,7 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
103
104
|
'google/gemini-3.5-transcribe-live',
|
|
104
105
|
'google/gemini-3.6-flash',
|
|
105
106
|
'google/gemini-3.7-flash',
|
|
107
|
+
'google/gemini-3.8-flash',
|
|
106
108
|
'google/gemini-omni-flash-preview',
|
|
107
109
|
'google/gemma-4-26b-a4b-it',
|
|
108
110
|
'google/gemma-4-31b-it',
|
|
@@ -125,6 +127,8 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
125
127
|
'meta/muse-spark-1.1',
|
|
126
128
|
'meta/muse-spark-1.2',
|
|
127
129
|
'meta/muse-spark-1.2-contributor',
|
|
130
|
+
'meta/muse-spark-1.3',
|
|
131
|
+
'meta/muse-spark-1.3-contributor',
|
|
128
132
|
'minimax/minimax-m2',
|
|
129
133
|
'minimax/minimax-m2.1',
|
|
130
134
|
'minimax/minimax-m2.1-lightning',
|
|
@@ -263,6 +267,7 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
263
267
|
'thinkingmachines/inkling-small',
|
|
264
268
|
'xiaomi/mimo-v2.5',
|
|
265
269
|
'xiaomi/mimo-v2.5-pro',
|
|
270
|
+
'xiaomi/mimo-v2.5-pro-ultraspeed',
|
|
266
271
|
'zai/glm-4.5',
|
|
267
272
|
'zai/glm-4.5-air',
|
|
268
273
|
'zai/glm-4.5v',
|
|
@@ -276,7 +281,9 @@ export const VERCEL_GATEWAY_CHAT_MODELS = [
|
|
|
276
281
|
'zai/glm-5.2',
|
|
277
282
|
'zai/glm-5.2-fast',
|
|
278
283
|
'zai/glm-5.3',
|
|
284
|
+
'zai/glm-5.3-fast',
|
|
279
285
|
'zai/glm-5.3-flash',
|
|
286
|
+
'zai/glm-5.3-promo-50',
|
|
280
287
|
'zai/glm-5v-turbo',
|
|
281
288
|
] as const
|
|
282
289
|
|
|
@@ -667,6 +674,16 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
667
674
|
| 'reasoning'
|
|
668
675
|
| 'include_reasoning'
|
|
669
676
|
>
|
|
677
|
+
'alibaba/qwen3.8-max-0902': VercelGatewayCommonOptions &
|
|
678
|
+
Pick<
|
|
679
|
+
VercelGatewayBaseOptions,
|
|
680
|
+
| 'max_tokens'
|
|
681
|
+
| 'max_output_tokens'
|
|
682
|
+
| 'temperature'
|
|
683
|
+
| 'stop'
|
|
684
|
+
| 'reasoning'
|
|
685
|
+
| 'include_reasoning'
|
|
686
|
+
>
|
|
670
687
|
'amazon/nova-2-lite': VercelGatewayCommonOptions &
|
|
671
688
|
Pick<
|
|
672
689
|
VercelGatewayBaseOptions,
|
|
@@ -698,6 +715,15 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
698
715
|
'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'
|
|
699
716
|
>
|
|
700
717
|
'anthropic/claude-fable-5': VercelGatewayCommonOptions &
|
|
718
|
+
Pick<
|
|
719
|
+
VercelGatewayBaseOptions,
|
|
720
|
+
| 'max_tokens'
|
|
721
|
+
| 'max_output_tokens'
|
|
722
|
+
| 'stop'
|
|
723
|
+
| 'reasoning'
|
|
724
|
+
| 'include_reasoning'
|
|
725
|
+
>
|
|
726
|
+
'anthropic/claude-fable-5.1': VercelGatewayCommonOptions &
|
|
701
727
|
Pick<
|
|
702
728
|
VercelGatewayBaseOptions,
|
|
703
729
|
| 'max_tokens'
|
|
@@ -782,7 +808,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
782
808
|
VercelGatewayBaseOptions,
|
|
783
809
|
| 'max_tokens'
|
|
784
810
|
| 'max_output_tokens'
|
|
785
|
-
| 'temperature'
|
|
786
811
|
| 'stop'
|
|
787
812
|
| 'reasoning'
|
|
788
813
|
| 'include_reasoning'
|
|
@@ -792,7 +817,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
792
817
|
VercelGatewayBaseOptions,
|
|
793
818
|
| 'max_tokens'
|
|
794
819
|
| 'max_output_tokens'
|
|
795
|
-
| 'temperature'
|
|
796
820
|
| 'stop'
|
|
797
821
|
| 'reasoning'
|
|
798
822
|
| 'include_reasoning'
|
|
@@ -832,7 +856,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
832
856
|
VercelGatewayBaseOptions,
|
|
833
857
|
| 'max_tokens'
|
|
834
858
|
| 'max_output_tokens'
|
|
835
|
-
| 'temperature'
|
|
836
859
|
| 'stop'
|
|
837
860
|
| 'reasoning'
|
|
838
861
|
| 'include_reasoning'
|
|
@@ -882,11 +905,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
882
905
|
| 'reasoning'
|
|
883
906
|
| 'include_reasoning'
|
|
884
907
|
>
|
|
885
|
-
'deepseek/deepseek-v3': VercelGatewayCommonOptions &
|
|
886
|
-
Pick<
|
|
887
|
-
VercelGatewayBaseOptions,
|
|
888
|
-
'max_tokens' | 'max_output_tokens' | 'temperature' | 'stop'
|
|
889
|
-
>
|
|
890
908
|
'deepseek/deepseek-v3.1': VercelGatewayCommonOptions &
|
|
891
909
|
Pick<
|
|
892
910
|
VercelGatewayBaseOptions,
|
|
@@ -1117,6 +1135,16 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1117
1135
|
| 'reasoning'
|
|
1118
1136
|
| 'include_reasoning'
|
|
1119
1137
|
>
|
|
1138
|
+
'google/gemini-3.8-flash': VercelGatewayCommonOptions &
|
|
1139
|
+
Pick<
|
|
1140
|
+
VercelGatewayBaseOptions,
|
|
1141
|
+
| 'max_tokens'
|
|
1142
|
+
| 'max_output_tokens'
|
|
1143
|
+
| 'temperature'
|
|
1144
|
+
| 'stop'
|
|
1145
|
+
| 'reasoning'
|
|
1146
|
+
| 'include_reasoning'
|
|
1147
|
+
>
|
|
1120
1148
|
'google/gemini-omni-flash-preview': VercelGatewayCommonOptions &
|
|
1121
1149
|
Pick<
|
|
1122
1150
|
VercelGatewayBaseOptions,
|
|
@@ -1302,6 +1330,26 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1302
1330
|
| 'reasoning'
|
|
1303
1331
|
| 'include_reasoning'
|
|
1304
1332
|
>
|
|
1333
|
+
'meta/muse-spark-1.3': VercelGatewayCommonOptions &
|
|
1334
|
+
Pick<
|
|
1335
|
+
VercelGatewayBaseOptions,
|
|
1336
|
+
| 'max_tokens'
|
|
1337
|
+
| 'max_output_tokens'
|
|
1338
|
+
| 'temperature'
|
|
1339
|
+
| 'stop'
|
|
1340
|
+
| 'reasoning'
|
|
1341
|
+
| 'include_reasoning'
|
|
1342
|
+
>
|
|
1343
|
+
'meta/muse-spark-1.3-contributor': VercelGatewayCommonOptions &
|
|
1344
|
+
Pick<
|
|
1345
|
+
VercelGatewayBaseOptions,
|
|
1346
|
+
| 'max_tokens'
|
|
1347
|
+
| 'max_output_tokens'
|
|
1348
|
+
| 'temperature'
|
|
1349
|
+
| 'stop'
|
|
1350
|
+
| 'reasoning'
|
|
1351
|
+
| 'include_reasoning'
|
|
1352
|
+
>
|
|
1305
1353
|
'minimax/minimax-m2': VercelGatewayCommonOptions &
|
|
1306
1354
|
Pick<
|
|
1307
1355
|
VercelGatewayBaseOptions,
|
|
@@ -1915,7 +1963,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1915
1963
|
VercelGatewayBaseOptions,
|
|
1916
1964
|
| 'max_tokens'
|
|
1917
1965
|
| 'max_output_tokens'
|
|
1918
|
-
| 'temperature'
|
|
1919
1966
|
| 'stop'
|
|
1920
1967
|
| 'reasoning'
|
|
1921
1968
|
| 'include_reasoning'
|
|
@@ -1945,7 +1992,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1945
1992
|
VercelGatewayBaseOptions,
|
|
1946
1993
|
| 'max_tokens'
|
|
1947
1994
|
| 'max_output_tokens'
|
|
1948
|
-
| 'temperature'
|
|
1949
1995
|
| 'stop'
|
|
1950
1996
|
| 'reasoning'
|
|
1951
1997
|
| 'include_reasoning'
|
|
@@ -1965,7 +2011,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1965
2011
|
VercelGatewayBaseOptions,
|
|
1966
2012
|
| 'max_tokens'
|
|
1967
2013
|
| 'max_output_tokens'
|
|
1968
|
-
| 'temperature'
|
|
1969
2014
|
| 'stop'
|
|
1970
2015
|
| 'reasoning'
|
|
1971
2016
|
| 'include_reasoning'
|
|
@@ -1985,7 +2030,6 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
1985
2030
|
VercelGatewayBaseOptions,
|
|
1986
2031
|
| 'max_tokens'
|
|
1987
2032
|
| 'max_output_tokens'
|
|
1988
|
-
| 'temperature'
|
|
1989
2033
|
| 'stop'
|
|
1990
2034
|
| 'reasoning'
|
|
1991
2035
|
| 'include_reasoning'
|
|
@@ -2397,6 +2441,16 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
2397
2441
|
| 'reasoning'
|
|
2398
2442
|
| 'include_reasoning'
|
|
2399
2443
|
>
|
|
2444
|
+
'xiaomi/mimo-v2.5-pro-ultraspeed': VercelGatewayCommonOptions &
|
|
2445
|
+
Pick<
|
|
2446
|
+
VercelGatewayBaseOptions,
|
|
2447
|
+
| 'max_tokens'
|
|
2448
|
+
| 'max_output_tokens'
|
|
2449
|
+
| 'temperature'
|
|
2450
|
+
| 'stop'
|
|
2451
|
+
| 'reasoning'
|
|
2452
|
+
| 'include_reasoning'
|
|
2453
|
+
>
|
|
2400
2454
|
'zai/glm-4.5': VercelGatewayCommonOptions &
|
|
2401
2455
|
Pick<
|
|
2402
2456
|
VercelGatewayBaseOptions,
|
|
@@ -2527,6 +2581,16 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
2527
2581
|
| 'reasoning'
|
|
2528
2582
|
| 'include_reasoning'
|
|
2529
2583
|
>
|
|
2584
|
+
'zai/glm-5.3-fast': VercelGatewayCommonOptions &
|
|
2585
|
+
Pick<
|
|
2586
|
+
VercelGatewayBaseOptions,
|
|
2587
|
+
| 'max_tokens'
|
|
2588
|
+
| 'max_output_tokens'
|
|
2589
|
+
| 'temperature'
|
|
2590
|
+
| 'stop'
|
|
2591
|
+
| 'reasoning'
|
|
2592
|
+
| 'include_reasoning'
|
|
2593
|
+
>
|
|
2530
2594
|
'zai/glm-5.3-flash': VercelGatewayCommonOptions &
|
|
2531
2595
|
Pick<
|
|
2532
2596
|
VercelGatewayBaseOptions,
|
|
@@ -2537,6 +2601,16 @@ export type VercelGatewayChatModelProviderOptionsByName = {
|
|
|
2537
2601
|
| 'reasoning'
|
|
2538
2602
|
| 'include_reasoning'
|
|
2539
2603
|
>
|
|
2604
|
+
'zai/glm-5.3-promo-50': VercelGatewayCommonOptions &
|
|
2605
|
+
Pick<
|
|
2606
|
+
VercelGatewayBaseOptions,
|
|
2607
|
+
| 'max_tokens'
|
|
2608
|
+
| 'max_output_tokens'
|
|
2609
|
+
| 'temperature'
|
|
2610
|
+
| 'stop'
|
|
2611
|
+
| 'reasoning'
|
|
2612
|
+
| 'include_reasoning'
|
|
2613
|
+
>
|
|
2540
2614
|
'zai/glm-5v-turbo': VercelGatewayCommonOptions &
|
|
2541
2615
|
Pick<
|
|
2542
2616
|
VercelGatewayBaseOptions,
|
|
@@ -2580,12 +2654,14 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2580
2654
|
'alibaba/qwen3.8-flash': readonly ['text', 'image', 'document']
|
|
2581
2655
|
'alibaba/qwen3.8-flash-next': readonly ['text', 'image']
|
|
2582
2656
|
'alibaba/qwen3.8-max': readonly ['text', 'image']
|
|
2657
|
+
'alibaba/qwen3.8-max-0902': readonly ['text', 'image', 'document']
|
|
2583
2658
|
'amazon/nova-2-lite': readonly ['text', 'image', 'document']
|
|
2584
2659
|
'amazon/nova-lite': readonly ['text', 'image', 'document']
|
|
2585
2660
|
'amazon/nova-micro': readonly ['text']
|
|
2586
2661
|
'amazon/nova-pro': readonly ['text', 'image', 'document']
|
|
2587
2662
|
'anthropic/claude-3-haiku': readonly ['text', 'image']
|
|
2588
2663
|
'anthropic/claude-fable-5': readonly ['text', 'image', 'document']
|
|
2664
|
+
'anthropic/claude-fable-5.1': readonly ['text', 'image', 'document']
|
|
2589
2665
|
'anthropic/claude-haiku-4.5': readonly ['text', 'image', 'document']
|
|
2590
2666
|
'anthropic/claude-opus-4': readonly ['text', 'image', 'document']
|
|
2591
2667
|
'anthropic/claude-opus-4.5': readonly ['text', 'image', 'document']
|
|
@@ -2604,7 +2680,6 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2604
2680
|
'bytedance/seed-1.8': readonly ['text', 'image']
|
|
2605
2681
|
'cohere/command-a': readonly ['text']
|
|
2606
2682
|
'deepseek/deepseek-r1': readonly ['text']
|
|
2607
|
-
'deepseek/deepseek-v3': readonly ['text']
|
|
2608
2683
|
'deepseek/deepseek-v3.1': readonly ['text']
|
|
2609
2684
|
'deepseek/deepseek-v3.1-terminus': readonly ['text']
|
|
2610
2685
|
'deepseek/deepseek-v3.2': readonly ['text']
|
|
@@ -2644,6 +2719,7 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2644
2719
|
'google/gemini-3.5-transcribe-live': readonly ['text', 'audio']
|
|
2645
2720
|
'google/gemini-3.6-flash': readonly ['text', 'image', 'document', 'video']
|
|
2646
2721
|
'google/gemini-3.7-flash': readonly ['text', 'image', 'document', 'video']
|
|
2722
|
+
'google/gemini-3.8-flash': readonly ['text', 'image', 'document', 'video']
|
|
2647
2723
|
'google/gemini-omni-flash-preview': readonly [
|
|
2648
2724
|
'text',
|
|
2649
2725
|
'image',
|
|
@@ -2671,6 +2747,8 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2671
2747
|
'meta/muse-spark-1.1': readonly ['text', 'image', 'document']
|
|
2672
2748
|
'meta/muse-spark-1.2': readonly ['text', 'image', 'document']
|
|
2673
2749
|
'meta/muse-spark-1.2-contributor': readonly ['text', 'image', 'document']
|
|
2750
|
+
'meta/muse-spark-1.3': readonly ['text', 'image', 'document']
|
|
2751
|
+
'meta/muse-spark-1.3-contributor': readonly ['text', 'image', 'document']
|
|
2674
2752
|
'minimax/minimax-m2': readonly ['text']
|
|
2675
2753
|
'minimax/minimax-m2.1': readonly ['text']
|
|
2676
2754
|
'minimax/minimax-m2.1-lightning': readonly ['text']
|
|
@@ -2818,6 +2896,7 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2818
2896
|
'thinkingmachines/inkling-small': readonly ['text', 'image', 'document']
|
|
2819
2897
|
'xiaomi/mimo-v2.5': readonly ['text', 'image']
|
|
2820
2898
|
'xiaomi/mimo-v2.5-pro': readonly ['text']
|
|
2899
|
+
'xiaomi/mimo-v2.5-pro-ultraspeed': readonly ['text']
|
|
2821
2900
|
'zai/glm-4.5': readonly ['text']
|
|
2822
2901
|
'zai/glm-4.5-air': readonly ['text']
|
|
2823
2902
|
'zai/glm-4.5v': readonly ['text', 'image']
|
|
@@ -2831,7 +2910,9 @@ export type VercelGatewayModelInputModalitiesByName = {
|
|
|
2831
2910
|
'zai/glm-5.2': readonly ['text']
|
|
2832
2911
|
'zai/glm-5.2-fast': readonly ['text']
|
|
2833
2912
|
'zai/glm-5.3': readonly ['text']
|
|
2913
|
+
'zai/glm-5.3-fast': readonly ['text']
|
|
2834
2914
|
'zai/glm-5.3-flash': readonly ['text', 'image']
|
|
2915
|
+
'zai/glm-5.3-promo-50': readonly ['text']
|
|
2835
2916
|
'zai/glm-5v-turbo': readonly ['text', 'image', 'document']
|
|
2836
2917
|
}
|
|
2837
2918
|
|