/**
 * THIS FILE IS AUTO-GENERATED - DO NOT EDIT
 * Generated from https://models.dev/api.json
 */

export type ModelProviderRegistryEntry = {
  id: string;
  name: string;
  npm: string;
  api?: string;
  env?: string[];
  doc?: string;
};

export const MODEL_PROVIDER_REGISTRY: Record<string, ModelProviderRegistryEntry> = {
  abacus: {
    id: "abacus",
    name: "Abacus",
    npm: "@ai-sdk/openai-compatible",
    api: "https://routellm.abacus.ai/v1",
    env: ["ABACUS_API_KEY"],
    doc: "https://abacus.ai/help/api",
  },
  aihubmix: {
    id: "aihubmix",
    name: "AIHubMix",
    npm: "@aihubmix/ai-sdk-provider",
    env: ["AIHUBMIX_API_KEY"],
    doc: "https://docs.aihubmix.com",
  },
  alibaba: {
    id: "alibaba",
    name: "Alibaba",
    npm: "@ai-sdk/openai-compatible",
    api: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
    env: ["DASHSCOPE_API_KEY"],
    doc: "https://www.alibabacloud.com/help/en/model-studio/models",
  },
  "alibaba-cn": {
    id: "alibaba-cn",
    name: "Alibaba (China)",
    npm: "@ai-sdk/openai-compatible",
    api: "https://dashscope.aliyuncs.com/compatible-mode/v1",
    env: ["DASHSCOPE_API_KEY"],
    doc: "https://www.alibabacloud.com/help/en/model-studio/models",
  },
  "amazon-bedrock": {
    id: "amazon-bedrock",
    name: "Amazon Bedrock",
    npm: "@ai-sdk/amazon-bedrock",
    env: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY", "AWS_REGION"],
    doc: "https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html",
  },
  anthropic: {
    id: "anthropic",
    name: "Anthropic",
    npm: "@ai-sdk/anthropic",
    env: ["ANTHROPIC_API_KEY"],
    doc: "https://docs.anthropic.com/en/docs/about-claude/models",
  },
  azure: {
    id: "azure",
    name: "Azure",
    npm: "@ai-sdk/azure",
    env: ["AZURE_RESOURCE_NAME", "AZURE_API_KEY"],
    doc: "https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models",
  },
  "azure-cognitive-services": {
    id: "azure-cognitive-services",
    name: "Azure Cognitive Services",
    npm: "@ai-sdk/azure",
    env: ["AZURE_COGNITIVE_SERVICES_RESOURCE_NAME", "AZURE_COGNITIVE_SERVICES_API_KEY"],
    doc: "https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models",
  },
  bailing: {
    id: "bailing",
    name: "Bailing",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.tbox.cn/api/llm/v1/chat/completions",
    env: ["BAILING_API_TOKEN"],
    doc: "https://alipaytbox.yuque.com/sxs0ba/ling/intro",
  },
  baseten: {
    id: "baseten",
    name: "Baseten",
    npm: "@ai-sdk/openai-compatible",
    api: "https://inference.baseten.co/v1",
    env: ["BASETEN_API_KEY"],
    doc: "https://docs.baseten.co/development/model-apis/overview",
  },
  cerebras: {
    id: "cerebras",
    name: "Cerebras",
    npm: "@ai-sdk/cerebras",
    env: ["CEREBRAS_API_KEY"],
    doc: "https://inference-docs.cerebras.ai/models/overview",
  },
  chutes: {
    id: "chutes",
    name: "Chutes",
    npm: "@ai-sdk/openai-compatible",
    api: "https://llm.chutes.ai/v1",
    env: ["CHUTES_API_KEY"],
    doc: "https://llm.chutes.ai/v1/models",
  },
  "cloudflare-ai-gateway": {
    id: "cloudflare-ai-gateway",
    name: "Cloudflare AI Gateway",
    npm: "@ai-sdk/openai-compatible",
    api: "https://gateway.ai.cloudflare.com/v1/${CLOUDFLARE_ACCOUNT_ID}/${CLOUDFLARE_GATEWAY_ID}/compat/",
    env: ["CLOUDFLARE_API_TOKEN", "CLOUDFLARE_ACCOUNT_ID", "CLOUDFLARE_GATEWAY_ID"],
    doc: "https://developers.cloudflare.com/ai-gateway/",
  },
  "cloudflare-workers-ai": {
    id: "cloudflare-workers-ai",
    name: "Cloudflare Workers AI",
    npm: "workers-ai-provider",
    env: ["CLOUDFLARE_ACCOUNT_ID", "CLOUDFLARE_API_KEY"],
    doc: "https://developers.cloudflare.com/workers-ai/models/",
  },
  cohere: {
    id: "cohere",
    name: "Cohere",
    npm: "@ai-sdk/cohere",
    env: ["COHERE_API_KEY"],
    doc: "https://docs.cohere.com/docs/models",
  },
  cortecs: {
    id: "cortecs",
    name: "Cortecs",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.cortecs.ai/v1",
    env: ["CORTECS_API_KEY"],
    doc: "https://api.cortecs.ai/v1/models",
  },
  deepinfra: {
    id: "deepinfra",
    name: "Deep Infra",
    npm: "@ai-sdk/deepinfra",
    env: ["DEEPINFRA_API_KEY"],
    doc: "https://deepinfra.com/models",
  },
  deepseek: {
    id: "deepseek",
    name: "DeepSeek",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.deepseek.com",
    env: ["DEEPSEEK_API_KEY"],
    doc: "https://platform.deepseek.com/api-docs/pricing",
  },
  fastrouter: {
    id: "fastrouter",
    name: "FastRouter",
    npm: "@ai-sdk/openai-compatible",
    api: "https://go.fastrouter.ai/api/v1",
    env: ["FASTROUTER_API_KEY"],
    doc: "https://fastrouter.ai/models",
  },
  "fireworks-ai": {
    id: "fireworks-ai",
    name: "Fireworks AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.fireworks.ai/inference/v1/",
    env: ["FIREWORKS_API_KEY"],
    doc: "https://fireworks.ai/docs/",
  },
  firmware: {
    id: "firmware",
    name: "Firmware",
    npm: "@ai-sdk/openai-compatible",
    api: "https://app.firmware.ai/api/v1",
    env: ["FIRMWARE_API_KEY"],
    doc: "https://firmware.ai",
  },
  friendli: {
    id: "friendli",
    name: "Friendli",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.friendli.ai/serverless/v1",
    env: ["FRIENDLI_TOKEN"],
    doc: "https://friendli.ai/docs/guides/serverless_endpoints/introduction",
  },
  "github-copilot": {
    id: "github-copilot",
    name: "GitHub Copilot",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.githubcopilot.com",
    env: ["GITHUB_TOKEN"],
    doc: "https://docs.github.com/en/copilot",
  },
  "github-models": {
    id: "github-models",
    name: "GitHub Models",
    npm: "@ai-sdk/openai-compatible",
    api: "https://models.github.ai/inference",
    env: ["GITHUB_TOKEN"],
    doc: "https://docs.github.com/en/github-models",
  },
  gitlab: {
    id: "gitlab",
    name: "GitLab Duo",
    npm: "@gitlab/gitlab-ai-provider",
    env: ["GITLAB_TOKEN"],
    doc: "https://docs.gitlab.com/user/duo_agent_platform/",
  },
  google: {
    id: "google",
    name: "Google",
    npm: "@ai-sdk/google",
    env: ["GOOGLE_GENERATIVE_AI_API_KEY", "GEMINI_API_KEY"],
    doc: "https://ai.google.dev/gemini-api/docs/pricing",
  },
  "google-vertex": {
    id: "google-vertex",
    name: "Vertex",
    npm: "@ai-sdk/google-vertex",
    env: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_LOCATION", "GOOGLE_APPLICATION_CREDENTIALS"],
    doc: "https://cloud.google.com/vertex-ai/generative-ai/docs/models",
  },
  "google-vertex-anthropic": {
    id: "google-vertex-anthropic",
    name: "Vertex (Anthropic)",
    npm: "@ai-sdk/google-vertex",
    env: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_LOCATION", "GOOGLE_APPLICATION_CREDENTIALS"],
    doc: "https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/claude",
  },
  groq: {
    id: "groq",
    name: "Groq",
    npm: "@ai-sdk/groq",
    env: ["GROQ_API_KEY"],
    doc: "https://console.groq.com/docs/models",
  },
  helicone: {
    id: "helicone",
    name: "Helicone",
    npm: "@ai-sdk/openai-compatible",
    api: "https://ai-gateway.helicone.ai/v1",
    env: ["HELICONE_API_KEY"],
    doc: "https://helicone.ai/models",
  },
  huggingface: {
    id: "huggingface",
    name: "Hugging Face",
    npm: "@ai-sdk/openai-compatible",
    api: "https://router.huggingface.co/v1",
    env: ["HF_TOKEN"],
    doc: "https://huggingface.co/docs/inference-providers",
  },
  iflowcn: {
    id: "iflowcn",
    name: "iFlow",
    npm: "@ai-sdk/openai-compatible",
    api: "https://apis.iflow.cn/v1",
    env: ["IFLOW_API_KEY"],
    doc: "https://platform.iflow.cn/en/docs",
  },
  inception: {
    id: "inception",
    name: "Inception",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.inceptionlabs.ai/v1/",
    env: ["INCEPTION_API_KEY"],
    doc: "https://platform.inceptionlabs.ai/docs",
  },
  inference: {
    id: "inference",
    name: "Inference",
    npm: "@ai-sdk/openai-compatible",
    api: "https://inference.net/v1",
    env: ["INFERENCE_API_KEY"],
    doc: "https://inference.net/models",
  },
  "io-net": {
    id: "io-net",
    name: "IO.NET",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.intelligence.io.solutions/api/v1",
    env: ["IOINTELLIGENCE_API_KEY"],
    doc: "https://io.net/docs/guides/intelligence/io-intelligence",
  },
  "kimi-for-coding": {
    id: "kimi-for-coding",
    name: "Kimi For Coding",
    npm: "@ai-sdk/anthropic",
    api: "https://api.kimi.com/coding/v1",
    env: ["KIMI_API_KEY"],
    doc: "https://www.kimi.com/coding/docs/en/third-party-agents.html",
  },
  llama: {
    id: "llama",
    name: "Llama",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.llama.com/compat/v1/",
    env: ["LLAMA_API_KEY"],
    doc: "https://llama.developer.meta.com/docs/models",
  },
  lmstudio: {
    id: "lmstudio",
    name: "LMStudio",
    npm: "@ai-sdk/openai-compatible",
    api: "http://127.0.0.1:1234/v1",
    env: ["LMSTUDIO_API_KEY"],
    doc: "https://lmstudio.ai/models",
  },
  lucidquery: {
    id: "lucidquery",
    name: "LucidQuery AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://lucidquery.com/api/v1",
    env: ["LUCIDQUERY_API_KEY"],
    doc: "https://lucidquery.com/api/docs",
  },
  minimax: {
    id: "minimax",
    name: "MiniMax",
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimax.io/anthropic/v1",
    env: ["MINIMAX_API_KEY"],
    doc: "https://platform.minimax.io/docs/api-reference/api-overview",
  },
  "minimax-cn": {
    id: "minimax-cn",
    name: "MiniMax (China)",
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimaxi.com/anthropic/v1",
    env: ["MINIMAX_API_KEY"],
    doc: "https://platform.minimaxi.com/docs/api-reference/api-overview",
  },
  mistral: {
    id: "mistral",
    name: "Mistral",
    npm: "@ai-sdk/mistral",
    env: ["MISTRAL_API_KEY"],
    doc: "https://docs.mistral.ai/getting-started/models/",
  },
  modelscope: {
    id: "modelscope",
    name: "ModelScope",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api-inference.modelscope.cn/v1",
    env: ["MODELSCOPE_API_KEY"],
    doc: "https://modelscope.cn/docs/model-service/API-Inference/intro",
  },
  moonshotai: {
    id: "moonshotai",
    name: "Moonshot AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.moonshot.ai/v1",
    env: ["MOONSHOT_API_KEY"],
    doc: "https://platform.moonshot.ai/docs/api/chat",
  },
  "moonshotai-cn": {
    id: "moonshotai-cn",
    name: "Moonshot AI (China)",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.moonshot.cn/v1",
    env: ["MOONSHOT_API_KEY"],
    doc: "https://platform.moonshot.cn/docs/api/chat",
  },
  morph: {
    id: "morph",
    name: "Morph",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.morphllm.com/v1",
    env: ["MORPH_API_KEY"],
    doc: "https://docs.morphllm.com/api-reference/introduction",
  },
  "nano-gpt": {
    id: "nano-gpt",
    name: "NanoGPT",
    npm: "@ai-sdk/openai-compatible",
    api: "https://nano-gpt.com/api/v1",
    env: ["NANO_GPT_API_KEY"],
    doc: "https://docs.nano-gpt.com",
  },
  nebius: {
    id: "nebius",
    name: "Nebius Token Factory",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.tokenfactory.nebius.com/v1",
    env: ["NEBIUS_API_KEY"],
    doc: "https://docs.tokenfactory.nebius.com/",
  },
  "novita-ai": {
    id: "novita-ai",
    name: "NovitaAI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.novita.ai/openai",
    env: ["NOVITA_API_KEY"],
    doc: "https://novita.ai/docs/guides/introduction",
  },
  nvidia: {
    id: "nvidia",
    name: "Nvidia",
    npm: "@ai-sdk/openai-compatible",
    api: "https://integrate.api.nvidia.com/v1",
    env: ["NVIDIA_API_KEY"],
    doc: "https://docs.api.nvidia.com/nim/",
  },
  "ollama-cloud": {
    id: "ollama-cloud",
    name: "Ollama Cloud",
    npm: "@ai-sdk/openai-compatible",
    api: "https://ollama.com/v1",
    env: ["OLLAMA_API_KEY"],
    doc: "https://docs.ollama.com/cloud",
  },
  openai: {
    id: "openai",
    name: "OpenAI",
    npm: "@ai-sdk/openai",
    env: ["OPENAI_API_KEY"],
    doc: "https://platform.openai.com/docs/models",
  },
  opencode: {
    id: "opencode",
    name: "OpenCode Zen",
    npm: "@ai-sdk/openai-compatible",
    api: "https://opencode.ai/zen/v1",
    env: ["OPENCODE_API_KEY"],
    doc: "https://opencode.ai/docs/zen",
  },
  openrouter: {
    id: "openrouter",
    name: "OpenRouter",
    npm: "@ai-sdk/openai-compatible",
    api: "https://openrouter.ai/api/v1",
    env: ["OPENROUTER_API_KEY"],
    doc: "https://openrouter.ai/models",
  },
  ovhcloud: {
    id: "ovhcloud",
    name: "OVHcloud AI Endpoints",
    npm: "@ai-sdk/openai-compatible",
    api: "https://oai.endpoints.kepler.ai.cloud.ovh.net/v1",
    env: ["OVHCLOUD_API_KEY"],
    doc: "https://www.ovhcloud.com/en/public-cloud/ai-endpoints/catalog//",
  },
  perplexity: {
    id: "perplexity",
    name: "Perplexity",
    npm: "@ai-sdk/perplexity",
    env: ["PERPLEXITY_API_KEY"],
    doc: "https://docs.perplexity.ai",
  },
  poe: {
    id: "poe",
    name: "Poe",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.poe.com/v1",
    env: ["POE_API_KEY"],
    doc: "https://creator.poe.com/docs/external-applications/openai-compatible-api",
  },
  "privatemode-ai": {
    id: "privatemode-ai",
    name: "Privatemode AI",
    npm: "@ai-sdk/openai-compatible",
    api: "http://localhost:8080/v1",
    env: ["PRIVATEMODE_API_KEY", "PRIVATEMODE_ENDPOINT"],
    doc: "https://docs.privatemode.ai/api/overview",
  },
  requesty: {
    id: "requesty",
    name: "Requesty",
    npm: "@ai-sdk/openai-compatible",
    api: "https://router.requesty.ai/v1",
    env: ["REQUESTY_API_KEY"],
    doc: "https://requesty.ai/solution/llm-routing/models",
  },
  "sap-ai-core": {
    id: "sap-ai-core",
    name: "SAP AI Core",
    npm: "@mymediset/sap-ai-provider",
    env: ["AICORE_SERVICE_KEY"],
    doc: "https://help.sap.com/docs/sap-ai-core",
  },
  scaleway: {
    id: "scaleway",
    name: "Scaleway",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.scaleway.ai/v1",
    env: ["SCALEWAY_API_KEY"],
    doc: "https://www.scaleway.com/en/docs/generative-apis/",
  },
  siliconflow: {
    id: "siliconflow",
    name: "SiliconFlow",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.siliconflow.com/v1",
    env: ["SILICONFLOW_API_KEY"],
    doc: "https://cloud.siliconflow.com/models",
  },
  "siliconflow-cn": {
    id: "siliconflow-cn",
    name: "SiliconFlow (China)",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.siliconflow.cn/v1",
    env: ["SILICONFLOW_CN_API_KEY"],
    doc: "https://cloud.siliconflow.com/models",
  },
  submodel: {
    id: "submodel",
    name: "submodel",
    npm: "@ai-sdk/openai-compatible",
    api: "https://llm.submodel.ai/v1",
    env: ["SUBMODEL_INSTAGEN_ACCESS_KEY"],
    doc: "https://submodel.gitbook.io",
  },
  synthetic: {
    id: "synthetic",
    name: "Synthetic",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.synthetic.new/v1",
    env: ["SYNTHETIC_API_KEY"],
    doc: "https://synthetic.new/pricing",
  },
  togetherai: {
    id: "togetherai",
    name: "Together AI",
    npm: "@ai-sdk/togetherai",
    env: ["TOGETHER_API_KEY"],
    doc: "https://docs.together.ai/docs/serverless-models",
  },
  upstage: {
    id: "upstage",
    name: "Upstage",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.upstage.ai/v1/solar",
    env: ["UPSTAGE_API_KEY"],
    doc: "https://developers.upstage.ai/docs/apis/chat",
  },
  v0: {
    id: "v0",
    name: "v0",
    npm: "@ai-sdk/vercel",
    env: ["V0_API_KEY"],
    doc: "https://sdk.vercel.ai/providers/ai-sdk-providers/vercel",
  },
  venice: {
    id: "venice",
    name: "Venice AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.venice.ai/api/v1",
    env: ["VENICE_API_KEY"],
    doc: "https://docs.venice.ai",
  },
  vercel: {
    id: "vercel",
    name: "Vercel AI Gateway",
    npm: "@ai-sdk/gateway",
    env: ["AI_GATEWAY_API_KEY"],
    doc: "https://github.com/vercel/ai/tree/5eb85cc45a259553501f535b8ac79a77d0e79223/packages/gateway",
  },
  vivgrid: {
    id: "vivgrid",
    name: "Vivgrid",
    npm: "@ai-sdk/openai",
    api: "https://api.vivgrid.com/v1",
    env: ["VIVGRID_API_KEY"],
    doc: "https://docs.vivgrid.com/models",
  },
  vultr: {
    id: "vultr",
    name: "Vultr",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.vultrinference.com/v1",
    env: ["VULTR_API_KEY"],
    doc: "https://api.vultrinference.com/",
  },
  wandb: {
    id: "wandb",
    name: "Weights & Biases",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.inference.wandb.ai/v1",
    env: ["WANDB_API_KEY"],
    doc: "https://weave-docs.wandb.ai/guides/integrations/inference/",
  },
  xai: {
    id: "xai",
    name: "xAI",
    npm: "@ai-sdk/xai",
    env: ["XAI_API_KEY"],
    doc: "https://docs.x.ai/docs/models",
  },
  xiaomi: {
    id: "xiaomi",
    name: "Xiaomi",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.xiaomimimo.com/v1",
    env: ["XIAOMI_API_KEY"],
    doc: "https://platform.xiaomimimo.com/#/docs",
  },
  zai: {
    id: "zai",
    name: "Z.AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.z.ai/api/paas/v4",
    env: ["ZHIPU_API_KEY"],
    doc: "https://docs.z.ai/guides/overview/pricing",
  },
  "zai-coding-plan": {
    id: "zai-coding-plan",
    name: "Z.AI Coding Plan",
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.z.ai/api/coding/paas/v4",
    env: ["ZHIPU_API_KEY"],
    doc: "https://docs.z.ai/devpack/overview",
  },
  zenmux: {
    id: "zenmux",
    name: "ZenMux",
    npm: "@ai-sdk/openai-compatible",
    api: "https://zenmux.ai/api/v1",
    env: ["ZENMUX_API_KEY"],
    doc: "https://docs.zenmux.ai",
  },
  zhipuai: {
    id: "zhipuai",
    name: "Zhipu AI",
    npm: "@ai-sdk/openai-compatible",
    api: "https://open.bigmodel.cn/api/paas/v4",
    env: ["ZHIPU_API_KEY"],
    doc: "https://docs.z.ai/guides/overview/pricing",
  },
  "zhipuai-coding-plan": {
    id: "zhipuai-coding-plan",
    name: "Zhipu AI Coding Plan",
    npm: "@ai-sdk/openai-compatible",
    api: "https://open.bigmodel.cn/api/coding/paas/v4",
    env: ["ZHIPU_API_KEY"],
    doc: "https://docs.bigmodel.cn/cn/coding-plan/overview",
  },
};
