// Auto-generated by build.ts - do not edit
export const snapshot = {
  evroc: {
    id: "evroc",
    env: ["EVROC_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://models.think.evroc.com/v1",
    name: "evroc",
    doc: "https://docs.evroc.com/products/think/overview.html",
    models: {
      "nvidia/Llama-3.3-70B-Instruct-FP8": {
        id: "nvidia/Llama-3.3-70B-Instruct-FP8",
        name: "Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.18, output: 1.18 },
        limit: { context: 131072, output: 32768 },
      },
      "microsoft/Phi-4-multimodal-instruct": {
        id: "microsoft/Phi-4-multimodal-instruct",
        name: "Phi-4 15B",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.24, output: 0.47 },
        limit: { context: 32000, output: 32000 },
      },
      "intfloat/multilingual-e5-large-instruct": {
        id: "intfloat/multilingual-e5-large-instruct",
        name: "E5 Multi-Lingual Large Embeddings 0.6B",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.12 },
        limit: { context: 512, output: 512 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.47, output: 5.9 },
        limit: { context: 262144, output: 262144 },
      },
      "KBLab/kb-whisper-large": {
        id: "KBLab/kb-whisper-large",
        name: "KB Whisper",
        family: "whisper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-10-01",
        last_updated: "2024-10-01",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.00236, output: 0.00236, output_audio: 2.36 },
        limit: { context: 448, output: 448 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507-FP8": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507-FP8",
        name: "Qwen3 30B 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.42 },
        limit: { context: 64000, output: 64000 },
      },
      "Qwen/Qwen3-Embedding-8B": {
        id: "Qwen/Qwen3-Embedding-8B",
        name: "Qwen3 Embedding 8B",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.12 },
        limit: { context: 40960, output: 40960 },
      },
      "Qwen/Qwen3-VL-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-VL-30B-A3B-Instruct",
        name: "Qwen3 VL 30B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.24, output: 0.94 },
        limit: { context: 100000, output: 100000 },
      },
      "mistralai/Voxtral-Small-24B-2507": {
        id: "mistralai/Voxtral-Small-24B-2507",
        name: "Voxtral Small 24B",
        family: "voxtral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["audio", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.00236, output: 0.00236, output_audio: 2.36 },
        limit: { context: 32000, output: 32000 },
      },
      "mistralai/devstral-small-2-24b-instruct-2512": {
        id: "mistralai/devstral-small-2-24b-instruct-2512",
        name: "Devstral Small 2 24B Instruct 2512",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.47 },
        limit: { context: 32768, output: 32768 },
      },
      "mistralai/Magistral-Small-2509": {
        id: "mistralai/Magistral-Small-2509",
        name: "Magistral Small 1.2 24B",
        family: "magistral-small",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.59, output: 2.36 },
        limit: { context: 131072, output: 131072 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.24, output: 0.94 },
        limit: { context: 65536, output: 65536 },
      },
      "openai/whisper-large-v3": {
        id: "openai/whisper-large-v3",
        name: "Whisper 3 Large",
        family: "whisper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-10-01",
        last_updated: "2024-10-01",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.00236, output: 0.00236, output_audio: 2.36 },
        limit: { context: 448, output: 4096 },
      },
    },
  },
  zai: {
    id: "zai",
    env: ["ZHIPU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.z.ai/api/paas/v4",
    name: "Z.AI",
    doc: "https://docs.z.ai/guides/overview/pricing",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1, cache_read: 0.03, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5-flash": {
        id: "glm-4.5-flash",
        name: "GLM-4.5-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.7-flash": {
        id: "glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 131072 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.5v": {
        id: "glm-4.5v",
        name: "GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8 },
        limit: { context: 64000, output: 16384 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 128000, output: 32768 },
      },
    },
  },
  "alibaba-coding-plan": {
    id: "alibaba-coding-plan",
    env: ["ALIBABA_CODING_PLAN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://coding-intl.dashscope.aliyuncs.com/v1",
    name: "Alibaba Coding Plan",
    doc: "https://www.alibabacloud.com/help/en/model-studio/coding-plan",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 202752, output: 16384 },
      },
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 196608, input: 196601, output: 24576 },
      },
      "qwen3-coder-next": {
        id: "qwen3-coder-next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-03",
        last_updated: "2026-02-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen3-max-2026-01-23": {
        id: "qwen3-max-2026-01-23",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-23",
        last_updated: "2026-01-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 202752, output: 16384 },
      },
      "qwen3.5-plus": {
        id: "qwen3.5-plus",
        name: "Qwen3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-coder-plus": {
        id: "qwen3-coder-plus",
        name: "Qwen3 Coder Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 65536 },
      },
    },
  },
  zenmux: {
    id: "zenmux",
    env: ["ZENMUX_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://zenmux.ai/api/anthropic/v1",
    name: "ZenMux",
    doc: "https://docs.zenmux.ai",
    models: {
      "xiaomi/mimo-v2-flash-free": {
        id: "xiaomi/mimo-v2-flash-free",
        name: "MiMo-V2-Flash Free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 262000, output: 64000 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "MiMo-V2-Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01 },
        limit: { context: 262000, output: 64000 },
      },
      "kuaishou/kat-coder-pro-v1-free": {
        id: "kuaishou/kat-coder-pro-v1-free",
        name: "KAT-Coder-Pro-V1 Free",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-23",
        last_updated: "2025-10-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
      "kuaishou/kat-coder-pro-v1": {
        id: "kuaishou/kat-coder-pro-v1",
        name: "KAT-Coder-Pro-V1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-23",
        last_updated: "2025-10-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.06 },
        limit: { context: 256000, output: 64000 },
      },
      "stepfun/step-3.5-flash-free": {
        id: "stepfun/step-3.5-flash-free",
        name: "Step 3.5 Flash (Free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
      "stepfun/step-3.5-flash": {
        id: "stepfun/step-3.5-flash",
        name: "Step 3.5 Flash",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 256000, output: 64000 },
      },
      "stepfun/step-3": {
        id: "stepfun/step-3",
        name: "Step-3",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 0.57 },
        limit: { context: 65536, output: 64000 },
      },
      "inclusionai/ling-1t": {
        id: "inclusionai/ling-1t",
        name: "Ling-1T",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-09",
        last_updated: "2025-10-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 2.24, cache_read: 0.11 },
        limit: { context: 128000, output: 64000 },
      },
      "inclusionai/ring-1t": {
        id: "inclusionai/ring-1t",
        name: "Ring-1T",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-12",
        last_updated: "2025-10-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 2.24, cache_read: 0.11 },
        limit: { context: 128000, output: 64000 },
      },
      "volcengine/doubao-seed-1.8": {
        id: "volcengine/doubao-seed-1.8",
        name: "Doubao-Seed-1.8",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.28, cache_read: 0.02, cache_write: 0.0024 },
        limit: { context: 256000, output: 64000 },
      },
      "volcengine/doubao-seed-2.0-pro": {
        id: "volcengine/doubao-seed-2.0-pro",
        name: "Doubao-Seed-2.0-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-14",
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.45, output: 2.24, cache_read: 0.09, cache_write: 0.0024 },
        limit: { context: 256000, output: 64000 },
      },
      "volcengine/doubao-seed-2.0-mini": {
        id: "volcengine/doubao-seed-2.0-mini",
        name: "Doubao-Seed-2.0-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-14",
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0.28, cache_read: 0.01, cache_write: 0.0024 },
        limit: { context: 256000, output: 64000 },
      },
      "volcengine/doubao-seed-code": {
        id: "volcengine/doubao-seed-code",
        name: "Doubao-Seed-Code",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-11",
        last_updated: "2025-11-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 1.12, cache_read: 0.03 },
        limit: { context: 256000, output: 64000 },
      },
      "volcengine/doubao-seed-2.0-lite": {
        id: "volcengine/doubao-seed-2.0-lite",
        name: "Doubao-Seed-2.0-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-14",
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.51, cache_read: 0.02, cache_write: 0.0024 },
        limit: { context: 256000, output: 64000 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "DeepSeek V3.2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-05",
        last_updated: "2025-12-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.43 },
        limit: { context: 128000, output: 64000 },
      },
      "deepseek/deepseek-chat": {
        id: "deepseek/deepseek-chat",
        name: "DeepSeek-V3.2 (Non-thinking Mode)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.42, cache_read: 0.03 },
        limit: { context: 128000, output: 64000 },
      },
      "deepseek/deepseek-v3.2-exp": {
        id: "deepseek/deepseek-v3.2-exp",
        name: "DeepSeek-V3.2-Exp",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.22, output: 0.33 },
        limit: { context: 163000, output: 64000 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 0905",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-04",
        last_updated: "2025-09-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262000, output: 64000 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.58, output: 3.02, cache_read: 0.1 },
        limit: { context: 262000, output: 64000 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262000, output: 64000 },
      },
      "moonshotai/kimi-k2-thinking-turbo": {
        id: "moonshotai/kimi-k2-thinking-turbo",
        name: "Kimi K2 Thinking Turbo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.15, output: 8, cache_read: 0.15 },
        limit: { context: 262000, output: 64000 },
      },
      "baidu/ernie-5.0-thinking-preview": {
        id: "baidu/ernie-5.0-thinking-preview",
        name: "ERNIE 5.0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.84, output: 3.37 },
        limit: { context: 128000, output: 64000 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["pdf", "image", "text", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.07, cache_write: 1 },
        limit: { context: 1048000, output: 64000 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "pdf", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05, cache_write: 1 },
        limit: { context: 1048000, output: 64000 },
      },
      "google/gemini-2.5-flash-lite": {
        id: "google/gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["pdf", "image", "text", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03, cache_write: 1 },
        limit: { context: 1048000, output: 64000 },
      },
      "google/gemini-3.1-pro-preview": {
        id: "google/gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-19",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "pdf", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, cache_write: 4.5 },
        limit: { context: 1048000, output: 64000 },
      },
      "google/gemini-3-pro-preview": {
        id: "google/gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, cache_write: 4.5 },
        limit: { context: 1048000, output: 64000 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["pdf", "image", "text", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31, cache_write: 4.5 },
        limit: { context: 1048000, output: 64000 },
      },
      "z-ai/glm-5": {
        id: "z-ai/glm-5",
        name: "GLM 5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 2.6, cache_read: 0.14 },
        limit: { context: 200000, output: 128000 },
      },
      "z-ai/glm-4.7-flashx": {
        id: "z-ai/glm-4.7-flashx",
        name: "GLM 4.7 FlashX",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.42, cache_read: 0.01 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.5-air": {
        id: "z-ai/glm-4.5-air",
        name: "GLM 4.5 Air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.56, cache_read: 0.02 },
        limit: { context: 128000, output: 64000 },
      },
      "z-ai/glm-4.5": {
        id: "z-ai/glm-4.5",
        name: "GLM 4.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 1.54, cache_read: 0.07 },
        limit: { context: 128000, output: 64000 },
      },
      "z-ai/glm-4.6v-flash-free": {
        id: "z-ai/glm-4.6v-flash-free",
        name: "GLM 4.6V Flash (Free)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.6": {
        id: "z-ai/glm-4.6",
        name: "GLM 4.6",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 1.54, cache_read: 0.07 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.7": {
        id: "z-ai/glm-4.7",
        name: "GLM 4.7",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 1.14, cache_read: 0.06 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.7-flash-free": {
        id: "z-ai/glm-4.7-flash-free",
        name: "GLM 4.7 Flash (Free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.6v-flash": {
        id: "z-ai/glm-4.6v-flash",
        name: "GLM 4.6V FlashX",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.21, cache_read: 0.0043 },
        limit: { context: 200000, output: 64000 },
      },
      "z-ai/glm-4.6v": {
        id: "z-ai/glm-4.6v",
        name: "GLM 4.6V",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.42, cache_read: 0.03 },
        limit: { context: 200000, output: 64000 },
      },
      "qwen/qwen3-max": {
        id: "qwen/qwen3-max",
        name: "Qwen3-Max-Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-01-23",
        last_updated: "2026-01-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6 },
        limit: { context: 256000, output: 64000 },
      },
      "qwen/qwen3-coder-plus": {
        id: "qwen/qwen3-coder-plus",
        name: "Qwen3-Coder-Plus",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 1000000, output: 64000 },
      },
      "x-ai/grok-code-fast-1": {
        id: "x-ai/grok-code-fast-1",
        name: "Grok Code Fast 1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 64000 },
      },
      "x-ai/grok-4-fast": {
        id: "x-ai/grok-4-fast",
        name: "Grok 4 Fast",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 64000 },
      },
      "x-ai/grok-4": {
        id: "x-ai/grok-4",
        name: "Grok 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 64000 },
      },
      "x-ai/grok-4.1-fast-non-reasoning": {
        id: "x-ai/grok-4.1-fast-non-reasoning",
        name: "Grok 4.1 Fast Non Reasoning",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 64000 },
      },
      "x-ai/grok-4.1-fast": {
        id: "x-ai/grok-4.1-fast",
        name: "Grok 4.1 Fast",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 64000 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5 Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01-01",
        release_date: "2026-01-15",
        last_updated: "2026-01-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.17 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["image", "text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.1-chat": {
        id: "openai/gpt-5.1-chat",
        name: "GPT-5.1 Chat",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["pdf", "image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12 },
        limit: { context: 128000, output: 64000 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT-5.1-Codex-Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01-01",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["image", "text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.17 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12 },
        limit: { context: 400000, output: 64000 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT-5.2-Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, output: 128000 },
      },
      "minimax/minimax-m2.5-lightning": {
        id: "minimax/minimax-m2.5-lightning",
        name: "MiniMax M2.5 highspeed",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 4.8, cache_read: 0.06, cache_write: 0.75 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "MiniMax M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.38 },
        limit: { context: 204000, output: 64000 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "MiniMax M2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.38 },
        limit: { context: 204000, output: 64000 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax M2.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "anthropic/claude-3.5-sonnet": {
        id: "anthropic/claude-3.5-sonnet",
        name: "Claude 3.5 Sonnet (Retiring Soon)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.7-sonnet": {
        id: "anthropic/claude-3.7-sonnet",
        name: "Claude 3.7 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Claude Opus 4.1",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["image", "text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Claude Sonnet 4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-18",
        last_updated: "2026-02-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "anthropic/claude-haiku-4.5": {
        id: "anthropic/claude-haiku-4.5",
        name: "Claude Haiku 4.5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.5-haiku": {
        id: "anthropic/claude-3.5-haiku",
        name: "Claude 3.5 Haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2024-11-04",
        last_updated: "2024-11-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4.5": {
        id: "anthropic/claude-opus-4.5",
        name: "Claude Opus 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["pdf", "image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude Opus 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["image", "text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["image", "text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "anthropic/claude-sonnet-4.5": {
        id: "anthropic/claude-sonnet-4.5",
        name: "Claude Sonnet 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Claude Opus 4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 1000000, output: 128000 },
      },
    },
  },
  "io-net": {
    id: "io-net",
    env: ["IOINTELLIGENCE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.intelligence.io.solutions/api/v1",
    name: "IO.NET",
    doc: "https://io.net/docs/guides/intelligence/io-intelligence",
    models: {
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-15",
        last_updated: "2024-11-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.75, cache_read: 0.2, cache_write: 0.8 },
        limit: { context: 200000, output: 4096 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 8.75, cache_read: 1, cache_write: 4 },
        limit: { context: 128000, output: 4096 },
      },
      "Intel/Qwen3-Coder-480B-A35B-Instruct-int4-mixed-ar": {
        id: "Intel/Qwen3-Coder-480B-A35B-Instruct-int4-mixed-ar",
        name: "Qwen 3 Coder 480B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.95, cache_read: 0.11, cache_write: 0.44 },
        limit: { context: 106000, output: 4096 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-09-05",
        last_updated: "2024-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.39, output: 1.9, cache_read: 0.195, cache_write: 0.78 },
        limit: { context: 32768, output: 4096 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 2.25, cache_read: 0.275, cache_write: 1.1 },
        limit: { context: 32768, output: 4096 },
      },
      "meta-llama/Llama-3.2-90B-Vision-Instruct": {
        id: "meta-llama/Llama-3.2-90B-Vision-Instruct",
        name: "Llama 3.2 90B Vision Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 0.4, cache_read: 0.175, cache_write: 0.7 },
        limit: { context: 16000, output: 4096 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.38, cache_read: 0.065, cache_write: 0.26 },
        limit: { context: 128000, output: 4096 },
      },
      "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8": {
        id: "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
        name: "Llama 4 Maverick 17B 128E Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6, cache_read: 0.075, cache_write: 0.3 },
        limit: { context: 430000, output: 4096 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen 3 Next 80B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-10",
        last_updated: "2025-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.8, cache_read: 0.05, cache_write: 0.2 },
        limit: { context: 262144, output: 4096 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen 3 235B Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.6, cache_read: 0.055, cache_write: 0.22 },
        limit: { context: 262144, output: 4096 },
      },
      "Qwen/Qwen2.5-VL-32B-Instruct": {
        id: "Qwen/Qwen2.5-VL-32B-Instruct",
        name: "Qwen 2.5 VL 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22, cache_read: 0.025, cache_write: 0.1 },
        limit: { context: 32000, output: 4096 },
      },
      "mistralai/Mistral-Nemo-Instruct-2407": {
        id: "mistralai/Mistral-Nemo-Instruct-2407",
        name: "Mistral Nemo Instruct 2407",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04, cache_read: 0.01, cache_write: 0.04 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/Magistral-Small-2506": {
        id: "mistralai/Magistral-Small-2506",
        name: "Magistral Small 2506",
        family: "magistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5, cache_read: 0.25, cache_write: 1 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/Mistral-Large-Instruct-2411": {
        id: "mistralai/Mistral-Large-Instruct-2411",
        name: "Mistral Large Instruct 2411",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 1, cache_write: 4 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/Devstral-Small-2505": {
        id: "mistralai/Devstral-Small-2505",
        name: "Devstral Small 2505",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-05-01",
        last_updated: "2025-05-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.22, cache_read: 0.025, cache_write: 0.1 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT-OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.4, cache_read: 0.02, cache_write: 0.08 },
        limit: { context: 131072, output: 4096 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT-OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.14, cache_read: 0.015, cache_write: 0.06 },
        limit: { context: 64000, output: 4096 },
      },
    },
  },
  nvidia: {
    id: "nvidia",
    env: ["NVIDIA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://integrate.api.nvidia.com/v1",
    name: "Nvidia",
    doc: "https://docs.api.nvidia.com/nim/",
    models: {
      "nvidia/llama-3.1-nemotron-70b-instruct": {
        id: "nvidia/llama-3.1-nemotron-70b-instruct",
        name: "Llama 3.1 Nemotron 70b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-10-12",
        last_updated: "2024-10-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/llama-3.1-nemotron-ultra-253b-v1": {
        id: "nvidia/llama-3.1-nemotron-ultra-253b-v1",
        name: "Llama-3.1-Nemotron-Ultra-253B-v1",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "nvidia/llama-3.1-nemotron-51b-instruct": {
        id: "nvidia/llama-3.1-nemotron-51b-instruct",
        name: "Llama 3.1 Nemotron 51b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-22",
        last_updated: "2024-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/parakeet-tdt-0.6b-v2": {
        id: "nvidia/parakeet-tdt-0.6b-v2",
        name: "Parakeet TDT 0.6B v2",
        family: "parakeet",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-05",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 0, output: 4096 },
      },
      "nvidia/nvidia-nemotron-nano-9b-v2": {
        id: "nvidia/nvidia-nemotron-nano-9b-v2",
        name: "nvidia-nemotron-nano-9b-v2",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-08-18",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "nvidia/llama-embed-nemotron-8b": {
        id: "nvidia/llama-embed-nemotron-8b",
        name: "Llama Embed Nemotron 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-03",
        release_date: "2025-03-18",
        last_updated: "2025-03-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 2048 },
      },
      "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
        id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
        name: "Llama 3.3 Nemotron Super 49b V1.5",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-03-16",
        last_updated: "2025-03-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/llama-3.3-nemotron-super-49b-v1": {
        id: "nvidia/llama-3.3-nemotron-super-49b-v1",
        name: "Llama 3.3 Nemotron Super 49b V1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-03-16",
        last_updated: "2025-03-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/llama3-chatqa-1.5-70b": {
        id: "nvidia/llama3-chatqa-1.5-70b",
        name: "Llama3 Chatqa 1.5 70b",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-04-28",
        last_updated: "2024-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/cosmos-nemotron-34b": {
        id: "nvidia/cosmos-nemotron-34b",
        name: "Cosmos Nemotron 34B",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "nvidia/nemoretriever-ocr-v1": {
        id: "nvidia/nemoretriever-ocr-v1",
        name: "NeMo Retriever OCR v1",
        family: "nemoretriever",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-05",
        modalities: { input: ["image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 0, output: 4096 },
      },
      "nvidia/nemotron-4-340b-instruct": {
        id: "nvidia/nemotron-4-340b-instruct",
        name: "Nemotron 4 340b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-06-13",
        last_updated: "2024-06-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "nvidia/nemotron-3-nano-30b-a3b": {
        id: "nvidia/nemotron-3-nano-30b-a3b",
        name: "nemotron-3-nano-30b-a3b",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "microsoft/phi-3-small-128k-instruct": {
        id: "microsoft/phi-3-small-128k-instruct",
        name: "Phi 3 Small 128k Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-05-07",
        last_updated: "2024-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-medium-128k-instruct": {
        id: "microsoft/phi-3-medium-128k-instruct",
        name: "Phi 3 Medium 128k Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-05-07",
        last_updated: "2024-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3.5-moe-instruct": {
        id: "microsoft/phi-3.5-moe-instruct",
        name: "Phi 3.5 Moe Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-08-17",
        last_updated: "2024-08-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-vision-128k-instruct": {
        id: "microsoft/phi-3-vision-128k-instruct",
        name: "Phi 3 Vision 128k Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-05-19",
        last_updated: "2024-05-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-4-mini-instruct": {
        id: "microsoft/phi-4-mini-instruct",
        name: "Phi-4-Mini",
        family: "phi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "microsoft/phi-3.5-vision-instruct": {
        id: "microsoft/phi-3.5-vision-instruct",
        name: "Phi 3.5 Vision Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-08-16",
        last_updated: "2024-08-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-medium-4k-instruct": {
        id: "microsoft/phi-3-medium-4k-instruct",
        name: "Phi 3 Medium 4k Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-05-07",
        last_updated: "2024-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 4000, output: 4096 },
      },
      "microsoft/phi-3-small-8k-instruct": {
        id: "microsoft/phi-3-small-8k-instruct",
        name: "Phi 3 Small 8k Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-05-07",
        last_updated: "2024-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8000, output: 4096 },
      },
      "minimaxai/minimax-m2.1": {
        id: "minimaxai/minimax-m2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "minimaxai/minimax-m2.5": {
        id: "minimaxai/minimax-m2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "deepseek-ai/deepseek-v3.1": {
        id: "deepseek-ai/deepseek-v3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-08-20",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-ai/deepseek-r1-0528": {
        id: "deepseek-ai/deepseek-r1-0528",
        name: "Deepseek R1 0528",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-ai/deepseek-r1": {
        id: "deepseek-ai/deepseek-r1",
        name: "Deepseek R1",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-ai/deepseek-v3.1-terminus": {
        id: "deepseek-ai/deepseek-v3.1-terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-ai/deepseek-coder-6.7b-instruct": {
        id: "deepseek-ai/deepseek-coder-6.7b-instruct",
        name: "Deepseek Coder 6.7b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2023-10-29",
        last_updated: "2023-10-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-ai/deepseek-v3.2": {
        id: "deepseek-ai/deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 65536 },
      },
      "moonshotai/kimi-k2-instruct": {
        id: "moonshotai/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2025-01-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "moonshotai/kimi-k2-instruct-0905": {
        id: "moonshotai/kimi-k2-instruct-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-07",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11",
        last_updated: "2025-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "google/codegemma-7b": {
        id: "google/codegemma-7b",
        name: "Codegemma 7b",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2024-03-21",
        last_updated: "2024-03-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-2-2b-it": {
        id: "google/gemma-2-2b-it",
        name: "Gemma 2 2b It",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2024-07-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-3-1b-it": {
        id: "google/gemma-3-1b-it",
        name: "Gemma 3 1b It",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-2-27b-it": {
        id: "google/gemma-2-27b-it",
        name: "Gemma 2 27b It",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-06-24",
        last_updated: "2024-06-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-3n-e2b-it": {
        id: "google/gemma-3n-e2b-it",
        name: "Gemma 3n E2b It",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-06-12",
        last_updated: "2025-06-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/codegemma-1.1-7b": {
        id: "google/codegemma-1.1-7b",
        name: "Codegemma 1.1 7b",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2024-04-30",
        last_updated: "2024-04-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-3n-e4b-it": {
        id: "google/gemma-3n-e4b-it",
        name: "Gemma 3n E4b It",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-06-03",
        last_updated: "2025-06-03",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-3-12b-it": {
        id: "google/gemma-3-12b-it",
        name: "Gemma 3 12b It",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Gemma-3-27B-IT",
        family: "gemma",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "z-ai/glm4.7": {
        id: "z-ai/glm4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "z-ai/glm5": {
        id: "z-ai/glm5",
        name: "GLM5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 202752, output: 131000 },
      },
      "stepfun-ai/step-3.5-flash": {
        id: "stepfun-ai/step-3.5-flash",
        name: "Step 3.5 Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 16384 },
      },
      "qwen/qwen3-next-80b-a3b-thinking": {
        id: "qwen/qwen3-next-80b-a3b-thinking",
        name: "Qwen3-Next-80B-A3B-Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 16384 },
      },
      "qwen/qwen3-coder-480b-a35b-instruct": {
        id: "qwen/qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 66536 },
      },
      "qwen/qwq-32b": {
        id: "qwen/qwq-32b",
        name: "Qwq 32b",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen/qwen2.5-coder-7b-instruct": {
        id: "qwen/qwen2.5-coder-7b-instruct",
        name: "Qwen2.5 Coder 7b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-17",
        last_updated: "2024-09-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen/qwen3.5-397b-a17b": {
        id: "qwen/qwen3.5-397b-a17b",
        name: "Qwen3.5-397B-A17B",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 8192 },
      },
      "qwen/qwen2.5-coder-32b-instruct": {
        id: "qwen/qwen2.5-coder-32b-instruct",
        name: "Qwen2.5 Coder 32b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-06",
        last_updated: "2024-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen/qwen3-235b-a22b": {
        id: "qwen/qwen3-235b-a22b",
        name: "Qwen3-235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen/qwen3-next-80b-a3b-instruct": {
        id: "qwen/qwen3-next-80b-a3b-instruct",
        name: "Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 16384 },
      },
      "meta/llama-3.1-70b-instruct": {
        id: "meta/llama-3.1-70b-instruct",
        name: "Llama 3.1 70b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2024-07-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-3.3-70b-instruct": {
        id: "meta/llama-3.3-70b-instruct",
        name: "Llama 3.3 70b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-26",
        last_updated: "2024-11-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-4-scout-17b-16e-instruct": {
        id: "meta/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17b 16e Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-02",
        release_date: "2025-04-02",
        last_updated: "2025-04-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-3.2-11b-vision-instruct": {
        id: "meta/llama-3.2-11b-vision-instruct",
        name: "Llama 3.2 11b Vision Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-18",
        last_updated: "2024-09-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama3-8b-instruct": {
        id: "meta/llama3-8b-instruct",
        name: "Llama3 8b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-04-17",
        last_updated: "2024-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/codellama-70b": {
        id: "meta/codellama-70b",
        name: "Codellama 70b",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2024-01-29",
        last_updated: "2024-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-3.2-1b-instruct": {
        id: "meta/llama-3.2-1b-instruct",
        name: "Llama 3.2 1b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-18",
        last_updated: "2024-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-3.1-405b-instruct": {
        id: "meta/llama-3.1-405b-instruct",
        name: "Llama 3.1 405b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2024-07-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama3-70b-instruct": {
        id: "meta/llama3-70b-instruct",
        name: "Llama3 70b Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-04-17",
        last_updated: "2024-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-4-maverick-17b-128e-instruct": {
        id: "meta/llama-4-maverick-17b-128e-instruct",
        name: "Llama 4 Maverick 17b 128e Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-02",
        release_date: "2025-04-01",
        last_updated: "2025-04-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/mistral-large-3-675b-instruct-2512": {
        id: "mistralai/mistral-large-3-675b-instruct-2512",
        name: "Mistral Large 3 675B Instruct 2512",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "mistralai/mamba-codestral-7b-v0.1": {
        id: "mistralai/mamba-codestral-7b-v0.1",
        name: "Mamba Codestral 7b V0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2024-07-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/codestral-22b-instruct-v0.1": {
        id: "mistralai/codestral-22b-instruct-v0.1",
        name: "Codestral 22b Instruct V0.1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-05-29",
        last_updated: "2024-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/mistral-large-2-instruct": {
        id: "mistralai/mistral-large-2-instruct",
        name: "Mistral Large 2 Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-24",
        last_updated: "2024-07-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/ministral-14b-instruct-2512": {
        id: "mistralai/ministral-14b-instruct-2512",
        name: "Ministral 3 14B Instruct 2512",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-01",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "mistralai/mistral-small-3.1-24b-instruct-2503": {
        id: "mistralai/mistral-small-3.1-24b-instruct-2503",
        name: "Mistral Small 3.1 24b Instruct 2503",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-11",
        last_updated: "2025-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "mistralai/devstral-2-123b-instruct-2512": {
        id: "mistralai/devstral-2-123b-instruct-2512",
        name: "Devstral-2-123B-Instruct-2512",
        family: "devstral",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-08",
        last_updated: "2025-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT-OSS-120B",
        family: "gpt-oss",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-04",
        last_updated: "2025-08-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/whisper-large-v3": {
        id: "openai/whisper-large-v3",
        name: "Whisper Large v3",
        family: "whisper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2023-09-01",
        last_updated: "2025-09-05",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 0, output: 4096 },
      },
      "black-forest-labs/flux.1-dev": {
        id: "black-forest-labs/flux.1-dev",
        name: "FLUX.1-dev",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 4096, output: 0 },
      },
    },
  },
  fastrouter: {
    id: "fastrouter",
    env: ["FASTROUTER_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://go.fastrouter.ai/api/v1",
    name: "FastRouter",
    doc: "https://fastrouter.ai/models",
    models: {
      "deepseek-ai/deepseek-r1-distill-llama-70b": {
        id: "deepseek-ai/deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-23",
        last_updated: "2025-01-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.14 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/kimi-k2": {
        id: "moonshotai/kimi-k2",
        name: "Kimi K2",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 131072, output: 32768 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "qwen/qwen3-coder": {
        id: "qwen/qwen3-coder",
        name: "Qwen3 Coder",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 262144, output: 66536 },
      },
      "x-ai/grok-4": {
        id: "x-ai/grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75, cache_write: 15 },
        limit: { context: 256000, output: 64000 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 131072, output: 65536 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.005 },
        limit: { context: 400000, output: 128000 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  iflowcn: {
    id: "iflowcn",
    env: ["IFLOW_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://apis.iflow.cn/v1",
    name: "iFlow",
    doc: "https://platform.iflow.cn/en/docs",
    models: {
      "kimi-k2": {
        id: "kimi-k2",
        name: "Kimi-K2",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "qwen3-max-preview": {
        id: "qwen3-max-preview",
        name: "Qwen3-Max-Preview",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "deepseek-v3": {
        id: "deepseek-v3",
        name: "DeepSeek-V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-26",
        last_updated: "2024-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "kimi-k2-0905": {
        id: "kimi-k2-0905",
        name: "Kimi-K2-0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
      "qwen3-235b-a22b-instruct": {
        id: "qwen3-235b-a22b-instruct",
        name: "Qwen3-235B-A22B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2025-11-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 128000 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3-32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek-V3.2-Exp",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "qwen3-235b": {
        id: "qwen3-235b",
        name: "Qwen3-235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "qwen3-vl-plus": {
        id: "qwen3-vl-plus",
        name: "Qwen3-VL-Plus",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "qwen3-235b-a22b-thinking-2507": {
        id: "qwen3-235b-a22b-thinking-2507",
        name: "Qwen3-235B-A22B-Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
      "qwen3-max": {
        id: "qwen3-max",
        name: "Qwen3-Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "qwen3-coder-plus": {
        id: "qwen3-coder-plus",
        name: "Qwen3-Coder-Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 64000 },
      },
    },
  },
  modelscope: {
    id: "modelscope",
    env: ["MODELSCOPE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api-inference.modelscope.cn/v1",
    name: "ModelScope",
    doc: "https://modelscope.cn/docs/model-service/API-Inference/intro",
    models: {
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 16384 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3-235B-A22B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 131072 },
      },
      "Qwen/Qwen3-30B-A3B-Thinking-2507": {
        id: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        name: "Qwen3 30B A3B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        name: "Qwen3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-07-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 131072 },
      },
      "ZhipuAI/GLM-4.6": {
        id: "ZhipuAI/GLM-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 202752, output: 98304 },
      },
      "ZhipuAI/GLM-4.5": {
        id: "ZhipuAI/GLM-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 98304 },
      },
    },
  },
  llama: {
    id: "llama",
    env: ["LLAMA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.llama.com/compat/v1/",
    name: "Llama",
    doc: "https://llama.developer.meta.com/docs/models",
    models: {
      "cerebras-llama-4-maverick-17b-128e-instruct": {
        id: "cerebras-llama-4-maverick-17b-128e-instruct",
        name: "Cerebras-Llama-4-Maverick-17B-128E-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "llama-4-scout-17b-16e-instruct-fp8": {
        id: "llama-4-scout-17b-16e-instruct-fp8",
        name: "Llama-4-Scout-17B-16E-Instruct-FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "llama-3.3-8b-instruct": {
        id: "llama-3.3-8b-instruct",
        name: "Llama-3.3-8B-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "groq-llama-4-maverick-17b-128e-instruct": {
        id: "groq-llama-4-maverick-17b-128e-instruct",
        name: "Groq-Llama-4-Maverick-17B-128E-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "llama-3.3-70b-instruct": {
        id: "llama-3.3-70b-instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "cerebras-llama-4-scout-17b-16e-instruct": {
        id: "cerebras-llama-4-scout-17b-16e-instruct",
        name: "Cerebras-Llama-4-Scout-17B-16E-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "llama-4-maverick-17b-128e-instruct-fp8": {
        id: "llama-4-maverick-17b-128e-instruct-fp8",
        name: "Llama-4-Maverick-17B-128E-Instruct-FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
    },
  },
  inference: {
    id: "inference",
    env: ["INFERENCE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://inference.net/v1",
    name: "Inference",
    doc: "https://inference.net/models",
    models: {
      "mistral/mistral-nemo-12b-instruct": {
        id: "mistral/mistral-nemo-12b-instruct",
        name: "Mistral Nemo 12B Instruct",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.038, output: 0.1 },
        limit: { context: 16000, output: 4096 },
      },
      "google/gemma-3": {
        id: "google/gemma-3",
        name: "Google Gemma 3",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.3 },
        limit: { context: 125000, output: 4096 },
      },
      "qwen/qwen3-embedding-4b": {
        id: "qwen/qwen3-embedding-4b",
        name: "Qwen 3 Embedding 4B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32000, output: 2048 },
      },
      "qwen/qwen-2.5-7b-vision-instruct": {
        id: "qwen/qwen-2.5-7b-vision-instruct",
        name: "Qwen 2.5 7B Vision Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 125000, output: 4096 },
      },
      "meta/llama-3.2-11b-vision-instruct": {
        id: "meta/llama-3.2-11b-vision-instruct",
        name: "Llama 3.2 11B Vision Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.055, output: 0.055 },
        limit: { context: 16000, output: 4096 },
      },
      "meta/llama-3.2-3b-instruct": {
        id: "meta/llama-3.2-3b-instruct",
        name: "Llama 3.2 3B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.02 },
        limit: { context: 16000, output: 4096 },
      },
      "meta/llama-3.2-1b-instruct": {
        id: "meta/llama-3.2-1b-instruct",
        name: "Llama 3.2 1B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.01 },
        limit: { context: 16000, output: 4096 },
      },
      "meta/llama-3.1-8b-instruct": {
        id: "meta/llama-3.1-8b-instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.025, output: 0.025 },
        limit: { context: 16000, output: 4096 },
      },
      "osmosis/osmosis-structure-0.6b": {
        id: "osmosis/osmosis-structure-0.6b",
        name: "Osmosis Structure 0.6B",
        family: "osmosis",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.5 },
        limit: { context: 4000, output: 2048 },
      },
    },
  },
  deepinfra: {
    id: "deepinfra",
    env: ["DEEPINFRA_API_KEY"],
    npm: "@ai-sdk/deepinfra",
    name: "Deep Infra",
    doc: "https://deepinfra.com/models",
    models: {
      "zai-org/GLM-4.7-Flash": {
        id: "zai-org/GLM-4.7-Flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.4 },
        limit: { context: 202752, output: 16384 },
      },
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.43, output: 1.74, cache_read: 0.08 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.43, output: 1.75, cache_read: 0.08 },
        limit: { context: 202752, output: 16384 },
      },
      "zai-org/GLM-4.6V": {
        id: "zai-org/GLM-4.6V",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/GLM-4.5": {
        id: "zai-org/GLM-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 131072, output: 98304 },
        status: "deprecated",
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 2.56, cache_read: 0.16 },
        limit: { context: 202752, output: 16384 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.95, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMaxAI/MiniMax-M2": {
        id: "MiniMaxAI/MiniMax-M2",
        name: "MiniMax M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.254, output: 1.02 },
        limit: { context: 262144, output: 32768 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.2 },
        limit: { context: 196608, output: 196608 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek-R1-0528",
        attachment: false,
        reasoning: true,
        tool_call: false,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.15, cache_read: 0.35 },
        limit: { context: 163840, output: 64000 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek-V3.2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.26, output: 0.38, cache_read: 0.13 },
        limit: { context: 163840, output: 64000 },
      },
      "moonshotai/Kimi-K2-Instruct": {
        id: "moonshotai/Kimi-K2-Instruct",
        name: "Kimi K2",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2 },
        limit: { context: 131072, output: 32768 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.8 },
        limit: { context: 262144, output: 32768 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-11-06",
        last_updated: "2025-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.47, output: 2 },
        limit: { context: 131072, output: 32768 },
      },
      "meta-llama/Llama-3.1-8B-Instruct-Turbo": {
        id: "meta-llama/Llama-3.1-8B-Instruct-Turbo",
        name: "Llama 3.1 8B Turbo",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.03 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/Llama-3.1-70B-Instruct-Turbo": {
        id: "meta-llama/Llama-3.1-70B-Instruct-Turbo",
        name: "Llama 3.1 70B Turbo",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/Llama-4-Scout-17B-16E-Instruct": {
        id: "meta-llama/Llama-4-Scout-17B-16E-Instruct",
        name: "Llama 4 Scout 17B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.3 },
        limit: { context: 10000000, output: 16384 },
      },
      "meta-llama/Llama-3.1-70B-Instruct": {
        id: "meta-llama/Llama-3.1-70B-Instruct",
        name: "Llama 3.1 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/Llama-3.1-8B-Instruct": {
        id: "meta-llama/Llama-3.1-8B-Instruct",
        name: "Llama 3.1 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.05 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8": {
        id: "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
        name: "Llama 4 Maverick 17B FP8",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 1000000, output: 16384 },
      },
      "meta-llama/Llama-3.3-70B-Instruct-Turbo": {
        id: "meta-llama/Llama-3.3-70B-Instruct-Turbo",
        name: "Llama 3.3 70B Turbo",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.32 },
        limit: { context: 131072, output: 16384 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo",
        name: "Qwen3 Coder 480B A35B Instruct Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 262144, output: 66536 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.6 },
        limit: { context: 262144, output: 66536 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.24 },
        limit: { context: 131072, output: 16384 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.14 },
        limit: { context: 131072, output: 16384 },
      },
      "anthropic/claude-3-7-sonnet-latest": {
        id: "anthropic/claude-3-7-sonnet-latest",
        name: "Claude Sonnet 3.7 (Latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.3, output: 16.5, cache_read: 0.33 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-4-opus": {
        id: "anthropic/claude-4-opus",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-06-12",
        last_updated: "2025-06-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 16.5, output: 82.5 },
        limit: { context: 200000, output: 32000 },
      },
    },
  },
  "perplexity-agent": {
    id: "perplexity-agent",
    env: ["PERPLEXITY_API_KEY"],
    npm: "@ai-sdk/openai",
    api: "https://api.perplexity.ai/v1",
    name: "Perplexity Agent",
    doc: "https://docs.perplexity.ai/docs/agent-api/models",
    models: {
      "nvidia/nemotron-3-super-120b-a12b": {
        id: "nvidia/nemotron-3-super-120b-a12b",
        name: "Nemotron 3 Super 120B",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02",
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 2.5 },
        limit: { context: 1000000, output: 32000 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.03 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.5,
          output: 3,
          cache_read: 0.05,
          context_over_200k: { input: 0.5, output: 3, cache_read: 0.05 },
        },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-pro-preview": {
        id: "google/gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 1.25,
          output: 10,
          cache_read: 0.125,
          context_over_200k: { input: 2.5, output: 15, cache_read: 0.25 },
        },
        limit: { context: 1048576, output: 65536 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "perplexity/sonar": {
        id: "perplexity/sonar",
        name: "Sonar",
        family: "sonar",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2.5, cache_read: 0.0625 },
        limit: { context: 128000, output: 8192 },
      },
      "anthropic/claude-opus-4-6": {
        id: "anthropic/claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5 },
        limit: { context: 200000, output: 128000 },
      },
      "anthropic/claude-sonnet-4-6": {
        id: "anthropic/claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-haiku-4-5": {
        id: "anthropic/claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4-5": {
        id: "anthropic/claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4-5": {
        id: "anthropic/claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3 },
        limit: { context: 200000, output: 64000 },
      },
      "xai/grok-4-1-fast-non-reasoning": {
        id: "xai/grok-4-1-fast-non-reasoning",
        name: "Grok 4.1 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
    },
  },
  xiaomi: {
    id: "xiaomi",
    env: ["XIAOMI_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.xiaomimimo.com/v1",
    name: "Xiaomi",
    doc: "https://platform.xiaomimimo.com/#/docs",
    models: {
      "mimo-v2-flash": {
        id: "mimo-v2-flash",
        name: "MiMo-V2-Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-12-01",
        release_date: "2025-12-16",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01 },
        limit: { context: 256000, output: 64000 },
      },
    },
  },
  synthetic: {
    id: "synthetic",
    env: ["SYNTHETIC_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.synthetic.new/openai/v1",
    name: "Synthetic",
    doc: "https://synthetic.new/pricing",
    models: {
      "hf:MiniMaxAI/MiniMax-M2.5": {
        id: "hf:MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-07",
        last_updated: "2026-02-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.6 },
        limit: { context: 191488, output: 65536 },
      },
      "hf:MiniMaxAI/MiniMax-M2": {
        id: "hf:MiniMaxAI/MiniMax-M2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 196608, output: 131000 },
      },
      "hf:MiniMaxAI/MiniMax-M2.1": {
        id: "hf:MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 204800, output: 131072 },
      },
      "hf:deepseek-ai/DeepSeek-R1": {
        id: "hf:deepseek-ai/DeepSeek-R1",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:deepseek-ai/DeepSeek-R1-0528": {
        id: "hf:deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek R1 (0528)",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 8 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:deepseek-ai/DeepSeek-V3.1": {
        id: "hf:deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 1.68 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:deepseek-ai/DeepSeek-V3.2": {
        id: "hf:deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.4, cache_read: 0.27, cache_write: 0 },
        limit: { context: 162816, input: 162816, output: 8000 },
      },
      "hf:deepseek-ai/DeepSeek-V3-0324": {
        id: "hf:deepseek-ai/DeepSeek-V3-0324",
        name: "DeepSeek V3 (0324)",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 1.2 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:deepseek-ai/DeepSeek-V3": {
        id: "hf:deepseek-ai/DeepSeek-V3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.25, output: 1.25 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "hf:deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 1.2 },
        limit: { context: 128000, output: 128000 },
      },
      "hf:moonshotai/Kimi-K2-Instruct-0905": {
        id: "hf:moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.2, output: 1.2 },
        limit: { context: 262144, output: 32768 },
      },
      "hf:moonshotai/Kimi-K2.5": {
        id: "hf:moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 262144, output: 65536 },
      },
      "hf:moonshotai/Kimi-K2-Thinking": {
        id: "hf:moonshotai/Kimi-K2-Thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-07",
        last_updated: "2025-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 262144, output: 262144 },
      },
      "hf:openai/gpt-oss-120b": {
        id: "hf:openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 128000, output: 32768 },
      },
      "hf:nvidia/Kimi-K2.5-NVFP4": {
        id: "hf:nvidia/Kimi-K2.5-NVFP4",
        name: "Kimi K2.5 (NVFP4)",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 262144, output: 65536 },
      },
      "hf:meta-llama/Llama-4-Scout-17B-16E-Instruct": {
        id: "hf:meta-llama/Llama-4-Scout-17B-16E-Instruct",
        name: "Llama-4-Scout-17B-16E-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 328000, output: 4096 },
      },
      "hf:meta-llama/Llama-3.1-405B-Instruct": {
        id: "hf:meta-llama/Llama-3.1-405B-Instruct",
        name: "Llama-3.1-405B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 3 },
        limit: { context: 128000, output: 32768 },
      },
      "hf:meta-llama/Llama-3.1-70B-Instruct": {
        id: "hf:meta-llama/Llama-3.1-70B-Instruct",
        name: "Llama-3.1-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 0.9 },
        limit: { context: 128000, output: 32768 },
      },
      "hf:meta-llama/Llama-3.1-8B-Instruct": {
        id: "hf:meta-llama/Llama-3.1-8B-Instruct",
        name: "Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, output: 32768 },
      },
      "hf:meta-llama/Llama-3.3-70B-Instruct": {
        id: "hf:meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 0.9 },
        limit: { context: 128000, output: 32768 },
      },
      "hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8": {
        id: "hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
        name: "Llama-4-Maverick-17B-128E-Instruct-FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.88 },
        limit: { context: 524000, output: 4096 },
      },
      "hf:zai-org/GLM-4.7-Flash": {
        id: "hf:zai-org/GLM-4.7-Flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-01-18",
        last_updated: "2026-01-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.4, cache_read: 0.06 },
        limit: { context: 196608, output: 65536 },
      },
      "hf:zai-org/GLM-4.6": {
        id: "hf:zai-org/GLM-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 200000, output: 64000 },
      },
      "hf:zai-org/GLM-4.7": {
        id: "hf:zai-org/GLM-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 200000, output: 64000 },
      },
      "hf:Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "hf:Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.65, output: 3 },
        limit: { context: 256000, output: 32000 },
      },
      "hf:Qwen/Qwen2.5-Coder-32B-Instruct": {
        id: "hf:Qwen/Qwen2.5-Coder-32B-Instruct",
        name: "Qwen2.5-Coder-32B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-11",
        last_updated: "2024-11-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 0.8 },
        limit: { context: 32768, output: 32768 },
      },
      "hf:Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "hf:Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen 3 Coder 480B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 2 },
        limit: { context: 256000, output: 32000 },
      },
      "hf:Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "hf:Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen 3 235B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-07-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 256000, output: 32000 },
      },
    },
  },
  nebius: {
    id: "nebius",
    env: ["NEBIUS_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.tokenfactory.nebius.com/v1",
    name: "Nebius Token Factory",
    doc: "https://docs.tokenfactory.nebius.com/",
    models: {
      "zai-org/GLM-4.7-FP8": {
        id: "zai-org/GLM-4.7-FP8",
        name: "GLM-4.7 (FP8)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2, cache_read: 0.04, cache_write: 0.5 },
        limit: { context: 128000, input: 124000, output: 4096 },
      },
      "zai-org/GLM-4.5-Air": {
        id: "zai-org/GLM-4.5-Air",
        name: "GLM-4.5-Air",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.2, cache_read: 0.02, cache_write: 0.25 },
        limit: { context: 128000, input: 124000, output: 4096 },
      },
      "zai-org/GLM-4.5": {
        id: "zai-org/GLM-4.5",
        name: "GLM-4.5",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.2, cache_read: 0.06, cache_write: 0.75 },
        limit: { context: 128000, input: 124000, output: 4096 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-03-01",
        last_updated: "2026-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 3.2, cache_read: 0.1, cache_write: 1 },
        limit: { context: 200000, input: 200000, output: 16384 },
      },
      "nvidia/nemotron-3-super-120b-a12b": {
        id: "nvidia/nemotron-3-super-120b-a12b",
        name: "Nemotron-3-Super-120B-A12B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2026-02",
        release_date: "2026-03-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1": {
        id: "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",
        name: "Llama-3.1-Nemotron-Ultra-253B-v1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8, cache_read: 0.06, cache_write: 0.75 },
        limit: { context: 128000, input: 120000, output: 4096 },
      },
      "nvidia/Nemotron-Nano-V2-12b": {
        id: "nvidia/Nemotron-Nano-V2-12b",
        name: "Nemotron-Nano-V2-12b",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.2, cache_read: 0.007, cache_write: 0.08 },
        limit: { context: 32000, input: 30000, output: 4096 },
      },
      "nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B": {
        id: "nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",
        name: "Nemotron-3-Nano-30B-A3B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-08-10",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.24, cache_read: 0.006, cache_write: 0.075 },
        limit: { context: 32000, input: 30000, output: 4096 },
      },
      "NousResearch/Hermes-4-405B": {
        id: "NousResearch/Hermes-4-405B",
        name: "Hermes-4-405B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2026-01-30",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3, reasoning: 3, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "NousResearch/Hermes-4-70B": {
        id: "NousResearch/Hermes-4-70B",
        name: "Hermes-4-70B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2026-01-30",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.4, reasoning: 0.4, cache_read: 0.013, cache_write: 0.16 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "BAAI/bge-en-icl": {
        id: "BAAI/bge-en-icl",
        name: "BGE-ICL",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2024-06",
        release_date: "2024-07-30",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32768, input: 32768, output: 0 },
      },
      "BAAI/bge-multilingual-gemma2": {
        id: "BAAI/bge-multilingual-gemma2",
        name: "bge-multilingual-gemma2",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2024-06",
        release_date: "2024-07-30",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 8192, input: 8192, output: 0 },
      },
      "PrimeIntellect/INTELLECT-3": {
        id: "PrimeIntellect/INTELLECT-3",
        name: "INTELLECT-3",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-01-25",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1, cache_read: 0.02, cache_write: 0.25 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax-M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-02-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, reasoning: 1.2, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-V3-0324-fast": {
        id: "deepseek-ai/DeepSeek-V3-0324-fast",
        name: "DeepSeek-V3-0324 (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-03-24",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 2.25, cache_read: 0.075, cache_write: 0.28125 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek-R1-0528",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2026-01-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 2.4, reasoning: 2.4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 128000, input: 120000, output: 32768 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek-V3.2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2026-01-20",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.45, reasoning: 0.45, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 163000, input: 160000, output: 16384 },
      },
      "deepseek-ai/DeepSeek-V3-0324": {
        id: "deepseek-ai/DeepSeek-V3-0324",
        name: "DeepSeek-V3-0324",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-03-24",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5, cache_read: 0.05, cache_write: 0.1875 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-R1-0528-fast": {
        id: "deepseek-ai/DeepSeek-R1-0528-fast",
        name: "DeepSeek R1 0528 Fast",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 131072, output: 8192 },
      },
      "intfloat/e5-mistral-7b-instruct": {
        id: "intfloat/e5-mistral-7b-instruct",
        name: "e5-mistral-7b-instruct",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2023-12",
        release_date: "2024-01-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32768, input: 32768, output: 0 },
      },
      "moonshotai/Kimi-K2-Instruct": {
        id: "moonshotai/Kimi-K2-Instruct",
        name: "Kimi-K2-Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-01-05",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.4, cache_read: 0.05, cache_write: 0.625 },
        limit: { context: 200000, input: 190000, output: 8192 },
      },
      "moonshotai/Kimi-K2.5-fast": {
        id: "moonshotai/Kimi-K2.5-fast",
        name: "Kimi-K2.5-fast",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.5, cache_read: 0.05, cache_write: 0.625 },
        limit: { context: 256000, input: 256000, output: 8192 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi-K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-15",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.5, reasoning: 2.5, cache_read: 0.05, cache_write: 0.625 },
        limit: { context: 256000, input: 256000, output: 8192 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi-K2-Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-01-05",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, reasoning: 2.5, cache_read: 0.06, cache_write: 0.75 },
        limit: { context: 128000, input: 120000, output: 16384 },
      },
      "google/gemma-2-2b-it": {
        id: "google/gemma-2-2b-it",
        name: "Gemma-2-2b-it",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-07-31",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.06, cache_read: 0.002, cache_write: 0.025 },
        limit: { context: 8192, input: 8000, output: 4096 },
      },
      "google/gemma-3-27b-it-fast": {
        id: "google/gemma-3-27b-it-fast",
        name: "Gemma-3-27b-it (Fast)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-01-20",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6, cache_read: 0.02, cache_write: 0.25 },
        limit: { context: 110000, input: 100000, output: 8192 },
      },
      "google/gemma-2-9b-it-fast": {
        id: "google/gemma-2-9b-it-fast",
        name: "Gemma-2-9b-it (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-27",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09, cache_read: 0.003, cache_write: 0.0375 },
        limit: { context: 8192, input: 8000, output: 4096 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Gemma-3-27b-it",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2026-01-20",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01, cache_write: 0.125 },
        limit: { context: 110000, input: 100000, output: 8192 },
      },
      "meta-llama/Meta-Llama-3.1-8B-Instruct": {
        id: "meta-llama/Meta-Llama-3.1-8B-Instruct",
        name: "Meta-Llama-3.1-8B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-07-23",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.06, cache_read: 0.002, cache_write: 0.025 },
        limit: { context: 128000, input: 120000, output: 4096 },
      },
      "meta-llama/Llama-Guard-3-8B": {
        id: "meta-llama/Llama-Guard-3-8B",
        name: "Llama-Guard-3-8B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2024-04-18",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.06, cache_read: 0.002, cache_write: 0.025 },
        limit: { context: 8192, input: 8000, output: 1024 },
      },
      "meta-llama/Llama-3.3-70B-Instruct-fast": {
        id: "meta-llama/Llama-3.3-70B-Instruct-fast",
        name: "Llama-3.3-70B-Instruct (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-12-05",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025, cache_write: 0.31 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "meta-llama/Meta-Llama-3.1-8B-Instruct-fast": {
        id: "meta-llama/Meta-Llama-3.1-8B-Instruct-fast",
        name: "Meta-Llama-3.1-8B-Instruct (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-07-23",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09, cache_read: 0.003, cache_write: 0.03 },
        limit: { context: 128000, input: 120000, output: 4096 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama-3.3-70B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-12-05",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.4, cache_read: 0.013, cache_write: 0.16 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen3-30B-A3B-Instruct-2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01, cache_write: 0.125 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-32B": {
        id: "Qwen/Qwen3-32B",
        name: "Qwen3-32B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01, cache_write: 0.125 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262144, output: 8192 },
      },
      "Qwen/Qwen3-30B-A3B-Thinking-2507": {
        id: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        name: "Qwen3-30B-A3B-Thinking-2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, reasoning: 0.3, cache_read: 0.01, cache_write: 0.125 },
        limit: { context: 128000, input: 120000, output: 16384 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.8 },
        limit: { context: 262144, output: 66536 },
      },
      "Qwen/Qwen2.5-VL-72B-Instruct": {
        id: "Qwen/Qwen2.5-VL-72B-Instruct",
        name: "Qwen2.5-VL-72B-Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-20",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025, cache_write: 0.31 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-Embedding-8B": {
        id: "Qwen/Qwen3-Embedding-8B",
        name: "Qwen3-Embedding-8B",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2025-10",
        release_date: "2026-01-10",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32768, input: 32768, output: 0 },
      },
      "Qwen/Qwen3-32B-fast": {
        id: "Qwen/Qwen3-32B-fast",
        name: "Qwen3-32B (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6, cache_read: 0.02, cache_write: 0.25 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Thinking": {
        id: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        name: "Qwen3-Next-80B-A3B-Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.2, reasoning: 1.2, cache_read: 0.015, cache_write: 0.18 },
        limit: { context: 128000, input: 120000, output: 16384 },
      },
      "Qwen/Qwen2.5-Coder-7B-fast": {
        id: "Qwen/Qwen2.5-Coder-7B-fast",
        name: "Qwen2.5-Coder-7B (Fast)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-09-19",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09, cache_read: 0.003, cache_write: 0.03 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        name: "Qwen3-Coder-30B-A3B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-28",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01, cache_write: 0.125 },
        limit: { context: 128000, input: 120000, output: 8192 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262144, output: 8192 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "gpt-oss-120b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2026-01-10",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6, reasoning: 0.6, cache_read: 0.015, cache_write: 0.18 },
        limit: { context: 128000, input: 124000, output: 8192 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "gpt-oss-20b",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2026-01-10",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2, cache_read: 0.005, cache_write: 0.06 },
        limit: { context: 128000, input: 124000, output: 4096 },
      },
      "black-forest-labs/flux-dev": {
        id: "black-forest-labs/flux-dev",
        name: "FLUX.1-dev",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2024-07",
        release_date: "2024-08-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 77, input: 77, output: 0 },
      },
      "black-forest-labs/flux-schnell": {
        id: "black-forest-labs/flux-schnell",
        name: "FLUX.1-schnell",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        knowledge: "2024-07",
        release_date: "2024-08-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 77, input: 77, output: 0 },
      },
    },
  },
  "qiniu-ai": {
    id: "qiniu-ai",
    env: ["QINIU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.qnaigc.com/v1",
    name: "Qiniu",
    doc: "https://developer.qiniu.com/aitokenapi",
    models: {
      "claude-4.5-haiku": {
        id: "claude-4.5-haiku",
        name: "Claude 4.5 Haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-10-16",
        last_updated: "2025-10-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 64000 },
      },
      "claude-3.5-sonnet": {
        id: "claude-3.5-sonnet",
        name: "Claude 3.5 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-09",
        last_updated: "2025-09-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 8200 },
      },
      "qwen3-235b-a22b-instruct-2507": {
        id: "qwen3-235b-a22b-instruct-2507",
        name: "Qwen3 235b A22B Instruct 2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 262144, output: 64000 },
      },
      "kimi-k2": {
        id: "kimi-k2",
        name: "Kimi K2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 128000 },
      },
      "claude-3.7-sonnet": {
        id: "claude-3.7-sonnet",
        name: "Claude 3.7 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 128000 },
      },
      "qwen3-max-preview": {
        id: "qwen3-max-preview",
        name: "Qwen3 Max Preview",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-06",
        last_updated: "2025-09-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 64000 },
      },
      "qwen3-next-80b-a3b-thinking": {
        id: "qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 131072, output: 32768 },
      },
      "claude-4.0-sonnet": {
        id: "claude-4.0-sonnet",
        name: "Claude 4.0 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 64000 },
      },
      "qwen-vl-max-2025-01-25": {
        id: "qwen-vl-max-2025-01-25",
        name: "Qwen VL-MAX-2025-01-25",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-v3": {
        id: "deepseek-v3",
        name: "DeepSeek-V3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-08-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 16000 },
      },
      "doubao-seed-1.6-thinking": {
        id: "doubao-seed-1.6-thinking",
        name: "Doubao-Seed 1.6 Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-15",
        last_updated: "2025-08-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-14",
        last_updated: "2025-08-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 262000, output: 4096 },
      },
      "mimo-v2-flash": {
        id: "mimo-v2-flash",
        name: "Mimo-V2-Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 256000 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM 4.5 Air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 131000, output: 4096 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM 4.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 131072, output: 98304 },
      },
      "claude-4.5-sonnet": {
        id: "claude-4.5-sonnet",
        name: "Claude 4.5 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 64000 },
      },
      "qwen2.5-vl-7b-instruct": {
        id: "qwen2.5-vl-7b-instruct",
        name: "Qwen 2.5 VL 7B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 8192 },
      },
      "doubao-seed-2.0-pro": {
        id: "doubao-seed-2.0-pro",
        name: "Doubao Seed 2.0 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 128000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 1048576, output: 64000 },
      },
      "deepseek-v3.1": {
        id: "deepseek-v3.1",
        name: "DeepSeek-V3.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "doubao-seed-1.6": {
        id: "doubao-seed-1.6",
        name: "Doubao-Seed 1.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-15",
        last_updated: "2025-08-15",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "doubao-seed-2.0-mini": {
        id: "doubao-seed-2.0-mini",
        name: "Doubao Seed 2.0 Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "claude-4.0-opus": {
        id: "claude-4.0-opus",
        name: "Claude 4.0 Opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 32000 },
      },
      "qwen-turbo": {
        id: "qwen-turbo",
        name: "Qwen-Turbo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 1000000, output: 4096 },
      },
      "gemini-3.0-pro-preview": {
        id: "gemini-3.0-pro-preview",
        name: "Gemini 3.0 Pro Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image", "video", "pdf", "audio"], output: ["text"] },
        open_weights: false,
        limit: { context: 1000000, output: 64000 },
      },
      "deepseek-r1-0528": {
        id: "deepseek-r1-0528",
        name: "DeepSeek-R1-0528",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek-R1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3 32B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 40000, output: 4096 },
      },
      "doubao-1.5-vision-pro": {
        id: "doubao-1.5-vision-pro",
        name: "Doubao 1.5 Vision Pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 16000 },
      },
      "gemini-3.0-pro-image-preview": {
        id: "gemini-3.0-pro-image-preview",
        name: "Gemini 3.0 Pro Image Preview",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        limit: { context: 32768, output: 8192 },
      },
      "qwen3.5-397b-a17b": {
        id: "qwen3.5-397b-a17b",
        name: "Qwen3.5 397B A17B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-22",
        last_updated: "2026-02-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 64000 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 1048576, output: 64000 },
      },
      "claude-3.5-haiku": {
        id: "claude-3.5-haiku",
        name: "Claude 3.5 Haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 8192 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "gpt-oss-120b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-v3-0324": {
        id: "deepseek-v3-0324",
        name: "DeepSeek-V3-0324",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 16000 },
      },
      "doubao-1.5-pro-32k": {
        id: "doubao-1.5-pro-32k",
        name: "Doubao 1.5 Pro 32k",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 12000 },
      },
      "qwen3-30b-a3b-instruct-2507": {
        id: "qwen3-30b-a3b-instruct-2507",
        name: "Qwen3 30b A3b Instruct 2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-04",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "qwen2.5-vl-72b-instruct": {
        id: "qwen2.5-vl-72b-instruct",
        name: "Qwen 2.5 VL 72B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 8192 },
      },
      "qwen3-235b-a22b": {
        id: "qwen3-235b-a22b",
        name: "Qwen 3 235B A22B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "doubao-seed-2.0-lite": {
        id: "doubao-seed-2.0-lite",
        name: "Doubao Seed 2.0 Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "claude-4.1-opus": {
        id: "claude-4.1-opus",
        name: "Claude 4.1 Opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 32000 },
      },
      "doubao-1.5-thinking-pro": {
        id: "doubao-1.5-thinking-pro",
        name: "Doubao 1.5 Thinking Pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 16000 },
      },
      "gemini-2.5-flash-image": {
        id: "gemini-2.5-flash-image",
        name: "Gemini 2.5 Flash Image",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-10-22",
        last_updated: "2025-10-22",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 32768, output: 8192 },
      },
      "MiniMax-M1": {
        id: "MiniMax-M1",
        name: "MiniMax M1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 1000000, output: 80000 },
      },
      "doubao-seed-1.6-flash": {
        id: "doubao-seed-1.6-flash",
        name: "Doubao-Seed 1.6 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-15",
        last_updated: "2025-08-15",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "qwen3-vl-30b-a3b-thinking": {
        id: "qwen3-vl-30b-a3b-thinking",
        name: "Qwen3-Vl 30b A3b Thinking",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-09",
        last_updated: "2026-02-09",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "doubao-seed-2.0-code": {
        id: "doubao-seed-2.0-code",
        name: "Doubao Seed 2.0 Code",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 128000 },
      },
      "qwen3-30b-a3b-thinking-2507": {
        id: "qwen3-30b-a3b-thinking-2507",
        name: "Qwen3 30b A3b Thinking 2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-04",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 126000, output: 32000 },
      },
      "claude-4.5-opus": {
        id: "claude-4.5-opus",
        name: "Claude 4.5 Opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 200000 },
      },
      "qwen3-235b-a22b-thinking-2507": {
        id: "qwen3-235b-a22b-thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 262144, output: 4096 },
      },
      "gemini-2.0-flash-lite": {
        id: "gemini-2.0-flash-lite",
        name: "Gemini 2.0 Flash Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 1048576, output: 8192 },
      },
      "qwen3-next-80b-a3b-instruct": {
        id: "qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 131072, output: 32768 },
      },
      "gemini-3.0-flash-preview": {
        id: "gemini-3.0-flash-preview",
        name: "Gemini 3.0 Flash Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        limit: { context: 1000000, output: 64000 },
      },
      "qwen3-max": {
        id: "qwen3-max",
        name: "Qwen3 Max",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 262144, output: 65536 },
      },
      "qwen3-30b-a3b": {
        id: "qwen3-30b-a3b",
        name: "Qwen3 30B A3B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 40000, output: 4096 },
      },
      "gpt-oss-20b": {
        id: "gpt-oss-20b",
        name: "gpt-oss-20b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 4096 },
      },
      "kling-v2-6": {
        id: "kling-v2-6",
        name: "Kling-V2 6",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01-13",
        last_updated: "2026-01-13",
        modalities: { input: ["text", "image", "video"], output: ["video"] },
        open_weights: false,
        limit: { context: 99999999, output: 99999999 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.0-flash": {
        id: "gemini-2.0-flash",
        name: "Gemini 2.0 Flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 1048576, output: 8192 },
      },
      "qwen-max-2025-01-25": {
        id: "qwen-max-2025-01-25",
        name: "Qwen2.5-Max-2025-01-25",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 4096 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "Xiaomi/Mimo-V2-Flash",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-26",
        last_updated: "2025-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 256000 },
      },
      "stepfun/step-3.5-flash": {
        id: "stepfun/step-3.5-flash",
        name: "Stepfun/Step-3.5 Flash",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 64000, output: 4096 },
      },
      "deepseek/deepseek-v3.2-exp-thinking": {
        id: "deepseek/deepseek-v3.2-exp-thinking",
        name: "DeepSeek/DeepSeek-V3.2-Exp-Thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "deepseek/deepseek-v3.1-terminus": {
        id: "deepseek/deepseek-v3.1-terminus",
        name: "DeepSeek/DeepSeek-V3.1-Terminus",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "deepseek/deepseek-v3.2-251201": {
        id: "deepseek/deepseek-v3.2-251201",
        name: "Deepseek/DeepSeek-V3.2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "deepseek/deepseek-math-v2": {
        id: "deepseek/deepseek-math-v2",
        name: "Deepseek/Deepseek-Math-V2",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-04",
        last_updated: "2025-12-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 160000, output: 160000 },
      },
      "deepseek/deepseek-v3.2-exp": {
        id: "deepseek/deepseek-v3.2-exp",
        name: "DeepSeek/DeepSeek-V3.2-Exp",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "deepseek/deepseek-v3.1-terminus-thinking": {
        id: "deepseek/deepseek-v3.1-terminus-thinking",
        name: "DeepSeek/DeepSeek-V3.1-Terminus-Thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 32000 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 0905",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-08",
        last_updated: "2025-09-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 100000 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Moonshotai/Kimi-K2.5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-01-28",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 256000 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-07",
        last_updated: "2025-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 100000 },
      },
      "z-ai/autoglm-phone-9b": {
        id: "z-ai/autoglm-phone-9b",
        name: "Z-Ai/Autoglm Phone 9b",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 12800, output: 4096 },
      },
      "z-ai/glm-5": {
        id: "z-ai/glm-5",
        name: "Z-Ai/GLM 5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 128000 },
      },
      "z-ai/glm-4.6": {
        id: "z-ai/glm-4.6",
        name: "Z-AI/GLM 4.6",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2025-10-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 200000 },
      },
      "z-ai/glm-4.7": {
        id: "z-ai/glm-4.7",
        name: "Z-Ai/GLM 4.7",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 200000 },
      },
      "stepfun-ai/gelab-zero-4b-preview": {
        id: "stepfun-ai/gelab-zero-4b-preview",
        name: "Stepfun-Ai/Gelab Zero 4b Preview",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 8192, output: 4096 },
      },
      "meituan/longcat-flash-lite": {
        id: "meituan/longcat-flash-lite",
        name: "Meituan/Longcat-Flash-Lite",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 320000 },
      },
      "meituan/longcat-flash-chat": {
        id: "meituan/longcat-flash-chat",
        name: "Meituan/Longcat-Flash-Chat",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-05",
        last_updated: "2025-11-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 131072, output: 131072 },
      },
      "x-ai/grok-4-fast-reasoning": {
        id: "x-ai/grok-4-fast-reasoning",
        name: "X-Ai/Grok-4-Fast-Reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 2000000 },
      },
      "x-ai/grok-code-fast-1": {
        id: "x-ai/grok-code-fast-1",
        name: "x-AI/Grok-Code-Fast 1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-02",
        last_updated: "2025-09-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 10000 },
      },
      "x-ai/grok-4.1-fast-reasoning": {
        id: "x-ai/grok-4.1-fast-reasoning",
        name: "X-Ai/Grok 4.1 Fast Reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-19",
        last_updated: "2025-12-19",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 20000000, output: 2000000 },
      },
      "x-ai/grok-4-fast": {
        id: "x-ai/grok-4-fast",
        name: "x-AI/Grok-4-Fast",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-20",
        last_updated: "2025-09-20",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 2000000 },
      },
      "x-ai/grok-4.1-fast-non-reasoning": {
        id: "x-ai/grok-4.1-fast-non-reasoning",
        name: "X-Ai/Grok 4.1 Fast Non Reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-19",
        last_updated: "2025-12-19",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 2000000 },
      },
      "x-ai/grok-4.1-fast": {
        id: "x-ai/grok-4.1-fast",
        name: "x-AI/Grok-4.1-Fast",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 2000000 },
      },
      "x-ai/grok-4-fast-non-reasoning": {
        id: "x-ai/grok-4-fast-non-reasoning",
        name: "X-Ai/Grok-4-Fast-Non-Reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 2000000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "OpenAI/GPT-5.2",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "OpenAI/GPT-5",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 400000, output: 128000 },
      },
      "minimax/minimax-m2.5-highspeed": {
        id: "minimax/minimax-m2.5-highspeed",
        name: "Minimax/Minimax-M2.5 Highspeed",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 204800, output: 128000 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "Minimax/Minimax-M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 204800, output: 128000 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "Minimax/Minimax-M2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-10-28",
        last_updated: "2025-10-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 128000 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "Minimax/Minimax-M2.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 204800, output: 128000 },
      },
    },
  },
  "ollama-cloud": {
    id: "ollama-cloud",
    env: ["OLLAMA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://ollama.com/v1",
    name: "Ollama Cloud",
    doc: "https://docs.ollama.com/cloud",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "glm-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 202752, output: 131072 },
      },
      "qwen3-coder:480b": {
        id: "qwen3-coder:480b",
        name: "qwen3-coder:480b",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-07-22",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 65536 },
      },
      "nemotron-3-nano:30b": {
        id: "nemotron-3-nano:30b",
        name: "nemotron-3-nano:30b",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-12-15",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 1048576, output: 131072 },
      },
      "ministral-3:8b": {
        id: "ministral-3:8b",
        name: "ministral-3:8b",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2024-12-01",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 128000 },
      },
      "qwen3-coder-next": {
        id: "qwen3-coder-next",
        name: "qwen3-coder-next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2026-02-02",
        last_updated: "2026-02-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 65536 },
      },
      "gpt-oss:120b": {
        id: "gpt-oss:120b",
        name: "gpt-oss:120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-08-05",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 131072, output: 32768 },
      },
      "devstral-2:123b": {
        id: "devstral-2:123b",
        name: "devstral-2:123b",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-09",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "glm-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-09-29",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 202752, output: 131072 },
      },
      "qwen3-vl:235b-instruct": {
        id: "qwen3-vl:235b-instruct",
        name: "qwen3-vl:235b-instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2025-09-22",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 131072 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "gemini-3-flash-preview",
        family: "gemini-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 1048576, output: 65536 },
      },
      "minimax-m2.1": {
        id: "minimax-m2.1",
        name: "minimax-m2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-12-23",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 204800, output: 131072 },
      },
      "ministral-3:14b": {
        id: "ministral-3:14b",
        name: "ministral-3:14b",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2024-12-01",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 128000 },
      },
      "qwen3-next:80b": {
        id: "qwen3-next:80b",
        name: "qwen3-next:80b",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-09-15",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 32768 },
      },
      "kimi-k2:1t": {
        id: "kimi-k2:1t",
        name: "kimi-k2:1t",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        knowledge: "2024-10",
        release_date: "2025-07-11",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "gemma3:12b": {
        id: "gemma3:12b",
        name: "gemma3:12b",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        release_date: "2024-12-01",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 131072, output: 131072 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "kimi-k2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "gpt-oss:20b": {
        id: "gpt-oss:20b",
        name: "gpt-oss:20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-08-05",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 131072, output: 32768 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "deepseek-v3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-06-15",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 163840, output: 65536 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "glm-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-12-22",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 202752, output: 131072 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "kimi-k2-thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "ministral-3:3b": {
        id: "ministral-3:3b",
        name: "ministral-3:3b",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2024-10-22",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 128000 },
      },
      "qwen3.5:397b": {
        id: "qwen3.5:397b",
        name: "qwen3.5:397b",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        release_date: "2026-02-15",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 81920 },
      },
      "gemma3:27b": {
        id: "gemma3:27b",
        name: "gemma3:27b",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        release_date: "2025-07-27",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 131072, output: 131072 },
      },
      "minimax-m2": {
        id: "minimax-m2",
        name: "minimax-m2",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-10-23",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 204800, output: 128000 },
      },
      "minimax-m2.5": {
        id: "minimax-m2.5",
        name: "minimax-m2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        knowledge: "2025-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 204800, output: 131072 },
      },
      "devstral-small-2:24b": {
        id: "devstral-small-2:24b",
        name: "devstral-small-2:24b",
        family: "devstral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-09",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "nemotron-3-super": {
        id: "nemotron-3-super",
        name: "nemotron-3-super",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 65536 },
      },
      "cogito-2.1:671b": {
        id: "cogito-2.1:671b",
        name: "cogito-2.1:671b",
        family: "cogito",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-11-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 163840, output: 32000 },
      },
      "gemma3:4b": {
        id: "gemma3:4b",
        name: "gemma3:4b",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        release_date: "2024-12-01",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-v3.1:671b": {
        id: "deepseek-v3.1:671b",
        name: "deepseek-v3.1:671b",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        release_date: "2025-08-21",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 163840, output: 163840 },
      },
      "mistral-large-3:675b": {
        id: "mistral-large-3:675b",
        name: "mistral-large-3:675b",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-02",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 262144 },
      },
      "rnj-1:8b": {
        id: "rnj-1:8b",
        name: "rnj-1:8b",
        family: "rnj",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-06",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 32768, output: 4096 },
      },
      "qwen3-vl:235b": {
        id: "qwen3-vl:235b",
        name: "qwen3-vl:235b",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2025-09-22",
        last_updated: "2026-01-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 262144, output: 32768 },
      },
    },
  },
  scaleway: {
    id: "scaleway",
    env: ["SCALEWAY_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.scaleway.ai/v1",
    name: "Scaleway",
    doc: "https://www.scaleway.com/en/docs/generative-apis/",
    models: {
      "voxtral-small-24b-2507": {
        id: "voxtral-small-24b-2507",
        name: "Voxtral Small 24B 2507",
        family: "voxtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.35 },
        limit: { context: 32000, output: 8192 },
      },
      "qwen3-235b-a22b-instruct-2507": {
        id: "qwen3-235b-a22b-instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 2.25 },
        limit: { context: 260000, output: 8192 },
      },
      "llama-3.3-70b-instruct": {
        id: "llama-3.3-70b-instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 0.9 },
        limit: { context: 100000, output: 4096 },
      },
      "mistral-small-3.2-24b-instruct-2506": {
        id: "mistral-small-3.2-24b-instruct-2506",
        name: "Mistral Small 3.2 24B Instruct (2506)",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.35 },
        limit: { context: 128000, output: 8192 },
      },
      "bge-multilingual-gemma2": {
        id: "bge-multilingual-gemma2",
        name: "BGE Multilingual Gemma2",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-07-26",
        last_updated: "2025-06-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0 },
        limit: { context: 8191, output: 3072 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "GPT-OSS 120B",
        family: "gpt-oss",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-01-01",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 0.9 },
        limit: { context: 32000, output: 4096 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3-Coder 30B-A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 128000, output: 8192 },
      },
      "whisper-large-v3": {
        id: "whisper-large-v3",
        name: "Whisper Large v3",
        family: "whisper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2023-09-01",
        last_updated: "2025-09-05",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.003, output: 0 },
        limit: { context: 0, output: 4096 },
      },
      "llama-3.1-8b-instruct": {
        id: "llama-3.1-8b-instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, output: 16384 },
      },
      "devstral-2-123b-instruct-2512": {
        id: "devstral-2-123b-instruct-2512",
        name: "Devstral 2 123B Instruct (2512)",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-07",
        last_updated: "2026-01-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 256000, output: 8192 },
      },
      "pixtral-12b-2409": {
        id: "pixtral-12b-2409",
        name: "Pixtral 12B 2409",
        family: "pixtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, output: 4096 },
      },
      "mistral-nemo-instruct-2407": {
        id: "mistral-nemo-instruct-2407",
        name: "Mistral Nemo Instruct 2407",
        family: "mistral-nemo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-25",
        last_updated: "2024-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, output: 8192 },
      },
      "gemma-3-27b-it": {
        id: "gemma-3-27b-it",
        name: "Gemma-3-27B-IT",
        family: "gemma",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.5 },
        limit: { context: 40000, output: 8192 },
      },
    },
  },
  "cloudflare-ai-gateway": {
    id: "cloudflare-ai-gateway",
    env: ["CLOUDFLARE_API_TOKEN", "CLOUDFLARE_ACCOUNT_ID", "CLOUDFLARE_GATEWAY_ID"],
    npm: "ai-gateway-provider",
    name: "Cloudflare AI Gateway",
    doc: "https://developers.cloudflare.com/ai-gateway/",
    models: {
      "workers-ai/@cf/ibm-granite/granite-4.0-h-micro": {
        id: "workers-ai/@cf/ibm-granite/granite-4.0-h-micro",
        name: "IBM Granite 4.0 H Micro",
        family: "granite",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.017, output: 0.11 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/baai/bge-small-en-v1.5": {
        id: "workers-ai/@cf/baai/bge-small-en-v1.5",
        name: "BGE Small EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/baai/bge-large-en-v1.5": {
        id: "workers-ai/@cf/baai/bge-large-en-v1.5",
        name: "BGE Large EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/baai/bge-reranker-base": {
        id: "workers-ai/@cf/baai/bge-reranker-base",
        name: "BGE Reranker Base",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-09",
        last_updated: "2025-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0031, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/baai/bge-m3": {
        id: "workers-ai/@cf/baai/bge-m3",
        name: "BGE M3",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.012, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/baai/bge-base-en-v1.5": {
        id: "workers-ai/@cf/baai/bge-base-en-v1.5",
        name: "BGE Base EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.067, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/pfnet/plamo-embedding-1b": {
        id: "workers-ai/@cf/pfnet/plamo-embedding-1b",
        name: "PLaMo Embedding 1B",
        family: "plamo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.019, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b": {
        id: "workers-ai/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b",
        name: "DeepSeek R1 Distill Qwen 32B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 4.88 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/facebook/bart-large-cnn": {
        id: "workers-ai/@cf/facebook/bart-large-cnn",
        name: "BART Large CNN",
        family: "bart",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-09",
        last_updated: "2025-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/mistral/mistral-7b-instruct-v0.1": {
        id: "workers-ai/@cf/mistral/mistral-7b-instruct-v0.1",
        name: "Mistral 7B Instruct v0.1",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.19 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/myshell-ai/melotts": {
        id: "workers-ai/@cf/myshell-ai/melotts",
        name: "MyShell MeloTTS",
        family: "melotts",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/pipecat-ai/smart-turn-v2": {
        id: "workers-ai/@cf/pipecat-ai/smart-turn-v2",
        name: "Pipecat Smart Turn v2",
        family: "smart-turn",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/google/gemma-3-12b-it": {
        id: "workers-ai/@cf/google/gemma-3-12b-it",
        name: "Gemma 3 12B IT",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/qwen/qwq-32b": {
        id: "workers-ai/@cf/qwen/qwq-32b",
        name: "QwQ 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.66, output: 1 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/qwen/qwen3-30b-a3b-fp8": {
        id: "workers-ai/@cf/qwen/qwen3-30b-a3b-fp8",
        name: "Qwen3 30B A3B FP8",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/qwen/qwen2.5-coder-32b-instruct": {
        id: "workers-ai/@cf/qwen/qwen2.5-coder-32b-instruct",
        name: "Qwen 2.5 Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.66, output: 1 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/qwen/qwen3-embedding-0.6b": {
        id: "workers-ai/@cf/qwen/qwen3-embedding-0.6b",
        name: "Qwen3 Embedding 0.6B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.012, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.1-8b-instruct-fp8": {
        id: "workers-ai/@cf/meta/llama-3.1-8b-instruct-fp8",
        name: "Llama 3.1 8B Instruct FP8",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.29 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3-8b-instruct-awq": {
        id: "workers-ai/@cf/meta/llama-3-8b-instruct-awq",
        name: "Llama 3 8B Instruct AWQ",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0.27 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.1-8b-instruct-awq": {
        id: "workers-ai/@cf/meta/llama-3.1-8b-instruct-awq",
        name: "Llama 3.1 8B Instruct AWQ",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0.27 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-4-scout-17b-16e-instruct": {
        id: "workers-ai/@cf/meta/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.85 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.2-11b-vision-instruct": {
        id: "workers-ai/@cf/meta/llama-3.2-11b-vision-instruct",
        name: "Llama 3.2 11B Vision Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049, output: 0.68 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.2-3b-instruct": {
        id: "workers-ai/@cf/meta/llama-3.2-3b-instruct",
        name: "Llama 3.2 3B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-guard-3-8b": {
        id: "workers-ai/@cf/meta/llama-guard-3-8b",
        name: "Llama Guard 3 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.48, output: 0.03 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.2-1b-instruct": {
        id: "workers-ai/@cf/meta/llama-3.2-1b-instruct",
        name: "Llama 3.2 1B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.027, output: 0.2 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.3-70b-instruct-fp8-fast": {
        id: "workers-ai/@cf/meta/llama-3.3-70b-instruct-fp8-fast",
        name: "Llama 3.3 70B Instruct FP8 Fast",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 2.25 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3.1-8b-instruct": {
        id: "workers-ai/@cf/meta/llama-3.1-8b-instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.8299999999999998 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/m2m100-1.2b": {
        id: "workers-ai/@cf/meta/m2m100-1.2b",
        name: "M2M100 1.2B",
        family: "m2m",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.34, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-2-7b-chat-fp16": {
        id: "workers-ai/@cf/meta/llama-2-7b-chat-fp16",
        name: "Llama 2 7B Chat FP16",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 6.67 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/meta/llama-3-8b-instruct": {
        id: "workers-ai/@cf/meta/llama-3-8b-instruct",
        name: "Llama 3 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.83 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/mistralai/mistral-small-3.1-24b-instruct": {
        id: "workers-ai/@cf/mistralai/mistral-small-3.1-24b-instruct",
        name: "Mistral Small 3.1 24B Instruct",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/deepgram/aura-2-es": {
        id: "workers-ai/@cf/deepgram/aura-2-es",
        name: "Deepgram Aura 2 (ES)",
        family: "aura",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/deepgram/nova-3": {
        id: "workers-ai/@cf/deepgram/nova-3",
        name: "Deepgram Nova 3",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/deepgram/aura-2-en": {
        id: "workers-ai/@cf/deepgram/aura-2-en",
        name: "Deepgram Aura 2 (EN)",
        family: "aura",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/openai/gpt-oss-120b": {
        id: "workers-ai/@cf/openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.75 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/openai/gpt-oss-20b": {
        id: "workers-ai/@cf/openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/ai4bharat/indictrans2-en-indic-1B": {
        id: "workers-ai/@cf/ai4bharat/indictrans2-en-indic-1B",
        name: "IndicTrans2 EN-Indic 1B",
        family: "indictrans",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.34, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/huggingface/distilbert-sst-2-int8": {
        id: "workers-ai/@cf/huggingface/distilbert-sst-2-int8",
        name: "DistilBERT SST-2 INT8",
        family: "distilbert",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.026, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "workers-ai/@cf/aisingapore/gemma-sea-lion-v4-27b-it": {
        id: "workers-ai/@cf/aisingapore/gemma-sea-lion-v4-27b-it",
        name: "Gemma SEA-LION v4 27B IT",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "ai-gateway-provider" },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "ai-gateway-provider" },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "o1",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-3.5-turbo": {
        id: "openai/gpt-3.5-turbo",
        name: "GPT-3.5-turbo",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2021-09-01",
        release_date: "2023-03-01",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5, cache_read: 1.25 },
        limit: { context: 16385, output: 4096 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o3-pro": {
        id: "openai/o3-pro",
        name: "o3-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-06-10",
        last_updated: "2025-06-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 80 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo": {
        id: "openai/gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 1050000, input: 922000, output: 128000 },
        provider: { npm: "ai-gateway-provider" },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4": {
        id: "openai/gpt-4",
        name: "GPT-4",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 60 },
        limit: { context: 8192, output: 8192 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "anthropic/claude-3.5-sonnet": {
        id: "anthropic/claude-3.5-sonnet",
        name: "Claude Sonnet 3.5 v2",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-opus-4-1": {
        id: "anthropic/claude-opus-4-1",
        name: "Claude Opus 4.1 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-3-sonnet": {
        id: "anthropic/claude-3-sonnet",
        name: "Claude Sonnet 3",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-04",
        last_updated: "2024-03-04",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-3-5-haiku": {
        id: "anthropic/claude-3-5-haiku",
        name: "Claude Haiku 3.5 (latest)",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-opus-4-6": {
        id: "anthropic/claude-opus-4-6",
        name: "Claude Opus 4.6 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-3-haiku": {
        id: "anthropic/claude-3-haiku",
        name: "Claude Haiku 3",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-13",
        last_updated: "2024-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-sonnet-4-6": {
        id: "anthropic/claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 64000 },
        provider: { npm: "ai-gateway-provider" },
      },
      "anthropic/claude-3.5-haiku": {
        id: "anthropic/claude-3.5-haiku",
        name: "Claude Haiku 3.5 (latest)",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude Opus 4 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-haiku-4-5": {
        id: "anthropic/claude-haiku-4-5",
        name: "Claude Haiku 4.5 (latest)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4-5": {
        id: "anthropic/claude-opus-4-5",
        name: "Claude Opus 4.5 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3-opus": {
        id: "anthropic/claude-3-opus",
        name: "Claude Opus 3",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-02-29",
        last_updated: "2024-02-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4 (latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4-5": {
        id: "anthropic/claude-sonnet-4-5",
        name: "Claude Sonnet 4.5 (latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  "kuae-cloud-coding-plan": {
    id: "kuae-cloud-coding-plan",
    env: ["KUAE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://coding-plan-endpoint.kuaecloud.net/v1",
    name: "KUAE Cloud Coding Plan",
    doc: "https://docs.mthreads.com/kuaecloud/kuaecloud-doc-online/coding_plan/",
    models: {
      "GLM-4.7": {
        id: "GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  upstage: {
    id: "upstage",
    env: ["UPSTAGE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.upstage.ai/v1/solar",
    name: "Upstage",
    doc: "https://developers.upstage.ai/docs/apis/chat",
    models: {
      "solar-pro2": {
        id: "solar-pro2",
        name: "solar-pro2",
        family: "solar-pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.25 },
        limit: { context: 65536, output: 8192 },
      },
      "solar-mini": {
        id: "solar-mini",
        name: "solar-mini",
        family: "solar-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-06-12",
        last_updated: "2025-04-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 32768, output: 4096 },
      },
      "solar-pro3": {
        id: "solar-pro3",
        name: "solar-pro3",
        family: "solar-pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.25 },
        limit: { context: 131072, output: 8192 },
      },
    },
  },
  inception: {
    id: "inception",
    env: ["INCEPTION_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.inceptionlabs.ai/v1/",
    name: "Inception",
    doc: "https://platform.inceptionlabs.ai/docs",
    models: {
      "mercury-2": {
        id: "mercury-2",
        name: "Mercury 2",
        family: "mercury",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01-01",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 50000 },
      },
      mercury: {
        id: "mercury",
        name: "Mercury",
        family: "mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-06-26",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1, cache_read: 0.25, cache_write: 1 },
        limit: { context: 128000, output: 16384 },
      },
      "mercury-edit": {
        id: "mercury-edit",
        name: "Mercury Edit",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 8192 },
      },
      "mercury-coder": {
        id: "mercury-coder",
        name: "Mercury Coder",
        family: "mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-02-26",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1, cache_read: 0.25, cache_write: 1 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  submodel: {
    id: "submodel",
    env: ["SUBMODEL_INSTAGEN_ACCESS_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://llm.submodel.ai/v1",
    name: "submodel",
    doc: "https://submodel.gitbook.io",
    models: {
      "zai-org/GLM-4.5-Air": {
        id: "zai-org/GLM-4.5-Air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.5 },
        limit: { context: 131072, output: 131072 },
      },
      "zai-org/GLM-4.5-FP8": {
        id: "zai-org/GLM-4.5-FP8",
        name: "GLM 4.5 FP8",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.15 },
        limit: { context: 75000, output: 163840 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 75000, output: 163840 },
      },
      "deepseek-ai/DeepSeek-V3-0324": {
        id: "deepseek-ai/DeepSeek-V3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 75000, output: 163840 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262144, output: 131072 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.3 },
        limit: { context: 262144, output: 131072 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-23",
        last_updated: "2025-08-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.5 },
        limit: { context: 131072, output: 32768 },
      },
    },
  },
  "minimax-cn-coding-plan": {
    id: "minimax-cn-coding-plan",
    env: ["MINIMAX_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimaxi.com/anthropic/v1",
    name: "MiniMax Coding Plan (minimaxi.com)",
    doc: "https://platform.minimaxi.com/docs/coding-plan/intro",
    models: {
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 196608, output: 128000 },
      },
      "MiniMax-M2.5-highspeed": {
        id: "MiniMax-M2.5-highspeed",
        name: "MiniMax-M2.5-highspeed",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  "novita-ai": {
    id: "novita-ai",
    env: ["NOVITA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.novita.ai/openai",
    name: "NovitaAI",
    doc: "https://novita.ai/docs/guides/introduction",
    models: {
      "zai-org/glm-5": {
        id: "zai-org/glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 202800, output: 131072 },
      },
      "zai-org/glm-4.5-air": {
        id: "zai-org/glm-4.5-air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-10-13",
        last_updated: "2025-10-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.85 },
        limit: { context: 131072, output: 98304 },
      },
      "zai-org/glm-4.5": {
        id: "zai-org/glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11 },
        limit: { context: 131072, output: 98304 },
      },
      "zai-org/glm-4.7-flash": {
        id: "zai-org/glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4, cache_read: 0.01 },
        limit: { context: 200000, output: 128000 },
      },
      "zai-org/glm-4.6": {
        id: "zai-org/glm-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2, cache_read: 0.11 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/glm-4.7": {
        id: "zai-org/glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/autoglm-phone-9b-multilingual": {
        id: "zai-org/autoglm-phone-9b-multilingual",
        name: "AutoGLM-Phone-9B-Multilingual",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-12-10",
        last_updated: "2025-12-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.035, output: 0.138 },
        limit: { context: 65536, output: 65536 },
      },
      "zai-org/glm-4.5v": {
        id: "zai-org/glm-4.5v",
        name: "GLM 4.5V",
        family: "glmv",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "video", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8, cache_read: 0.11 },
        limit: { context: 65536, output: 16384 },
      },
      "zai-org/glm-4.6v": {
        id: "zai-org/glm-4.6v",
        name: "GLM 4.6V",
        family: "glmv",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "video", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9, cache_read: 0.055 },
        limit: { context: 131072, output: 32768 },
      },
      "microsoft/wizardlm-2-8x22b": {
        id: "microsoft/wizardlm-2-8x22b",
        name: "Wizardlm 2 8x22B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-24",
        last_updated: "2024-04-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.62, output: 0.62 },
        limit: { context: 65535, output: 8000 },
      },
      "minimaxai/minimax-m1-80k": {
        id: "minimaxai/minimax-m1-80k",
        name: "MiniMax M1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 1000000, output: 40000 },
      },
      "skywork/r1v4-lite": {
        id: "skywork/r1v4-lite",
        name: "Skywork R1V4-Lite",
        family: "skywork",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262144, output: 65536 },
      },
      "gryphe/mythomax-l2-13b": {
        id: "gryphe/mythomax-l2-13b",
        name: "Mythomax L2 13B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-25",
        last_updated: "2024-04-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.09 },
        limit: { context: 4096, output: 3200 },
      },
      "paddlepaddle/paddleocr-vl": {
        id: "paddlepaddle/paddleocr-vl",
        name: "PaddleOCR-VL",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-22",
        last_updated: "2025-10-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.02 },
        limit: { context: 16384, output: 16384 },
      },
      "baichuan/baichuan-m2-32b": {
        id: "baichuan/baichuan-m2-32b",
        name: "baichuan-m2-32b",
        family: "baichuan",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-08-13",
        last_updated: "2025-08-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.07 },
        limit: { context: 131072, output: 131072 },
      },
      "kwaipilot/kat-coder-pro": {
        id: "kwaipilot/kat-coder-pro",
        name: "Kat Coder Pro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-05",
        last_updated: "2026-01-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.06 },
        limit: { context: 256000, output: 128000 },
      },
      "kwaipilot/kat-coder": {
        id: "kwaipilot/kat-coder",
        name: "KAT-Coder-Pro V1(Free)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "deepseek/deepseek-v3-turbo": {
        id: "deepseek/deepseek-v3-turbo",
        name: "DeepSeek V3 (Turbo)\t",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.3 },
        limit: { context: 64000, output: 16000 },
      },
      "deepseek/deepseek-prover-v2-671b": {
        id: "deepseek/deepseek-prover-v2-671b",
        name: "Deepseek Prover V2 671B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-04-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.5 },
        limit: { context: 160000, output: 160000 },
      },
      "deepseek/deepseek-r1-turbo": {
        id: "deepseek/deepseek-r1-turbo",
        name: "DeepSeek R1 (Turbo)\t",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.5 },
        limit: { context: 64000, output: 16000 },
      },
      "deepseek/deepseek-ocr-2": {
        id: "deepseek/deepseek-ocr-2",
        name: "deepseek/deepseek-ocr-2",
        attachment: true,
        reasoning: false,
        tool_call: false,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.03 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek/deepseek-v3.1": {
        id: "deepseek/deepseek-v3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1, cache_read: 0.135 },
        limit: { context: 131072, output: 32768 },
      },
      "deepseek/deepseek-r1-0528": {
        id: "deepseek/deepseek-r1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.5, cache_read: 0.35 },
        limit: { context: 163840, output: 32768 },
      },
      "deepseek/deepseek-r1-0528-qwen3-8b": {
        id: "deepseek/deepseek-r1-0528-qwen3-8b",
        name: "DeepSeek R1 0528 Qwen3 8B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-05-29",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.09 },
        limit: { context: 128000, output: 32000 },
      },
      "deepseek/deepseek-r1-distill-llama-70b": {
        id: "deepseek/deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill LLama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 0.8 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek/deepseek-v3-0324": {
        id: "deepseek/deepseek-v3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1.12, cache_read: 0.135 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-v3.1-terminus": {
        id: "deepseek/deepseek-v3.1-terminus",
        name: "Deepseek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1, cache_read: 0.135 },
        limit: { context: 131072, output: 32768 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "Deepseek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.269, output: 0.4, cache_read: 0.1345 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-ocr": {
        id: "deepseek/deepseek-ocr",
        name: "DeepSeek-OCR",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-24",
        last_updated: "2025-10-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.03 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek/deepseek-v3.2-exp": {
        id: "deepseek/deepseek-v3.2-exp",
        name: "Deepseek V3.2 Exp",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 163840, output: 65536 },
      },
      "moonshotai/kimi-k2-instruct": {
        id: "moonshotai/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.57, output: 2.3 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-11-07",
        last_updated: "2025-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 262144 },
      },
      "baidu/ernie-4.5-vl-28b-a3b-thinking": {
        id: "baidu/ernie-4.5-vl-28b-a3b-thinking",
        name: "ERNIE-4.5-VL-28B-A3B-Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-11-26",
        last_updated: "2025-11-26",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.39, output: 0.39 },
        limit: { context: 131072, output: 65536 },
      },
      "baidu/ernie-4.5-vl-424b-a47b": {
        id: "baidu/ernie-4.5-vl-424b-a47b",
        name: "ERNIE 4.5 VL 424B A47B",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.42, output: 1.25 },
        limit: { context: 123000, output: 16000 },
      },
      "baidu/ernie-4.5-vl-28b-a3b": {
        id: "baidu/ernie-4.5-vl-28b-a3b",
        name: "ERNIE 4.5 VL 28B A3B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.4, output: 5.6 },
        limit: { context: 30000, output: 8000 },
      },
      "baidu/ernie-4.5-300b-a47b-paddle": {
        id: "baidu/ernie-4.5-300b-a47b-paddle",
        name: "ERNIE 4.5 300B A47B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 123000, output: 12000 },
      },
      "baidu/ernie-4.5-21B-a3b": {
        id: "baidu/ernie-4.5-21B-a3b",
        name: "ERNIE 4.5 21B A3B",
        family: "ernie",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 120000, output: 8000 },
      },
      "baidu/ernie-4.5-21B-a3b-thinking": {
        id: "baidu/ernie-4.5-21B-a3b-thinking",
        name: "ERNIE-4.5-21B-A3B-Thinking",
        family: "ernie",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131072, output: 65536 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Gemma 3 27B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.119, output: 0.2 },
        limit: { context: 98304, output: 16384 },
      },
      "qwen/qwen3-4b-fp8": {
        id: "qwen/qwen3-4b-fp8",
        name: "Qwen3 4B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.03 },
        limit: { context: 128000, output: 20000 },
      },
      "qwen/qwen3-235b-a22b-instruct-2507": {
        id: "qwen/qwen3-235b-a22b-instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.58 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen/qwen3-32b-fp8": {
        id: "qwen/qwen3-32b-fp8",
        name: "Qwen3 32B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.45 },
        limit: { context: 40960, output: 20000 },
      },
      "qwen/qwen3-next-80b-a3b-thinking": {
        id: "qwen/qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-10",
        last_updated: "2025-09-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-coder-480b-a35b-instruct": {
        id: "qwen/qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.3 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-30b-a3b-fp8": {
        id: "qwen/qwen3-30b-a3b-fp8",
        name: "Qwen3 30B A3B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.45 },
        limit: { context: 40960, output: 20000 },
      },
      "qwen/qwen3-coder-next": {
        id: "qwen/qwen3-coder-next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-03",
        last_updated: "2026-02-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3.5-397b-a17b": {
        id: "qwen/qwen3.5-397b-a17b",
        name: "Qwen3.5-397B-A17B",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 262144, output: 64000 },
      },
      "qwen/qwen2.5-vl-72b-instruct": {
        id: "qwen/qwen2.5-vl-72b-instruct",
        name: "Qwen2.5 VL 72B Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 0.8 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3-coder-30b-a3b-instruct": {
        id: "qwen/qwen3-coder-30b-a3b-instruct",
        name: "Qwen3 Coder 30b A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-09",
        last_updated: "2025-10-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.27 },
        limit: { context: 160000, output: 32768 },
      },
      "qwen/qwen3-vl-235b-a22b-instruct": {
        id: "qwen/qwen3-vl-235b-a22b-instruct",
        name: "Qwen3 VL 235B A22B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen-mt-plus": {
        id: "qwen/qwen-mt-plus",
        name: "Qwen MT Plus",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-03",
        last_updated: "2025-09-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.75 },
        limit: { context: 16384, output: 8192 },
      },
      "qwen/qwen3-omni-30b-a3b-instruct": {
        id: "qwen/qwen3-omni-30b-a3b-instruct",
        name: "Qwen3 Omni 30B A3B Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "video", "audio", "image"], output: ["text", "audio"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.97, input_audio: 2.2, output_audio: 1.788 },
        limit: { context: 65536, output: 16384 },
      },
      "qwen/qwen-2.5-72b-instruct": {
        id: "qwen/qwen-2.5-72b-instruct",
        name: "Qwen 2.5 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-10-15",
        last_updated: "2024-10-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.38, output: 0.4 },
        limit: { context: 32000, output: 8192 },
      },
      "qwen/qwen3-vl-30b-a3b-thinking": {
        id: "qwen/qwen3-vl-30b-a3b-thinking",
        name: "qwen/qwen3-vl-30b-a3b-thinking",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2025-10-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-vl-235b-a22b-thinking": {
        id: "qwen/qwen3-vl-235b-a22b-thinking",
        name: "Qwen3 VL 235B A22B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.98, output: 3.95 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-235b-a22b-thinking-2507": {
        id: "qwen/qwen3-235b-a22b-thinking-2507",
        name: "Qwen3 235B A22b Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 3 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen2.5-7b-instruct": {
        id: "qwen/qwen2.5-7b-instruct",
        name: "Qwen2.5 7B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.07 },
        limit: { context: 32000, output: 32000 },
      },
      "qwen/qwen3-vl-30b-a3b-instruct": {
        id: "qwen/qwen3-vl-30b-a3b-instruct",
        name: "qwen/qwen3-vl-30b-a3b-instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2025-10-11",
        modalities: { input: ["text", "video", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.7 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-next-80b-a3b-instruct": {
        id: "qwen/qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-10",
        last_updated: "2025-09-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-235b-a22b-fp8": {
        id: "qwen/qwen3-235b-a22b-fp8",
        name: "Qwen3 235B A22B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 40960, output: 20000 },
      },
      "qwen/qwen3-vl-8b-instruct": {
        id: "qwen/qwen3-vl-8b-instruct",
        name: "qwen/qwen3-vl-8b-instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-17",
        last_updated: "2025-10-17",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.5 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-max": {
        id: "qwen/qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.11, output: 8.45 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-8b-fp8": {
        id: "qwen/qwen3-8b-fp8",
        name: "Qwen3 8B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.035, output: 0.138 },
        limit: { context: 128000, output: 20000 },
      },
      "qwen/qwen3-omni-30b-a3b-thinking": {
        id: "qwen/qwen3-omni-30b-a3b-thinking",
        name: "Qwen3 Omni 30B A3B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "audio", "video", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.97, input_audio: 2.2, output_audio: 1.788 },
        limit: { context: 65536, output: 16384 },
      },
      "meta-llama/llama-3.3-70b-instruct": {
        id: "meta-llama/llama-3.3-70b-instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-07",
        last_updated: "2024-12-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.135, output: 0.4 },
        limit: { context: 131072, output: 120000 },
      },
      "meta-llama/llama-4-scout-17b-16e-instruct": {
        id: "meta-llama/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-06",
        last_updated: "2025-04-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.18, output: 0.59 },
        limit: { context: 131072, output: 131072 },
      },
      "meta-llama/llama-3-70b-instruct": {
        id: "meta-llama/llama-3-70b-instruct",
        name: "Llama3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2024-04-25",
        last_updated: "2024-04-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.51, output: 0.74 },
        limit: { context: 8192, output: 8000 },
      },
      "meta-llama/llama-3.1-8b-instruct": {
        id: "meta-llama/llama-3.1-8b-instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-07-24",
        last_updated: "2024-07-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.05 },
        limit: { context: 16384, output: 16384 },
      },
      "meta-llama/llama-3-8b-instruct": {
        id: "meta-llama/llama-3-8b-instruct",
        name: "Llama 3 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-25",
        last_updated: "2024-04-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 8192, output: 8192 },
      },
      "meta-llama/llama-4-maverick-17b-128e-instruct-fp8": {
        id: "meta-llama/llama-4-maverick-17b-128e-instruct-fp8",
        name: "Llama 4 Maverick Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-06",
        last_updated: "2025-04-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.85 },
        limit: { context: 1048576, output: 8192 },
      },
      "mistralai/mistral-nemo": {
        id: "mistralai/mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-30",
        last_updated: "2024-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.17 },
        limit: { context: 60288, output: 16000 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "OpenAI GPT OSS 120B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.25 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "OpenAI: GPT OSS 20B",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.15 },
        limit: { context: 131072, output: 32768 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "Minimax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131100 },
      },
      "sao10k/l3-70b-euryale-v2.1": {
        id: "sao10k/l3-70b-euryale-v2.1",
        name: "L3 70B Euryale V2.1\t",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-06-18",
        last_updated: "2024-06-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.48, output: 1.48 },
        limit: { context: 8192, output: 8192 },
      },
      "sao10k/l31-70b-euryale-v2.2": {
        id: "sao10k/l31-70b-euryale-v2.2",
        name: "L31 70B Euryale V2.2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09-19",
        last_updated: "2024-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.48, output: 1.48 },
        limit: { context: 8192, output: 8192 },
      },
      "sao10k/l3-8b-lunaris": {
        id: "sao10k/l3-8b-lunaris",
        name: "Sao10k L3 8B Lunaris\t",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-28",
        last_updated: "2024-11-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.05 },
        limit: { context: 8192, output: 8192 },
      },
      "sao10k/L3-8B-Stheno-v3.2": {
        id: "sao10k/L3-8B-Stheno-v3.2",
        name: "L3 8B Stheno V3.2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-29",
        last_updated: "2024-11-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.05 },
        limit: { context: 8192, output: 32000 },
      },
      "xiaomimimo/mimo-v2-flash": {
        id: "xiaomimimo/mimo-v2-flash",
        name: "XiaomiMiMo/MiMo-V2-Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-19",
        last_updated: "2025-12-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.3 },
        limit: { context: 262144, output: 32000 },
      },
      "nousresearch/hermes-2-pro-llama-3-8b": {
        id: "nousresearch/hermes-2-pro-llama-3-8b",
        name: "Hermes 2 Pro Llama 3 8B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2024-06-27",
        last_updated: "2024-06-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.14 },
        limit: { context: 8192, output: 8192 },
      },
    },
  },
  opencode: {
    id: "opencode",
    env: ["OPENCODE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://opencode.ai/zen/v1",
    name: "OpenCode Zen",
    doc: "https://opencode.ai/docs/zen",
    models: {
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "kimi-k2": {
        id: "kimi-k2",
        name: "Kimi K2",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2.5, cache_read: 0.4 },
        limit: { context: 262144, output: 262144 },
        status: "deprecated",
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.07, output: 8.5, cache_read: 0.107 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "gemini-3.1-pro": {
        id: "gemini-3.1-pro",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
        provider: { npm: "@ai-sdk/google" },
      },
      "trinity-large-preview-free": {
        id: "trinity-large-preview-free",
        name: "Trinity Large Preview",
        family: "trinity",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-28",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
        status: "deprecated",
      },
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 204800, output: 131072 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1 Codex Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "kimi-k2.5-free": {
        id: "kimi-k2.5-free",
        name: "Kimi K2.5 Free",
        family: "kimi-free",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 262144, output: 262144 },
        status: "deprecated",
      },
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "grok-code": {
        id: "grok-code",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-20",
        last_updated: "2025-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 256000, output: 256000 },
        status: "deprecated",
      },
      "nemotron-3-super-free": {
        id: "nemotron-3-super-free",
        name: "Nemotron 3 Super Free",
        family: "nemotron-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2026-02",
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 1000000, output: 128000 },
      },
      "claude-3-5-haiku": {
        id: "claude-3-5-haiku",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 1000000, output: 128000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "mimo-v2-flash-free": {
        id: "mimo-v2-flash-free",
        name: "MiMo V2 Flash Free",
        family: "mimo-flash-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "gemini-3-flash": {
        id: "gemini-3-flash",
        name: "Gemini 3 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05 },
        limit: { context: 1048576, output: 65536 },
        provider: { npm: "@ai-sdk/google" },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.07, output: 8.5, cache_read: 0.107 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "gpt-5.3-codex-spark": {
        id: "gpt-5.3-codex-spark",
        name: "GPT-5.3 Codex Spark",
        family: "gpt-codex-spark",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, input: 128000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "qwen3-coder": {
        id: "qwen3-coder",
        name: "Qwen3 Coder",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 1.8 },
        limit: { context: 262144, output: 65536 },
        status: "deprecated",
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.1 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax-m2.1": {
        id: "minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.1 },
        limit: { context: 204800, output: 131072 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex Mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.08 },
        limit: { context: 262144, output: 65536 },
      },
      "minimax-m2.1-free": {
        id: "minimax-m2.1-free",
        name: "MiniMax M2.1 Free",
        family: "minimax-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 204800, output: 131072 },
        status: "deprecated",
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.07, output: 8.5, cache_read: 0.107 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.1 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-5-free": {
        id: "glm-5-free",
        name: "GLM-5 Free",
        family: "glm-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 204800, output: 131072 },
        status: "deprecated",
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2.5, cache_read: 0.4 },
        limit: { context: 262144, output: 262144 },
        status: "deprecated",
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 1050000, input: 922000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "gpt-5.4-pro": {
        id: "gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180, cache_read: 30 },
        limit: { context: 1050000, input: 922000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.07, output: 8.5, cache_read: 0.107 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
      "big-pickle": {
        id: "big-pickle",
        name: "Big Pickle",
        family: "big-pickle",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-10-17",
        last_updated: "2025-10-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 128000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "minimax-m2.5-free": {
        id: "minimax-m2.5-free",
        name: "MiniMax M2.5 Free",
        family: "minimax-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 204800, output: 131072 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "minimax-m2.5": {
        id: "minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.06 },
        limit: { context: 204800, output: 131072 },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "claude-sonnet-4": {
        id: "claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 64000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "glm-4.7-free": {
        id: "glm-4.7-free",
        name: "GLM-4.7 Free",
        family: "glm-free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 204800, output: 131072 },
        status: "deprecated",
      },
      "gemini-3-pro": {
        id: "gemini-3-pro",
        name: "Gemini 3 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
        provider: { npm: "@ai-sdk/google" },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 64000 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai" },
      },
    },
  },
  poe: {
    id: "poe",
    env: ["POE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.poe.com/v1",
    name: "Poe",
    doc: "https://creator.poe.com/docs/external-applications/openai-compatible-api",
    models: {
      "stabilityai/stablediffusionxl": {
        id: "stabilityai/stablediffusionxl",
        name: "StableDiffusionXL",
        family: "stable-diffusion",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-07-09",
        last_updated: "2023-07-09",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 200, output: 0 },
      },
      "ideogramai/ideogram-v2": {
        id: "ideogramai/ideogram-v2",
        name: "Ideogram-v2",
        family: "ideogram",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-08-21",
        last_updated: "2024-08-21",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 150, output: 0 },
      },
      "ideogramai/ideogram": {
        id: "ideogramai/ideogram",
        name: "Ideogram",
        family: "ideogram",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-04-03",
        last_updated: "2024-04-03",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 150, output: 0 },
      },
      "ideogramai/ideogram-v2a-turbo": {
        id: "ideogramai/ideogram-v2a-turbo",
        name: "Ideogram-v2a-Turbo",
        family: "ideogram",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 150, output: 0 },
      },
      "ideogramai/ideogram-v2a": {
        id: "ideogramai/ideogram-v2a",
        name: "Ideogram-v2a",
        family: "ideogram",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 150, output: 0 },
      },
      "novita/glm-4.7-flash": {
        id: "novita/glm-4.7-flash",
        name: "glm-4.7-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 200000, output: 65500 },
      },
      "novita/glm-4.7-n": {
        id: "novita/glm-4.7-n",
        name: "glm-4.7-n",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 205000, output: 131072 },
      },
      "novita/glm-4.6": {
        id: "novita/glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "novita/minimax-m2.1": {
        id: "novita/minimax-m2.1",
        name: "minimax-m2.1",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-26",
        last_updated: "2025-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 205000, output: 131072 },
      },
      "novita/kimi-k2.5": {
        id: "novita/kimi-k2.5",
        name: "kimi-k2.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 262144 },
      },
      "novita/glm-4.7": {
        id: "novita/glm-4.7",
        name: "glm-4.7",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 205000, output: 131072 },
      },
      "novita/kimi-k2-thinking": {
        id: "novita/kimi-k2-thinking",
        name: "kimi-k2-thinking",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-07",
        last_updated: "2025-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 0 },
      },
      "novita/glm-4.6v": {
        id: "novita/glm-4.6v",
        name: "glm-4.6v",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 131000, output: 32768 },
      },
      "google/gemini-3.1-pro": {
        id: "google/gemini-3.1-pro",
        name: "Gemini-3.1-Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/lyria": {
        id: "google/lyria",
        name: "Lyria",
        family: "lyria",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-04",
        last_updated: "2025-06-04",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "google/gemini-3-flash": {
        id: "google/gemini-3-flash",
        name: "Gemini-3-Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-07",
        last_updated: "2025-10-07",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2.4, cache_read: 0.04 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/imagen-3": {
        id: "google/imagen-3",
        name: "Imagen-3",
        family: "imagen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-10-15",
        last_updated: "2024-10-15",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini-2.5-Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-26",
        last_updated: "2025-04-26",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 1.8, cache_read: 0.021 },
        limit: { context: 1065535, output: 65535 },
      },
      "google/veo-3.1": {
        id: "google/veo-3.1",
        name: "Veo-3.1",
        family: "veo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text"], output: ["video"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/imagen-3-fast": {
        id: "google/imagen-3-fast",
        name: "Imagen-3-Fast",
        family: "imagen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-10-17",
        last_updated: "2024-10-17",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/nano-banana-pro": {
        id: "google/nano-banana-pro",
        name: "Nano-Banana-Pro",
        family: "nano-banana",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2 },
        limit: { context: 65536, output: 0 },
      },
      "google/veo-2": {
        id: "google/veo-2",
        name: "Veo-2",
        family: "veo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-02",
        last_updated: "2024-12-02",
        modalities: { input: ["text"], output: ["video"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/imagen-4-ultra": {
        id: "google/imagen-4-ultra",
        name: "Imagen-4-Ultra",
        family: "imagen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-24",
        last_updated: "2025-05-24",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-2.5-flash-lite": {
        id: "google/gemini-2.5-flash-lite",
        name: "Gemini-2.5-Flash-Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-19",
        last_updated: "2025-06-19",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 1024000, output: 64000 },
      },
      "google/nano-banana": {
        id: "google/nano-banana",
        name: "Nano-Banana",
        family: "nano-banana",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.21, output: 1.8, cache_read: 0.021 },
        limit: { context: 65536, output: 0 },
      },
      "google/veo-3.1-fast": {
        id: "google/veo-3.1-fast",
        name: "Veo-3.1-Fast",
        family: "veo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-deep-research": {
        id: "google/gemini-deep-research",
        name: "gemini-deep-research",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 9.6 },
        limit: { context: 1048576, output: 0 },
      },
      "google/veo-3": {
        id: "google/veo-3",
        name: "Veo-3",
        family: "veo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-21",
        last_updated: "2025-05-21",
        modalities: { input: ["text"], output: ["video"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/imagen-4": {
        id: "google/imagen-4",
        name: "Imagen-4",
        family: "imagen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-2.0-flash-lite": {
        id: "google/gemini-2.0-flash-lite",
        name: "Gemini-2.0-Flash-Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-05",
        last_updated: "2025-02-05",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.052, output: 0.21 },
        limit: { context: 990000, output: 8192 },
      },
      "google/gemini-3.1-flash-lite": {
        id: "google/gemini-3.1-flash-lite",
        name: "Gemini-3.1-Flash-Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-18",
        last_updated: "2026-02-18",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.5 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-pro": {
        id: "google/gemini-3-pro",
        name: "Gemini-3-Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-22",
        last_updated: "2025-10-22",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 9.6, cache_read: 0.16 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini-2.5-Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-05",
        last_updated: "2025-02-05",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.87, output: 7, cache_read: 0.087 },
        limit: { context: 1065535, output: 65535 },
      },
      "google/gemini-2.0-flash": {
        id: "google/gemini-2.0-flash",
        name: "Gemini-2.0-Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.42 },
        limit: { context: 990000, output: 8192 },
      },
      "google/veo-3-fast": {
        id: "google/veo-3-fast",
        name: "Veo-3-Fast",
        family: "veo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-13",
        last_updated: "2025-10-13",
        modalities: { input: ["text"], output: ["video"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/imagen-4-fast": {
        id: "google/imagen-4-fast",
        name: "Imagen-4-Fast",
        family: "imagen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-25",
        last_updated: "2025-06-25",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "lumalabs/ray2": {
        id: "lumalabs/ray2",
        name: "Ray2",
        family: "ray",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-20",
        last_updated: "2025-02-20",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 5000, output: 0 },
      },
      "poetools/claude-code": {
        id: "poetools/claude-code",
        name: "claude-code",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-27",
        last_updated: "2025-11-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "GPT-5.3-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-10",
        last_updated: "2026-02-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 13, cache_read: 0.16 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "GPT-5-Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 14, output: 110 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.54, cache_read: 0.068 },
        limit: { context: 124096, output: 4096 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "GPT 5.1 Codex Max",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 13, cache_read: 0.16 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o3-deep-research": {
        id: "openai/o3-deep-research",
        name: "o3-deep-research",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-27",
        last_updated: "2025-06-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9, output: 36, cache_read: 2.2 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "o1",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-18",
        last_updated: "2024-12-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 14, output: 54 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-12",
        last_updated: "2025-11-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o4-mini-deep-research": {
        id: "openai/o4-mini-deep-research",
        name: "o4-mini-deep-research",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-27",
        last_updated: "2025-06-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.8, output: 7.2, cache_read: 0.45 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5-chat": {
        id: "openai/gpt-5-chat",
        name: "GPT-5-Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.8, output: 7.2, cache_read: 0.45 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4-classic": {
        id: "openai/gpt-4-classic",
        name: "GPT-4-Classic",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-03-25",
        last_updated: "2024-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 27, output: 54 },
        limit: { context: 8192, output: 4096 },
      },
      "openai/gpt-5.3-instant": {
        id: "openai/gpt-5.3-instant",
        name: "GPT-5.3-Instant",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 13, cache_read: 0.16 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/gpt-image-1.5": {
        id: "openai/gpt-image-1.5",
        name: "gpt-image-1.5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 128000, output: 0 },
      },
      "openai/gpt-4.1-nano": {
        id: "openai/gpt-4.1-nano",
        name: "GPT-4.1-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.36, cache_read: 0.022 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-image-1-mini": {
        id: "openai/gpt-image-1-mini",
        name: "GPT-Image-1-Mini",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "openai/sora-2-pro": {
        id: "openai/sora-2-pro",
        name: "Sora-2-Pro",
        family: "sora",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "openai/gpt-3.5-turbo": {
        id: "openai/gpt-3.5-turbo",
        name: "GPT-3.5-Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-09-13",
        last_updated: "2023-09-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.45, output: 1.4 },
        limit: { context: 16384, output: 2048 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT-5.1-Codex-Mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-12",
        last_updated: "2025-11-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.22, output: 1.8, cache_read: 0.022 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 13, cache_read: 0.16 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.8, output: 7.2, cache_read: 0.45 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-4o-aug": {
        id: "openai/gpt-4o-aug",
        name: "GPT-4o-Aug",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-11-21",
        last_updated: "2024-11-21",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.2, output: 9, cache_read: 1.1 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/o3-pro": {
        id: "openai/o3-pro",
        name: "o3-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-10",
        last_updated: "2025-06-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 18, output: 72 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo": {
        id: "openai/gpt-4-turbo",
        name: "GPT-4-Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-09-13",
        last_updated: "2023-09-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 9, output: 27 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-image-1": {
        id: "openai/gpt-image-1",
        name: "GPT-Image-1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-03-31",
        last_updated: "2025-03-31",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 128000, output: 0 },
      },
      "openai/sora-2": {
        id: "openai/sora-2",
        name: "Sora-2",
        family: "sora",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "openai/gpt-3.5-turbo-raw": {
        id: "openai/gpt-3.5-turbo-raw",
        name: "GPT-3.5-Turbo-Raw",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-09-27",
        last_updated: "2023-09-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.45, output: 1.4 },
        limit: { context: 4524, output: 2048 },
      },
      "openai/gpt-4o-mini-search": {
        id: "openai/gpt-4o-mini-search",
        name: "GPT-4o-mini-Search",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-03-11",
        last_updated: "2025-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.54 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.99, output: 4, cache_read: 0.25 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT-4.1-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.36, output: 1.4, cache_read: 0.09 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT-5.4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-26",
        last_updated: "2026-02-26",
        modalities: { input: ["text", "image", "pdf"], output: ["image"] },
        open_weights: false,
        cost: { input: 2.2, output: 14, cache_read: 0.22 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5.4-pro": {
        id: "openai/gpt-5.4-pro",
        name: "GPT-5.4-Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        cost: { input: 27, output: 160 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/o1-pro": {
        id: "openai/o1-pro",
        name: "o1-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-03-19",
        last_updated: "2025-03-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 140, output: 540 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-12",
        last_updated: "2025-11-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/chatgpt-4o-latest": {
        id: "openai/chatgpt-4o-latest",
        name: "ChatGPT-4o-Latest",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-08-14",
        last_updated: "2024-08-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.5, output: 14 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT-5.2-Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 19, output: 150 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/dall-e-3": {
        id: "openai/dall-e-3",
        name: "DALL-E-3",
        family: "dall-e",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-11-06",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 800, output: 0 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.99, output: 4 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4o-search": {
        id: "openai/gpt-4o-search",
        name: "GPT-4o-Search",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-03-11",
        last_updated: "2025-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.2, output: 9 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-25",
        last_updated: "2025-06-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.22, output: 1.8, cache_read: 0.022 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4-classic-0314": {
        id: "openai/gpt-4-classic-0314",
        name: "GPT-4-Classic-0314",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-08-26",
        last_updated: "2024-08-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 27, output: 54 },
        limit: { context: 8192, output: 4096 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT-5-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.045, output: 0.36, cache_read: 0.0045 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-3.5-turbo-instruct": {
        id: "openai/gpt-3.5-turbo-instruct",
        name: "GPT-3.5-Turbo-Instruct",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2023-09-20",
        last_updated: "2023-09-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.4, output: 1.8 },
        limit: { context: 3500, output: 1024 },
      },
      "openai/gpt-5.2-instant": {
        id: "openai/gpt-5.2-instant",
        name: "GPT-5.2-Instant",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 13, cache_read: 0.16 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o3-mini-high": {
        id: "openai/o3-mini-high",
        name: "o3-mini-high",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.99, output: 4 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 8192 },
      },
      "openai/gpt-5.1-instant": {
        id: "openai/gpt-5.1-instant",
        name: "GPT-5.1-Instant",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-12",
        last_updated: "2025-11-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 128000, output: 16384 },
      },
      "topazlabs-co/topazlabs": {
        id: "topazlabs-co/topazlabs",
        name: "TopazLabs",
        family: "topazlabs",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 204, output: 0 },
      },
      "runwayml/runway": {
        id: "runwayml/runway",
        name: "Runway",
        family: "runway",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-10-11",
        last_updated: "2024-10-11",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 256, output: 0 },
      },
      "runwayml/runway-gen-4-turbo": {
        id: "runwayml/runway-gen-4-turbo",
        name: "Runway-Gen-4-Turbo",
        family: "runway",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-09",
        last_updated: "2025-05-09",
        modalities: { input: ["text", "image"], output: ["video"] },
        open_weights: false,
        limit: { context: 256, output: 0 },
      },
      "anthropic/claude-sonnet-3.5-june": {
        id: "anthropic/claude-sonnet-3.5-june",
        name: "Claude-Sonnet-3.5-June",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-11-18",
        last_updated: "2024-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 189096, output: 8192 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Claude-Opus-4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 13, output: 64, cache_read: 1.3, cache_write: 16 },
        limit: { context: 196608, output: 32000 },
      },
      "anthropic/claude-sonnet-3.5": {
        id: "anthropic/claude-sonnet-3.5",
        name: "Claude-Sonnet-3.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-06-05",
        last_updated: "2024-06-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 189096, output: 8192 },
      },
      "anthropic/claude-haiku-3": {
        id: "anthropic/claude-haiku-3",
        name: "Claude-Haiku-3",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-03-09",
        last_updated: "2024-03-09",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 1.1, cache_read: 0.021, cache_write: 0.26 },
        limit: { context: 189096, output: 8192 },
      },
      "anthropic/claude-haiku-3.5": {
        id: "anthropic/claude-haiku-3.5",
        name: "Claude-Haiku-3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-10-01",
        last_updated: "2024-10-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.68, output: 3.4, cache_read: 0.068, cache_write: 0.85 },
        limit: { context: 189096, output: 8192 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Claude-Sonnet-4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 983040, output: 128000 },
      },
      "anthropic/claude-haiku-4.5": {
        id: "anthropic/claude-haiku-4.5",
        name: "Claude-Haiku-4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.85, output: 4.3, cache_read: 0.085, cache_write: 1.1 },
        limit: { context: 192000, output: 64000 },
      },
      "anthropic/claude-opus-4.5": {
        id: "anthropic/claude-opus-4.5",
        name: "Claude-Opus-4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-21",
        last_updated: "2025-11-21",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.3, output: 21, cache_read: 0.43, cache_write: 5.3 },
        limit: { context: 196608, output: 64000 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude-Opus-4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-21",
        last_updated: "2025-05-21",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 13, output: 64, cache_read: 1.3, cache_write: 16 },
        limit: { context: 192512, output: 28672 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude-Sonnet-4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-21",
        last_updated: "2025-05-21",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 983040, output: 64000 },
      },
      "anthropic/claude-sonnet-4.5": {
        id: "anthropic/claude-sonnet-4.5",
        name: "Claude-Sonnet-4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-26",
        last_updated: "2025-09-26",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 983040, output: 32768 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Claude-Opus-4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-02-04",
        last_updated: "2026-02-04",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.3, output: 21, cache_read: 0.43, cache_write: 5.3 },
        limit: { context: 983040, output: 128000 },
      },
      "anthropic/claude-sonnet-3.7": {
        id: "anthropic/claude-sonnet-3.7",
        name: "Claude-Sonnet-3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.6, output: 13, cache_read: 0.26, cache_write: 3.2 },
        limit: { context: 196608, output: 128000 },
      },
      "trytako/tako": {
        id: "trytako/tako",
        name: "Tako",
        family: "tako",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 2048, output: 0 },
      },
      "elevenlabs/elevenlabs-music": {
        id: "elevenlabs/elevenlabs-music",
        name: "ElevenLabs-Music",
        family: "elevenlabs",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-29",
        last_updated: "2025-08-29",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        limit: { context: 2000, output: 0 },
      },
      "elevenlabs/elevenlabs-v3": {
        id: "elevenlabs/elevenlabs-v3",
        name: "ElevenLabs-v3",
        family: "elevenlabs",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        limit: { context: 128000, output: 0 },
      },
      "elevenlabs/elevenlabs-v2.5-turbo": {
        id: "elevenlabs/elevenlabs-v2.5-turbo",
        name: "ElevenLabs-v2.5-Turbo",
        family: "elevenlabs",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-10-28",
        last_updated: "2024-10-28",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        limit: { context: 128000, output: 0 },
      },
      "cerebras/llama-3.1-8b-cs": {
        id: "cerebras/llama-3.1-8b-cs",
        name: "llama-3.1-8b-cs",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-13",
        last_updated: "2025-05-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "cerebras/gpt-oss-120b-cs": {
        id: "cerebras/gpt-oss-120b-cs",
        name: "gpt-oss-120b-cs",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "cerebras/qwen3-235b-2507-cs": {
        id: "cerebras/qwen3-235b-2507-cs",
        name: "qwen3-235b-2507-cs",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-06",
        last_updated: "2025-08-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "cerebras/llama-3.3-70b-cs": {
        id: "cerebras/llama-3.3-70b-cs",
        name: "llama-3.3-70b-cs",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-13",
        last_updated: "2025-05-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "cerebras/qwen3-32b-cs": {
        id: "cerebras/qwen3-32b-cs",
        name: "qwen3-32b-cs",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-05-15",
        last_updated: "2025-05-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "xai/grok-4-fast-reasoning": {
        id: "xai/grok-4-fast-reasoning",
        name: "Grok-4-Fast-Reasoning",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-16",
        last_updated: "2025-09-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 128000 },
      },
      "xai/grok-3": {
        id: "xai/grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-code-fast-1": {
        id: "xai/grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-22",
        last_updated: "2025-08-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 128000 },
      },
      "xai/grok-4.1-fast-reasoning": {
        id: "xai/grok-4.1-fast-reasoning",
        name: "Grok-4.1-Fast-Reasoning",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 30000 },
      },
      "xai/grok-4": {
        id: "xai/grok-4",
        name: "Grok-4",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 128000 },
      },
      "xai/grok-4.1-fast-non-reasoning": {
        id: "xai/grok-4.1-fast-non-reasoning",
        name: "Grok-4.1-Fast-Non-Reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        limit: { context: 2000000, output: 30000 },
      },
      "xai/grok-3-mini": {
        id: "xai/grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-4-fast-non-reasoning": {
        id: "xai/grok-4-fast-non-reasoning",
        name: "Grok-4-Fast-Non-Reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-16",
        last_updated: "2025-09-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 128000 },
      },
    },
  },
  "amazon-bedrock": {
    id: "amazon-bedrock",
    env: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY", "AWS_REGION", "AWS_BEARER_TOKEN_BEDROCK"],
    npm: "@ai-sdk/amazon-bedrock",
    name: "Amazon Bedrock",
    doc: "https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html",
    models: {
      "deepseek.r1-v1:0": {
        id: "deepseek.r1-v1:0",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 128000, output: 32768 },
      },
      "meta.llama3-1-70b-instruct-v1:0": {
        id: "meta.llama3-1-70b-instruct-v1:0",
        name: "Llama 3.1 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen.qwen3-coder-480b-a35b-v1:0": {
        id: "qwen.qwen3-coder-480b-a35b-v1:0",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 1.8 },
        limit: { context: 131072, output: 65536 },
      },
      "eu.anthropic.claude-sonnet-4-6": {
        id: "eu.anthropic.claude-sonnet-4-6",
        name: "Claude Sonnet 4.6 (EU)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "eu.anthropic.claude-haiku-4-5-20251001-v1:0": {
        id: "eu.anthropic.claude-haiku-4-5-20251001-v1:0",
        name: "Claude Haiku 4.5 (EU)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "mistral.mistral-large-3-675b-instruct": {
        id: "mistral.mistral-large-3-675b-instruct",
        name: "Mistral Large 3",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 256000, output: 8192 },
      },
      "openai.gpt-oss-120b-1:0": {
        id: "openai.gpt-oss-120b-1:0",
        name: "gpt-oss-120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "us.anthropic.claude-opus-4-20250514-v1:0": {
        id: "us.anthropic.claude-opus-4-20250514-v1:0",
        name: "Claude Opus 4 (US)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "nvidia.nemotron-nano-12b-v2": {
        id: "nvidia.nemotron-nano-12b-v2",
        name: "NVIDIA Nemotron Nano 12B v2 VL BF16",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "anthropic.claude-3-7-sonnet-20250219-v1:0": {
        id: "anthropic.claude-3-7-sonnet-20250219-v1:0",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic.claude-sonnet-4-6": {
        id: "anthropic.claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "minimax.minimax-m2.1": {
        id: "minimax.minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "global.anthropic.claude-opus-4-5-20251101-v1:0": {
        id: "global.anthropic.claude-opus-4-5-20251101-v1:0",
        name: "Claude Opus 4.5 (Global)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "mistral.ministral-3-8b-instruct": {
        id: "mistral.ministral-3-8b-instruct",
        name: "Ministral 3 8B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 4096 },
      },
      "openai.gpt-oss-safeguard-20b": {
        id: "openai.gpt-oss-safeguard-20b",
        name: "GPT OSS Safeguard 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.2 },
        limit: { context: 128000, output: 4096 },
      },
      "amazon.nova-lite-v1:0": {
        id: "amazon.nova-lite-v1:0",
        name: "Nova Lite",
        family: "nova-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.24, cache_read: 0.015 },
        limit: { context: 300000, output: 8192 },
      },
      "eu.anthropic.claude-sonnet-4-5-20250929-v1:0": {
        id: "eu.anthropic.claude-sonnet-4-5-20250929-v1:0",
        name: "Claude Sonnet 4.5 (EU)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "mistral.pixtral-large-2502-v1:0": {
        id: "mistral.pixtral-large-2502-v1:0",
        name: "Pixtral Large (25.02)",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-08",
        last_updated: "2025-04-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 8192 },
      },
      "google.gemma-3-12b-it": {
        id: "google.gemma-3-12b-it",
        name: "Google Gemma 3 12B",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049999999999999996, output: 0.09999999999999999 },
        limit: { context: 131072, output: 8192 },
      },
      "meta.llama3-1-8b-instruct-v1:0": {
        id: "meta.llama3-1-8b-instruct-v1:0",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.22 },
        limit: { context: 128000, output: 4096 },
      },
      "mistral.devstral-2-123b": {
        id: "mistral.devstral-2-123b",
        name: "Devstral 2 123B",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 256000, output: 8192 },
      },
      "anthropic.claude-sonnet-4-5-20250929-v1:0": {
        id: "anthropic.claude-sonnet-4-5-20250929-v1:0",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama4-maverick-17b-instruct-v1:0": {
        id: "meta.llama4-maverick-17b-instruct-v1:0",
        name: "Llama 4 Maverick 17B Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.24, output: 0.97 },
        limit: { context: 1000000, output: 16384 },
      },
      "mistral.ministral-3-14b-instruct": {
        id: "mistral.ministral-3-14b-instruct",
        name: "Ministral 14B 3.0",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, output: 4096 },
      },
      "minimax.minimax-m2": {
        id: "minimax.minimax-m2",
        name: "MiniMax M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204608, output: 128000 },
      },
      "amazon.nova-micro-v1:0": {
        id: "amazon.nova-micro-v1:0",
        name: "Nova Micro",
        family: "nova-micro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.035, output: 0.14, cache_read: 0.00875 },
        limit: { context: 128000, output: 8192 },
      },
      "anthropic.claude-3-5-sonnet-20241022-v2:0": {
        id: "anthropic.claude-3-5-sonnet-20241022-v2:0",
        name: "Claude Sonnet 3.5 v2",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "nvidia.nemotron-nano-3-30b": {
        id: "nvidia.nemotron-nano-3-30b",
        name: "NVIDIA Nemotron Nano 3 30B",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.24 },
        limit: { context: 128000, output: 4096 },
      },
      "anthropic.claude-sonnet-4-20250514-v1:0": {
        id: "anthropic.claude-sonnet-4-20250514-v1:0",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "qwen.qwen3-vl-235b-a22b": {
        id: "qwen.qwen3-vl-235b-a22b",
        name: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 262000, output: 262000 },
      },
      "global.anthropic.claude-opus-4-6-v1": {
        id: "global.anthropic.claude-opus-4-6-v1",
        name: "Claude Opus 4.6 (Global)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "writer.palmyra-x4-v1:0": {
        id: "writer.palmyra-x4-v1:0",
        name: "Palmyra X4",
        family: "palmyra",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 122880, output: 8192 },
      },
      "amazon.nova-pro-v1:0": {
        id: "amazon.nova-pro-v1:0",
        name: "Nova Pro",
        family: "nova-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 3.2, cache_read: 0.2 },
        limit: { context: 300000, output: 8192 },
      },
      "us.anthropic.claude-opus-4-5-20251101-v1:0": {
        id: "us.anthropic.claude-opus-4-5-20251101-v1:0",
        name: "Claude Opus 4.5 (US)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama3-2-90b-instruct-v1:0": {
        id: "meta.llama3-2-90b-instruct-v1:0",
        name: "Llama 3.2 90B Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 128000, output: 4096 },
      },
      "us.anthropic.claude-opus-4-6-v1": {
        id: "us.anthropic.claude-opus-4-6-v1",
        name: "Claude Opus 4.6 (US)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "google.gemma-3-4b-it": {
        id: "google.gemma-3-4b-it",
        name: "Gemma 3 4B IT",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.08 },
        limit: { context: 128000, output: 4096 },
      },
      "anthropic.claude-opus-4-6-v1": {
        id: "anthropic.claude-opus-4-6-v1",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "zai.glm-4.7-flash": {
        id: "zai.glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4 },
        limit: { context: 200000, output: 131072 },
      },
      "anthropic.claude-opus-4-20250514-v1:0": {
        id: "anthropic.claude-opus-4-20250514-v1:0",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "global.anthropic.claude-sonnet-4-6": {
        id: "global.anthropic.claude-sonnet-4-6",
        name: "Claude Sonnet 4.6 (Global)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama3-2-1b-instruct-v1:0": {
        id: "meta.llama3-2-1b-instruct-v1:0",
        name: "Llama 3.2 1B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131000, output: 4096 },
      },
      "anthropic.claude-opus-4-1-20250805-v1:0": {
        id: "anthropic.claude-opus-4-1-20250805-v1:0",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "meta.llama4-scout-17b-instruct-v1:0": {
        id: "meta.llama4-scout-17b-instruct-v1:0",
        name: "Llama 4 Scout 17B Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.66 },
        limit: { context: 3500000, output: 16384 },
      },
      "deepseek.v3.2": {
        id: "deepseek.v3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.62, output: 1.85 },
        limit: { context: 163840, output: 81920 },
      },
      "deepseek.v3-v1:0": {
        id: "deepseek.v3-v1:0",
        name: "DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 1.68 },
        limit: { context: 163840, output: 81920 },
      },
      "mistral.ministral-3-3b-instruct": {
        id: "mistral.ministral-3-3b-instruct",
        name: "Ministral 3 3B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 256000, output: 8192 },
      },
      "global.anthropic.claude-haiku-4-5-20251001-v1:0": {
        id: "global.anthropic.claude-haiku-4-5-20251001-v1:0",
        name: "Claude Haiku 4.5 (Global)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "nvidia.nemotron-nano-9b-v2": {
        id: "nvidia.nemotron-nano-9b-v2",
        name: "NVIDIA Nemotron Nano 9B v2",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.23 },
        limit: { context: 128000, output: 4096 },
      },
      "writer.palmyra-x5-v1:0": {
        id: "writer.palmyra-x5-v1:0",
        name: "Palmyra X5",
        family: "palmyra",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 6 },
        limit: { context: 1040000, output: 8192 },
      },
      "meta.llama3-3-70b-instruct-v1:0": {
        id: "meta.llama3-3-70b-instruct-v1:0",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 128000, output: 4096 },
      },
      "zai.glm-4.7": {
        id: "zai.glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 204800, output: 131072 },
      },
      "moonshot.kimi-k2-thinking": {
        id: "moonshot.kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 256000, output: 256000 },
      },
      "anthropic.claude-3-haiku-20240307-v1:0": {
        id: "anthropic.claude-3-haiku-20240307-v1:0",
        name: "Claude Haiku 3",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-02",
        release_date: "2024-03-13",
        last_updated: "2024-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25 },
        limit: { context: 200000, output: 4096 },
      },
      "us.anthropic.claude-sonnet-4-5-20250929-v1:0": {
        id: "us.anthropic.claude-sonnet-4-5-20250929-v1:0",
        name: "Claude Sonnet 4.5 (US)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "openai.gpt-oss-20b-1:0": {
        id: "openai.gpt-oss-20b-1:0",
        name: "gpt-oss-20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.3 },
        limit: { context: 128000, output: 4096 },
      },
      "us.anthropic.claude-sonnet-4-6": {
        id: "us.anthropic.claude-sonnet-4-6",
        name: "Claude Sonnet 4.6 (US)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama3-2-11b-instruct-v1:0": {
        id: "meta.llama3-2-11b-instruct-v1:0",
        name: "Llama 3.2 11B Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.16, output: 0.16 },
        limit: { context: 128000, output: 4096 },
      },
      "eu.anthropic.claude-opus-4-5-20251101-v1:0": {
        id: "eu.anthropic.claude-opus-4-5-20251101-v1:0",
        name: "Claude Opus 4.5 (EU)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama3-1-405b-instruct-v1:0": {
        id: "meta.llama3-1-405b-instruct-v1:0",
        name: "Llama 3.1 405B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.4, output: 2.4 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen.qwen3-next-80b-a3b": {
        id: "qwen.qwen3-next-80b-a3b",
        name: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262000, output: 262000 },
      },
      "us.anthropic.claude-sonnet-4-20250514-v1:0": {
        id: "us.anthropic.claude-sonnet-4-20250514-v1:0",
        name: "Claude Sonnet 4 (US)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "qwen.qwen3-coder-30b-a3b-v1:0": {
        id: "qwen.qwen3-coder-30b-a3b-v1:0",
        name: "Qwen3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 262144, output: 131072 },
      },
      "us.anthropic.claude-haiku-4-5-20251001-v1:0": {
        id: "us.anthropic.claude-haiku-4-5-20251001-v1:0",
        name: "Claude Haiku 4.5 (US)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "qwen.qwen3-235b-a22b-2507-v1:0": {
        id: "qwen.qwen3-235b-a22b-2507-v1:0",
        name: "Qwen3 235B A22B 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.88 },
        limit: { context: 262144, output: 131072 },
      },
      "openai.gpt-oss-safeguard-120b": {
        id: "openai.gpt-oss-safeguard-120b",
        name: "GPT OSS Safeguard 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "anthropic.claude-3-5-sonnet-20240620-v1:0": {
        id: "anthropic.claude-3-5-sonnet-20240620-v1:0",
        name: "Claude Sonnet 3.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-06-20",
        last_updated: "2024-06-20",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "mistral.voxtral-small-24b-2507": {
        id: "mistral.voxtral-small-24b-2507",
        name: "Voxtral Small 24B 2507",
        family: "mistral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.35 },
        limit: { context: 32000, output: 8192 },
      },
      "anthropic.claude-haiku-4-5-20251001-v1:0": {
        id: "anthropic.claude-haiku-4-5-20251001-v1:0",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "meta.llama3-2-3b-instruct-v1:0": {
        id: "meta.llama3-2-3b-instruct-v1:0",
        name: "Llama 3.2 3B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 131000, output: 4096 },
      },
      "google.gemma-3-27b-it": {
        id: "google.gemma-3-27b-it",
        name: "Google Gemma 3 27B Instruct",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-27",
        last_updated: "2025-07-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.2 },
        limit: { context: 202752, output: 8192 },
      },
      "us.anthropic.claude-opus-4-1-20250805-v1:0": {
        id: "us.anthropic.claude-opus-4-1-20250805-v1:0",
        name: "Claude Opus 4.1 (US)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "global.anthropic.claude-sonnet-4-20250514-v1:0": {
        id: "global.anthropic.claude-sonnet-4-20250514-v1:0",
        name: "Claude Sonnet 4 (Global)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic.claude-3-5-haiku-20241022-v1:0": {
        id: "anthropic.claude-3-5-haiku-20241022-v1:0",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "eu.anthropic.claude-sonnet-4-20250514-v1:0": {
        id: "eu.anthropic.claude-sonnet-4-20250514-v1:0",
        name: "Claude Sonnet 4 (EU)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic.claude-opus-4-5-20251101-v1:0": {
        id: "anthropic.claude-opus-4-5-20251101-v1:0",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "eu.anthropic.claude-opus-4-6-v1": {
        id: "eu.anthropic.claude-opus-4-6-v1",
        name: "Claude Opus 4.6 (EU)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "amazon.nova-premier-v1:0": {
        id: "amazon.nova-premier-v1:0",
        name: "Nova Premier",
        family: "nova",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 12.5 },
        limit: { context: 1000000, output: 16384 },
      },
      "amazon.nova-2-lite-v1:0": {
        id: "amazon.nova-2-lite-v1:0",
        name: "Nova 2 Lite",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 2.75 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen.qwen3-32b-v1:0": {
        id: "qwen.qwen3-32b-v1:0",
        name: "Qwen3 32B (dense)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 16384, output: 16384 },
      },
      "mistral.magistral-small-2509": {
        id: "mistral.magistral-small-2509",
        name: "Magistral Small 1.2",
        family: "magistral",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 128000, output: 40000 },
      },
      "moonshotai.kimi-k2.5": {
        id: "moonshotai.kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 256000, output: 256000 },
      },
      "mistral.voxtral-mini-3b-2507": {
        id: "mistral.voxtral-mini-3b-2507",
        name: "Voxtral Mini 3B 2507",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["audio", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 128000, output: 4096 },
      },
      "global.anthropic.claude-sonnet-4-5-20250929-v1:0": {
        id: "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
        name: "Claude Sonnet 4.5 (Global)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  "alibaba-coding-plan-cn": {
    id: "alibaba-coding-plan-cn",
    env: ["ALIBABA_CODING_PLAN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://coding.dashscope.aliyuncs.com/v1",
    name: "Alibaba Coding Plan (China)",
    doc: "https://help.aliyun.com/zh/model-studio/coding-plan",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 202752, output: 16384 },
      },
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 196608, output: 24576 },
      },
      "qwen3-coder-next": {
        id: "qwen3-coder-next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-03",
        last_updated: "2026-02-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen3-max-2026-01-23": {
        id: "qwen3-max-2026-01-23",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-23",
        last_updated: "2026-01-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 202752, output: 16384 },
      },
      "qwen3.5-plus": {
        id: "qwen3.5-plus",
        name: "Qwen3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-coder-plus": {
        id: "qwen3-coder-plus",
        name: "Qwen3 Coder Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 65536 },
      },
    },
  },
  "minimax-cn": {
    id: "minimax-cn",
    env: ["MINIMAX_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimaxi.com/anthropic/v1",
    name: "MiniMax (minimaxi.com)",
    doc: "https://platform.minimaxi.com/docs/guides/quickstart",
    models: {
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196608, output: 128000 },
      },
      "MiniMax-M2.5-highspeed": {
        id: "MiniMax-M2.5-highspeed",
        name: "MiniMax-M2.5-highspeed",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.4, cache_read: 0.06, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  bailing: {
    id: "bailing",
    env: ["BAILING_API_TOKEN"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.tbox.cn/api/llm/v1/chat/completions",
    name: "Bailing",
    doc: "https://alipaytbox.yuque.com/sxs0ba/ling/intro",
    models: {
      "Ring-1T": {
        id: "Ring-1T",
        name: "Ring-1T",
        family: "ring",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-10",
        last_updated: "2025-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.57, output: 2.29 },
        limit: { context: 128000, output: 32000 },
      },
      "Ling-1T": {
        id: "Ling-1T",
        name: "Ling-1T",
        family: "ling",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-10",
        last_updated: "2025-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.57, output: 2.29 },
        limit: { context: 128000, output: 32000 },
      },
    },
  },
  "azure-cognitive-services": {
    id: "azure-cognitive-services",
    env: ["AZURE_COGNITIVE_SERVICES_RESOURCE_NAME", "AZURE_COGNITIVE_SERVICES_API_KEY"],
    npm: "@ai-sdk/azure",
    name: "Azure Cognitive Services",
    doc: "https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models",
    models: {
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-02-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "phi-3-small-8k-instruct": {
        id: "phi-3-small-8k-instruct",
        name: "Phi-3-small-instruct (8k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 8192, output: 2048 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "codestral-2501": {
        id: "codestral-2501",
        name: "Codestral 25.01",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 256000 },
      },
      "mistral-small-2503": {
        id: "mistral-small-2503",
        name: "Mistral Small 3.1",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 32768 },
      },
      "o1-mini": {
        id: "o1-mini",
        name: "o1-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 128000, output: 65536 },
      },
      "gpt-3.5-turbo-instruct": {
        id: "gpt-3.5-turbo-instruct",
        name: "GPT-3.5 Turbo Instruct",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-09-21",
        last_updated: "2023-09-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 4096, output: 4096 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.01 },
        limit: { context: 272000, output: 128000 },
      },
      "gpt-4": {
        id: "gpt-4",
        name: "GPT-4",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-03-14",
        last_updated: "2023-03-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 60, output: 120 },
        limit: { context: 8192, output: 8192 },
      },
      "gpt-3.5-turbo-1106": {
        id: "gpt-3.5-turbo-1106",
        name: "GPT-3.5 Turbo 1106",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-11-06",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 2 },
        limit: { context: 16384, output: 16384 },
      },
      "phi-4-reasoning": {
        id: "phi-4-reasoning",
        name: "Phi-4-reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 32000, output: 4096 },
      },
      "phi-3-mini-128k-instruct": {
        id: "phi-3-mini-128k-instruct",
        name: "Phi-3-mini-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 272000, output: 128000 },
      },
      "llama-4-maverick-17b-128e-instruct-fp8": {
        id: "llama-4-maverick-17b-128e-instruct-fp8",
        name: "Llama 4 Maverick 17B 128E Instruct FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 1 },
        limit: { context: 128000, output: 8192 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "Grok 4 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "cohere-embed-v3-english": {
        id: "cohere-embed-v3-english",
        name: "Embed v3 English",
        family: "cohere-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-11-07",
        last_updated: "2023-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "phi-3-medium-4k-instruct": {
        id: "phi-3-medium-4k-instruct",
        name: "Phi-3-medium-instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 4096, output: 1024 },
      },
      "cohere-embed-v3-multilingual": {
        id: "cohere-embed-v3-multilingual",
        name: "Embed v3 Multilingual",
        family: "cohere-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-11-07",
        last_updated: "2023-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "gpt-3.5-turbo-0125": {
        id: "gpt-3.5-turbo-0125",
        name: "GPT-3.5 Turbo 0125",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 16384, output: 16384 },
      },
      "phi-4-mini-reasoning": {
        id: "phi-4-mini-reasoning",
        name: "Phi-4-mini-reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, output: 4096 },
      },
      "mistral-large-2411": {
        id: "mistral-large-2411",
        name: "Mistral Large 24.11",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "meta-llama-3.1-8b-instruct": {
        id: "meta-llama-3.1-8b-instruct",
        name: "Meta-Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.61 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.4-pro": {
        id: "gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o1-preview": {
        id: "o1-preview",
        name: "o1-preview",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 16.5, output: 66, cache_read: 8.25 },
        limit: { context: 128000, output: 32768 },
      },
      "meta-llama-3.1-70b-instruct": {
        id: "meta-llama-3.1-70b-instruct",
        name: "Meta-Llama-3.1-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.68, output: 3.54 },
        limit: { context: 128000, output: 32768 },
      },
      "phi-3-mini-4k-instruct": {
        id: "phi-3-mini-4k-instruct",
        name: "Phi-3-mini-instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 4096, output: 1024 },
      },
      "codex-mini": {
        id: "codex-mini",
        name: "Codex Mini",
        family: "gpt-codex-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-05-16",
        last_updated: "2025-05-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.375 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "phi-4-reasoning-plus": {
        id: "phi-4-reasoning-plus",
        name: "Phi-4-reasoning-plus",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 32000, output: 4096 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "GPT-4.1 mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "phi-4": {
        id: "phi-4",
        name: "Phi-4",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 128000, output: 4096 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 272000, output: 128000 },
      },
      "gpt-4-32k": {
        id: "gpt-4-32k",
        name: "GPT-4 32K",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-03-14",
        last_updated: "2023-03-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 60, output: 120 },
        limit: { context: 32768, output: 32768 },
      },
      "grok-3-mini": {
        id: "grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, reasoning: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "cohere-embed-v-4-0": {
        id: "cohere-embed-v-4-0",
        name: "Embed v4",
        family: "cohere-embed",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0 },
        limit: { context: 128000, output: 1536 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 1.68 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral-nemo": {
        id: "mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-4-turbo": {
        id: "gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "model-router": {
        id: "model-router",
        name: "Model Router",
        family: "model-router",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2025-05-19",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "deepseek-v3-0324": {
        id: "deepseek-v3-0324",
        name: "DeepSeek-V3-0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.14, output: 4.56 },
        limit: { context: 131072, output: 131072 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 262144 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/models",
          shape: "completions",
        },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex Mini",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 128000 },
      },
      "text-embedding-3-large": {
        id: "text-embedding-3-large",
        name: "text-embedding-3-large",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0 },
        limit: { context: 8191, output: 3072 },
      },
      "gpt-3.5-turbo-0613": {
        id: "gpt-3.5-turbo-0613",
        name: "GPT-3.5 Turbo 0613",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-06-13",
        last_updated: "2023-06-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 4 },
        limit: { context: 16384, output: 16384 },
      },
      "cohere-command-r-08-2024": {
        id: "cohere-command-r-08-2024",
        name: "Command R",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4000 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "GPT-4.1 nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03 },
        limit: { context: 1047576, output: 32768 },
      },
      "deepseek-v3.2-speciale": {
        id: "deepseek-v3.2-speciale",
        name: "DeepSeek-V3.2-Speciale",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 1.68 },
        limit: { context: 128000, output: 128000 },
      },
      "phi-4-mini": {
        id: "phi-4-mini",
        name: "Phi-4-mini",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 163840, output: 163840 },
      },
      "text-embedding-3-small": {
        id: "text-embedding-3-small",
        name: "text-embedding-3-small",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8191, output: 1536 },
      },
      "gpt-3.5-turbo-0301": {
        id: "gpt-3.5-turbo-0301",
        name: "GPT-3.5 Turbo 0301",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-03-01",
        last_updated: "2023-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 4096, output: 4096 },
      },
      "deepseek-r1-0528": {
        id: "deepseek-r1-0528",
        name: "DeepSeek-R1-0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 163840, output: 163840 },
      },
      "meta-llama-3-70b-instruct": {
        id: "meta-llama-3-70b-instruct",
        name: "Meta-Llama-3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.68, output: 3.54 },
        limit: { context: 8192, output: 2048 },
      },
      "llama-3.2-11b-vision-instruct": {
        id: "llama-3.2-11b-vision-instruct",
        name: "Llama-3.2-11B-Vision-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.37, output: 0.37 },
        limit: { context: 128000, output: 8192 },
      },
      o3: {
        id: "o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "meta-llama-3-8b-instruct": {
        id: "meta-llama-3-8b-instruct",
        name: "Meta-Llama-3-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.61 },
        limit: { context: 8192, output: 2048 },
      },
      "gpt-5.1-chat": {
        id: "gpt-5.1-chat",
        name: "GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "grok-4": {
        id: "grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, reasoning: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 64000 },
      },
      "gpt-5-chat": {
        id: "gpt-5-chat",
        name: "GPT-5 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-10-24",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.2-chat": {
        id: "gpt-5.2-chat",
        name: "GPT-5.2 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "cohere-command-r-plus-08-2024": {
        id: "cohere-command-r-plus-08-2024",
        name: "Command R+",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 4000 },
      },
      "meta-llama-3.1-405b-instruct": {
        id: "meta-llama-3.1-405b-instruct",
        name: "Meta-Llama-3.1-405B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 5.33, output: 16 },
        limit: { context: 128000, output: 32768 },
      },
      "llama-4-scout-17b-16e-instruct": {
        id: "llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.78 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 272000, output: 128000 },
      },
      o1: {
        id: "o1",
        name: "o1",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "deepseek-v3.1": {
        id: "deepseek-v3.1",
        name: "DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.56, output: 1.68 },
        limit: { context: 131072, output: 131072 },
      },
      "mistral-medium-2505": {
        id: "mistral-medium-2505",
        name: "Mistral Medium 3",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 128000, output: 128000 },
      },
      "cohere-command-a": {
        id: "cohere-command-a",
        name: "Command A",
        family: "command-a",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 8000 },
      },
      "phi-3.5-mini-instruct": {
        id: "phi-3.5-mini-instruct",
        name: "Phi-3.5-mini-instruct",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 128000, output: 4096 },
      },
      "llama-3.3-70b-instruct": {
        id: "llama-3.3-70b-instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.71, output: 0.71 },
        limit: { context: 128000, output: 32768 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "llama-3.2-90b-vision-instruct": {
        id: "llama-3.2-90b-vision-instruct",
        name: "Llama-3.2-90B-Vision-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.04, output: 2.04 },
        limit: { context: 128000, output: 8192 },
      },
      "grok-3": {
        id: "grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "ministral-3b": {
        id: "ministral-3b",
        name: "Ministral 3B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-4-turbo-vision": {
        id: "gpt-4-turbo-vision",
        name: "GPT-4 Turbo Vision",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "phi-3.5-moe-instruct": {
        id: "phi-3.5-moe-instruct",
        name: "Phi-3.5-MoE-instruct",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.16, output: 0.64 },
        limit: { context: 128000, output: 4096 },
      },
      "mai-ds-r1": {
        id: "mai-ds-r1",
        name: "MAI-DS-R1",
        family: "mai",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 128000, output: 8192 },
      },
      "phi-4-multimodal": {
        id: "phi-4-multimodal",
        name: "Phi-4-multimodal",
        family: "phi",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.32, input_audio: 4 },
        limit: { context: 128000, output: 4096 },
      },
      "phi-3-medium-128k-instruct": {
        id: "phi-3-medium-128k-instruct",
        name: "Phi-3-medium-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 128000, output: 4096 },
      },
      "grok-4-fast-reasoning": {
        id: "grok-4-fast-reasoning",
        name: "Grok 4 Fast (Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "text-embedding-ada-002": {
        id: "text-embedding-ada-002",
        name: "text-embedding-ada-002",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2022-12-15",
        last_updated: "2022-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "gpt-4o-mini": {
        id: "gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "phi-3-small-128k-instruct": {
        id: "phi-3-small-128k-instruct",
        name: "Phi-3-small-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "GPT-5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 272000 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
    },
  },
  alibaba: {
    id: "alibaba",
    env: ["DASHSCOPE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
    name: "Alibaba",
    doc: "https://www.alibabacloud.com/help/en/model-studio/models",
    models: {
      "qwen-vl-plus": {
        id: "qwen-vl-plus",
        name: "Qwen-VL Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01-25",
        last_updated: "2025-08-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 0.63 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-vl-max": {
        id: "qwen-vl-max",
        name: "Qwen-VL Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-08",
        last_updated: "2025-08-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 3.2 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-next-80b-a3b-thinking": {
        id: "qwen3-next-80b-a3b-thinking",
        name: "Qwen3-Next 80B-A3B (Thinking)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 6 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen3-Coder 480B-A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.5, output: 7.5 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen3-14b": {
        id: "qwen3-14b",
        name: "Qwen3 14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.4, reasoning: 4.2 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-coder-flash": {
        id: "qwen3-coder-flash",
        name: "Qwen3 Coder Flash",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-vl-30b-a3b": {
        id: "qwen3-vl-30b-a3b",
        name: "Qwen3-VL 30B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8, reasoning: 2.4 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen3-asr-flash": {
        id: "qwen3-asr-flash",
        name: "Qwen3-ASR Flash",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-09-08",
        last_updated: "2025-09-08",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.035, output: 0.035 },
        limit: { context: 53248, output: 4096 },
      },
      "qwen-max": {
        id: "qwen-max",
        name: "Qwen Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-03",
        last_updated: "2025-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.6, output: 6.4 },
        limit: { context: 32768, output: 8192 },
      },
      "qwen-turbo": {
        id: "qwen-turbo",
        name: "Qwen Turbo",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-11-01",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.2, reasoning: 0.5 },
        limit: { context: 1000000, output: 16384 },
      },
      "qwen2-5-7b-instruct": {
        id: "qwen2-5-7b-instruct",
        name: "Qwen2.5 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.175, output: 0.7 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen2-5-vl-72b-instruct": {
        id: "qwen2-5-vl-72b-instruct",
        name: "Qwen2.5-VL 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.8, output: 8.4 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen2-5-14b-instruct": {
        id: "qwen2-5-14b-instruct",
        name: "Qwen2.5 14B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.4 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-8b": {
        id: "qwen3-8b",
        name: "Qwen3 8B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.18, output: 0.7, reasoning: 2.1 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8, reasoning: 8.4 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3.5-397b-a17b": {
        id: "qwen3.5-397b-a17b",
        name: "Qwen3.5 397B-A17B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6, reasoning: 3.6 },
        limit: { context: 262144, output: 65536 },
      },
      "qvq-max": {
        id: "qvq-max",
        name: "QVQ Max",
        family: "qvq",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 4.8 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen2-5-omni-7b": {
        id: "qwen2-5-omni-7b",
        name: "Qwen2.5-Omni 7B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.4, input_audio: 6.76 },
        limit: { context: 32768, output: 2048 },
      },
      "qwen2-5-vl-7b-instruct": {
        id: "qwen2-5-vl-7b-instruct",
        name: "Qwen2.5-VL 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.05 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-omni-turbo-realtime": {
        id: "qwen-omni-turbo-realtime",
        name: "Qwen-Omni Turbo Realtime",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image", "audio"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.27, output: 1.07, input_audio: 4.44, output_audio: 8.89 },
        limit: { context: 32768, output: 2048 },
      },
      "qwen3-235b-a22b": {
        id: "qwen3-235b-a22b",
        name: "Qwen3 235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8, reasoning: 8.4 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3-Coder 30B-A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2.25 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen-omni-turbo": {
        id: "qwen-omni-turbo",
        name: "Qwen-Omni Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01-19",
        last_updated: "2025-03-26",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.27, input_audio: 4.44, output_audio: 8.89 },
        limit: { context: 32768, output: 2048 },
      },
      "qwen-mt-plus": {
        id: "qwen-mt-plus",
        name: "Qwen-MT Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.46, output: 7.37 },
        limit: { context: 16384, output: 8192 },
      },
      "qwen3-vl-plus": {
        id: "qwen3-vl-plus",
        name: "Qwen3-VL Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.6, reasoning: 4.8 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen3-livetranslate-flash-realtime": {
        id: "qwen3-livetranslate-flash-realtime",
        name: "Qwen3-LiveTranslate Flash Realtime",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 10, output: 10, input_audio: 10, output_audio: 38 },
        limit: { context: 53248, output: 4096 },
      },
      "qwen-plus": {
        id: "qwen-plus",
        name: "Qwen Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01-25",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.2, reasoning: 4 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen2-5-32b-instruct": {
        id: "qwen2-5-32b-instruct",
        name: "Qwen2.5 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-next-80b-a3b-instruct": {
        id: "qwen3-next-80b-a3b-instruct",
        name: "Qwen3-Next 80B-A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen3.5-plus": {
        id: "qwen3.5-plus",
        name: "Qwen3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2.4, reasoning: 2.4 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-max": {
        id: "qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen3-omni-flash": {
        id: "qwen3-omni-flash",
        name: "Qwen3-Omni Flash",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.43, output: 1.66, input_audio: 3.81, output_audio: 15.11 },
        limit: { context: 65536, output: 16384 },
      },
      "qwen3-coder-plus": {
        id: "qwen3-coder-plus",
        name: "Qwen3 Coder Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 5 },
        limit: { context: 1048576, output: 65536 },
      },
      "qwen-flash": {
        id: "qwen-flash",
        name: "Qwen Flash",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen2-5-72b-instruct": {
        id: "qwen2-5-72b-instruct",
        name: "Qwen2.5 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.4, output: 5.6 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-omni-flash-realtime": {
        id: "qwen3-omni-flash-realtime",
        name: "Qwen3-Omni Flash Realtime",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.52, output: 1.99, input_audio: 4.57, output_audio: 18.13 },
        limit: { context: 65536, output: 16384 },
      },
      "qwen-vl-ocr": {
        id: "qwen-vl-ocr",
        name: "Qwen-VL OCR",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-10-28",
        last_updated: "2025-04-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 34096, output: 4096 },
      },
      "qwq-plus": {
        id: "qwq-plus",
        name: "QwQ Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 2.4 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-vl-235b-a22b": {
        id: "qwen3-vl-235b-a22b",
        name: "Qwen3-VL 235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8, reasoning: 8.4 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen-plus-character-ja": {
        id: "qwen-plus-character-ja",
        name: "Qwen Plus Character (Japanese)",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.4 },
        limit: { context: 8192, output: 512 },
      },
      "qwen-mt-turbo": {
        id: "qwen-mt-turbo",
        name: "Qwen-MT Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.16, output: 0.49 },
        limit: { context: 16384, output: 8192 },
      },
    },
  },
  "cloudflare-workers-ai": {
    id: "cloudflare-workers-ai",
    env: ["CLOUDFLARE_ACCOUNT_ID", "CLOUDFLARE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.cloudflare.com/client/v4/accounts/${CLOUDFLARE_ACCOUNT_ID}/ai/v1",
    name: "Cloudflare Workers AI",
    doc: "https://developers.cloudflare.com/workers-ai/models/",
    models: {
      "@cf/zai-org/glm-4.7-flash": {
        id: "@cf/zai-org/glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.4 },
        limit: { context: 131072, output: 131072 },
      },
      "@cf/ibm-granite/granite-4.0-h-micro": {
        id: "@cf/ibm-granite/granite-4.0-h-micro",
        name: "IBM Granite 4.0 H Micro",
        family: "granite",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.017, output: 0.11 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/baai/bge-small-en-v1.5": {
        id: "@cf/baai/bge-small-en-v1.5",
        name: "BGE Small EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/baai/bge-large-en-v1.5": {
        id: "@cf/baai/bge-large-en-v1.5",
        name: "BGE Large EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/baai/bge-reranker-base": {
        id: "@cf/baai/bge-reranker-base",
        name: "BGE Reranker Base",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-09",
        last_updated: "2025-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0031, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/baai/bge-m3": {
        id: "@cf/baai/bge-m3",
        name: "BGE M3",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.012, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/baai/bge-base-en-v1.5": {
        id: "@cf/baai/bge-base-en-v1.5",
        name: "BGE Base EN v1.5",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.067, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/pfnet/plamo-embedding-1b": {
        id: "@cf/pfnet/plamo-embedding-1b",
        name: "PLaMo Embedding 1B",
        family: "plamo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.019, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/deepseek-ai/deepseek-r1-distill-qwen-32b": {
        id: "@cf/deepseek-ai/deepseek-r1-distill-qwen-32b",
        name: "DeepSeek R1 Distill Qwen 32B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 4.88 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/facebook/bart-large-cnn": {
        id: "@cf/facebook/bart-large-cnn",
        name: "BART Large CNN",
        family: "bart",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-09",
        last_updated: "2025-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/mistral/mistral-7b-instruct-v0.1": {
        id: "@cf/mistral/mistral-7b-instruct-v0.1",
        name: "Mistral 7B Instruct v0.1",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.19 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/myshell-ai/melotts": {
        id: "@cf/myshell-ai/melotts",
        name: "MyShell MeloTTS",
        family: "melotts",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/pipecat-ai/smart-turn-v2": {
        id: "@cf/pipecat-ai/smart-turn-v2",
        name: "Pipecat Smart Turn v2",
        family: "smart-turn",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/google/gemma-3-12b-it": {
        id: "@cf/google/gemma-3-12b-it",
        name: "Gemma 3 12B IT",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/qwen/qwq-32b": {
        id: "@cf/qwen/qwq-32b",
        name: "QwQ 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.66, output: 1 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/qwen/qwen3-30b-a3b-fp8": {
        id: "@cf/qwen/qwen3-30b-a3b-fp8",
        name: "Qwen3 30B A3B FP8",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/qwen/qwen2.5-coder-32b-instruct": {
        id: "@cf/qwen/qwen2.5-coder-32b-instruct",
        name: "Qwen 2.5 Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.66, output: 1 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/qwen/qwen3-embedding-0.6b": {
        id: "@cf/qwen/qwen3-embedding-0.6b",
        name: "Qwen3 Embedding 0.6B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.012, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.1-8b-instruct-fp8": {
        id: "@cf/meta/llama-3.1-8b-instruct-fp8",
        name: "Llama 3.1 8B Instruct FP8",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.29 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3-8b-instruct-awq": {
        id: "@cf/meta/llama-3-8b-instruct-awq",
        name: "Llama 3 8B Instruct AWQ",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0.27 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.1-8b-instruct-awq": {
        id: "@cf/meta/llama-3.1-8b-instruct-awq",
        name: "Llama 3.1 8B Instruct AWQ",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0.27 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-4-scout-17b-16e-instruct": {
        id: "@cf/meta/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.85 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.2-11b-vision-instruct": {
        id: "@cf/meta/llama-3.2-11b-vision-instruct",
        name: "Llama 3.2 11B Vision Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049, output: 0.68 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.2-3b-instruct": {
        id: "@cf/meta/llama-3.2-3b-instruct",
        name: "Llama 3.2 3B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-guard-3-8b": {
        id: "@cf/meta/llama-guard-3-8b",
        name: "Llama Guard 3 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.48, output: 0.03 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.2-1b-instruct": {
        id: "@cf/meta/llama-3.2-1b-instruct",
        name: "Llama 3.2 1B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.027, output: 0.2 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.3-70b-instruct-fp8-fast": {
        id: "@cf/meta/llama-3.3-70b-instruct-fp8-fast",
        name: "Llama 3.3 70B Instruct FP8 Fast",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 2.25 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3.1-8b-instruct": {
        id: "@cf/meta/llama-3.1-8b-instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.8299999999999998 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/m2m100-1.2b": {
        id: "@cf/meta/m2m100-1.2b",
        name: "M2M100 1.2B",
        family: "m2m",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.34, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-2-7b-chat-fp16": {
        id: "@cf/meta/llama-2-7b-chat-fp16",
        name: "Llama 2 7B Chat FP16",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 6.67 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/meta/llama-3-8b-instruct": {
        id: "@cf/meta/llama-3-8b-instruct",
        name: "Llama 3 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.83 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/mistralai/mistral-small-3.1-24b-instruct": {
        id: "@cf/mistralai/mistral-small-3.1-24b-instruct",
        name: "Mistral Small 3.1 24B Instruct",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-11",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/deepgram/aura-2-es": {
        id: "@cf/deepgram/aura-2-es",
        name: "Deepgram Aura 2 (ES)",
        family: "aura",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/deepgram/nova-3": {
        id: "@cf/deepgram/nova-3",
        name: "Deepgram Nova 3",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/deepgram/aura-2-en": {
        id: "@cf/deepgram/aura-2-en",
        name: "Deepgram Aura 2 (EN)",
        family: "aura",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/openai/gpt-oss-120b": {
        id: "@cf/openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.75 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/openai/gpt-oss-20b": {
        id: "@cf/openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/ai4bharat/indictrans2-en-indic-1B": {
        id: "@cf/ai4bharat/indictrans2-en-indic-1B",
        name: "IndicTrans2 EN-Indic 1B",
        family: "indictrans",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.34, output: 0.34 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/huggingface/distilbert-sst-2-int8": {
        id: "@cf/huggingface/distilbert-sst-2-int8",
        name: "DistilBERT SST-2 INT8",
        family: "distilbert",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.026, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "@cf/aisingapore/gemma-sea-lion-v4-27b-it": {
        id: "@cf/aisingapore/gemma-sea-lion-v4-27b-it",
        name: "Gemma SEA-LION v4 27B IT",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 0.56 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  groq: {
    id: "groq",
    env: ["GROQ_API_KEY"],
    npm: "@ai-sdk/groq",
    name: "Groq",
    doc: "https://console.groq.com/docs/models",
    models: {
      "llama3-70b-8192": {
        id: "llama3-70b-8192",
        name: "Llama 3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-03",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.59, output: 0.79 },
        limit: { context: 8192, output: 8192 },
        status: "deprecated",
      },
      "qwen-qwq-32b": {
        id: "qwen-qwq-32b",
        name: "Qwen QwQ 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-11-27",
        last_updated: "2024-11-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 0.39 },
        limit: { context: 131072, output: 16384 },
        status: "deprecated",
      },
      "llama-3.1-8b-instant": {
        id: "llama-3.1-8b-instant",
        name: "Llama 3.1 8B Instant",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.08 },
        limit: { context: 131072, output: 131072 },
      },
      "llama-guard-3-8b": {
        id: "llama-guard-3-8b",
        name: "Llama Guard 3 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 8192, output: 8192 },
        status: "deprecated",
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 0.99 },
        limit: { context: 131072, output: 8192 },
        status: "deprecated",
      },
      "llama3-8b-8192": {
        id: "llama3-8b-8192",
        name: "Llama 3 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-03",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.08 },
        limit: { context: 8192, output: 8192 },
        status: "deprecated",
      },
      "mistral-saba-24b": {
        id: "mistral-saba-24b",
        name: "Mistral Saba 24B",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-02-06",
        last_updated: "2025-02-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.79, output: 0.79 },
        limit: { context: 32768, output: 32768 },
        status: "deprecated",
      },
      "llama-3.3-70b-versatile": {
        id: "llama-3.3-70b-versatile",
        name: "Llama 3.3 70B Versatile",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.59, output: 0.79 },
        limit: { context: 131072, output: 32768 },
      },
      "gemma2-9b-it": {
        id: "gemma2-9b-it",
        name: "Gemma 2 9B",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-27",
        last_updated: "2024-06-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 8192, output: 8192 },
        status: "deprecated",
      },
      "moonshotai/kimi-k2-instruct": {
        id: "moonshotai/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 16384 },
        status: "deprecated",
      },
      "moonshotai/kimi-k2-instruct-0905": {
        id: "moonshotai/kimi-k2-instruct-0905",
        name: "Kimi K2 Instruct 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 262144, output: 16384 },
      },
      "qwen/qwen3-32b": {
        id: "qwen/qwen3-32b",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11-08",
        release_date: "2024-12-23",
        last_updated: "2024-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 0.59 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/llama-4-scout-17b-16e-instruct": {
        id: "meta-llama/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.34 },
        limit: { context: 131072, output: 8192 },
      },
      "meta-llama/llama-guard-4-12b": {
        id: "meta-llama/llama-guard-4-12b",
        name: "Llama Guard 4 12B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 131072, output: 1024 },
      },
      "meta-llama/llama-4-maverick-17b-128e-instruct": {
        id: "meta-llama/llama-4-maverick-17b-128e-instruct",
        name: "Llama 4 Maverick 17B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 131072, output: 8192 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 65536 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 131072, output: 65536 },
      },
    },
  },
  wandb: {
    id: "wandb",
    env: ["WANDB_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.inference.wandb.ai/v1",
    name: "Weights & Biases",
    doc: "https://docs.wandb.ai/guides/integrations/inference/",
    models: {
      "zai-org/GLM-5-FP8": {
        id: "zai-org/GLM-5-FP8",
        name: "GLM 5",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 200000, output: 200000 },
      },
      "nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8": {
        id: "nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",
        name: "NVIDIA Nemotron 3 Super 120B",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262144, output: 262144 },
      },
      "microsoft/Phi-4-mini-instruct": {
        id: "microsoft/Phi-4-mini-instruct",
        name: "Phi-4-mini-instruct",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.35 },
        limit: { context: 128000, output: 128000 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196608, output: 196608 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-21",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 1.65 },
        limit: { context: 161000, output: 161000 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.85 },
        limit: { context: 262144, output: 262144 },
      },
      "meta-llama/Llama-4-Scout-17B-16E-Instruct": {
        id: "meta-llama/Llama-4-Scout-17B-16E-Instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-31",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.66 },
        limit: { context: 64000, output: 64000 },
      },
      "meta-llama/Llama-3.1-70B-Instruct": {
        id: "meta-llama/Llama-3.1-70B-Instruct",
        name: "Llama 3.1 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 0.8 },
        limit: { context: 128000, output: 128000 },
      },
      "meta-llama/Llama-3.1-8B-Instruct": {
        id: "meta-llama/Llama-3.1-8B-Instruct",
        name: "Meta-Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.22 },
        limit: { context: 128000, output: 128000 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.71, output: 0.71 },
        limit: { context: 128000, output: 128000 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3-235B-A22B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen3-Coder-480B-A35B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 1.5 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "gpt-oss-120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 131072 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "gpt-oss-20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 131072, output: 131072 },
      },
      "OpenPipe/Qwen3-14B-Instruct": {
        id: "OpenPipe/Qwen3-14B-Instruct",
        name: "OpenPipe Qwen3 14B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22 },
        limit: { context: 32768, output: 32768 },
      },
    },
  },
  aihubmix: {
    id: "aihubmix",
    env: ["AIHUBMIX_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://aihubmix.com/v1",
    name: "AIHubMix",
    doc: "https://docs.aihubmix.com",
    models: {
      "qwen3-235b-a22b-instruct-2507": {
        id: "qwen3-235b-a22b-instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.12 },
        limit: { context: 262144, output: 262144 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "GPT-5-Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 7, output: 28, cache_read: 3.5 },
        limit: { context: 400000, output: 128000 },
      },
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.88, output: 2.82 },
        limit: { context: 204800, output: 131072 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1-Codex-Max",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 16.5, output: 82.5, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.82, output: 3.29 },
        limit: { context: 262144, output: 131000 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "coding-glm-4.7-free": {
        id: "coding-glm-4.7-free",
        name: "Coding GLM 4.7 Free",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "coding-minimax-m2.1-free": {
        id: "coding-minimax-m2.1-free",
        name: "Coding MiniMax M2.1 Free",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3, cache_read: 0.02 },
        limit: { context: 1000000, output: 65000 },
      },
      "claude-opus-4-6-think": {
        id: "claude-opus-4-6-think",
        name: "Claude Opus 4.6 Think",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-15",
        last_updated: "2025-11-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "qwen3-coder-next": {
        id: "qwen3-coder-next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-02-04",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.55 },
        limit: { context: 262144, input: 262144, output: 65536 },
      },
      "minimax-m2.1": {
        id: "minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 1.15 },
        limit: { context: 204800, output: 131072 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "GPT-4.1 nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03 },
        limit: { context: 1047576, output: 32768 },
      },
      "gemini-3-pro-preview-search": {
        id: "gemini-3-pro-preview-search",
        name: "Gemini 3 Pro Preview Search",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.5 },
        limit: { context: 1000000, output: 65000 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex Mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-15",
        last_updated: "2025-11-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "deepseek-v3.2-think": {
        id: "deepseek-v3.2-think",
        name: "DeepSeek-V3.2-Think",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.45 },
        limit: { context: 131000, output: 64000 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-07",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "Kimi-K2-0905": {
        id: "Kimi-K2-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 262144, output: 262144 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.45 },
        limit: { context: 131000, output: 64000 },
      },
      "qwen3-max-2026-01-23": {
        id: "qwen3-max-2026-01-23",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.34, output: 1.37 },
        limit: { context: 262144, output: 65536 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 20, cache_read: 2.5 },
        limit: { context: 400000, output: 128000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-09",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.75 },
        limit: { context: 200000, output: 65536 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "GPT-4.1 mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1.1, cache_read: 0.548 },
        limit: { context: 204800, output: 131072 },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 5.5, cache_read: 0.11, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-15",
        last_updated: "2025-11-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "minimax-m2.5": {
        id: "minimax-m2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 1.15 },
        limit: { context: 204800, output: 131072 },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 32000 },
      },
      "qwen3-235b-a22b-thinking-2507": {
        id: "qwen3-235b-a22b-thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 2.8 },
        limit: { context: 262144, output: 262144 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.5 },
        limit: { context: 1000000, output: 65000 },
      },
      "qwen3.5-plus": {
        id: "qwen3.5-plus",
        name: "Qwen 3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.66 },
        limit: { context: 1000000, output: 65536 },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.3, output: 16.5, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5-Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.75 },
        limit: { context: 200000, output: 64000 },
      },
      "deepseek-v3.2-fast": {
        id: "deepseek-v3.2-fast",
        name: "DeepSeek-V3.2-Fast",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.1, output: 3.29 },
        limit: { context: 128000, output: 128000 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.41 },
        limit: { context: 128000, output: 32768 },
      },
      "coding-glm-4.7": {
        id: "coding-glm-4.7",
        name: "Coding-GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1.1, cache_read: 0.548 },
        limit: { context: 204800, output: 131072 },
      },
      "coding-glm-5-free": {
        id: "coding-glm-5-free",
        name: "Coding-GLM-5-Free",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 5, cache_read: 0.31 },
        limit: { context: 2000000, output: 65000 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5-Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2, cache_read: 0.25 },
        limit: { context: 128000, output: 16384 },
      },
      "claude-sonnet-4-6-think": {
        id: "claude-sonnet-4-6-think",
        name: "Claude Sonnet 4.6 Think",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  "minimax-coding-plan": {
    id: "minimax-coding-plan",
    env: ["MINIMAX_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimax.io/anthropic/v1",
    name: "MiniMax Coding Plan (minimax.io)",
    doc: "https://platform.minimax.io/docs/coding-plan/intro",
    models: {
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 196608, output: 128000 },
      },
      "MiniMax-M2.5-highspeed": {
        id: "MiniMax-M2.5-highspeed",
        name: "MiniMax-M2.5-highspeed",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  "kimi-for-coding": {
    id: "kimi-for-coding",
    env: ["KIMI_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://api.kimi.com/coding/v1",
    name: "Kimi For Coding",
    doc: "https://www.kimi.com/coding/docs/en/third-party-agents.html",
    models: {
      k2p5: {
        id: "k2p5",
        name: "Kimi K2.5",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11",
        last_updated: "2025-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 262144, output: 32768 },
      },
    },
  },
  mistral: {
    id: "mistral",
    env: ["MISTRAL_API_KEY"],
    npm: "@ai-sdk/mistral",
    name: "Mistral",
    doc: "https://docs.mistral.ai/getting-started/models/",
    models: {
      "devstral-medium-2507": {
        id: "devstral-medium-2507",
        name: "Devstral Medium",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 128000, output: 128000 },
      },
      "labs-devstral-small-2512": {
        id: "labs-devstral-small-2512",
        name: "Devstral Small 2",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 256000 },
      },
      "devstral-medium-latest": {
        id: "devstral-medium-latest",
        name: "Devstral 2 (latest)",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262144, output: 262144 },
      },
      "open-mistral-7b": {
        id: "open-mistral-7b",
        name: "Mistral 7B",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2023-09-27",
        last_updated: "2023-09-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.25 },
        limit: { context: 8000, output: 8000 },
      },
      "mistral-small-2506": {
        id: "mistral-small-2506",
        name: "Mistral Small 3.2",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "mistral-medium-2505": {
        id: "mistral-medium-2505",
        name: "Mistral Medium 3",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 131072 },
      },
      "codestral-latest": {
        id: "codestral-latest",
        name: "Codestral (latest)",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-05-29",
        last_updated: "2025-01-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 4096 },
      },
      "ministral-8b-latest": {
        id: "ministral-8b-latest",
        name: "Ministral 8B (latest)",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 128000, output: 128000 },
      },
      "magistral-small": {
        id: "magistral-small",
        name: "Magistral Small",
        family: "magistral-small",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-03-17",
        last_updated: "2025-03-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral-large-2512": {
        id: "mistral-large-2512",
        name: "Mistral Large 3",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-11-01",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 262144, output: 262144 },
      },
      "ministral-3b-latest": {
        id: "ministral-3b-latest",
        name: "Ministral 3B (latest)",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral-embed": {
        id: "mistral-embed",
        name: "Mistral Embed",
        family: "mistral-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-12-11",
        last_updated: "2023-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8000, output: 3072 },
      },
      "devstral-small-2505": {
        id: "devstral-small-2505",
        name: "Devstral Small 2505",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 128000 },
      },
      "pixtral-12b": {
        id: "pixtral-12b",
        name: "Pixtral 12B",
        family: "pixtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-09-01",
        last_updated: "2024-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 128000 },
      },
      "open-mixtral-8x7b": {
        id: "open-mixtral-8x7b",
        name: "Mixtral 8x7B",
        family: "mixtral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2023-12-11",
        last_updated: "2023-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 32000, output: 32000 },
      },
      "pixtral-large-latest": {
        id: "pixtral-large-latest",
        name: "Pixtral Large (latest)",
        family: "pixtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-11-01",
        last_updated: "2024-11-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral-nemo": {
        id: "mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 128000 },
      },
      "devstral-2512": {
        id: "devstral-2512",
        name: "Devstral 2",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262144, output: 262144 },
      },
      "mistral-large-latest": {
        id: "mistral-large-latest",
        name: "Mistral Large (latest)",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-11-01",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 262144, output: 262144 },
      },
      "mistral-medium-2508": {
        id: "mistral-medium-2508",
        name: "Mistral Medium 3.1",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262144, output: 262144 },
      },
      "mistral-large-2411": {
        id: "mistral-large-2411",
        name: "Mistral Large 2.1",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-11-01",
        last_updated: "2024-11-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 131072, output: 16384 },
      },
      "mistral-small-latest": {
        id: "mistral-small-latest",
        name: "Mistral Small (latest)",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2024-09-01",
        last_updated: "2024-09-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "open-mixtral-8x22b": {
        id: "open-mixtral-8x22b",
        name: "Mixtral 8x22B",
        family: "mixtral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-17",
        last_updated: "2024-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 64000, output: 64000 },
      },
      "mistral-medium-latest": {
        id: "mistral-medium-latest",
        name: "Mistral Medium (latest)",
        family: "mistral-medium",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 128000, output: 16384 },
      },
      "devstral-small-2507": {
        id: "devstral-small-2507",
        name: "Devstral Small",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 128000 },
      },
      "magistral-medium-latest": {
        id: "magistral-medium-latest",
        name: "Magistral Medium (latest)",
        family: "magistral-medium",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-03-17",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 5 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  abacus: {
    id: "abacus",
    env: ["ABACUS_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://routellm.abacus.ai/v1",
    name: "Abacus",
    doc: "https://abacus.ai/help/api",
    models: {
      "gpt-4o-2024-11-20": {
        id: "gpt-4o-2024-11-20",
        name: "GPT-4o (2024-11-20)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-20",
        last_updated: "2024-11-20",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5 Codex",
        family: "gpt",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-4o-mini": {
        id: "gpt-4o-mini",
        name: "GPT-4o Mini",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1 Codex Max",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.2-chat-latest": {
        id: "gpt-5.2-chat-latest",
        name: "GPT-5.2 Chat Latest",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2026-01-01",
        last_updated: "2026-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "grok-4-0709": {
        id: "grok-4-0709",
        name: "Grok 4",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 256000, output: 16384 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 200000, output: 128000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 256000, output: 16384 },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5.3-codex-xhigh": {
        id: "gpt-5.3-codex-xhigh",
        name: "GPT-5.3 Codex XHigh",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "Grok 4.1 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-17",
        last_updated: "2025-11-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 16384 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "gemini-3.1-flash-lite-preview": {
        id: "gemini-3.1-flash-lite-preview",
        name: "Gemini 3.1 Flash Lite Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-01",
        last_updated: "2026-03-01",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.5, cache_read: 0.025, cache_write: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      o3: {
        id: "o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 200000, output: 100000 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 1048576, output: 65536 },
      },
      "claude-opus-4-20250514": {
        id: "claude-opus-4-20250514",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-14",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 200000, output: 32000 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "GPT-4.1 Nano",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1047576, output: 32768 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 32768 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 1047576, output: 32768 },
      },
      "o3-pro": {
        id: "o3-pro",
        name: "o3-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-06-10",
        last_updated: "2025-06-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 40 },
        limit: { context: 200000, output: 100000 },
      },
      "gemini-3.1-pro-preview": {
        id: "gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1048576, output: 65536 },
      },
      "claude-3-7-sonnet-20250219": {
        id: "claude-3-7-sonnet-20250219",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "GPT-4.1 Mini",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6 },
        limit: { context: 1047576, output: 32768 },
      },
      "llama-3.3-70b-versatile": {
        id: "llama-3.3-70b-versatile",
        name: "Llama 3.3 70B Versatile",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.59, output: 0.79 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "kimi-k2-turbo-preview": {
        id: "kimi-k2-turbo-preview",
        name: "Kimi K2 Turbo Preview",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-08",
        last_updated: "2025-07-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 8 },
        limit: { context: 256000, output: 8192 },
      },
      "qwen-2.5-coder-32b": {
        id: "qwen-2.5-coder-32b",
        name: "Qwen 2.5 Coder 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-11",
        last_updated: "2024-11-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.79, output: 0.79 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "route-llm": {
        id: "route-llm",
        name: "Route LLM",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-01-01",
        last_updated: "2024-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.3-chat-latest": {
        id: "gpt-5.3-chat-latest",
        name: "GPT-5.3 Chat Latest",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-01",
        last_updated: "2026-03-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, output: 100000 },
      },
      "qwen3-max": {
        id: "qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6 },
        limit: { context: 131072, output: 16384 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "Grok 4 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 16384 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-sonnet-4-20250514": {
        id: "claude-sonnet-4-20250514",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-14",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5.1-chat-latest": {
        id: "gpt-5.1-chat-latest",
        name: "GPT-5.1 Chat Latest",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 200000, output: 32000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 400000, output: 128000 },
      },
      "zai-org/glm-5": {
        id: "zai-org/glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/glm-4.5": {
        id: "zai-org/glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 128000, output: 8192 },
      },
      "zai-org/glm-4.6": {
        id: "zai-org/glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 128000, output: 8192 },
      },
      "zai-org/glm-4.7": {
        id: "zai-org/glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-R1": {
        id: "deepseek-ai/DeepSeek-R1",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 7 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-15",
        last_updated: "2025-06-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.4 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 128000, output: 8192 },
      },
      "deepseek/deepseek-v3.1": {
        id: "deepseek/deepseek-v3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 1.66 },
        limit: { context: 128000, output: 8192 },
      },
      "meta-llama/Meta-Llama-3.1-8B-Instruct": {
        id: "meta-llama/Meta-Llama-3.1-8B-Instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.05 },
        limit: { context: 128000, output: 4096 },
      },
      "meta-llama/Meta-Llama-3.1-405B-Instruct-Turbo": {
        id: "meta-llama/Meta-Llama-3.1-405B-Instruct-Turbo",
        name: "Llama 3.1 405B Instruct Turbo",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3.5, output: 3.5 },
        limit: { context: 128000, output: 4096 },
      },
      "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8": {
        id: "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
        name: "Llama 4 Maverick 17B 128E Instruct FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.59 },
        limit: { context: 1000000, output: 32768 },
      },
      "Qwen/QwQ-32B": {
        id: "Qwen/QwQ-32B",
        name: "QwQ 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-28",
        last_updated: "2024-11-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 32768, output: 32768 },
      },
      "Qwen/qwen3-coder-480b-a35b-instruct": {
        id: "Qwen/qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 1.2 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3-32B": {
        id: "Qwen/Qwen3-32B",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.29 },
        limit: { context: 128000, output: 8192 },
      },
      "Qwen/Qwen2.5-72B-Instruct": {
        id: "Qwen/Qwen2.5-72B-Instruct",
        name: "Qwen 2.5 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09-19",
        last_updated: "2024-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.38 },
        limit: { context: 128000, output: 8192 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.6 },
        limit: { context: 262144, output: 8192 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT-OSS 120B",
        family: "gpt-oss",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.44 },
        limit: { context: 128000, output: 32768 },
      },
    },
  },
  "fireworks-ai": {
    id: "fireworks-ai",
    env: ["FIREWORKS_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.fireworks.ai/inference/v1/",
    name: "Fireworks AI",
    doc: "https://fireworks.ai/docs/",
    models: {
      "accounts/fireworks/models/kimi-k2-instruct": {
        id: "accounts/fireworks/models/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 128000, output: 16384 },
      },
      "accounts/fireworks/models/glm-4p7": {
        id: "accounts/fireworks/models/glm-4p7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.3 },
        limit: { context: 198000, output: 198000 },
      },
      "accounts/fireworks/models/glm-5": {
        id: "accounts/fireworks/models/glm-5",
        name: "GLM 5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.5 },
        limit: { context: 202752, output: 131072 },
      },
      "accounts/fireworks/models/deepseek-v3p1": {
        id: "accounts/fireworks/models/deepseek-v3p1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.56, output: 1.68 },
        limit: { context: 163840, output: 163840 },
      },
      "accounts/fireworks/models/minimax-m2p1": {
        id: "accounts/fireworks/models/minimax-m2p1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 200000, output: 200000 },
      },
      "accounts/fireworks/models/glm-4p5-air": {
        id: "accounts/fireworks/models/glm-4p5-air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.88 },
        limit: { context: 131072, output: 131072 },
      },
      "accounts/fireworks/models/deepseek-v3p2": {
        id: "accounts/fireworks/models/deepseek-v3p2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.56, output: 1.68, cache_read: 0.28 },
        limit: { context: 160000, output: 160000 },
      },
      "accounts/fireworks/models/minimax-m2p5": {
        id: "accounts/fireworks/models/minimax-m2p5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 196608, output: 196608 },
      },
      "accounts/fireworks/models/gpt-oss-120b": {
        id: "accounts/fireworks/models/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 32768 },
      },
      "accounts/fireworks/models/kimi-k2p5": {
        id: "accounts/fireworks/models/kimi-k2p5",
        name: "Kimi K2.5",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 256000, output: 256000 },
      },
      "accounts/fireworks/models/kimi-k2-thinking": {
        id: "accounts/fireworks/models/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.3 },
        limit: { context: 256000, output: 256000 },
      },
      "accounts/fireworks/models/glm-4p5": {
        id: "accounts/fireworks/models/glm-4p5",
        name: "GLM 4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.19 },
        limit: { context: 131072, output: 131072 },
      },
      "accounts/fireworks/models/gpt-oss-20b": {
        id: "accounts/fireworks/models/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 131072, output: 32768 },
      },
    },
  },
  stepfun: {
    id: "stepfun",
    env: ["STEPFUN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.stepfun.com/v1",
    name: "StepFun",
    doc: "https://platform.stepfun.com/docs/zh/overview/concept",
    models: {
      "step-3.5-flash": {
        id: "step-3.5-flash",
        name: "Step 3.5 Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-29",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.096, output: 0.288, cache_read: 0.019 },
        limit: { context: 256000, input: 256000, output: 256000 },
      },
      "step-2-16k": {
        id: "step-2-16k",
        name: "Step 2 (16K)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-01",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5.21, output: 16.44, cache_read: 1.04 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "step-1-32k": {
        id: "step-1-32k",
        name: "Step 1 (32K)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-01",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.05, output: 9.59, cache_read: 0.41 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
    },
  },
  gitlab: {
    id: "gitlab",
    env: ["GITLAB_TOKEN"],
    npm: "@gitlab/gitlab-ai-provider",
    name: "GitLab Duo",
    doc: "https://docs.gitlab.com/user/duo_agent_platform/",
    models: {
      "duo-chat-gpt-5-2-codex": {
        id: "duo-chat-gpt-5-2-codex",
        name: "Agentic Chat (GPT-5.2 Codex)",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "duo-chat-opus-4-6": {
        id: "duo-chat-opus-4-6",
        name: "Agentic Chat (Claude Opus 4.6)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 64000 },
      },
      "duo-chat-gpt-5-mini": {
        id: "duo-chat-gpt-5-mini",
        name: "Agentic Chat (GPT-5 Mini)",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "duo-chat-sonnet-4-5": {
        id: "duo-chat-sonnet-4-5",
        name: "Agentic Chat (Claude Sonnet 4.5)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2026-01-08",
        last_updated: "2026-01-08",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 64000 },
      },
      "duo-chat-haiku-4-5": {
        id: "duo-chat-haiku-4-5",
        name: "Agentic Chat (Claude Haiku 4.5)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2026-01-08",
        last_updated: "2026-01-08",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 64000 },
      },
      "duo-chat-gpt-5-codex": {
        id: "duo-chat-gpt-5-codex",
        name: "Agentic Chat (GPT-5 Codex)",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "duo-chat-gpt-5-2": {
        id: "duo-chat-gpt-5-2",
        name: "Agentic Chat (GPT-5.2)",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-23",
        last_updated: "2026-01-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "duo-chat-sonnet-4-6": {
        id: "duo-chat-sonnet-4-6",
        name: "Agentic Chat (Claude Sonnet 4.6)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 1000000, output: 64000 },
      },
      "duo-chat-opus-4-5": {
        id: "duo-chat-opus-4-5",
        name: "Agentic Chat (Claude Opus 4.5)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2026-01-08",
        last_updated: "2026-01-08",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 64000 },
      },
      "duo-chat-gpt-5-1": {
        id: "duo-chat-gpt-5-1",
        name: "Agentic Chat (GPT-5.1)",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
    },
  },
  siliconflow: {
    id: "siliconflow",
    env: ["SILICONFLOW_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.siliconflow.com/v1",
    name: "SiliconFlow",
    doc: "https://cloud.siliconflow.com/models",
    models: {
      "nex-agi/DeepSeek-V3.1-Nex-N1": {
        id: "nex-agi/DeepSeek-V3.1-Nex-N1",
        name: "nex-agi/DeepSeek-V3.1-Nex-N1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2 },
        limit: { context: 131000, output: 131000 },
      },
      "zai-org/GLM-4.5-Air": {
        id: "zai-org/GLM-4.5-Air",
        name: "zai-org/GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.86 },
        limit: { context: 131000, output: 131000 },
      },
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "zai-org/GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.9 },
        limit: { context: 205000, output: 205000 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "zai-org/GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 205000, output: 205000 },
      },
      "zai-org/GLM-4.5V": {
        id: "zai-org/GLM-4.5V",
        name: "zai-org/GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.86 },
        limit: { context: 66000, output: 66000 },
      },
      "zai-org/GLM-4.6V": {
        id: "zai-org/GLM-4.6V",
        name: "zai-org/GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-07",
        last_updated: "2025-12-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 131000, output: 131000 },
      },
      "zai-org/GLM-4.5": {
        id: "zai-org/GLM-4.5",
        name: "zai-org/GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131000, output: 131000 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "zai-org/GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 205000, output: 205000 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMaxAI/MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 197000, output: 131000 },
      },
      "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B": {
        id: "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
        name: "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 131000, output: 131000 },
      },
      "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B": {
        id: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B",
        name: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131000, output: 131000 },
      },
      "deepseek-ai/DeepSeek-V3.2-Exp": {
        id: "deepseek-ai/DeepSeek-V3.2-Exp",
        name: "deepseek-ai/DeepSeek-V3.2-Exp",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-10",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-R1": {
        id: "deepseek-ai/DeepSeek-R1",
        name: "deepseek-ai/DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.18 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/deepseek-vl2": {
        id: "deepseek-ai/deepseek-vl2",
        name: "deepseek-ai/deepseek-vl2",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 4000, output: 4000 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "deepseek-ai/DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "deepseek-ai/DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.42 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3": {
        id: "deepseek-ai/DeepSeek-V3",
        name: "deepseek-ai/DeepSeek-V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-26",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "deepseek-ai/DeepSeek-V3.1-Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "ByteDance-Seed/Seed-OSS-36B-Instruct": {
        id: "ByteDance-Seed/Seed-OSS-36B-Instruct",
        name: "ByteDance-Seed/Seed-OSS-36B-Instruct",
        family: "seed",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 0.57 },
        limit: { context: 262000, output: 262000 },
      },
      "tencent/Hunyuan-A13B-Instruct": {
        id: "tencent/Hunyuan-A13B-Instruct",
        name: "tencent/Hunyuan-A13B-Instruct",
        family: "hunyuan",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "tencent/Hunyuan-MT-7B": {
        id: "tencent/Hunyuan-MT-7B",
        name: "tencent/Hunyuan-MT-7B",
        family: "hunyuan",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 33000, output: 33000 },
      },
      "moonshotai/Kimi-K2-Instruct": {
        id: "moonshotai/Kimi-K2-Instruct",
        name: "moonshotai/Kimi-K2-Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.58, output: 2.29 },
        limit: { context: 131000, output: 131000 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "moonshotai/Kimi-K2-Instruct-0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-08",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262000, output: 262000 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "moonshotai/Kimi-K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 3 },
        limit: { context: 262000, output: 262000 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "moonshotai/Kimi-K2-Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-11-07",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 2.5 },
        limit: { context: 262000, output: 262000 },
      },
      "inclusionAI/Ling-flash-2.0": {
        id: "inclusionAI/Ling-flash-2.0",
        name: "inclusionAI/Ling-flash-2.0",
        family: "ling",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "inclusionAI/Ring-flash-2.0": {
        id: "inclusionAI/Ring-flash-2.0",
        name: "inclusionAI/Ring-flash-2.0",
        family: "ring",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "inclusionAI/Ling-mini-2.0": {
        id: "inclusionAI/Ling-mini-2.0",
        name: "inclusionAI/Ling-mini-2.0",
        family: "ling",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-10",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131000, output: 131000 },
      },
      "baidu/ERNIE-4.5-300B-A47B": {
        id: "baidu/ERNIE-4.5-300B-A47B",
        name: "baidu/ERNIE-4.5-300B-A47B",
        family: "ernie",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-02",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 131000, output: 131000 },
      },
      "stepfun-ai/Step-3.5-Flash": {
        id: "stepfun-ai/Step-3.5-Flash",
        name: "stepfun-ai/Step-3.5-Flash",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 262000, output: 262000 },
      },
      "meta-llama/Meta-Llama-3.1-8B-Instruct": {
        id: "meta-llama/Meta-Llama-3.1-8B-Instruct",
        name: "meta-llama/Meta-Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-23",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.06 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen3-VL-30B-A3B-Thinking": {
        id: "Qwen/Qwen3-VL-30B-A3B-Thinking",
        name: "Qwen/Qwen3-VL-30B-A3B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.3 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Instruct": {
        id: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        name: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-32B-Instruct": {
        id: "Qwen/Qwen3-VL-32B-Instruct",
        name: "Qwen/Qwen3-VL-32B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-21",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/QwQ-32B": {
        id: "Qwen/QwQ-32B",
        name: "Qwen/QwQ-32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-06",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.58 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-32B": {
        id: "Qwen/Qwen3-32B",
        name: "Qwen/Qwen3-32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Thinking": {
        id: "Qwen/Qwen3-VL-235B-A22B-Thinking",
        name: "Qwen/Qwen3-VL-235B-A22B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.45, output: 3.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Instruct",
        name: "Qwen/Qwen3-Omni-30B-A3B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen2.5-VL-7B-Instruct": {
        id: "Qwen/Qwen2.5-VL-7B-Instruct",
        name: "Qwen/Qwen2.5-VL-7B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.05 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen3-30B-A3B-Thinking-2507": {
        id: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        name: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.3 },
        limit: { context: 262000, output: 131000 },
      },
      "Qwen/Qwen2.5-32B-Instruct": {
        id: "Qwen/Qwen2.5-32B-Instruct",
        name: "Qwen/Qwen2.5-32B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-19",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-Coder-32B-Instruct": {
        id: "Qwen/Qwen2.5-Coder-32B-Instruct",
        name: "Qwen/Qwen2.5-Coder-32B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-11",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen3-8B": {
        id: "Qwen/Qwen3-8B",
        name: "Qwen/Qwen3-8B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.06 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Thinking": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Thinking",
        name: "Qwen/Qwen3-Omni-30B-A3B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen2.5-7B-Instruct": {
        id: "Qwen/Qwen2.5-7B-Instruct",
        name: "Qwen/Qwen2.5-7B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.05 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-14B-Instruct": {
        id: "Qwen/Qwen2.5-14B-Instruct",
        name: "Qwen/Qwen2.5-14B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-VL-72B-Instruct": {
        id: "Qwen/Qwen2.5-VL-72B-Instruct",
        name: "Qwen/Qwen2.5-VL-72B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 131000, output: 4000 },
      },
      "Qwen/Qwen2.5-72B-Instruct": {
        id: "Qwen/Qwen2.5-72B-Instruct",
        name: "Qwen/Qwen2.5-72B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-72B-Instruct-128K": {
        id: "Qwen/Qwen2.5-72B-Instruct-128K",
        name: "Qwen/Qwen2.5-72B-Instruct-128K",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 131000, output: 4000 },
      },
      "Qwen/Qwen3-235B-A22B": {
        id: "Qwen/Qwen3-235B-A22B",
        name: "Qwen/Qwen3-235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 1.42 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-VL-8B-Instruct": {
        id: "Qwen/Qwen3-VL-8B-Instruct",
        name: "Qwen/Qwen3-VL-8B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.68 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Thinking": {
        id: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        name: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Captioner": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Captioner",
        name: "Qwen/Qwen3-Omni-30B-A3B-Captioner",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen3-VL-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-VL-30B-A3B-Instruct",
        name: "Qwen/Qwen3-VL-30B-A3B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-05",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-8B-Thinking": {
        id: "Qwen/Qwen3-VL-8B-Thinking",
        name: "Qwen/Qwen3-VL-8B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 2 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        name: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-32B-Thinking": {
        id: "Qwen/Qwen3-VL-32B-Thinking",
        name: "Qwen/Qwen3-VL-32B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-21",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-14B": {
        id: "Qwen/Qwen3-14B",
        name: "Qwen/Qwen3-14B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen2.5-VL-32B-Instruct": {
        id: "Qwen/Qwen2.5-VL-32B-Instruct",
        name: "Qwen/Qwen2.5-VL-32B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.27 },
        limit: { context: 131000, output: 131000 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "openai/gpt-oss-120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.45 },
        limit: { context: 131000, output: 8000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "openai/gpt-oss-20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.18 },
        limit: { context: 131000, output: 8000 },
      },
      "THUDM/GLM-4-32B-0414": {
        id: "THUDM/GLM-4-32B-0414",
        name: "THUDM/GLM-4-32B-0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.27 },
        limit: { context: 33000, output: 33000 },
      },
      "THUDM/GLM-4-9B-0414": {
        id: "THUDM/GLM-4-9B-0414",
        name: "THUDM/GLM-4-9B-0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.086, output: 0.086 },
        limit: { context: 33000, output: 33000 },
      },
      "THUDM/GLM-Z1-32B-0414": {
        id: "THUDM/GLM-Z1-32B-0414",
        name: "THUDM/GLM-Z1-32B-0414",
        family: "glm-z",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "THUDM/GLM-Z1-9B-0414": {
        id: "THUDM/GLM-Z1-9B-0414",
        name: "THUDM/GLM-Z1-9B-0414",
        family: "glm-z",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.086, output: 0.086 },
        limit: { context: 131000, output: 131000 },
      },
    },
  },
  togetherai: {
    id: "togetherai",
    env: ["TOGETHER_API_KEY"],
    npm: "@ai-sdk/togetherai",
    name: "Together AI",
    doc: "https://docs.together.ai/docs/serverless-models",
    models: {
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 200000, output: 200000 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2 },
        limit: { context: 200000, output: 200000 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 202752, output: 131072 },
      },
      "essentialai/Rnj-1-Instruct": {
        id: "essentialai/Rnj-1-Instruct",
        name: "Rnj-1 Instruct",
        family: "rnj",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-05",
        last_updated: "2025-12-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 32768, output: 32768 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.06 },
        limit: { context: 204800, output: 131072 },
      },
      "deepseek-ai/DeepSeek-V3-1": {
        id: "deepseek-ai/DeepSeek-V3-1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.7 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-ai/DeepSeek-R1": {
        id: "deepseek-ai/DeepSeek-R1",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-12-26",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 7 },
        limit: { context: 163839, output: 163839 },
      },
      "deepseek-ai/DeepSeek-V3": {
        id: "deepseek-ai/DeepSeek-V3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.25, output: 1.25 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/Kimi-K2-Instruct": {
        id: "moonshotai/Kimi-K2-Instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.8 },
        limit: { context: 262144, output: 262144 },
      },
      "meta-llama/Llama-3.3-70B-Instruct-Turbo": {
        id: "meta-llama/Llama-3.3-70B-Instruct-Turbo",
        name: "Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.88, output: 0.88 },
        limit: { context: 131072, output: 131072 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507-tput": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507-tput",
        name: "Qwen3 235B A22B Instruct 2507 FP8",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3.5-397B-A17B": {
        id: "Qwen/Qwen3.5-397B-A17B",
        name: "Qwen3.5 397B A17B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 262144, output: 130000 },
      },
      "Qwen/Qwen3-Coder-Next-FP8": {
        id: "Qwen/Qwen3-Coder-Next-FP8",
        name: "Qwen3 Coder Next FP8",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-03",
        release_date: "2026-02-03",
        last_updated: "2026-02-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.2 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 2 },
        limit: { context: 262144, output: 262144 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 131072 },
      },
    },
  },
  clarifai: {
    id: "clarifai",
    env: ["CLARIFAI_PAT"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.clarifai.com/v2/ext/openai/v1",
    name: "Clarifai",
    doc: "https://docs.clarifai.com/compute/inference/",
    models: {
      "minimaxai/chat-completion/models/MiniMax-M2_5-high-throughput": {
        id: "minimaxai/chat-completion/models/MiniMax-M2_5-high-throughput",
        name: "MiniMax-M2.5 High Throughput",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "arcee_ai/AFM/models/trinity-mini": {
        id: "arcee_ai/AFM/models/trinity-mini",
        name: "Trinity Mini",
        family: "trinity-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12",
        last_updated: "2026-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.045, output: 0.15 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-ai/deepseek-ocr/models/DeepSeek-OCR": {
        id: "deepseek-ai/deepseek-ocr/models/DeepSeek-OCR",
        name: "DeepSeek OCR",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-20",
        last_updated: "2026-02-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.7 },
        limit: { context: 8192, output: 8192 },
      },
      "clarifai/main/models/mm-poly-8b": {
        id: "clarifai/main/models/mm-poly-8b",
        name: "MM Poly 8B",
        family: "mm-poly",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-06",
        last_updated: "2026-02-25",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.658, output: 1.11 },
        limit: { context: 32768, output: 4096 },
      },
      "qwen/qwenCoder/models/Qwen3-Coder-30B-A3B-Instruct": {
        id: "qwen/qwenCoder/models/Qwen3-Coder-30B-A3B-Instruct",
        name: "Qwen3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-31",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11458, output: 0.74812 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwenLM/models/Qwen3-30B-A3B-Instruct-2507": {
        id: "qwen/qwenLM/models/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-30",
        last_updated: "2026-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.5 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwenLM/models/Qwen3-30B-A3B-Thinking-2507": {
        id: "qwen/qwenLM/models/Qwen3-30B-A3B-Thinking-2507",
        name: "Qwen3 30B A3B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2026-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.36, output: 1.3 },
        limit: { context: 262144, output: 131072 },
      },
      "mistralai/completion/models/Ministral-3-14B-Reasoning-2512": {
        id: "mistralai/completion/models/Ministral-3-14B-Reasoning-2512",
        name: "Ministral 3 14B Reasoning 2512",
        family: "ministral",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-01",
        last_updated: "2025-12-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 1.7 },
        limit: { context: 262144, output: 262144 },
      },
      "mistralai/completion/models/Ministral-3-3B-Reasoning-2512": {
        id: "mistralai/completion/models/Ministral-3-3B-Reasoning-2512",
        name: "Ministral 3 3B Reasoning 2512",
        family: "ministral",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12",
        last_updated: "2026-02-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.039, output: 0.54825 },
        limit: { context: 262144, output: 262144 },
      },
      "openai/chat-completion/models/gpt-oss-120b-high-throughput": {
        id: "openai/chat-completion/models/gpt-oss-120b-high-throughput",
        name: "GPT OSS 120B High Throughput",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2026-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.36 },
        limit: { context: 131072, output: 16384 },
      },
      "openai/chat-completion/models/gpt-oss-20b": {
        id: "openai/chat-completion/models/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.045, output: 0.18 },
        limit: { context: 131072, output: 16384 },
      },
    },
  },
  berget: {
    id: "berget",
    env: ["BERGET_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.berget.ai/v1",
    name: "Berget.AI",
    doc: "https://api.berget.ai",
    models: {
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.3 },
        limit: { context: 128000, output: 8192 },
      },
      "BAAI/bge-reranker-v2-m3": {
        id: "BAAI/bge-reranker-v2-m3",
        name: "bge-reranker-v2-m3",
        family: "bge",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-04",
        release_date: "2025-04-23",
        last_updated: "2025-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 512, output: 512 },
      },
      "intfloat/multilingual-e5-large-instruct": {
        id: "intfloat/multilingual-e5-large-instruct",
        name: "Multilingual-E5-large-instruct",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-04",
        release_date: "2025-04-27",
        last_updated: "2025-04-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "intfloat/multilingual-e5-large": {
        id: "intfloat/multilingual-e5-large",
        name: "Multilingual-E5-large",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-09",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "KBLab/kb-whisper-large": {
        id: "KBLab/kb-whisper-large",
        name: "KB-Whisper-Large",
        family: "whisper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-04",
        release_date: "2025-04-27",
        last_updated: "2025-04-27",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 3 },
        limit: { context: 480000, output: 4800 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-04-27",
        last_updated: "2025-04-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 0.9 },
        limit: { context: 128000, output: 8192 },
      },
      "mistralai/Mistral-Small-3.2-24B-Instruct-2506": {
        id: "mistralai/Mistral-Small-3.2-24B-Instruct-2506",
        name: "Mistral Small 3.2 24B Instruct 2506",
        family: "mistral-small",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-10-01",
        last_updated: "2025-10-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 32000, output: 8192 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT-OSS-120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 128000, output: 8192 },
      },
    },
  },
  lucidquery: {
    id: "lucidquery",
    env: ["LUCIDQUERY_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://lucidquery.com/api/v1",
    name: "LucidQuery AI",
    doc: "https://lucidquery.com/api/docs",
    models: {
      "lucidquery-nexus-coder": {
        id: "lucidquery-nexus-coder",
        name: "LucidQuery Nexus Coder",
        family: "lucid",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-01",
        release_date: "2025-09-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 5 },
        limit: { context: 250000, output: 60000 },
      },
      "lucidnova-rf1-100b": {
        id: "lucidnova-rf1-100b",
        name: "LucidNova RF1 100B",
        family: "nova",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-09-16",
        release_date: "2024-12-28",
        last_updated: "2025-09-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 5 },
        limit: { context: 120000, output: 8000 },
      },
    },
  },
  "zhipuai-coding-plan": {
    id: "zhipuai-coding-plan",
    env: ["ZHIPU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://open.bigmodel.cn/api/coding/paas/v4",
    name: "Zhipu AI Coding Plan",
    doc: "https://docs.bigmodel.cn/cn/coding-plan/overview",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.6v-flash": {
        id: "glm-4.6v-flash",
        name: "GLM-4.6V-Flash",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "glm-4.5v": {
        id: "glm-4.5v",
        name: "GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 16384 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.5-flash": {
        id: "glm-4.5-flash",
        name: "GLM-4.5-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
    },
  },
  deepseek: {
    id: "deepseek",
    env: ["DEEPSEEK_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.deepseek.com",
    name: "DeepSeek",
    doc: "https://api-docs.deepseek.com/quick_start/pricing",
    models: {
      "deepseek-reasoner": {
        id: "deepseek-reasoner",
        name: "DeepSeek Reasoner",
        family: "deepseek-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-12-01",
        last_updated: "2026-02-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 0.42, cache_read: 0.028 },
        limit: { context: 128000, output: 64000 },
      },
      "deepseek-chat": {
        id: "deepseek-chat",
        name: "DeepSeek Chat",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-12-01",
        last_updated: "2026-02-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 0.42, cache_read: 0.028 },
        limit: { context: 128000, output: 8192 },
      },
    },
  },
  lmstudio: {
    id: "lmstudio",
    env: ["LMSTUDIO_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "http://127.0.0.1:1234/v1",
    name: "LMStudio",
    doc: "https://lmstudio.ai/models",
    models: {
      "qwen/qwen3-30b-a3b-2507": {
        id: "qwen/qwen3-30b-a3b-2507",
        name: "Qwen3 30B A3B 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 16384 },
      },
      "qwen/qwen3-coder-30b": {
        id: "qwen/qwen3-coder-30b",
        name: "Qwen3 Coder 30B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 32768 },
      },
    },
  },
  openrouter: {
    id: "openrouter",
    env: ["OPENROUTER_API_KEY"],
    npm: "@openrouter/ai-sdk-provider",
    api: "https://openrouter.ai/api/v1",
    name: "OpenRouter",
    doc: "https://openrouter.ai/models",
    models: {
      "prime-intellect/intellect-3": {
        id: "prime-intellect/intellect-3",
        name: "Intellect 3",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 131072, output: 8192 },
      },
      "featherless/qwerky-72b": {
        id: "featherless/qwerky-72b",
        name: "Qwerky 72B",
        family: "qwerky",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-20",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "allenai/molmo-2-8b:free": {
        id: "allenai/molmo-2-8b:free",
        name: "Molmo2 8B (free)",
        family: "allenai",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-09",
        last_updated: "2026-01-31",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 36864, output: 36864 },
      },
      "nvidia/nemotron-nano-9b-v2:free": {
        id: "nvidia/nemotron-nano-9b-v2:free",
        name: "Nemotron Nano 9B V2 (free)",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-09-05",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "nvidia/nemotron-nano-12b-v2-vl:free": {
        id: "nvidia/nemotron-nano-12b-v2-vl:free",
        name: "Nemotron Nano 12B 2 VL (free)",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-10-28",
        last_updated: "2026-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "nvidia/nemotron-3-nano-30b-a3b:free": {
        id: "nvidia/nemotron-3-nano-30b-a3b:free",
        name: "Nemotron 3 Nano 30B A3B (free)",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-12-14",
        last_updated: "2026-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 256000 },
      },
      "nvidia/nemotron-nano-9b-v2": {
        id: "nvidia/nemotron-nano-9b-v2",
        name: "nvidia-nemotron-nano-9b-v2",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-08-18",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.16 },
        limit: { context: 131072, output: 131072 },
      },
      "arcee-ai/trinity-large-preview:free": {
        id: "arcee-ai/trinity-large-preview:free",
        name: "Trinity Large Preview",
        family: "trinity",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-28",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "arcee-ai/trinity-mini:free": {
        id: "arcee-ai/trinity-mini:free",
        name: "Trinity Mini",
        family: "trinity-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-28",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "MiMo-V2-Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-14",
        last_updated: "2025-12-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.01 },
        limit: { context: 262144, output: 65536 },
      },
      "microsoft/mai-ds-r1:free": {
        id: "microsoft/mai-ds-r1:free",
        name: "MAI DS R1 (free)",
        family: "mai",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-21",
        last_updated: "2025-04-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "sarvamai/sarvam-m:free": {
        id: "sarvamai/sarvam-m:free",
        name: "Sarvam-M (free)",
        family: "sarvam",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-25",
        last_updated: "2025-05-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "liquid/lfm-2.5-1.2b-thinking:free": {
        id: "liquid/lfm-2.5-1.2b-thinking:free",
        name: "LFM2.5-1.2B-Thinking (free)",
        family: "liquid",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-20",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 32768 },
      },
      "liquid/lfm-2.5-1.2b-instruct:free": {
        id: "liquid/lfm-2.5-1.2b-instruct:free",
        name: "LFM2.5-1.2B-Instruct (free)",
        family: "liquid",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-20",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 32768 },
      },
      "inception/mercury-2": {
        id: "inception/mercury-2",
        name: "Mercury 2",
        family: "mercury",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-04",
        last_updated: "2026-03-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 50000 },
      },
      "inception/mercury": {
        id: "inception/mercury",
        name: "Mercury",
        family: "mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-06-26",
        last_updated: "2025-06-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 32000 },
      },
      "inception/mercury-coder": {
        id: "inception/mercury-coder",
        name: "Mercury Coder",
        family: "mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-04-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 32000 },
      },
      "thudm/glm-z1-32b:free": {
        id: "thudm/glm-z1-32b:free",
        name: "GLM Z1 32B (free)",
        family: "glm-z",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "sourceful/riverflow-v2-fast-preview": {
        id: "sourceful/riverflow-v2-fast-preview",
        name: "Riverflow V2 Fast Preview",
        family: "sourceful",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-08",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "sourceful/riverflow-v2-max-preview": {
        id: "sourceful/riverflow-v2-max-preview",
        name: "Riverflow V2 Max Preview",
        family: "sourceful",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-08",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "sourceful/riverflow-v2-standard-preview": {
        id: "sourceful/riverflow-v2-standard-preview",
        name: "Riverflow V2 Standard Preview",
        family: "sourceful",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-08",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "rekaai/reka-flash-3": {
        id: "rekaai/reka-flash-3",
        name: "Reka Flash 3",
        family: "reka",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "stepfun/step-3.5-flash:free": {
        id: "stepfun/step-3.5-flash:free",
        name: "Step 3.5 Flash (free)",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 256000 },
      },
      "stepfun/step-3.5-flash": {
        id: "stepfun/step-3.5-flash",
        name: "Step 3.5 Flash",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.02 },
        limit: { context: 256000, output: 256000 },
      },
      "cognitivecomputations/dolphin3.0-r1-mistral-24b": {
        id: "cognitivecomputations/dolphin3.0-r1-mistral-24b",
        name: "Dolphin3.0 R1 Mistral 24B",
        family: "mistral",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-02-13",
        last_updated: "2025-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "cognitivecomputations/dolphin3.0-mistral-24b": {
        id: "cognitivecomputations/dolphin3.0-mistral-24b",
        name: "Dolphin3.0 Mistral 24B",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-02-13",
        last_updated: "2025-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "cognitivecomputations/dolphin-mistral-24b-venice-edition:free": {
        id: "cognitivecomputations/dolphin-mistral-24b-venice-edition:free",
        name: "Uncensored (free)",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-07-09",
        last_updated: "2026-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "kwaipilot/kat-coder-pro:free": {
        id: "kwaipilot/kat-coder-pro:free",
        name: "Kat Coder Pro (free)",
        family: "kat-coder",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-10",
        last_updated: "2025-11-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 65536 },
      },
      "deepseek/deepseek-v3.1-terminus:exacto": {
        id: "deepseek/deepseek-v3.1-terminus:exacto",
        name: "DeepSeek V3.1 Terminus (exacto)",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 131072, output: 65536 },
      },
      "deepseek/deepseek-r1-0528:free": {
        id: "deepseek/deepseek-r1-0528:free",
        name: "R1 0528 (free)",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-r1-distill-qwen-14b": {
        id: "deepseek/deepseek-r1-distill-qwen-14b",
        name: "DeepSeek R1 Distill Qwen 14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-29",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 8192 },
      },
      "deepseek/deepseek-r1:free": {
        id: "deepseek/deepseek-r1:free",
        name: "R1 (free)",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-r1-0528-qwen3-8b:free": {
        id: "deepseek/deepseek-r1-0528-qwen3-8b:free",
        name: "Deepseek R1 0528 Qwen3 8B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-29",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek/deepseek-v3.2-speciale": {
        id: "deepseek/deepseek-v3.2-speciale",
        name: "DeepSeek V3.2 Speciale",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-chat-v3.1": {
        id: "deepseek/deepseek-chat-v3.1",
        name: "DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-chat-v3-0324": {
        id: "deepseek/deepseek-chat-v3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 16384, output: 8192 },
      },
      "deepseek/deepseek-r1-distill-llama-70b": {
        id: "deepseek/deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-23",
        last_updated: "2025-01-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek/deepseek-v3.1-terminus": {
        id: "deepseek/deepseek-v3.1-terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 131072, output: 65536 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 0.4 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-v3-base:free": {
        id: "deepseek/deepseek-v3-base:free",
        name: "DeepSeek V3 Base (free)",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-29",
        last_updated: "2025-03-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "openrouter/hunter-alpha": {
        id: "openrouter/hunter-alpha",
        name: "Hunter Alpha",
        family: "alpha",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2026-03-11",
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1048576, output: 64000 },
      },
      "openrouter/sherlock-think-alpha": {
        id: "openrouter/sherlock-think-alpha",
        name: "Sherlock Think Alpha",
        family: "sherlock",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-15",
        last_updated: "2025-12-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1840000, output: 0 },
      },
      "openrouter/sherlock-dash-alpha": {
        id: "openrouter/sherlock-dash-alpha",
        name: "Sherlock Dash Alpha",
        family: "sherlock",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-15",
        last_updated: "2025-12-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1840000, output: 0 },
      },
      "openrouter/free": {
        id: "openrouter/free",
        name: "Free Models Router",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-01",
        last_updated: "2026-02-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, input: 200000, output: 8000 },
      },
      "openrouter/healer-alpha": {
        id: "openrouter/healer-alpha",
        name: "Healer Alpha",
        family: "alpha",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2026-03-11",
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text", "image", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 64000 },
      },
      "openrouter/aurora-alpha": {
        id: "openrouter/aurora-alpha",
        name: "Aurora Alpha",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-09",
        last_updated: "2026-02-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 50000 },
      },
      "moonshotai/kimi-dev-72b:free": {
        id: "moonshotai/kimi-dev-72b:free",
        name: "Kimi Dev 72b (free)",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-16",
        last_updated: "2025-06-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/kimi-k2": {
        id: "moonshotai/kimi-k2",
        name: "Kimi K2",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 131072, output: 32768 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 Instruct 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 16384 },
      },
      "moonshotai/kimi-k2-0905:exacto": {
        id: "moonshotai/kimi-k2-0905:exacto",
        name: "Kimi K2 Instruct 0905 (exacto)",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 16384 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2:free": {
        id: "moonshotai/kimi-k2:free",
        name: "Kimi K2 (free)",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32800, output: 32800 },
      },
      "google/gemini-2.5-flash-lite-preview-09-2025": {
        id: "google/gemini-2.5-flash-lite-preview-09-2025",
        name: "Gemini 2.5 Flash Lite Preview 09-25",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-pro-preview-customtools": {
        id: "google/gemini-3.1-pro-preview-customtools",
        name: "Gemini 3.1 Pro Preview Custom Tools",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro-preview-06-05": {
        id: "google/gemini-2.5-pro-preview-06-05",
        name: "Gemini 2.5 Pro Preview 06-05",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-3n-e4b-it:free": {
        id: "google/gemma-3n-e4b-it:free",
        name: "Gemma 3n 4B (free)",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2000 },
      },
      "google/gemini-2.5-flash-preview-09-2025": {
        id: "google/gemini-2.5-flash-preview-09-2025",
        name: "Gemini 2.5 Flash Preview 09-25",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.031 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro-preview-05-06": {
        id: "google/gemini-2.5-pro-preview-05-06",
        name: "Gemini 2.5 Pro Preview 05-06",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-05-06",
        last_updated: "2025-05-06",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-3n-e2b-it:free": {
        id: "google/gemma-3n-e2b-it:free",
        name: "Gemma 3n 2B (free)",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2000 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-07-17",
        last_updated: "2025-07-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.0-flash-001": {
        id: "google/gemini-2.0-flash-001",
        name: "Gemini 2.0 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 8192 },
      },
      "google/gemini-3.1-flash-lite-preview": {
        id: "google/gemini-3.1-flash-lite-preview",
        name: "Gemini 3.1 Flash Lite Preview",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image", "video", "pdf", "audio"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.25,
          output: 1.5,
          reasoning: 1.5,
          cache_read: 0.025,
          cache_write: 0.083,
          input_audio: 0.5,
          output_audio: 0.5,
        },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-3-12b-it:free": {
        id: "google/gemma-3-12b-it:free",
        name: "Gemma 3 12B (free)",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "google/gemini-2.5-flash-lite": {
        id: "google/gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-pro-preview": {
        id: "google/gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.0-flash-exp:free": {
        id: "google/gemini-2.0-flash-exp:free",
        name: "Gemini 2.0 Flash Experimental (free)",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1048576, output: 1048576 },
      },
      "google/gemma-2-9b-it": {
        id: "google/gemma-2-9b-it",
        name: "Gemma 2 9B",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-28",
        last_updated: "2024-06-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09 },
        limit: { context: 8192, output: 8192 },
      },
      "google/gemma-3-4b-it:free": {
        id: "google/gemma-3-4b-it:free",
        name: "Gemma 3 4B (free)",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "google/gemma-3n-e4b-it": {
        id: "google/gemma-3n-e4b-it",
        name: "Gemma 3n 4B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04 },
        limit: { context: 32768, output: 32768 },
      },
      "google/gemini-3-pro-preview": {
        id: "google/gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1050000, output: 66000 },
      },
      "google/gemma-3-12b-it": {
        id: "google/gemma-3-12b-it",
        name: "Gemma 3 12B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.1 },
        limit: { context: 131072, output: 131072 },
      },
      "google/gemma-3-4b-it": {
        id: "google/gemma-3-4b-it",
        name: "Gemma 3 4B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01703, output: 0.06815 },
        limit: { context: 96000, output: 96000 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Gemma 3 27B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.15 },
        limit: { context: 96000, output: 96000 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-3-27b-it:free": {
        id: "google/gemma-3-27b-it:free",
        name: "Gemma 3 27B (free)",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "z-ai/glm-5": {
        id: "z-ai/glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 202752, output: 131000 },
      },
      "z-ai/glm-4.5-air": {
        id: "z-ai/glm-4.5-air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 128000, output: 96000 },
      },
      "z-ai/glm-4.5": {
        id: "z-ai/glm-4.5",
        name: "GLM 4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 128000, output: 96000 },
      },
      "z-ai/glm-4.6:exacto": {
        id: "z-ai/glm-4.6:exacto",
        name: "GLM 4.6 (exacto)",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.9, cache_read: 0.11 },
        limit: { context: 200000, output: 128000 },
      },
      "z-ai/glm-4.7-flash": {
        id: "z-ai/glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4 },
        limit: { context: 200000, output: 65535 },
      },
      "z-ai/glm-4.5-air:free": {
        id: "z-ai/glm-4.5-air:free",
        name: "GLM 4.5 Air (free)",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 96000 },
      },
      "z-ai/glm-4.6": {
        id: "z-ai/glm-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11 },
        limit: { context: 200000, output: 128000 },
      },
      "z-ai/glm-4.7": {
        id: "z-ai/glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11 },
        limit: { context: 204800, output: 131072 },
      },
      "z-ai/glm-4.5v": {
        id: "z-ai/glm-4.5v",
        name: "GLM 4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8 },
        limit: { context: 64000, output: 16384 },
      },
      "qwen/qwen3-next-80b-a3b-thinking": {
        id: "qwen/qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwen-2.5-vl-7b-instruct:free": {
        id: "qwen/qwen-2.5-vl-7b-instruct:free",
        name: "Qwen2.5-VL 7B Instruct (free)",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02",
        release_date: "2024-08-28",
        last_updated: "2024-08-28",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3-32b:free": {
        id: "qwen/qwen3-32b:free",
        name: "Qwen3 32B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-coder:free": {
        id: "qwen/qwen3-coder:free",
        name: "Qwen3 Coder 480B A35B Instruct (free)",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 66536 },
      },
      "qwen/qwen3-coder-flash": {
        id: "qwen/qwen3-coder-flash",
        name: "Qwen3 Coder Flash",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 128000, output: 66536 },
      },
      "qwen/qwen3-30b-a3b:free": {
        id: "qwen/qwen3-30b-a3b:free",
        name: "Qwen3 30B A3B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-235b-a22b-07-25:free": {
        id: "qwen/qwen3-235b-a22b-07-25:free",
        name: "Qwen3 235B A22B Instruct 2507 (free)",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-07-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 131072 },
      },
      "qwen/qwen3-14b:free": {
        id: "qwen/qwen3-14b:free",
        name: "Qwen3 14B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-coder": {
        id: "qwen/qwen3-coder",
        name: "Qwen3 Coder",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 262144, output: 66536 },
      },
      "qwen/qwq-32b:free": {
        id: "qwen/qwq-32b:free",
        name: "QwQ 32B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3.5-397b-a17b": {
        id: "qwen/qwen3.5-397b-a17b",
        name: "Qwen3.5 397B A17B",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-coder:exacto": {
        id: "qwen/qwen3-coder:exacto",
        name: "Qwen3 Coder (exacto)",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.38, output: 1.53 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen-2.5-coder-32b-instruct": {
        id: "qwen/qwen-2.5-coder-32b-instruct",
        name: "Qwen2.5 Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-11",
        last_updated: "2024-11-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "qwen/qwen3.5-plus-02-15": {
        id: "qwen/qwen3.5-plus-02-15",
        name: "Qwen3.5 Plus 2026-02-15",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2.4 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen/qwen3-30b-a3b-instruct-2507": {
        id: "qwen/qwen3-30b-a3b-instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262000, output: 262000 },
      },
      "qwen/qwen2.5-vl-72b-instruct": {
        id: "qwen/qwen2.5-vl-72b-instruct",
        name: "Qwen2.5 VL 72B Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-02-01",
        last_updated: "2025-02-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
      "qwen/qwen3-coder-30b-a3b-instruct": {
        id: "qwen/qwen3-coder-30b-a3b-instruct",
        name: "Qwen3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.27 },
        limit: { context: 160000, output: 65536 },
      },
      "qwen/qwen3-235b-a22b-07-25": {
        id: "qwen/qwen3-235b-a22b-07-25",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-07-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.85 },
        limit: { context: 262144, output: 131072 },
      },
      "qwen/qwen3-235b-a22b:free": {
        id: "qwen/qwen3-235b-a22b:free",
        name: "Qwen3 235B A22B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "qwen/qwen3-next-80b-a3b-instruct:free": {
        id: "qwen/qwen3-next-80b-a3b-instruct:free",
        name: "Qwen3 Next 80B A3B Instruct (free)",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwen3-4b:free": {
        id: "qwen/qwen3-4b:free",
        name: "Qwen3 4B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-30",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-8b:free": {
        id: "qwen/qwen3-8b:free",
        name: "Qwen3 8B (free)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-30b-a3b-thinking-2507": {
        id: "qwen/qwen3-30b-a3b-thinking-2507",
        name: "Qwen3 30B A3B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262000, output: 262000 },
      },
      "qwen/qwen2.5-vl-32b-instruct:free": {
        id: "qwen/qwen2.5-vl-32b-instruct:free",
        name: "Qwen2.5 VL 32B Instruct (free)",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "qwen/qwen3-235b-a22b-thinking-2507": {
        id: "qwen/qwen3-235b-a22b-thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.078, output: 0.312 },
        limit: { context: 262144, output: 81920 },
      },
      "qwen/qwen3-next-80b-a3b-instruct": {
        id: "qwen/qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwen2.5-vl-72b-instruct:free": {
        id: "qwen/qwen2.5-vl-72b-instruct:free",
        name: "Qwen2.5 VL 72B Instruct (free)",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02",
        release_date: "2025-02-01",
        last_updated: "2025-02-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3-max": {
        id: "qwen/qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6 },
        limit: { context: 262144, output: 32768 },
      },
      "x-ai/grok-3": {
        id: "x-ai/grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75, cache_write: 15 },
        limit: { context: 131072, output: 8192 },
      },
      "x-ai/grok-code-fast-1": {
        id: "x-ai/grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "x-ai/grok-4-fast": {
        id: "x-ai/grok-4-fast",
        name: "Grok 4 Fast",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05, cache_write: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "x-ai/grok-4": {
        id: "x-ai/grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75, cache_write: 15 },
        limit: { context: 256000, output: 64000 },
      },
      "x-ai/grok-4.1-fast": {
        id: "x-ai/grok-4.1-fast",
        name: "Grok 4.1 Fast",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05, cache_write: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "x-ai/grok-3-mini-beta": {
        id: "x-ai/grok-3-mini-beta",
        name: "Grok 3 Mini Beta",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075, cache_write: 0.5 },
        limit: { context: 131072, output: 8192 },
      },
      "x-ai/grok-3-mini": {
        id: "x-ai/grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075, cache_write: 0.5 },
        limit: { context: 131072, output: 8192 },
      },
      "x-ai/grok-4.20-multi-agent-beta": {
        id: "x-ai/grok-4.20-multi-agent-beta",
        name: "Grok 4.20 Multi - Agent Beta",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.2, context_over_200k: { input: 4, output: 12 } },
        limit: { context: 2000000, output: 30000 },
        status: "beta",
      },
      "x-ai/grok-4.20-beta": {
        id: "x-ai/grok-4.20-beta",
        name: "Grok 4.20 Beta",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.2, context_over_200k: { input: 4, output: 12 } },
        limit: { context: 2000000, output: 30000 },
        status: "beta",
      },
      "x-ai/grok-3-beta": {
        id: "x-ai/grok-3-beta",
        name: "Grok 3 Beta",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75, cache_write: 15 },
        limit: { context: 131072, output: 8192 },
      },
      "meta-llama/llama-3.3-70b-instruct:free": {
        id: "meta-llama/llama-3.3-70b-instruct:free",
        name: "Llama 3.3 70B Instruct (free)",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "meta-llama/llama-4-scout:free": {
        id: "meta-llama/llama-4-scout:free",
        name: "Llama 4 Scout (free)",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 64000 },
      },
      "meta-llama/llama-3.2-11b-vision-instruct": {
        id: "meta-llama/llama-3.2-11b-vision-instruct",
        name: "Llama 3.2 11B Vision Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "meta-llama/llama-3.2-3b-instruct:free": {
        id: "meta-llama/llama-3.2-3b-instruct:free",
        name: "Llama 3.2 3B Instruct (free)",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "meta-llama/llama-3.1-405b-instruct:free": {
        id: "meta-llama/llama-3.1-405b-instruct:free",
        name: "Llama 3.1 405B Instruct (free)",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-07-23",
        last_updated: "2025-04-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "tngtech/tng-r1t-chimera:free": {
        id: "tngtech/tng-r1t-chimera:free",
        name: "R1T Chimera (free)",
        family: "tngtech",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-26",
        last_updated: "2026-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "tngtech/deepseek-r1t2-chimera:free": {
        id: "tngtech/deepseek-r1t2-chimera:free",
        name: "DeepSeek R1T2 Chimera (free)",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-08",
        last_updated: "2025-07-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 163840, output: 163840 },
      },
      "mistralai/devstral-medium-2507": {
        id: "mistralai/devstral-medium-2507",
        name: "Devstral Medium",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 131072 },
      },
      "mistralai/devstral-small-2505:free": {
        id: "mistralai/devstral-small-2505:free",
        name: "Devstral Small 2505 (free)",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-21",
        last_updated: "2025-05-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "mistralai/mistral-medium-3": {
        id: "mistralai/mistral-medium-3",
        name: "Mistral Medium 3",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 131072 },
      },
      "mistralai/codestral-2508": {
        id: "mistralai/codestral-2508",
        name: "Codestral 2508",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 256000 },
      },
      "mistralai/devstral-2512:free": {
        id: "mistralai/devstral-2512:free",
        name: "Devstral 2 2512 (free)",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "mistralai/mistral-small-3.1-24b-instruct": {
        id: "mistralai/mistral-small-3.1-24b-instruct",
        name: "Mistral Small 3.1 24B Instruct",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-17",
        last_updated: "2025-03-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "mistralai/devstral-small-2505": {
        id: "mistralai/devstral-small-2505",
        name: "Devstral Small",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.12 },
        limit: { context: 128000, output: 128000 },
      },
      "mistralai/mistral-7b-instruct:free": {
        id: "mistralai/mistral-7b-instruct:free",
        name: "Mistral 7B Instruct (free)",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2024-05-27",
        last_updated: "2024-05-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "mistralai/devstral-2512": {
        id: "mistralai/devstral-2512",
        name: "Devstral 2 2512",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "mistralai/mistral-small-3.2-24b-instruct": {
        id: "mistralai/mistral-small-3.2-24b-instruct",
        name: "Mistral Small 3.2 24B Instruct",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 96000, output: 8192 },
      },
      "mistralai/mistral-small-3.2-24b-instruct:free": {
        id: "mistralai/mistral-small-3.2-24b-instruct:free",
        name: "Mistral Small 3.2 24B (free)",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 96000, output: 96000 },
      },
      "mistralai/devstral-small-2507": {
        id: "mistralai/devstral-small-2507",
        name: "Devstral Small 1.1",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 131072, output: 131072 },
      },
      "mistralai/mistral-nemo:free": {
        id: "mistralai/mistral-nemo:free",
        name: "Mistral Nemo (free)",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-19",
        last_updated: "2024-07-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
      "mistralai/mistral-medium-3.1": {
        id: "mistralai/mistral-medium-3.1",
        name: "Mistral Medium 3.1",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262144, output: 262144 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "GPT-5.3-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "GPT-5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 272000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "GPT-5.1-Codex-Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-120b:exacto": {
        id: "openai/gpt-oss-120b:exacto",
        name: "GPT OSS 120B (exacto)",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.24 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-chat": {
        id: "openai/gpt-5.2-chat",
        name: "GPT-5.2 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-chat": {
        id: "openai/gpt-5-chat",
        name: "GPT-5 Chat (latest)",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.1-chat": {
        id: "openai/gpt-5.1-chat",
        name: "GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-image": {
        id: "openai/gpt-5-image",
        name: "GPT-5 Image",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-10-14",
        last_updated: "2025-10-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 5, output: 10, cache_read: 1.25 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.072, output: 0.28 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT-5.1-Codex-Mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 100000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-20b:free": {
        id: "openai/gpt-oss-20b:free",
        name: "gpt-oss-20b (free)",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2026-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "o4 Mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT-4.1 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 15,
          cache_read: 0.25,
          context_over_200k: { input: 5, output: 22.5, cache_read: 0.5 },
        },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5.4-pro": {
        id: "openai/gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180, cache_read: 30 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-oss-safeguard-20b": {
        id: "openai/gpt-oss-safeguard-20b",
        name: "GPT OSS Safeguard 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-29",
        last_updated: "2025-10-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 131072, output: 65536 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT-5.2 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-oss-120b:free": {
        id: "openai/gpt-oss-120b:free",
        name: "gpt-oss-120b (free)",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 400000, output: 128000 },
      },
      "minimax/minimax-m1": {
        id: "minimax/minimax-m1",
        name: "MiniMax M1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2.2 },
        limit: { context: 1000000, output: 40000 },
      },
      "minimax/minimax-01": {
        id: "minimax/minimax-01",
        name: "MiniMax-01",
        family: "minimax",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 1000000, output: 1000000 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "MiniMax M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        release_date: "2025-10-23",
        last_updated: "2025-10-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.15, cache_read: 0.28, cache_write: 1.15 },
        limit: { context: 196600, output: 118000 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131072 },
      },
      "bytedance-seed/seedream-4.5": {
        id: "bytedance-seed/seedream-4.5",
        name: "Seedream 4.5",
        family: "seed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-23",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 4096, output: 4096 },
      },
      "anthropic/claude-3.7-sonnet": {
        id: "anthropic/claude-3.7-sonnet",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 128000 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-haiku-4.5": {
        id: "anthropic/claude-haiku-4.5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.5-haiku": {
        id: "anthropic/claude-3.5-haiku",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-opus-4.5": {
        id: "anthropic/claude-opus-4.5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05-30",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4.5": {
        id: "anthropic/claude-sonnet-4.5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 64000 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05-30",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "black-forest-labs/flux.2-pro": {
        id: "black-forest-labs/flux.2-pro",
        name: "FLUX.2 Pro",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-25",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text"], output: ["image"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 46864, output: 46864 },
      },
      "black-forest-labs/flux.2-flex": {
        id: "black-forest-labs/flux.2-flex",
        name: "FLUX.2 Flex",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-25",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text"], output: ["image"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 67344, output: 67344 },
      },
      "black-forest-labs/flux.2-max": {
        id: "black-forest-labs/flux.2-max",
        name: "FLUX.2 Max",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-16",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text"], output: ["image"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 46864, output: 46864 },
      },
      "black-forest-labs/flux.2-klein-4b": {
        id: "black-forest-labs/flux.2-klein-4b",
        name: "FLUX.2 Klein 4B",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2026-01-14",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text"], output: ["image"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 40960, output: 40960 },
      },
      "nousresearch/hermes-4-405b": {
        id: "nousresearch/hermes-4-405b",
        name: "Hermes 4 405B",
        family: "hermes",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-08-25",
        last_updated: "2025-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 131072 },
      },
      "nousresearch/hermes-4-70b": {
        id: "nousresearch/hermes-4-70b",
        name: "Hermes 4 70B",
        family: "hermes",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-08-25",
        last_updated: "2025-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.4 },
        limit: { context: 131072, output: 131072 },
      },
      "nousresearch/deephermes-3-llama-3-8b-preview": {
        id: "nousresearch/deephermes-3-llama-3-8b-preview",
        name: "DeepHermes 3 Llama 3 8B Preview",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-02-28",
        last_updated: "2025-02-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 8192 },
      },
      "nousresearch/hermes-3-llama-3.1-405b:free": {
        id: "nousresearch/hermes-3-llama-3.1-405b:free",
        name: "Hermes 3 405B Instruct (free)",
        family: "hermes",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-08-16",
        last_updated: "2024-08-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131072, output: 131072 },
      },
    },
  },
  "github-models": {
    id: "github-models",
    env: ["GITHUB_TOKEN"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://models.github.ai/inference",
    name: "GitHub Models",
    doc: "https://docs.github.com/en/github-models",
    models: {
      "ai21-labs/ai21-jamba-1.5-mini": {
        id: "ai21-labs/ai21-jamba-1.5-mini",
        name: "AI21 Jamba 1.5 Mini",
        family: "jamba",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-08-29",
        last_updated: "2024-08-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 4096 },
      },
      "ai21-labs/ai21-jamba-1.5-large": {
        id: "ai21-labs/ai21-jamba-1.5-large",
        name: "AI21 Jamba 1.5 Large",
        family: "jamba",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-08-29",
        last_updated: "2024-08-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 4096 },
      },
      "microsoft/phi-4-multimodal-instruct": {
        id: "microsoft/phi-4-multimodal-instruct",
        name: "Phi-4-multimodal-instruct",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-small-128k-instruct": {
        id: "microsoft/phi-3-small-128k-instruct",
        name: "Phi-3-small instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-medium-128k-instruct": {
        id: "microsoft/phi-3-medium-128k-instruct",
        name: "Phi-3-medium instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/mai-ds-r1": {
        id: "microsoft/mai-ds-r1",
        name: "MAI-DS-R1",
        family: "mai",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 65536, output: 8192 },
      },
      "microsoft/phi-3.5-moe-instruct": {
        id: "microsoft/phi-3.5-moe-instruct",
        name: "Phi-3.5-MoE instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3.5-mini-instruct": {
        id: "microsoft/phi-3.5-mini-instruct",
        name: "Phi-3.5-mini instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-4-mini-instruct": {
        id: "microsoft/phi-4-mini-instruct",
        name: "Phi-4-mini-instruct",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-4": {
        id: "microsoft/phi-4",
        name: "Phi-4",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 16000, output: 4096 },
      },
      "microsoft/phi-3-mini-4k-instruct": {
        id: "microsoft/phi-3-mini-4k-instruct",
        name: "Phi-3-mini instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 4096, output: 1024 },
      },
      "microsoft/phi-4-mini-reasoning": {
        id: "microsoft/phi-4-mini-reasoning",
        name: "Phi-4-mini-reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3.5-vision-instruct": {
        id: "microsoft/phi-3.5-vision-instruct",
        name: "Phi-3.5-vision instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-medium-4k-instruct": {
        id: "microsoft/phi-3-medium-4k-instruct",
        name: "Phi-3-medium instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 4096, output: 1024 },
      },
      "microsoft/phi-3-mini-128k-instruct": {
        id: "microsoft/phi-3-mini-128k-instruct",
        name: "Phi-3-mini instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-4-reasoning": {
        id: "microsoft/phi-4-reasoning",
        name: "Phi-4-Reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "microsoft/phi-3-small-8k-instruct": {
        id: "microsoft/phi-3-small-8k-instruct",
        name: "Phi-3-small instruct (8k)",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2048 },
      },
      "core42/jais-30b-chat": {
        id: "core42/jais-30b-chat",
        name: "JAIS 30b Chat",
        family: "jais",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-03",
        release_date: "2023-08-30",
        last_updated: "2023-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2048 },
      },
      "mistral-ai/ministral-3b": {
        id: "mistral-ai/ministral-3b",
        name: "Ministral 3B",
        family: "ministral",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "mistral-ai/mistral-medium-2505": {
        id: "mistral-ai/mistral-medium-2505",
        name: "Mistral Medium 3 (25.05)",
        family: "mistral-medium",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-05-01",
        last_updated: "2025-05-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "mistral-ai/mistral-nemo": {
        id: "mistral-ai/mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "mistral-ai/mistral-large-2411": {
        id: "mistral-ai/mistral-large-2411",
        name: "Mistral Large 24.11",
        family: "mistral-large",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "mistral-ai/mistral-small-2503": {
        id: "mistral-ai/mistral-small-2503",
        name: "Mistral Small 3.1",
        family: "mistral-small",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "mistral-ai/codestral-2501": {
        id: "mistral-ai/codestral-2501",
        name: "Codestral 25.01",
        family: "codestral",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 32000, output: 8192 },
      },
      "deepseek/deepseek-r1-0528": {
        id: "deepseek/deepseek-r1-0528",
        name: "DeepSeek-R1-0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 65536, output: 8192 },
      },
      "deepseek/deepseek-r1": {
        id: "deepseek/deepseek-r1",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 65536, output: 8192 },
      },
      "deepseek/deepseek-v3-0324": {
        id: "deepseek/deepseek-v3-0324",
        name: "DeepSeek-V3-0324",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-3.2-90b-vision-instruct": {
        id: "meta/llama-3.2-90b-vision-instruct",
        name: "Llama-3.2-90B-Vision-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-3.3-70b-instruct": {
        id: "meta/llama-3.3-70b-instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "meta/llama-4-scout-17b-16e-instruct": {
        id: "meta/llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/meta-llama-3.1-405b-instruct": {
        id: "meta/meta-llama-3.1-405b-instruct",
        name: "Meta-Llama-3.1-405B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "meta/meta-llama-3-8b-instruct": {
        id: "meta/meta-llama-3-8b-instruct",
        name: "Meta-Llama-3-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2048 },
      },
      "meta/llama-3.2-11b-vision-instruct": {
        id: "meta/llama-3.2-11b-vision-instruct",
        name: "Llama-3.2-11B-Vision-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/meta-llama-3-70b-instruct": {
        id: "meta/meta-llama-3-70b-instruct",
        name: "Meta-Llama-3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 2048 },
      },
      "meta/meta-llama-3.1-70b-instruct": {
        id: "meta/meta-llama-3.1-70b-instruct",
        name: "Meta-Llama-3.1-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "meta/meta-llama-3.1-8b-instruct": {
        id: "meta/meta-llama-3.1-8b-instruct",
        name: "Meta-Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "meta/llama-4-maverick-17b-128e-instruct-fp8": {
        id: "meta/llama-4-maverick-17b-128e-instruct-fp8",
        name: "Llama 4 Maverick 17B 128E Instruct FP8",
        family: "llama",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "OpenAI o1",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2023-10",
        release_date: "2024-09-12",
        last_updated: "2024-12-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "OpenAI o3",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-nano": {
        id: "openai/gpt-4.1-nano",
        name: "GPT-4.1-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "OpenAI o4-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT-4.1-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o1-preview": {
        id: "openai/o1-preview",
        name: "OpenAI o1-preview",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2023-10",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "OpenAI o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/o1-mini": {
        id: "openai/o1-mini",
        name: "OpenAI o1-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2023-10",
        release_date: "2024-09-12",
        last_updated: "2024-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 65536 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "cohere/cohere-command-a": {
        id: "cohere/cohere-command-a",
        name: "Cohere Command A",
        family: "command-a",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "cohere/cohere-command-r-plus-08-2024": {
        id: "cohere/cohere-command-r-plus-08-2024",
        name: "Cohere Command R+ 08-2024",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-08-01",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "cohere/cohere-command-r": {
        id: "cohere/cohere-command-r",
        name: "Cohere Command R",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-03-11",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "cohere/cohere-command-r-08-2024": {
        id: "cohere/cohere-command-r-08-2024",
        name: "Cohere Command R 08-2024",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-08-01",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "cohere/cohere-command-r-plus": {
        id: "cohere/cohere-command-r-plus",
        name: "Cohere Command R+",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-04-04",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "xai/grok-3": {
        id: "xai/grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-09",
        last_updated: "2024-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "xai/grok-3-mini": {
        id: "xai/grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-09",
        last_updated: "2024-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
    },
  },
  "302ai": {
    id: "302ai",
    env: ["302AI_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.302.ai/v1",
    name: "302.AI",
    doc: "https://doc.302.ai",
    models: {
      "qwen3-235b-a22b-instruct-2507": {
        id: "qwen3-235b-a22b-instruct-2507",
        name: "qwen3-235b-a22b-instruct-2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-30",
        last_updated: "2025-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1.143 },
        limit: { context: 128000, output: 65536 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "gpt-5-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10-08",
        last_updated: "2025-10-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 272000 },
      },
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "claude-opus-4-5-20251101",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 200000, output: 64000 },
      },
      "deepseek-reasoner": {
        id: "deepseek-reasoner",
        name: "Deepseek-Reasoner",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.43 },
        limit: { context: 128000, output: 128000 },
      },
      "qwen-max-latest": {
        id: "qwen-max-latest",
        name: "Qwen-Max-Latest",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-04-03",
        last_updated: "2025-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.343, output: 1.372 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-max-2025-09-23": {
        id: "qwen3-max-2025-09-23",
        name: "qwen3-max-2025-09-23",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.86, output: 3.43 },
        limit: { context: 258048, output: 65536 },
      },
      "grok-4-fast-reasoning": {
        id: "grok-4-fast-reasoning",
        name: "grok-4-fast-reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 30000 },
      },
      "gemini-2.5-flash-lite-preview-09-2025": {
        id: "gemini-2.5-flash-lite-preview-09-2025",
        name: "gemini-2.5-flash-lite-preview-09-2025",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-26",
        last_updated: "2025-09-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1000000, output: 65536 },
      },
      "gpt-5.2-chat-latest": {
        id: "gpt-5.2-chat-latest",
        name: "gpt-5.2-chat-latest",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-12",
        last_updated: "2025-12-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 128000, output: 16384 },
      },
      "claude-opus-4-1-20250805-thinking": {
        id: "claude-opus-4-1-20250805-thinking",
        name: "claude-opus-4-1-20250805-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-05-27",
        last_updated: "2025-05-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 200000, output: 32000 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "qwen3-coder-480b-a35b-instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.86, output: 3.43 },
        limit: { context: 262144, output: 65536 },
      },
      "gemini-2.5-flash-preview-09-2025": {
        id: "gemini-2.5-flash-preview-09-2025",
        name: "gemini-2.5-flash-preview-09-2025",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-26",
        last_updated: "2025-09-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1000000, output: 65536 },
      },
      "grok-4-1-fast-reasoning": {
        id: "grok-4-1-fast-reasoning",
        name: "grok-4-1-fast-reasoning",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 30000 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM-4.5",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.286, output: 1.142 },
        limit: { context: 128000, output: 98304 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "gemini-2.5-flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1000000, output: 65536 },
      },
      "kimi-k2-0905-preview": {
        id: "kimi-k2-0905-preview",
        name: "kimi-k2-0905-preview",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.632, output: 2.53 },
        limit: { context: 262144, output: 262144 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "grok-4-1-fast-non-reasoning",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 30000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "gpt-5.1",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-sonnet-4-5-20250929-thinking": {
        id: "claude-sonnet-4-5-20250929-thinking",
        name: "claude-sonnet-4-5-20250929-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "mistral-large-2512": {
        id: "mistral-large-2512",
        name: "mistral-large-2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 3.3 },
        limit: { context: 128000, output: 262144 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "glm-4.6",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.286, output: 1.142 },
        limit: { context: 200000, output: 131072 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "gemini-3-flash-preview",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 1000000, output: 65536 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "gpt-4.1-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1000000, output: 32768 },
      },
      "doubao-seed-1-6-vision-250815": {
        id: "doubao-seed-1-6-vision-250815",
        name: "doubao-seed-1-6-vision-250815",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.114, output: 1.143 },
        limit: { context: 256000, output: 32000 },
      },
      "doubao-seed-1-6-thinking-250715": {
        id: "doubao-seed-1-6-thinking-250715",
        name: "doubao-seed-1-6-thinking-250715",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-15",
        last_updated: "2025-07-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.121, output: 1.21 },
        limit: { context: 256000, output: 16000 },
      },
      "doubao-seed-1-8-251215": {
        id: "doubao-seed-1-8-251215",
        name: "doubao-seed-1-8-251215",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-18",
        last_updated: "2025-12-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.114, output: 0.286 },
        limit: { context: 224000, output: 64000 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "claude-sonnet-4-5-20250929",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 64000 },
      },
      "ministral-14b-2512": {
        id: "ministral-14b-2512",
        name: "ministral-14b-2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 0.33 },
        limit: { context: 128000, output: 128000 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax-M2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-26",
        last_updated: "2025-10-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 1.32 },
        limit: { context: 1000000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "gpt-5.2",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-12",
        last_updated: "2025-12-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "gpt-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 1000000, output: 32768 },
      },
      "gemini-2.5-flash-nothink": {
        id: "gemini-2.5-flash-nothink",
        name: "gemini-2.5-flash-nothink",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-24",
        last_updated: "2025-06-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-235b-a22b": {
        id: "qwen3-235b-a22b",
        name: "Qwen3-235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 2.86 },
        limit: { context: 128000, output: 16384 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "deepseek-v3.2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.43 },
        limit: { context: 128000, output: 8192 },
      },
      "claude-opus-4-5-20251101-thinking": {
        id: "claude-opus-4-5-20251101-thinking",
        name: "claude-opus-4-5-20251101-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "claude-haiku-4-5-20251001",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-10-16",
        last_updated: "2025-10-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "gpt-5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "deepseek-chat": {
        id: "deepseek-chat",
        name: "Deepseek-Chat",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-11-29",
        last_updated: "2024-11-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.43 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "gpt-4.1-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6 },
        limit: { context: 1000000, output: 32768 },
      },
      "gemini-2.5-flash-image": {
        id: "gemini-2.5-flash-image",
        name: "gemini-2.5-flash-image",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-10-08",
        last_updated: "2025-10-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 30 },
        limit: { context: 32768, output: 32768 },
      },
      "gemini-3-pro-image-preview": {
        id: "gemini-3-pro-image-preview",
        name: "gemini-3-pro-image-preview",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 120 },
        limit: { context: 32768, output: 64000 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "glm-4.7",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.286, output: 1.142 },
        limit: { context: 200000, output: 131072 },
      },
      "MiniMax-M1": {
        id: "MiniMax-M1",
        name: "MiniMax-M1",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-16",
        last_updated: "2025-06-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.132, output: 1.254 },
        limit: { context: 1000000, output: 128000 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "kimi-k2-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.575, output: 2.3 },
        limit: { context: 262144, output: 262144 },
      },
      "gpt-5-thinking": {
        id: "gpt-5-thinking",
        name: "gpt-5-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "deepseek-v3.2-thinking": {
        id: "deepseek-v3.2-thinking",
        name: "DeepSeek-V3.2-Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.43 },
        limit: { context: 128000, output: 128000 },
      },
      "chatgpt-4o-latest": {
        id: "chatgpt-4o-latest",
        name: "chatgpt-4o-latest",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-08-08",
        last_updated: "2024-08-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 15 },
        limit: { context: 128000, output: 16384 },
      },
      "qwen-plus": {
        id: "qwen-plus",
        name: "Qwen-Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 1.2 },
        limit: { context: 1000000, output: 32768 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-19",
        last_updated: "2025-12-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 1000000, output: 131072 },
      },
      "kimi-k2-thinking-turbo": {
        id: "kimi-k2-thinking-turbo",
        name: "kimi-k2-thinking-turbo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.265, output: 9.119 },
        limit: { context: 262144, output: 262144 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "gemini-3-pro-preview",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1000000, output: 64000 },
      },
      "gemini-2.0-flash-lite": {
        id: "gemini-2.0-flash-lite",
        name: "gemini-2.0-flash-lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-06-16",
        last_updated: "2025-06-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 2000000, output: 8192 },
      },
      "doubao-seed-code-preview-251028": {
        id: "doubao-seed-code-preview-251028",
        name: "doubao-seed-code-preview-251028",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-11",
        last_updated: "2025-11-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 1.14 },
        limit: { context: 256000, output: 32000 },
      },
      "qwen3-30b-a3b": {
        id: "qwen3-30b-a3b",
        name: "Qwen3-30B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 1.08 },
        limit: { context: 128000, output: 8192 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "grok-4-fast-non-reasoning",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, output: 30000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "gpt-5-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, output: 128000 },
      },
      "glm-4.5v": {
        id: "glm-4.5v",
        name: "GLM-4.5V",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.86 },
        limit: { context: 64000, output: 16384 },
      },
      "qwen-flash": {
        id: "qwen-flash",
        name: "Qwen-Flash",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.022, output: 0.22 },
        limit: { context: 1000000, output: 32768 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.145, output: 0.43 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.1-chat-latest": {
        id: "gpt-5.1-chat-latest",
        name: "gpt-5.1-chat-latest",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "claude-opus-4-1-20250805",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 200000, output: 32000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "gemini-2.5-pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 1000000, output: 65536 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "gpt-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "grok-4.1": {
        id: "grok-4.1",
        name: "grok-4.1",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10 },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  "github-copilot": {
    id: "github-copilot",
    env: ["GITHUB_TOKEN"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.githubcopilot.com",
    name: "GitHub Copilot",
    doc: "https://docs.github.com/en/copilot",
    models: {
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1-Codex-max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-12-04",
        last_updated: "2025-12-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-27",
        last_updated: "2025-08-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-sonnet-4.6": {
        id: "claude-sonnet-4.6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-haiku-4.5": {
        id: "claude-haiku-4.5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1-Codex-mini",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 264000, input: 128000, output: 64000 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 16384 },
      },
      "claude-opus-4.5": {
        id: "claude-opus-4.5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "gemini-3.1-pro-preview": {
        id: "gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "claude-sonnet-4": {
        id: "claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 16000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-sonnet-4.5": {
        id: "claude-sonnet-4.5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-08-13",
        last_updated: "2025-08-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-opus-4.6": {
        id: "claude-opus-4.6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-opus-41": {
        id: "claude-opus-41",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 80000, output: 16000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 64000 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 16384 },
      },
    },
  },
  moonshotai: {
    id: "moonshotai",
    env: ["MOONSHOT_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.moonshot.ai/v1",
    name: "Moonshot AI",
    doc: "https://platform.moonshot.ai/docs/api/chat",
    models: {
      "kimi-k2-0905-preview": {
        id: "kimi-k2-0905-preview",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-turbo-preview": {
        id: "kimi-k2-turbo-preview",
        name: "Kimi K2 Turbo",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.4, output: 10, cache_read: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-thinking-turbo": {
        id: "kimi-k2-thinking-turbo",
        name: "Kimi K2 Thinking Turbo",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.15, output: 8, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-0711-preview": {
        id: "kimi-k2-0711-preview",
        name: "Kimi K2 0711",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 131072, output: 16384 },
      },
    },
  },
  "google-vertex": {
    id: "google-vertex",
    env: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_LOCATION", "GOOGLE_APPLICATION_CREDENTIALS"],
    npm: "@ai-sdk/google-vertex",
    name: "Vertex",
    doc: "https://cloud.google.com/vertex-ai/generative-ai/docs/models",
    models: {
      "gemini-embedding-001": {
        id: "gemini-embedding-001",
        name: "Gemini Embedding 001",
        family: "gemini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-05",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0 },
        limit: { context: 2048, output: 3072 },
      },
      "gemini-2.5-flash-lite-preview-09-2025": {
        id: "gemini-2.5-flash-lite-preview-09-2025",
        name: "Gemini 2.5 Flash Lite Preview 09-25",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3.1-pro-preview-customtools": {
        id: "gemini-3.1-pro-preview-customtools",
        name: "Gemini 3.1 Pro Preview Custom Tools",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro-preview-06-05": {
        id: "gemini-2.5-pro-preview-06-05",
        name: "Gemini 2.5 Pro Preview 06-05",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-04-17": {
        id: "gemini-2.5-flash-preview-04-17",
        name: "Gemini 2.5 Flash Preview 04-17",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-09-2025": {
        id: "gemini-2.5-flash-preview-09-2025",
        name: "Gemini 2.5 Flash Preview 09-25",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, cache_write: 0.383 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro-preview-05-06": {
        id: "gemini-2.5-pro-preview-05-06",
        name: "Gemini 2.5 Pro Preview 05-06",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-05-06",
        last_updated: "2025-05-06",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-05-20": {
        id: "gemini-2.5-flash-preview-05-20",
        name: "Gemini 2.5 Flash Preview 05-20",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, cache_write: 0.383 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.5,
          output: 3,
          cache_read: 0.05,
          context_over_200k: { input: 0.5, output: 3, cache_read: 0.05 },
        },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3.1-pro-preview": {
        id: "gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-flash-latest": {
        id: "gemini-flash-latest",
        name: "Gemini Flash Latest",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, cache_write: 0.383 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-lite-preview-06-17": {
        id: "gemini-2.5-flash-lite-preview-06-17",
        name: "Gemini 2.5 Flash Lite Preview 06-17",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 65536, output: 65536 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.0-flash-lite": {
        id: "gemini-2.0-flash-lite",
        name: "Gemini 2.0 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 1048576, output: 8192 },
      },
      "gemini-flash-lite-latest": {
        id: "gemini-flash-lite-latest",
        name: "Gemini Flash-Lite Latest",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.0-flash": {
        id: "gemini-2.0-flash",
        name: "Gemini 2.0 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.025 },
        limit: { context: 1048576, output: 8192 },
      },
      "zai-org/glm-5-maas": {
        id: "zai-org/glm-5-maas",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.1 },
        limit: { context: 202752, output: 131072 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "zai-org/glm-4.7-maas": {
        id: "zai-org/glm-4.7-maas",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-06",
        last_updated: "2026-01-06",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 200000, output: 128000 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "deepseek-ai/deepseek-v3.1-maas": {
        id: "deepseek-ai/deepseek-v3.1-maas",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.7 },
        limit: { context: 163840, output: 32768 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "qwen/qwen3-235b-a22b-instruct-2507-maas": {
        id: "qwen/qwen3-235b-a22b-instruct-2507-maas",
        name: "Qwen3 235B A22B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-08-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.88 },
        limit: { context: 262144, output: 16384 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "meta/llama-4-maverick-17b-128e-instruct-maas": {
        id: "meta/llama-4-maverick-17b-128e-instruct-maas",
        name: "Llama 4 Maverick 17B 128E Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.15 },
        limit: { context: 524288, output: 8192 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "meta/llama-3.3-70b-instruct-maas": {
        id: "meta/llama-3.3-70b-instruct-maas",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 128000, output: 8192 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${GOOGLE_VERTEX_ENDPOINT}/v1/projects/${GOOGLE_VERTEX_PROJECT}/locations/${GOOGLE_VERTEX_LOCATION}/endpoints/openapi",
        },
      },
      "openai/gpt-oss-20b-maas": {
        id: "openai/gpt-oss-20b-maas",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.25 },
        limit: { context: 131072, output: 32768 },
      },
      "openai/gpt-oss-120b-maas": {
        id: "openai/gpt-oss-120b-maas",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.36 },
        limit: { context: 131072, output: 32768 },
      },
    },
  },
  "privatemode-ai": {
    id: "privatemode-ai",
    env: ["PRIVATEMODE_API_KEY", "PRIVATEMODE_ENDPOINT"],
    npm: "@ai-sdk/openai-compatible",
    api: "http://localhost:8080/v1",
    name: "Privatemode AI",
    doc: "https://docs.privatemode.ai/api/overview",
    models: {
      "gemma-3-27b": {
        id: "gemma-3-27b",
        name: "Gemma 3 27B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "gpt-oss-120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-04",
        last_updated: "2025-08-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "whisper-large-v3": {
        id: "whisper-large-v3",
        name: "Whisper large-v3",
        family: "whisper",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2023-09-01",
        last_updated: "2023-09-01",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 0, output: 4096 },
      },
      "qwen3-embedding-4b": {
        id: "qwen3-embedding-4b",
        name: "Qwen3-Embedding 4B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-06",
        last_updated: "2025-06-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32000, output: 2560 },
      },
      "qwen3-coder-30b-a3b": {
        id: "qwen3-coder-30b-a3b",
        name: "Qwen3-Coder 30B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
    },
  },
  google: {
    id: "google",
    env: ["GOOGLE_GENERATIVE_AI_API_KEY", "GEMINI_API_KEY"],
    npm: "@ai-sdk/google",
    name: "Google",
    doc: "https://ai.google.dev/gemini-api/docs/pricing",
    models: {
      "gemini-embedding-001": {
        id: "gemini-embedding-001",
        name: "Gemini Embedding 001",
        family: "gemini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-05",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0 },
        limit: { context: 2048, output: 3072 },
      },
      "gemini-2.5-flash-lite-preview-09-2025": {
        id: "gemini-2.5-flash-lite-preview-09-2025",
        name: "Gemini 2.5 Flash Lite Preview 09-25",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3.1-pro-preview-customtools": {
        id: "gemini-3.1-pro-preview-customtools",
        name: "Gemini 3.1 Pro Preview Custom Tools",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro-preview-06-05": {
        id: "gemini-2.5-pro-preview-06-05",
        name: "Gemini 2.5 Pro Preview 06-05",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-04-17": {
        id: "gemini-2.5-flash-preview-04-17",
        name: "Gemini 2.5 Flash Preview 04-17",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-09-2025": {
        id: "gemini-2.5-flash-preview-09-2025",
        name: "Gemini 2.5 Flash Preview 09-25",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, input_audio: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro-preview-05-06": {
        id: "gemini-2.5-pro-preview-05-06",
        name: "Gemini 2.5 Pro Preview 05-06",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-05-06",
        last_updated: "2025-05-06",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-05-20": {
        id: "gemini-2.5-flash-preview-05-20",
        name: "Gemini 2.5 Flash Preview 05-20",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.0375 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, input_audio: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3.1-flash-image-preview": {
        id: "gemini-3.1-flash-image-preview",
        name: "Gemini 3.1 Flash Image (Preview)",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-26",
        last_updated: "2026-02-26",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.25, output: 60 },
        limit: { context: 131072, output: 32768 },
      },
      "gemini-3.1-flash-lite-preview": {
        id: "gemini-3.1-flash-lite-preview",
        name: "Gemini 3.1 Flash Lite Preview",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.5, cache_read: 0.025, cache_write: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-live-2.5-flash": {
        id: "gemini-live-2.5-flash",
        name: "Gemini Live 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.5, output: 2, input_audio: 3, output_audio: 12 },
        limit: { context: 128000, output: 8000 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.5,
          output: 3,
          cache_read: 0.05,
          context_over_200k: { input: 0.5, output: 3, cache_read: 0.05 },
        },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-live-2.5-flash-preview-native-audio": {
        id: "gemini-live-2.5-flash-preview-native-audio",
        name: "Gemini Live 2.5 Flash Preview Native Audio",
        family: "gemini-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-09-18",
        modalities: { input: ["text", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.5, output: 2, input_audio: 3, output_audio: 12 },
        limit: { context: 131072, output: 65536 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-preview-tts": {
        id: "gemini-2.5-flash-preview-tts",
        name: "Gemini 2.5 Flash Preview TTS",
        family: "gemini-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-05-01",
        last_updated: "2025-05-01",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        cost: { input: 0.5, output: 10 },
        limit: { context: 8000, output: 16000 },
      },
      "gemini-3.1-pro-preview": {
        id: "gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-19",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-flash-latest": {
        id: "gemini-flash-latest",
        name: "Gemini Flash Latest",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, input_audio: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-lite-preview-06-17": {
        id: "gemini-2.5-flash-lite-preview-06-17",
        name: "Gemini 2.5 Flash Lite Preview 06-17",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025, input_audio: 0.3 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-flash-image": {
        id: "gemini-2.5-flash-image",
        name: "Gemini 2.5 Flash Image",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.3, output: 30, cache_read: 0.075 },
        limit: { context: 32768, output: 32768 },
      },
      "gemini-2.5-pro-preview-tts": {
        id: "gemini-2.5-pro-preview-tts",
        name: "Gemini 2.5 Pro Preview TTS",
        family: "gemini-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-05-01",
        last_updated: "2025-05-01",
        modalities: { input: ["text"], output: ["audio"] },
        open_weights: false,
        cost: { input: 1, output: 20 },
        limit: { context: 8000, output: 16000 },
      },
      "gemini-2.5-flash-image-preview": {
        id: "gemini-2.5-flash-image-preview",
        name: "Gemini 2.5 Flash Image (Preview)",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.3, output: 30, cache_read: 0.075 },
        limit: { context: 32768, output: 32768 },
      },
      "gemini-1.5-flash-8b": {
        id: "gemini-1.5-flash-8b",
        name: "Gemini 1.5 Flash-8B",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-10-03",
        last_updated: "2024-10-03",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0375, output: 0.15, cache_read: 0.01 },
        limit: { context: 1000000, output: 8192 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1000000, output: 64000 },
      },
      "gemini-2.0-flash-lite": {
        id: "gemini-2.0-flash-lite",
        name: "Gemini 2.0 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 1048576, output: 8192 },
      },
      "gemini-1.5-flash": {
        id: "gemini-1.5-flash",
        name: "Gemini 1.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-05-14",
        last_updated: "2024-05-14",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3, cache_read: 0.01875 },
        limit: { context: 1000000, output: 8192 },
      },
      "gemini-flash-lite-latest": {
        id: "gemini-flash-lite-latest",
        name: "Gemini Flash-Lite Latest",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-2.0-flash": {
        id: "gemini-2.0-flash",
        name: "Gemini 2.0 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 8192 },
      },
      "gemini-1.5-pro": {
        id: "gemini-1.5-pro",
        name: "Gemini 1.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-02-15",
        last_updated: "2024-02-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 5, cache_read: 0.3125 },
        limit: { context: 1000000, output: 8192 },
      },
    },
  },
  vivgrid: {
    id: "vivgrid",
    env: ["VIVGRID_API_KEY"],
    npm: "@ai-sdk/openai",
    api: "https://api.vivgrid.com/v1",
    name: "Vivgrid",
    doc: "https://docs.vivgrid.com/models",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 202752, output: 131000 },
        provider: { npm: "@ai-sdk/openai-compatible" },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1 Codex Max",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.5,
          output: 3,
          cache_read: 0.05,
          context_over_200k: { input: 0.5, output: 3, cache_read: 0.05 },
        },
        limit: { context: 1048576, output: 65536 },
        provider: { npm: "@ai-sdk/openai-compatible" },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 0.42 },
        limit: { context: 128000, output: 128000 },
        provider: { npm: "@ai-sdk/openai-compatible" },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1048576, output: 65536 },
        provider: { npm: "@ai-sdk/openai-compatible" },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 272000, output: 128000 },
        provider: { npm: "@ai-sdk/openai-compatible" },
      },
    },
  },
  "moonshotai-cn": {
    id: "moonshotai-cn",
    env: ["MOONSHOT_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.moonshot.cn/v1",
    name: "Moonshot AI (China)",
    doc: "https://platform.moonshot.cn/docs/api/chat",
    models: {
      "kimi-k2-0711-preview": {
        id: "kimi-k2-0711-preview",
        name: "Kimi K2 0711",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 131072, output: 16384 },
      },
      "kimi-k2-thinking-turbo": {
        id: "kimi-k2-thinking-turbo",
        name: "Kimi K2 Thinking Turbo",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.15, output: 8, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-turbo-preview": {
        id: "kimi-k2-turbo-preview",
        name: "Kimi K2 Turbo",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.4, output: 10, cache_read: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "kimi-k2-0905-preview": {
        id: "kimi-k2-0905-preview",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
    },
  },
  "sap-ai-core": {
    id: "sap-ai-core",
    env: ["AICORE_SERVICE_KEY"],
    npm: "@jerome-benoit/sap-ai-provider-v2",
    name: "SAP AI Core",
    doc: "https://help.sap.com/docs/sap-ai-core",
    models: {
      "anthropic--claude-4.5-opus": {
        id: "anthropic--claude-4.5-opus",
        name: "anthropic--claude-4.5-opus",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04-30",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic--claude-4-sonnet": {
        id: "anthropic--claude-4-sonnet",
        name: "anthropic--claude-4-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic--claude-4.5-sonnet": {
        id: "anthropic--claude-4.5-sonnet",
        name: "anthropic--claude-4.5-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "gemini-2.5-flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-25",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.03, input_audio: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "anthropic--claude-3-sonnet": {
        id: "anthropic--claude-3-sonnet",
        name: "anthropic--claude-3-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-04",
        last_updated: "2024-03-04",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic--claude-3.7-sonnet": {
        id: "anthropic--claude-3.7-sonnet",
        name: "anthropic--claude-3.7-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      sonar: {
        id: "sonar",
        name: "sonar",
        family: "sonar",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 128000, output: 4096 },
      },
      "anthropic--claude-3.5-sonnet": {
        id: "anthropic--claude-3.5-sonnet",
        name: "anthropic--claude-3.5-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "sonar-deep-research": {
        id: "sonar-deep-research",
        name: "sonar-deep-research",
        family: "sonar-deep-research",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-02-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, reasoning: 3 },
        limit: { context: 128000, output: 32768 },
      },
      "anthropic--claude-4.6-sonnet": {
        id: "anthropic--claude-4.6-sonnet",
        name: "anthropic--claude-4.6-sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "gemini-2.5-flash-lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "gpt-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "anthropic--claude-4.5-haiku": {
        id: "anthropic--claude-4.5-haiku",
        name: "anthropic--claude-4.5-haiku",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-01",
        last_updated: "2025-10-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "gpt-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "gpt-4.1-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "anthropic--claude-3-opus": {
        id: "anthropic--claude-3-opus",
        name: "anthropic--claude-3-opus",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-02-29",
        last_updated: "2024-02-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 4096 },
      },
      "sonar-pro": {
        id: "sonar-pro",
        name: "sonar-pro",
        family: "sonar-pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8192 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "gpt-5-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 128000 },
      },
      "anthropic--claude-3-haiku": {
        id: "anthropic--claude-3-haiku",
        name: "anthropic--claude-3-haiku",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-13",
        last_updated: "2024-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic--claude-4.6-opus": {
        id: "anthropic--claude-4.6-opus",
        name: "anthropic--claude-4.6-opus",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "gemini-2.5-pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-25",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "gpt-5-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.01 },
        limit: { context: 400000, output: 128000 },
      },
      "anthropic--claude-4-opus": {
        id: "anthropic--claude-4-opus",
        name: "anthropic--claude-4-opus",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
    },
  },
  zhipuai: {
    id: "zhipuai",
    env: ["ZHIPU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://open.bigmodel.cn/api/paas/v4",
    name: "Zhipu AI",
    doc: "https://docs.z.ai/guides/overview/pricing",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 128000, output: 32768 },
      },
      "glm-4.5v": {
        id: "glm-4.5v",
        name: "GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8 },
        limit: { context: 64000, output: 16384 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.7-flash": {
        id: "glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 131072 },
      },
      "glm-4.5-flash": {
        id: "glm-4.5-flash",
        name: "GLM-4.5-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1, cache_read: 0.03, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
    },
  },
  venice: {
    id: "venice",
    env: ["VENICE_API_KEY"],
    npm: "venice-ai-sdk-provider",
    name: "Venice AI",
    doc: "https://docs.venice.ai",
    models: {
      "qwen3-235b-a22b-instruct-2507": {
        id: "qwen3-235b-a22b-instruct-2507",
        name: "Qwen 3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.75 },
        limit: { context: 128000, output: 16384 },
      },
      "google-gemma-3-27b-it": {
        id: "google-gemma-3-27b-it",
        name: "Google Gemma 3 27B Instruct",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-04",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.2 },
        limit: { context: 198000, output: 16384 },
      },
      "openai-gpt-4o-2024-11-20": {
        id: "openai-gpt-4o-2024-11-20",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-28",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.125, output: 12.5 },
        limit: { context: 128000, output: 16384 },
      },
      "claude-opus-45": {
        id: "claude-opus-45",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-12-06",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 6, output: 30, cache_read: 0.6, cache_write: 7.5 },
        limit: { context: 198000, output: 49500 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen 3 Coder 480b",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 3 },
        limit: { context: 256000, output: 65536 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 6,
          output: 30,
          cache_read: 0.6,
          cache_write: 7.5,
          context_over_200k: { input: 11, output: 41.25, cache_read: 1.1, cache_write: 13.75 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.87, cache_read: 0.03 },
        limit: { context: 256000, output: 10000 },
      },
      "zai-org-glm-5": {
        id: "zai-org-glm-5",
        name: "GLM 5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 198000, output: 32000 },
      },
      "zai-org-glm-4.7": {
        id: "zai-org-glm-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-24",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.65, cache_read: 0.11 },
        limit: { context: 198000, output: 16384 },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-28",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3.6,
          output: 18,
          cache_read: 0.36,
          cache_write: 4.5,
          context_over_200k: { input: 7.2, output: 27, cache_read: 0.72, cache_write: 9 },
        },
        limit: { context: 1000000, output: 64000 },
      },
      "openai-gpt-53-codex": {
        id: "openai-gpt-53-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.19, output: 17.5, cache_read: 0.219 },
        limit: { context: 400000, output: 128000 },
      },
      "kimi-k2-5": {
        id: "kimi-k2-5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2026-01-27",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 3.75, cache_read: 0.125 },
        limit: { context: 256000, output: 65536 },
      },
      "mistral-31-24b": {
        id: "mistral-31-24b",
        name: "Venice Medium",
        family: "mistral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-03-18",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2 },
        limit: { context: 128000, output: 4096 },
      },
      "grok-4-20-multi-agent-beta": {
        id: "grok-4-20-multi-agent-beta",
        name: "Grok 4.20 Multi-Agent Beta",
        family: "grok-beta",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 7.5,
          cache_read: 0.25,
          context_over_200k: { input: 5, output: 15, cache_read: 0.5 },
        },
        limit: { context: 2000000, output: 128000 },
      },
      "openai-gpt-54-pro": {
        id: "openai-gpt-54-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-05",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 37.5, output: 225, context_over_200k: { input: 75, output: 337.5 } },
        limit: { context: 1000000, output: 128000 },
      },
      "qwen3-4b": {
        id: "qwen3-4b",
        name: "Venice Small",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.15 },
        limit: { context: 32000, output: 4096 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-19",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 3.75, cache_read: 0.07 },
        limit: { context: 256000, output: 65536 },
      },
      "grok-4-20-beta": {
        id: "grok-4-20-beta",
        name: "Grok 4.20 Beta",
        family: "grok-beta",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 7.5,
          cache_read: 0.25,
          context_over_200k: { input: 5, output: 15, cache_read: 0.5 },
        },
        limit: { context: 2000000, output: 128000 },
      },
      "olafangensan-glm-4.7-flash-heretic": {
        id: "olafangensan-glm-4.7-flash-heretic",
        name: "GLM 4.7 Flash Heretic",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-04",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.8 },
        limit: { context: 200000, output: 24000 },
      },
      "minimax-m25": {
        id: "minimax-m25",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.6, cache_read: 0.04 },
        limit: { context: 198000, output: 32768 },
      },
      "zai-org-glm-4.7-flash": {
        id: "zai-org-glm-4.7-flash",
        name: "GLM 4.7 Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 128000, output: 16384 },
      },
      "qwen3-coder-480b-a35b-instruct-turbo": {
        id: "qwen3-coder-480b-a35b-instruct-turbo",
        name: "Qwen 3 Coder 480B Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-02-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.5, cache_read: 0.04 },
        limit: { context: 256000, output: 65536 },
      },
      "openai-gpt-oss-120b": {
        id: "openai-gpt-oss-120b",
        name: "OpenAI GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-06",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "grok-41-fast": {
        id: "grok-41-fast",
        name: "Grok 4.1 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-12-01",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.625, cache_read: 0.0625 },
        limit: { context: 1000000, output: 30000 },
      },
      "openai-gpt-52": {
        id: "openai-gpt-52",
        name: "GPT-5.2",
        family: "gpt",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2025-12-13",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.19, output: 17.5, cache_read: 0.219 },
        limit: { context: 256000, output: 65536 },
      },
      "openai-gpt-54": {
        id: "openai-gpt-54",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-03-05",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.13, output: 18.8, cache_read: 0.313 },
        limit: { context: 1000000, output: 131072 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2025-12-04",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1, cache_read: 0.2 },
        limit: { context: 160000, output: 32768 },
      },
      "gemini-3-1-pro-preview": {
        id: "gemini-3-1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-19",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 15,
          cache_read: 0.5,
          cache_write: 0.5,
          context_over_200k: { input: 5, output: 22.5, cache_read: 0.5 },
        },
        limit: { context: 1000000, output: 32768 },
      },
      "openai-gpt-4o-mini-2024-07-18": {
        id: "openai-gpt-4o-mini-2024-07-18",
        name: "GPT-4o Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-28",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1875, output: 0.75, cache_read: 0.09375 },
        limit: { context: 128000, output: 16384 },
      },
      "llama-3.3-70b": {
        id: "llama-3.3-70b",
        name: "Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-04-06",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8 },
        limit: { context: 128000, output: 4096 },
      },
      "qwen3-next-80b": {
        id: "qwen3-next-80b",
        name: "Qwen 3 Next 80b",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.9 },
        limit: { context: 256000, output: 16384 },
      },
      "hermes-3-llama-3.1-405b": {
        id: "hermes-3-llama-3.1-405b",
        name: "Hermes 3 Llama 3.1 405b",
        family: "hermes",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-25",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.1, output: 3 },
        limit: { context: 128000, output: 16384 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-12-10",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 3.2, cache_read: 0.375 },
        limit: { context: 256000, output: 65536 },
      },
      "minimax-m21": {
        id: "minimax-m21",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.6, cache_read: 0.04 },
        limit: { context: 198000, output: 32768 },
      },
      "qwen3-5-35b-a3b": {
        id: "qwen3-5-35b-a3b",
        name: "Qwen 3.5 35B A3B",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-25",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3125, output: 1.25, cache_read: 0.15625 },
        limit: { context: 256000, output: 65536 },
      },
      "qwen3-235b-a22b-thinking-2507": {
        id: "qwen3-235b-a22b-thinking-2507",
        name: "Qwen 3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-04-29",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 3.5 },
        limit: { context: 128000, output: 16384 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-12-02",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.625 },
        limit: { context: 198000, output: 32768 },
      },
      "llama-3.2-3b": {
        id: "llama-3.2-3b",
        name: "Llama 3.2 3B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-10-03",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "venice-uncensored": {
        id: "venice-uncensored",
        name: "Venice Uncensored 1.1",
        family: "venice",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-03-18",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.9 },
        limit: { context: 32000, output: 8192 },
      },
      "nvidia-nemotron-3-nano-30b-a3b": {
        id: "nvidia-nemotron-3-nano-30b-a3b",
        name: "NVIDIA Nemotron 3 Nano 30B",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "openai-gpt-52-codex": {
        id: "openai-gpt-52-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-01-15",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.19, output: 17.5, cache_read: 0.219 },
        limit: { context: 256000, output: 65536 },
      },
      "qwen3-vl-235b-a22b": {
        id: "qwen3-vl-235b-a22b",
        name: "Qwen3 VL 235B",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-16",
        last_updated: "2026-03-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 1.5 },
        limit: { context: 256000, output: 16384 },
      },
      "claude-sonnet-45": {
        id: "claude-sonnet-45",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-01-15",
        last_updated: "2026-01-28",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.75, output: 18.75, cache_read: 0.375, cache_write: 4.69 },
        limit: { context: 198000, output: 49500 },
      },
    },
  },
  nova: {
    id: "nova",
    env: ["NOVA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.nova.amazon.com/v1",
    name: "Nova",
    doc: "https://nova.amazon.com/dev/documentation",
    models: {
      "nova-2-lite-v1": {
        id: "nova-2-lite-v1",
        name: "Nova 2 Lite",
        family: "nova-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text", "image", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, reasoning: 0 },
        limit: { context: 1000000, output: 64000 },
      },
      "nova-2-pro-v1": {
        id: "nova-2-pro-v1",
        name: "Nova 2 Pro",
        family: "nova-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2026-01-03",
        modalities: { input: ["text", "image", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0, reasoning: 0 },
        limit: { context: 1000000, output: 64000 },
      },
    },
  },
  "zai-coding-plan": {
    id: "zai-coding-plan",
    env: ["ZHIPU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.z.ai/api/coding/paas/v4",
    name: "Z.AI Coding Plan",
    doc: "https://docs.z.ai/devpack/overview",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.7-flashx": {
        id: "glm-4.7-flashx",
        name: "GLM-4.7-FlashX",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4, cache_read: 0.01, cache_write: 0 },
        limit: { context: 200000, output: 131072 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.5-flash": {
        id: "glm-4.5-flash",
        name: "GLM-4.5-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 98304 },
      },
      "glm-4.7-flash": {
        id: "glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 200000, output: 131072 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0, cache_write: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "glm-4.5v": {
        id: "glm-4.5v",
        name: "GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 64000, output: 16384 },
      },
      "glm-4.6v": {
        id: "glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
      },
    },
  },
  "opencode-go": {
    id: "opencode-go",
    env: ["OPENCODE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://opencode.ai/zen/go/v1",
    name: "OpenCode Go",
    doc: "https://opencode.ai/docs/zen",
    models: {
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 204800, output: 131072 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-10",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 65536 },
      },
      "minimax-m2.5": {
        id: "minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131072 },
        provider: { npm: "@ai-sdk/anthropic" },
      },
    },
  },
  drun: {
    id: "drun",
    env: ["DRUN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://chat.d.run/v1",
    name: "D.Run (China)",
    doc: "https://www.d.run",
    models: {
      "public/deepseek-v3": {
        id: "public/deepseek-v3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-12-26",
        last_updated: "2024-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 131072, output: 8192 },
      },
      "public/deepseek-r1": {
        id: "public/deepseek-r1",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 131072, output: 32000 },
      },
      "public/minimax-m25": {
        id: "public/minimax-m25",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_details" },
        temperature: true,
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1.16 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  firmware: {
    id: "firmware",
    env: ["FIRMWARE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://app.firmware.ai/api/v1",
    name: "Firmware",
    doc: "https://docs.firmware.ai",
    models: {
      "gpt-5-4": {
        id: "gpt-5-4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 272000, output: 128000 },
      },
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-20",
        last_updated: "2025-02-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 198000, output: 8192 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 128000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok 4.1 Fast (Reasoning)",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 128000 },
      },
      "grok-4-1-fast-reasoning": {
        id: "grok-4-1-fast-reasoning",
        name: "Grok 4.1 Fast (Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 128000 },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-02-17",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-07-17",
        last_updated: "2025-07-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075 },
        limit: { context: 1048576, output: 65536 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "Grok 4.1 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 128000 },
      },
      "deepseek-v3-2": {
        id: "deepseek-v3-2",
        name: "DeepSeek v3.2",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-12-26",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.58, output: 1.68, cache_read: 0.28 },
        limit: { context: 128000, output: 8192 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "1970-01-01",
        last_updated: "1970-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 32768 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi-K2.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "1970-01-01",
        last_updated: "1970-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 256000, output: 128000 },
      },
      "gemini-3-1-pro-preview": {
        id: "gemini-3-1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-02-18",
        last_updated: "2026-02-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2 },
        limit: { context: 1000000, output: 64000 },
      },
      "minimax-m2-5": {
        id: "minimax-m2-5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-01-15",
        last_updated: "2025-02-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 192000, output: 8192 },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2 },
        limit: { context: 1000000, output: 64000 },
      },
      "gpt-5-3-codex": {
        id: "gpt-5-3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2026-01-31",
        release_date: "2026-02-15",
        last_updated: "2026-02-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-oss-20b": {
        id: "gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "1970-01-01",
        last_updated: "1970-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.2 },
        limit: { context: 131072, output: 32768 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.01 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  ovhcloud: {
    id: "ovhcloud",
    env: ["OVHCLOUD_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://oai.endpoints.kepler.ai.cloud.ovh.net/v1",
    name: "OVHcloud AI Endpoints",
    doc: "https://www.ovhcloud.com/en/public-cloud/ai-endpoints/catalog//",
    models: {
      "meta-llama-3_3-70b-instruct": {
        id: "meta-llama-3_3-70b-instruct",
        name: "Meta-Llama-3_3-70B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-01",
        last_updated: "2025-04-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.74, output: 0.74 },
        limit: { context: 131072, output: 131072 },
      },
      "mistral-7b-instruct-v0.3": {
        id: "mistral-7b-instruct-v0.3",
        name: "Mistral-7B-Instruct-v0.3",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-01",
        last_updated: "2025-04-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.11 },
        limit: { context: 65536, output: 65536 },
      },
      "mistral-small-3.2-24b-instruct-2506": {
        id: "mistral-small-3.2-24b-instruct-2506",
        name: "Mistral-Small-3.2-24B-Instruct-2506",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-16",
        last_updated: "2025-07-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.31 },
        limit: { context: 131072, output: 131072 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3-32B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-16",
        last_updated: "2025-07-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.25 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen2.5-coder-32b-instruct": {
        id: "qwen2.5-coder-32b-instruct",
        name: "Qwen2.5-Coder-32B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.96, output: 0.96 },
        limit: { context: 32768, output: 32768 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "gpt-oss-120b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.47 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek-R1-Distill-Llama-70B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-30",
        last_updated: "2025-01-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.74, output: 0.74 },
        limit: { context: 131072, output: 131072 },
      },
      "qwen2.5-vl-72b-instruct": {
        id: "qwen2.5-vl-72b-instruct",
        name: "Qwen2.5-VL-72B-Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-31",
        last_updated: "2025-03-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.01, output: 1.01 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3-Coder-30B-A3B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-28",
        last_updated: "2025-10-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.26 },
        limit: { context: 262144, output: 262144 },
      },
      "llama-3.1-8b-instruct": {
        id: "llama-3.1-8b-instruct",
        name: "Llama-3.1-8B-Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-06-11",
        last_updated: "2025-06-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.11 },
        limit: { context: 131072, output: 131072 },
      },
      "mistral-nemo-instruct-2407": {
        id: "mistral-nemo-instruct-2407",
        name: "Mistral-Nemo-Instruct-2407",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-20",
        last_updated: "2024-11-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.14 },
        limit: { context: 65536, output: 65536 },
      },
      "gpt-oss-20b": {
        id: "gpt-oss-20b",
        name: "gpt-oss-20b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.18 },
        limit: { context: 131072, output: 131072 },
      },
      "mixtral-8x7b-instruct-v0.1": {
        id: "mixtral-8x7b-instruct-v0.1",
        name: "Mixtral-8x7B-Instruct-v0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-01",
        last_updated: "2025-04-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 32768, output: 32768 },
      },
    },
  },
  stackit: {
    id: "stackit",
    env: ["STACKIT_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.openai-compat.model-serving.eu01.onstackit.cloud/v1",
    name: "STACKIT",
    doc: "https://docs.stackit.cloud/products/data-and-ai/ai-model-serving/basics/available-shared-models",
    models: {
      "intfloat/e5-mistral-7b-instruct": {
        id: "intfloat/e5-mistral-7b-instruct",
        name: "E5 Mistral 7B",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        release_date: "2023-12-11",
        last_updated: "2023-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.02 },
        limit: { context: 4096, output: 4096 },
      },
      "neuralmagic/Meta-Llama-3.1-8B-Instruct-FP8": {
        id: "neuralmagic/Meta-Llama-3.1-8B-Instruct-FP8",
        name: "Llama 3.1 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.16, output: 0.27 },
        limit: { context: 128000, output: 8192 },
      },
      "neuralmagic/Mistral-Nemo-Instruct-2407-FP8": {
        id: "neuralmagic/Mistral-Nemo-Instruct-2407-FP8",
        name: "Mistral Nemo",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.49, output: 0.71 },
        limit: { context: 128000, output: 8192 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Gemma 3 27B",
        family: "gemma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-05-17",
        last_updated: "2025-05-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.49, output: 0.71 },
        limit: { context: 37000, output: 8192 },
      },
      "Qwen/Qwen3-VL-Embedding-8B": {
        id: "Qwen/Qwen3-VL-Embedding-8B",
        name: "Qwen3-VL Embedding 8B",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: false,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.09 },
        limit: { context: 32000, output: 4096 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Instruct-FP8": {
        id: "Qwen/Qwen3-VL-235B-A22B-Instruct-FP8",
        name: "Qwen3-VL 235B",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.64, output: 1.91 },
        limit: { context: 218000, output: 8192 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT-OSS 120B",
        family: "gpt",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.49, output: 0.71 },
        limit: { context: 131000, output: 8192 },
      },
      "cortecs/Llama-3.3-70B-Instruct-FP8-Dynamic": {
        id: "cortecs/Llama-3.3-70B-Instruct-FP8-Dynamic",
        name: "Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.49, output: 0.71 },
        limit: { context: 128000, output: 8192 },
      },
    },
  },
  "cloudferro-sherlock": {
    id: "cloudferro-sherlock",
    env: ["CLOUDFERRO_SHERLOCK_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api-sherlock.cloudferro.com/openai/v1/",
    name: "CloudFerro Sherlock",
    doc: "https://docs.sherlock.cloudferro.com/",
    models: {
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196000, output: 196000 },
      },
      "speakleash/Bielik-11B-v2.6-Instruct": {
        id: "speakleash/Bielik-11B-v2.6-Instruct",
        name: "Bielik 11B v2.6 Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.67, output: 0.67 },
        limit: { context: 32000, output: 32000 },
      },
      "speakleash/Bielik-11B-v3.0-Instruct": {
        id: "speakleash/Bielik-11B-v3.0-Instruct",
        name: "Bielik 11B v3.0 Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.67, output: 0.67 },
        limit: { context: 32000, output: 32000 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-09",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.92, output: 2.92 },
        limit: { context: 70000, output: 70000 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "OpenAI GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.92, output: 2.92 },
        limit: { context: 131000, output: 131000 },
      },
    },
  },
  requesty: {
    id: "requesty",
    env: ["REQUESTY_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://router.requesty.ai/v1",
    name: "Requesty",
    doc: "https://requesty.ai/solution/llm-routing/models",
    models: {
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, cache_write: 0.55 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Gemini 3 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05, cache_write: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-pro-preview": {
        id: "google/gemini-3-pro-preview",
        name: "Gemini 3 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, cache_write: 4.5 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31, cache_write: 2.375 },
        limit: { context: 1048576, output: 65536 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "GPT-5.3-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "GPT-5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 272000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "GPT-5.1-Codex-Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 9, cache_read: 0.11 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-chat": {
        id: "openai/gpt-5.2-chat",
        name: "GPT-5.2 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-chat": {
        id: "openai/gpt-5-chat",
        name: "GPT-5 Chat (latest)",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.1-chat": {
        id: "openai/gpt-5.1-chat",
        name: "GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-image": {
        id: "openai/gpt-5-image",
        name: "GPT-5 Image",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10-01",
        release_date: "2025-10-14",
        last_updated: "2025-10-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 5, output: 10, cache_read: 1.25 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT-5.1-Codex-Mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 100000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "audio", "image", "video"], output: ["text", "audio", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "o4 Mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT-4.1 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 15,
          cache_read: 0.25,
          context_over_200k: { input: 5, output: 22.5, cache_read: 0.5 },
        },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5.4-pro": {
        id: "openai/gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180, cache_read: 30 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT-5.2 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 128000, output: 32000 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.01 },
        limit: { context: 16000, output: 4000 },
      },
      "anthropic/claude-3-7-sonnet": {
        id: "anthropic/claude-3-7-sonnet",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4-1": {
        id: "anthropic/claude-opus-4-1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-opus-4-6": {
        id: "anthropic/claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-05-30",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-sonnet-4-6": {
        id: "anthropic/claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-haiku-4-5": {
        id: "anthropic/claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-01",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 62000 },
      },
      "anthropic/claude-opus-4-5": {
        id: "anthropic/claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4-5": {
        id: "anthropic/claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "xai/grok-4-fast": {
        id: "xai/grok-4-fast",
        name: "Grok 4 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05, cache_write: 0.2 },
        limit: { context: 2000000, output: 64000 },
      },
      "xai/grok-4": {
        id: "xai/grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-09",
        last_updated: "2025-09-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75, cache_write: 3 },
        limit: { context: 256000, output: 64000 },
      },
    },
  },
  "qihang-ai": {
    id: "qihang-ai",
    env: ["QIHANG_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.qhaigc.net/v1",
    name: "QiHang",
    doc: "https://www.qhaigc.net/docs",
    models: {
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.71, output: 3.57 },
        limit: { context: 200000, output: 32000 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 1.14 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.71, context_over_200k: { input: 0.09, output: 0.71 } },
        limit: { context: 1048576, output: 65536 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "Gemini 3 Flash Preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.43, context_over_200k: { input: 0.07, output: 0.43 } },
        limit: { context: 1048576, output: 65536 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.43, output: 2.14 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-10-01",
        last_updated: "2025-10-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.71 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.57, output: 3.43 },
        limit: { context: 1000000, output: 65000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5-Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.29 },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  "siliconflow-cn": {
    id: "siliconflow-cn",
    env: ["SILICONFLOW_CN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.siliconflow.cn/v1",
    name: "SiliconFlow (China)",
    doc: "https://cloud.siliconflow.com/models",
    models: {
      "zai-org/GLM-4.6V": {
        id: "zai-org/GLM-4.6V",
        name: "zai-org/GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-07",
        last_updated: "2025-12-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 131000, output: 131000 },
      },
      "zai-org/GLM-4.5V": {
        id: "zai-org/GLM-4.5V",
        name: "zai-org/GLM-4.5V",
        family: "glm",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.86 },
        limit: { context: 66000, output: 66000 },
      },
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "zai-org/GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.9 },
        limit: { context: 205000, output: 205000 },
      },
      "zai-org/GLM-4.5-Air": {
        id: "zai-org/GLM-4.5-Air",
        name: "zai-org/GLM-4.5-Air",
        family: "glm-air",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.86 },
        limit: { context: 131000, output: 131000 },
      },
      "Pro/zai-org/GLM-4.7": {
        id: "Pro/zai-org/GLM-4.7",
        name: "Pro/zai-org/GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 205000, output: 205000 },
      },
      "Pro/zai-org/GLM-5": {
        id: "Pro/zai-org/GLM-5",
        name: "Pro/zai-org/GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 205000, output: 205000 },
      },
      "Pro/MiniMaxAI/MiniMax-M2.5": {
        id: "Pro/MiniMaxAI/MiniMax-M2.5",
        name: "Pro/MiniMaxAI/MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.22 },
        limit: { context: 192000, output: 131000 },
      },
      "Pro/MiniMaxAI/MiniMax-M2.1": {
        id: "Pro/MiniMaxAI/MiniMax-M2.1",
        name: "Pro/MiniMaxAI/MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 197000, output: 131000 },
      },
      "Pro/deepseek-ai/DeepSeek-R1": {
        id: "Pro/deepseek-ai/DeepSeek-R1",
        name: "Pro/deepseek-ai/DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.18 },
        limit: { context: 164000, output: 164000 },
      },
      "Pro/deepseek-ai/DeepSeek-V3.2": {
        id: "Pro/deepseek-ai/DeepSeek-V3.2",
        name: "Pro/deepseek-ai/DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.42 },
        limit: { context: 164000, output: 164000 },
      },
      "Pro/deepseek-ai/DeepSeek-V3": {
        id: "Pro/deepseek-ai/DeepSeek-V3",
        name: "Pro/deepseek-ai/DeepSeek-V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-26",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "Pro/deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "Pro/deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "Pro/deepseek-ai/DeepSeek-V3.1-Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "Pro/moonshotai/Kimi-K2-Instruct-0905": {
        id: "Pro/moonshotai/Kimi-K2-Instruct-0905",
        name: "Pro/moonshotai/Kimi-K2-Instruct-0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-08",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262000, output: 262000 },
      },
      "Pro/moonshotai/Kimi-K2.5": {
        id: "Pro/moonshotai/Kimi-K2.5",
        name: "Pro/moonshotai/Kimi-K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 3 },
        limit: { context: 262000, output: 262000 },
      },
      "Pro/moonshotai/Kimi-K2-Thinking": {
        id: "Pro/moonshotai/Kimi-K2-Thinking",
        name: "Pro/moonshotai/Kimi-K2-Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-11-07",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 2.5 },
        limit: { context: 262000, output: 262000 },
      },
      "PaddlePaddle/PaddleOCR-VL-1.5": {
        id: "PaddlePaddle/PaddleOCR-VL-1.5",
        name: "PaddlePaddle/PaddleOCR-VL-1.5",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 16384, output: 16384 },
      },
      "PaddlePaddle/PaddleOCR-VL": {
        id: "PaddlePaddle/PaddleOCR-VL",
        name: "PaddlePaddle/PaddleOCR-VL",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-16",
        last_updated: "2025-10-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 16384, output: 16384 },
      },
      "Kwaipilot/KAT-Dev": {
        id: "Kwaipilot/KAT-Dev",
        name: "Kwaipilot/KAT-Dev",
        family: "kat-coder",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-27",
        last_updated: "2026-01-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 128000, output: 128000 },
      },
      "deepseek-ai/DeepSeek-OCR": {
        id: "deepseek-ai/DeepSeek-OCR",
        name: "deepseek-ai/DeepSeek-OCR",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-20",
        last_updated: "2025-10-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "deepseek-ai/DeepSeek-V3.1-Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3": {
        id: "deepseek-ai/DeepSeek-V3",
        name: "deepseek-ai/DeepSeek-V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-26",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "deepseek-ai/DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.42 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/deepseek-vl2": {
        id: "deepseek-ai/deepseek-vl2",
        name: "deepseek-ai/deepseek-vl2",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-13",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 4000, output: 4000 },
      },
      "deepseek-ai/DeepSeek-R1": {
        id: "deepseek-ai/DeepSeek-R1",
        name: "deepseek-ai/DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.18 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B": {
        id: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B",
        name: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131000, output: 131000 },
      },
      "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B": {
        id: "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
        name: "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 131000, output: 131000 },
      },
      "ByteDance-Seed/Seed-OSS-36B-Instruct": {
        id: "ByteDance-Seed/Seed-OSS-36B-Instruct",
        name: "ByteDance-Seed/Seed-OSS-36B-Instruct",
        family: "seed",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 0.57 },
        limit: { context: 262000, output: 262000 },
      },
      "tencent/Hunyuan-MT-7B": {
        id: "tencent/Hunyuan-MT-7B",
        name: "tencent/Hunyuan-MT-7B",
        family: "hunyuan",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 33000, output: 33000 },
      },
      "tencent/Hunyuan-A13B-Instruct": {
        id: "tencent/Hunyuan-A13B-Instruct",
        name: "tencent/Hunyuan-A13B-Instruct",
        family: "hunyuan",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "ascend-tribe/pangu-pro-moe": {
        id: "ascend-tribe/pangu-pro-moe",
        name: "ascend-tribe/pangu-pro-moe",
        family: "pangu",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-02",
        last_updated: "2026-01-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 128000, output: 128000 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "moonshotai/Kimi-K2-Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-11-07",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 2.5 },
        limit: { context: 262000, output: 262000 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "moonshotai/Kimi-K2-Instruct-0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-08",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 262000, output: 262000 },
      },
      "inclusionAI/Ling-mini-2.0": {
        id: "inclusionAI/Ling-mini-2.0",
        name: "inclusionAI/Ling-mini-2.0",
        family: "ling",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-10",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131000, output: 131000 },
      },
      "inclusionAI/Ring-flash-2.0": {
        id: "inclusionAI/Ring-flash-2.0",
        name: "inclusionAI/Ring-flash-2.0",
        family: "ring",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "inclusionAI/Ling-flash-2.0": {
        id: "inclusionAI/Ling-flash-2.0",
        name: "inclusionAI/Ling-flash-2.0",
        family: "ling",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "baidu/ERNIE-4.5-300B-A47B": {
        id: "baidu/ERNIE-4.5-300B-A47B",
        name: "baidu/ERNIE-4.5-300B-A47B",
        family: "ernie",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-02",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 131000, output: 131000 },
      },
      "stepfun-ai/Step-3.5-Flash": {
        id: "stepfun-ai/Step-3.5-Flash",
        name: "stepfun-ai/Step-3.5-Flash",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3.5-9B": {
        id: "Qwen/Qwen3.5-9B",
        name: "Qwen/Qwen3.5-9B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 1.74 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3.5-122B-A10B": {
        id: "Qwen/Qwen3.5-122B-A10B",
        name: "Qwen/Qwen3.5-122B-A10B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-26",
        last_updated: "2026-02-26",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 2.32 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3.5-397B-A17B": {
        id: "Qwen/Qwen3.5-397B-A17B",
        name: "Qwen/Qwen3.5-397B-A17B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 1.74 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3.5-35B-A3B": {
        id: "Qwen/Qwen3.5-35B-A3B",
        name: "Qwen/Qwen3.5-35B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-25",
        last_updated: "2026-02-25",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.23, output: 1.86 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3.5-4B": {
        id: "Qwen/Qwen3.5-4B",
        name: "Qwen/Qwen3.5-4B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3.5-27B": {
        id: "Qwen/Qwen3.5-27B",
        name: "Qwen/Qwen3.5-27B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-25",
        last_updated: "2026-02-25",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 2.09 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen2.5-VL-32B-Instruct": {
        id: "Qwen/Qwen2.5-VL-32B-Instruct",
        name: "Qwen/Qwen2.5-VL-32B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.27 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-14B": {
        id: "Qwen/Qwen3-14B",
        name: "Qwen/Qwen3-14B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-32B-Thinking": {
        id: "Qwen/Qwen3-VL-32B-Thinking",
        name: "Qwen/Qwen3-VL-32B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-21",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Coder-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        name: "Qwen/Qwen3-Coder-30B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-8B-Thinking": {
        id: "Qwen/Qwen3-VL-8B-Thinking",
        name: "Qwen/Qwen3-VL-8B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 2 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-VL-30B-A3B-Instruct",
        name: "Qwen/Qwen3-VL-30B-A3B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-05",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Captioner": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Captioner",
        name: "Qwen/Qwen3-Omni-30B-A3B-Captioner",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Thinking": {
        id: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        name: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-8B-Instruct": {
        id: "Qwen/Qwen3-VL-8B-Instruct",
        name: "Qwen/Qwen3-VL-8B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.68 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen2.5-72B-Instruct-128K": {
        id: "Qwen/Qwen2.5-72B-Instruct-128K",
        name: "Qwen/Qwen2.5-72B-Instruct-128K",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 131000, output: 4000 },
      },
      "Qwen/Qwen2.5-72B-Instruct": {
        id: "Qwen/Qwen2.5-72B-Instruct",
        name: "Qwen/Qwen2.5-72B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-VL-72B-Instruct": {
        id: "Qwen/Qwen2.5-VL-72B-Instruct",
        name: "Qwen/Qwen2.5-VL-72B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.59 },
        limit: { context: 131000, output: 4000 },
      },
      "Qwen/Qwen2.5-14B-Instruct": {
        id: "Qwen/Qwen2.5-14B-Instruct",
        name: "Qwen/Qwen2.5-14B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-7B-Instruct": {
        id: "Qwen/Qwen2.5-7B-Instruct",
        name: "Qwen/Qwen2.5-7B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.05 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Thinking": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Thinking",
        name: "Qwen/Qwen3-Omni-30B-A3B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-8B": {
        id: "Qwen/Qwen3-8B",
        name: "Qwen/Qwen3-8B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.06 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen2.5-Coder-32B-Instruct": {
        id: "Qwen/Qwen2.5-Coder-32B-Instruct",
        name: "Qwen/Qwen2.5-Coder-32B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-11-11",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen2.5-32B-Instruct": {
        id: "Qwen/Qwen2.5-32B-Instruct",
        name: "Qwen/Qwen2.5-32B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-09-19",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 33000, output: 4000 },
      },
      "Qwen/Qwen3-30B-A3B-Thinking-2507": {
        id: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        name: "Qwen/Qwen3-30B-A3B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.3 },
        limit: { context: 262000, output: 131000 },
      },
      "Qwen/Qwen3-Omni-30B-A3B-Instruct": {
        id: "Qwen/Qwen3-Omni-30B-A3B-Instruct",
        name: "Qwen/Qwen3-Omni-30B-A3B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 66000, output: 66000 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Thinking": {
        id: "Qwen/Qwen3-VL-235B-A22B-Thinking",
        name: "Qwen/Qwen3-VL-235B-A22B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.45, output: 3.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-32B": {
        id: "Qwen/Qwen3-32B",
        name: "Qwen/Qwen3-32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/QwQ-32B": {
        id: "Qwen/QwQ-32B",
        name: "Qwen/QwQ-32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-06",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.58 },
        limit: { context: 131000, output: 131000 },
      },
      "Qwen/Qwen3-VL-32B-Instruct": {
        id: "Qwen/Qwen3-VL-32B-Instruct",
        name: "Qwen/Qwen3-VL-32B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-21",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Instruct": {
        id: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        name: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-04",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.3 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen3-VL-30B-A3B-Thinking": {
        id: "Qwen/Qwen3-VL-30B-A3B-Thinking",
        name: "Qwen/Qwen3-VL-30B-A3B-Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 1 },
        limit: { context: 262000, output: 262000 },
      },
      "THUDM/GLM-Z1-9B-0414": {
        id: "THUDM/GLM-Z1-9B-0414",
        name: "THUDM/GLM-Z1-9B-0414",
        family: "glm-z",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.086, output: 0.086 },
        limit: { context: 131000, output: 131000 },
      },
      "THUDM/GLM-Z1-32B-0414": {
        id: "THUDM/GLM-Z1-32B-0414",
        name: "THUDM/GLM-Z1-32B-0414",
        family: "glm-z",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131000, output: 131000 },
      },
      "THUDM/GLM-4-9B-0414": {
        id: "THUDM/GLM-4-9B-0414",
        name: "THUDM/GLM-4-9B-0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.086, output: 0.086 },
        limit: { context: 33000, output: 33000 },
      },
      "THUDM/GLM-4-32B-0414": {
        id: "THUDM/GLM-4-32B-0414",
        name: "THUDM/GLM-4-32B-0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-04-18",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.27 },
        limit: { context: 33000, output: 33000 },
      },
    },
  },
  helicone: {
    id: "helicone",
    env: ["HELICONE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://ai-gateway.helicone.ai/v1",
    name: "Helicone",
    doc: "https://helicone.ai/models",
    models: {
      "claude-4.5-haiku": {
        id: "claude-4.5-haiku",
        name: "Anthropic: Claude 4.5 Haiku",
        family: "claude-haiku",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2025-10-01",
        last_updated: "2025-10-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.09999999999999999, cache_write: 1.25 },
        limit: { context: 200000, output: 8192 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "OpenAI: GPT-5 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "OpenAI: GPT-5 Pro",
        family: "gpt-pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 128000, output: 32768 },
      },
      "deepseek-reasoner": {
        id: "deepseek-reasoner",
        name: "DeepSeek Reasoner",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 1.68, cache_read: 0.07 },
        limit: { context: 128000, output: 64000 },
      },
      "claude-3.7-sonnet": {
        id: "claude-3.7-sonnet",
        name: "Anthropic: Claude 3.7 Sonnet",
        family: "claude-sonnet",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.30000000000000004, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-4o-mini": {
        id: "gpt-4o-mini",
        name: "OpenAI GPT-4o-mini",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.075 },
        limit: { context: 128000, output: 16384 },
      },
      "grok-4-fast-reasoning": {
        id: "grok-4-fast-reasoning",
        name: "xAI: Grok 4 Fast Reasoning",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.19999999999999998, output: 0.5, cache_read: 0.049999999999999996 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gpt-5-chat-latest": {
        id: "gpt-5-chat-latest",
        name: "OpenAI GPT-5 Chat Latest",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09",
        release_date: "2024-09-30",
        last_updated: "2024-09-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 128000, output: 16384 },
      },
      "llama-4-scout": {
        id: "llama-4-scout",
        name: "Meta Llama 4 Scout 17B 16E",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.08, output: 0.3 },
        limit: { context: 131072, output: 8192 },
      },
      "codex-mini-latest": {
        id: "codex-mini-latest",
        name: "OpenAI Codex Mini Latest",
        family: "gpt-codex-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.375 },
        limit: { context: 200000, output: 100000 },
      },
      "qwen2.5-coder-7b-fast": {
        id: "qwen2.5-coder-7b-fast",
        name: "Qwen2.5 Coder 7B fast",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-09-15",
        last_updated: "2024-09-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0.09 },
        limit: { context: 32000, output: 8192 },
      },
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Anthropic: Claude Opus 4.1",
        family: "claude-opus",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "sonar-reasoning-pro": {
        id: "sonar-reasoning-pro",
        name: "Perplexity Sonar Reasoning Pro",
        family: "sonar-reasoning",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 127000, output: 4096 },
      },
      "deepseek-v3": {
        id: "deepseek-v3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-26",
        last_updated: "2024-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.56, output: 1.68, cache_read: 0.07 },
        limit: { context: 128000, output: 8192 },
      },
      "llama-3.1-8b-instruct-turbo": {
        id: "llama-3.1-8b-instruct-turbo",
        name: "Meta Llama 3.1 8B Instruct Turbo",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.03 },
        limit: { context: 128000, output: 128000 },
      },
      "grok-3": {
        id: "grok-3",
        name: "xAI Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 131072 },
      },
      "ernie-4.5-21b-a3b-thinking": {
        id: "ernie-4.5-21b-a3b-thinking",
        name: "Baidu Ernie 4.5 21B A3B Thinking",
        family: "ernie",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-03-16",
        last_updated: "2025-03-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 128000, output: 8000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "xAI Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-25",
        last_updated: "2024-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.19999999999999998, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "llama-prompt-guard-2-22m": {
        id: "llama-prompt-guard-2-22m",
        name: "Meta Llama Prompt Guard 2 22M",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.01, output: 0.01 },
        limit: { context: 512, output: 2 },
      },
      "llama-3.3-70b-instruct": {
        id: "llama-3.3-70b-instruct",
        name: "Meta Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0.39 },
        limit: { context: 128000, output: 16400 },
      },
      "grok-4-1-fast-reasoning": {
        id: "grok-4-1-fast-reasoning",
        name: "xAI Grok 4.1 Fast Reasoning",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-17",
        last_updated: "2025-11-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.19999999999999998, output: 0.5, cache_read: 0.049999999999999996 },
        limit: { context: 2000000, output: 2000000 },
      },
      "claude-4.5-sonnet": {
        id: "claude-4.5-sonnet",
        name: "Anthropic: Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.30000000000000004, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gpt-4.1-mini-2025-04-14": {
        id: "gpt-4.1-mini-2025-04-14",
        name: "OpenAI GPT-4.1 Mini",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.39999999999999997, output: 1.5999999999999999, cache_read: 0.09999999999999999 },
        limit: { context: 1047576, output: 32768 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Google Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, cache_write: 0.3 },
        limit: { context: 1048576, output: 65535 },
      },
      "llama-guard-4": {
        id: "llama-guard-4",
        name: "Meta Llama Guard 4 12B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.21, output: 0.21 },
        limit: { context: 131072, output: 1024 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "xAI Grok 4.1 Fast Non-Reasoning",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-17",
        last_updated: "2025-11-17",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.19999999999999998, output: 0.5, cache_read: 0.049999999999999996 },
        limit: { context: 2000000, output: 30000 },
      },
      o1: {
        id: "o1",
        name: "OpenAI: o1",
        family: "o",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "OpenAI GPT-5.1",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 400000, output: 128000 },
      },
      "kimi-k2-0905": {
        id: "kimi-k2-0905",
        name: "Kimi K2 (09/05)",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2, cache_read: 0.39999999999999997 },
        limit: { context: 262144, output: 16384 },
      },
      "grok-4": {
        id: "grok-4",
        name: "xAI Grok 4",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-09",
        last_updated: "2024-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 256000 },
      },
      "llama-3.1-8b-instant": {
        id: "llama-3.1-8b-instant",
        name: "Meta Llama 3.1 8B Instant",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049999999999999996, output: 0.08 },
        limit: { context: 131072, output: 32678 },
      },
      sonar: {
        id: "sonar",
        name: "Perplexity Sonar",
        family: "sonar",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 127000, output: 4096 },
      },
      o3: {
        id: "o3",
        name: "OpenAI o3",
        family: "o",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "qwen3-coder": {
        id: "qwen3-coder",
        name: "Qwen3 Coder 480B A35B Instruct Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.22, output: 0.95 },
        limit: { context: 262144, output: 16384 },
      },
      "glm-4.6": {
        id: "glm-4.6",
        name: "Zai GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.44999999999999996, output: 1.5 },
        limit: { context: 204800, output: 131072 },
      },
      "sonar-reasoning": {
        id: "sonar-reasoning",
        name: "Perplexity Sonar Reasoning",
        family: "sonar-reasoning",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5 },
        limit: { context: 127000, output: 4096 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.29, output: 0.59 },
        limit: { context: 131072, output: 40960 },
      },
      "sonar-deep-research": {
        id: "sonar-deep-research",
        name: "Perplexity Sonar Deep Research",
        family: "sonar-deep-research",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 127000, output: 4096 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "OpenAI GPT-4.1 Nano",
        family: "gpt-nano",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09999999999999999, output: 0.39999999999999997, cache_read: 0.024999999999999998 },
        limit: { context: 1047576, output: 32768 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "Anthropic: Claude Sonnet 4.5 (20250929)",
        family: "claude-sonnet",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.30000000000000004, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "Google Gemini 2.5 Flash Lite",
        family: "gemini-flash-lite",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 0.09999999999999999,
          output: 0.39999999999999997,
          cache_read: 0.024999999999999998,
          cache_write: 0.09999999999999999,
        },
        limit: { context: 1048576, output: 65535 },
      },
      "claude-3.5-haiku": {
        id: "claude-3.5-haiku",
        name: "Anthropic: Claude 3.5 Haiku",
        family: "claude-haiku",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7999999999999999, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "OpenAI GPT-OSS 120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.16 },
        limit: { context: 131072, output: 131072 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "OpenAI: GPT-5.1 Codex Mini",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.024999999999999998 },
        limit: { context: 400000, output: 128000 },
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0.13 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-v3.1-terminus": {
        id: "deepseek-v3.1-terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1, cache_read: 0.21600000000000003 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "OpenAI GPT-4.1",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "claude-3.5-sonnet-v2": {
        id: "claude-3.5-sonnet-v2",
        name: "Anthropic: Claude 3.5 Sonnet v2",
        family: "claude-sonnet",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.30000000000000004, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "mistral-small": {
        id: "mistral-small",
        name: "Mistral Small",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-02",
        release_date: "2024-02-26",
        last_updated: "2024-02-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 75, output: 200 },
        limit: { context: 128000, output: 128000 },
      },
      "o3-pro": {
        id: "o3-pro",
        name: "OpenAI o3 Pro",
        family: "o-pro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 80 },
        limit: { context: 200000, output: 100000 },
      },
      "mistral-nemo": {
        id: "mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 40 },
        limit: { context: 128000, output: 16400 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09999999999999999, output: 0.3 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen3-vl-235b-a22b-instruct": {
        id: "qwen3-vl-235b-a22b-instruct",
        name: "Qwen3 VL 235B A22B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.5 },
        limit: { context: 256000, output: 16384 },
      },
      "qwen3-235b-a22b-thinking": {
        id: "qwen3-235b-a22b-thinking",
        name: "Qwen3 235B A22B Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.9000000000000004 },
        limit: { context: 262144, output: 81920 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 163840, output: 65536 },
      },
      "grok-3-mini": {
        id: "grok-3-mini",
        name: "xAI Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 131072 },
      },
      "claude-3-haiku-20240307": {
        id: "claude-3-haiku-20240307",
        name: "Anthropic: Claude 3 Haiku",
        family: "claude-haiku",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-03-07",
        last_updated: "2024-03-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "Anthropic: Claude 4.5 Haiku (20251001)",
        family: "claude-haiku",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-10",
        release_date: "2025-10-01",
        last_updated: "2025-10-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.09999999999999999, cache_write: 1.25 },
        limit: { context: 200000, output: 8192 },
      },
      "kimi-k2-0711": {
        id: "kimi-k2-0711",
        name: "Kimi K2 (07/11)",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5700000000000001, output: 2.3 },
        limit: { context: 131072, output: 16384 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "OpenAI GPT-5",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 400000, output: 128000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "OpenAI o4 Mini",
        family: "o-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.275 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "OpenAI GPT-4.1 Mini",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.39999999999999997, output: 1.5999999999999999, cache_read: 0.09999999999999999 },
        limit: { context: 1047576, output: 32768 },
      },
      "llama-3.3-70b-versatile": {
        id: "llama-3.3-70b-versatile",
        name: "Meta Llama 3.3 70B Versatile",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.59, output: 0.7899999999999999 },
        limit: { context: 131072, output: 32678 },
      },
      "llama-4-maverick": {
        id: "llama-4-maverick",
        name: "Meta Llama 4 Maverick 17B 128E",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 131072, output: 8192 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.48, output: 2 },
        limit: { context: 256000, output: 262144 },
      },
      "gemma2-9b-it": {
        id: "gemma2-9b-it",
        name: "Google Gemma 2",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-25",
        last_updated: "2024-06-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.01, output: 0.03 },
        limit: { context: 8192, output: 8192 },
      },
      "deepseek-tng-r1t2-chimera": {
        id: "deepseek-tng-r1t2-chimera",
        name: "DeepSeek TNG R1T2 Chimera",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-02",
        last_updated: "2025-07-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 130000, output: 163840 },
      },
      "sonar-pro": {
        id: "sonar-pro",
        name: "Perplexity Sonar Pro",
        family: "sonar-pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 4096 },
      },
      "claude-opus-4": {
        id: "claude-opus-4",
        name: "Anthropic: Claude Opus 4",
        family: "claude-opus",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-14",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "OpenAI: GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 400000, output: 128000 },
      },
      "mistral-large-2411": {
        id: "mistral-large-2411",
        name: "Mistral-Large",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-24",
        last_updated: "2024-07-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 32768 },
      },
      "claude-4.5-opus": {
        id: "claude-4.5-opus",
        name: "Anthropic: Claude Opus 4.5",
        family: "claude-opus",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "chatgpt-4o-latest": {
        id: "chatgpt-4o-latest",
        name: "OpenAI ChatGPT-4o",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-14",
        last_updated: "2024-08-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 20, cache_read: 2.5 },
        limit: { context: 128000, output: 16384 },
      },
      "llama-3.1-8b-instruct": {
        id: "llama-3.1-8b-instruct",
        name: "Meta Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.049999999999999996 },
        limit: { context: 16384, output: 16384 },
      },
      "claude-sonnet-4": {
        id: "claude-sonnet-4",
        name: "Anthropic: Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-14",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.30000000000000004, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Google Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.19999999999999998 },
        limit: { context: 1048576, output: 65536 },
      },
      "qwen3-next-80b-a3b-instruct": {
        id: "qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 1.4 },
        limit: { context: 262000, output: 16384 },
      },
      "llama-prompt-guard-2-86m": {
        id: "llama-prompt-guard-2-86m",
        name: "Meta Llama Prompt Guard 2 86M",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.01, output: 0.01 },
        limit: { context: 512, output: 2 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "OpenAI o3 Mini",
        family: "o-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2023-10",
        release_date: "2023-10-01",
        last_updated: "2023-10-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "gemma-3-12b-it": {
        id: "gemma-3-12b-it",
        name: "Google Gemma 3 12B",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049999999999999996, output: 0.09999999999999999 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-30b-a3b": {
        id: "qwen3-30b-a3b",
        name: "Qwen3 30B A3B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.08, output: 0.29 },
        limit: { context: 41000, output: 41000 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "xAI Grok 4 Fast Non-Reasoning",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.19999999999999998, output: 0.5, cache_read: 0.049999999999999996 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "OpenAI GPT-5 Mini",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.024999999999999998 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-oss-20b": {
        id: "gpt-oss-20b",
        name: "OpenAI GPT-OSS 20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049999999999999996, output: 0.19999999999999998 },
        limit: { context: 131072, output: 131072 },
      },
      "hermes-2-pro-llama-3-8b": {
        id: "hermes-2-pro-llama-3-8b",
        name: "Hermes 2 Pro Llama 3 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2024-05-27",
        last_updated: "2024-05-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.14 },
        limit: { context: 131072, output: 131072 },
      },
      "gpt-5.1-chat-latest": {
        id: "gpt-5.1-chat-latest",
        name: "OpenAI GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.12500000000000003 },
        limit: { context: 128000, output: 16384 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "Anthropic: Claude Opus 4.1 (20250805)",
        family: "claude-opus",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Google Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.3125, cache_write: 1.25 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "OpenAI GPT-5 Nano",
        family: "gpt-nano",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.049999999999999996, output: 0.39999999999999997, cache_read: 0.005 },
        limit: { context: 400000, output: 128000 },
      },
      "o1-mini": {
        id: "o1-mini",
        name: "OpenAI: o1-mini",
        family: "o-mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 128000, output: 65536 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "OpenAI GPT-4o",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  vercel: {
    id: "vercel",
    env: ["AI_GATEWAY_API_KEY"],
    npm: "@ai-sdk/gateway",
    name: "Vercel AI Gateway",
    doc: "https://github.com/vercel/ai/tree/5eb85cc45a259553501f535b8ac79a77d0e79223/packages/gateway",
    models: {
      "prime-intellect/intellect-3": {
        id: "prime-intellect/intellect-3",
        name: "INTELLECT 3",
        family: "intellect",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-11-26",
        last_updated: "2025-11-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 131072, output: 131072 },
      },
      "zai/glm-5": {
        id: "zai/glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 202800, output: 131072 },
      },
      "zai/glm-4.7-flashx": {
        id: "zai/glm-4.7-flashx",
        name: "GLM 4.7 FlashX",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.4, cache_read: 0.01 },
        limit: { context: 200000, output: 128000 },
      },
      "zai/glm-4.5-air": {
        id: "zai/glm-4.5-air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 128000, output: 96000 },
      },
      "zai/glm-4.5": {
        id: "zai/glm-4.5",
        name: "GLM 4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 131072, output: 131072 },
      },
      "zai/glm-4.7-flash": {
        id: "zai/glm-4.7-flash",
        name: "GLM 4.7 Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-13",
        last_updated: "2026-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.39999999999999997 },
        limit: { context: 200000, output: 131000 },
      },
      "zai/glm-4.6": {
        id: "zai/glm-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 1.8 },
        limit: { context: 200000, output: 96000 },
      },
      "zai/glm-4.7": {
        id: "zai/glm-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.43, output: 1.75, cache_read: 0.08 },
        limit: { context: 202752, output: 120000 },
      },
      "zai/glm-4.6v-flash": {
        id: "zai/glm-4.6v-flash",
        name: "GLM-4.6V-Flash",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 24000 },
      },
      "zai/glm-4.5v": {
        id: "zai/glm-4.5v",
        name: "GLM 4.5V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8 },
        limit: { context: 66000, output: 66000 },
      },
      "zai/glm-4.6v": {
        id: "zai/glm-4.6v",
        name: "GLM-4.6V",
        family: "glm",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.9, cache_read: 0.05 },
        limit: { context: 128000, output: 24000 },
      },
      "nvidia/nemotron-nano-12b-v2-vl": {
        id: "nvidia/nemotron-nano-12b-v2-vl",
        name: "Nvidia Nemotron Nano 12B V2 VL",
        family: "nemotron",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 131072, output: 131072 },
      },
      "nvidia/nemotron-nano-9b-v2": {
        id: "nvidia/nemotron-nano-9b-v2",
        name: "Nvidia Nemotron Nano 9B V2",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-18",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.16 },
        limit: { context: 131072, output: 131072 },
      },
      "nvidia/nemotron-3-nano-30b-a3b": {
        id: "nvidia/nemotron-3-nano-30b-a3b",
        name: "Nemotron 3 Nano 30B A3B",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.24 },
        limit: { context: 262144, output: 262144 },
      },
      "arcee-ai/trinity-large-preview": {
        id: "arcee-ai/trinity-large-preview",
        name: "Trinity Large Preview",
        family: "trinity",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 131000, output: 131000 },
      },
      "arcee-ai/trinity-mini": {
        id: "arcee-ai/trinity-mini",
        name: "Trinity Mini",
        family: "trinity",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12",
        last_updated: "2025-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.15 },
        limit: { context: 131072, output: 131072 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "MiMo V2 Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.29 },
        limit: { context: 262144, output: 32000 },
      },
      "inception/mercury-2": {
        id: "inception/mercury-2",
        name: "Mercury 2",
        family: "mercury",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.024999999999999998 },
        limit: { context: 128000, output: 128000 },
      },
      "inception/mercury-coder-small": {
        id: "inception/mercury-coder-small",
        name: "Mercury Coder Small Beta",
        family: "mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-02-26",
        last_updated: "2025-02-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 32000, output: 16384 },
      },
      "voyage/voyage-3-large": {
        id: "voyage/voyage-3-large",
        name: "voyage-3-large",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-code-3": {
        id: "voyage/voyage-code-3",
        name: "voyage-code-3",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-law-2": {
        id: "voyage/voyage-law-2",
        name: "voyage-law-2",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-03",
        last_updated: "2024-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-finance-2": {
        id: "voyage/voyage-finance-2",
        name: "voyage-finance-2",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-03",
        last_updated: "2024-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-code-2": {
        id: "voyage/voyage-code-2",
        name: "voyage-code-2",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-4-lite": {
        id: "voyage/voyage-4-lite",
        name: "voyage-4-lite",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-06",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 32000, output: 0 },
      },
      "voyage/voyage-3.5-lite": {
        id: "voyage/voyage-3.5-lite",
        name: "voyage-3.5-lite",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-4-large": {
        id: "voyage/voyage-4-large",
        name: "voyage-4-large",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-06",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 32000, output: 0 },
      },
      "voyage/voyage-3.5": {
        id: "voyage/voyage-3.5",
        name: "voyage-3.5",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "voyage/voyage-4": {
        id: "voyage/voyage-4",
        name: "voyage-4",
        family: "voyage",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-06",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 32000, output: 0 },
      },
      "amazon/nova-2-lite": {
        id: "amazon/nova-2-lite",
        name: "Nova 2 Lite",
        family: "nova",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1000000, output: 1000000 },
      },
      "amazon/titan-embed-text-v2": {
        id: "amazon/titan-embed-text-v2",
        name: "Titan Text Embeddings V2",
        family: "titan-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-04",
        last_updated: "2024-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "amazon/nova-lite": {
        id: "amazon/nova-lite",
        name: "Nova Lite",
        family: "nova-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.24, cache_read: 0.015 },
        limit: { context: 300000, output: 8192 },
      },
      "amazon/nova-pro": {
        id: "amazon/nova-pro",
        name: "Nova Pro",
        family: "nova-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 3.2, cache_read: 0.2 },
        limit: { context: 300000, output: 8192 },
      },
      "amazon/nova-micro": {
        id: "amazon/nova-micro",
        name: "Nova Micro",
        family: "nova-micro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.035, output: 0.14, cache_read: 0.00875 },
        limit: { context: 128000, output: 8192 },
      },
      "alibaba/qwen-3-235b": {
        id: "alibaba/qwen-3-235b",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0.6 },
        limit: { context: 40960, output: 16384 },
      },
      "alibaba/qwen3-max-preview": {
        id: "alibaba/qwen3-max-preview",
        name: "Qwen3 Max Preview",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6, cache_read: 0.24 },
        limit: { context: 262144, output: 32768 },
      },
      "alibaba/qwen3-next-80b-a3b-thinking": {
        id: "alibaba/qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 131072, output: 65536 },
      },
      "alibaba/qwen3-max-thinking": {
        id: "alibaba/qwen3-max-thinking",
        name: "Qwen 3 Max Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.2, output: 6, cache_read: 0.24 },
        limit: { context: 256000, output: 65536 },
      },
      "alibaba/qwen3-vl-instruct": {
        id: "alibaba/qwen3-vl-instruct",
        name: "Qwen3 VL Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.8 },
        limit: { context: 131072, output: 129024 },
      },
      "alibaba/qwen3-embedding-8b": {
        id: "alibaba/qwen3-embedding-8b",
        name: "Qwen3 Embedding 8B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "alibaba/qwen3-coder-next": {
        id: "alibaba/qwen3-coder-next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-22",
        last_updated: "2026-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.2 },
        limit: { context: 256000, output: 256000 },
      },
      "alibaba/qwen3-coder": {
        id: "alibaba/qwen3-coder",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.38, output: 1.53 },
        limit: { context: 262144, output: 66536 },
      },
      "alibaba/qwen-3-30b": {
        id: "alibaba/qwen-3-30b",
        name: "Qwen3-30B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.08, output: 0.29 },
        limit: { context: 40960, output: 16384 },
      },
      "alibaba/qwen3-embedding-0.6b": {
        id: "alibaba/qwen3-embedding-0.6b",
        name: "Qwen3 Embedding 0.6B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "alibaba/qwen-3-14b": {
        id: "alibaba/qwen-3-14b",
        name: "Qwen3-14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.24 },
        limit: { context: 40960, output: 16384 },
      },
      "alibaba/qwen3-235b-a22b-thinking": {
        id: "alibaba/qwen3-235b-a22b-thinking",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.9 },
        limit: { context: 262114, output: 262114 },
      },
      "alibaba/qwen3-vl-thinking": {
        id: "alibaba/qwen3-vl-thinking",
        name: "Qwen3 VL Thinking",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-24",
        last_updated: "2025-09-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 8.4 },
        limit: { context: 131072, output: 129024 },
      },
      "alibaba/qwen3.5-flash": {
        id: "alibaba/qwen3.5-flash",
        name: "Qwen 3.5 Flash",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.001, cache_write: 0.125 },
        limit: { context: 1000000, output: 64000 },
      },
      "alibaba/qwen3-next-80b-a3b-instruct": {
        id: "alibaba/qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-12",
        last_updated: "2025-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 1.1 },
        limit: { context: 262144, output: 32768 },
      },
      "alibaba/qwen3.5-plus": {
        id: "alibaba/qwen3.5-plus",
        name: "Qwen 3.5 Plus",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-16",
        last_updated: "2026-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2.4, cache_read: 0.04, cache_write: 0.5 },
        limit: { context: 1000000, output: 64000 },
      },
      "alibaba/qwen3-max": {
        id: "alibaba/qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6 },
        limit: { context: 262144, output: 32768 },
      },
      "alibaba/qwen-3-32b": {
        id: "alibaba/qwen-3-32b",
        name: "Qwen 3.32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 40960, output: 16384 },
      },
      "alibaba/qwen3-coder-plus": {
        id: "alibaba/qwen3-coder-plus",
        name: "Qwen3 Coder Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 5 },
        limit: { context: 1000000, output: 1000000 },
      },
      "alibaba/qwen3-embedding-4b": {
        id: "alibaba/qwen3-embedding-4b",
        name: "Qwen3 Embedding 4B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 32768, output: 32768 },
      },
      "alibaba/qwen3-coder-30b-a3b": {
        id: "alibaba/qwen3-coder-30b-a3b",
        name: "Qwen 3 Coder 30B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.27 },
        limit: { context: 160000, output: 32768 },
      },
      "bfl/flux-pro-1.0-fill": {
        id: "bfl/flux-pro-1.0-fill",
        name: "FLUX.1 Fill [pro]",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-10",
        last_updated: "2024-10",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "bfl/flux-pro-1.1": {
        id: "bfl/flux-pro-1.1",
        name: "FLUX1.1 [pro]",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-10",
        last_updated: "2024-10",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "bfl/flux-kontext-max": {
        id: "bfl/flux-kontext-max",
        name: "FLUX.1 Kontext Max",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-06",
        last_updated: "2025-06",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "bfl/flux-kontext-pro": {
        id: "bfl/flux-kontext-pro",
        name: "FLUX.1 Kontext Pro",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-06",
        last_updated: "2025-06",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "bfl/flux-pro-1.1-ultra": {
        id: "bfl/flux-pro-1.1-ultra",
        name: "FLUX1.1 [pro] Ultra",
        family: "flux",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-11",
        last_updated: "2024-11",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "mistral/codestral-embed": {
        id: "mistral/codestral-embed",
        name: "Codestral Embed",
        family: "codestral-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "mistral/devstral-small-2": {
        id: "mistral/devstral-small-2",
        name: "Devstral Small 2",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 256000 },
      },
      "mistral/devstral-2": {
        id: "mistral/devstral-2",
        name: "Devstral 2",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 256000 },
      },
      "mistral/mistral-large-3": {
        id: "mistral/mistral-large-3",
        name: "Mistral Large 3",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 256000, output: 256000 },
      },
      "mistral/mistral-embed": {
        id: "mistral/mistral-embed",
        name: "Mistral Embed",
        family: "mistral-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-12-11",
        last_updated: "2023-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "mistral/ministral-14b": {
        id: "mistral/ministral-14b",
        name: "Ministral 14B",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 256000, output: 256000 },
      },
      "mistral/mistral-nemo": {
        id: "mistral/mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.17 },
        limit: { context: 60288, output: 16000 },
      },
      "mistral/mistral-medium": {
        id: "mistral/mistral-medium",
        name: "Mistral Medium 3.1",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 128000, output: 64000 },
      },
      "mistral/devstral-small": {
        id: "mistral/devstral-small",
        name: "Devstral Small 1.1",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 64000 },
      },
      "mistral/codestral": {
        id: "mistral/codestral",
        name: "Codestral (latest)",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-05-29",
        last_updated: "2025-01-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 4096 },
      },
      "mistral/mixtral-8x22b-instruct": {
        id: "mistral/mixtral-8x22b-instruct",
        name: "Mixtral 8x22B",
        family: "mixtral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-17",
        last_updated: "2024-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 64000, output: 64000 },
      },
      "mistral/mistral-small": {
        id: "mistral/mistral-small",
        name: "Mistral Small (latest)",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2024-09-01",
        last_updated: "2024-09-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 16384 },
      },
      "mistral/ministral-8b": {
        id: "mistral/ministral-8b",
        name: "Ministral 8B (latest)",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral/pixtral-large": {
        id: "mistral/pixtral-large",
        name: "Pixtral Large (latest)",
        family: "pixtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2024-11-01",
        last_updated: "2024-11-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral/pixtral-12b": {
        id: "mistral/pixtral-12b",
        name: "Pixtral 12B",
        family: "pixtral",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-09-01",
        last_updated: "2024-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral/magistral-small": {
        id: "mistral/magistral-small",
        name: "Magistral Small",
        family: "magistral-small",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-03-17",
        last_updated: "2025-03-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 128000, output: 128000 },
      },
      "mistral/magistral-medium": {
        id: "mistral/magistral-medium",
        name: "Magistral Medium (latest)",
        family: "magistral-medium",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-06",
        release_date: "2025-03-17",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 5 },
        limit: { context: 128000, output: 16384 },
      },
      "mistral/ministral-3b": {
        id: "mistral/ministral-3b",
        name: "Ministral 3B (latest)",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-10-01",
        last_updated: "2024-10-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 128000, output: 128000 },
      },
      "kwaipilot/kat-coder-pro-v1": {
        id: "kwaipilot/kat-coder-pro-v1",
        name: "KAT-Coder-Pro V1",
        family: "kat-coder",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10-24",
        last_updated: "2025-10-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 256000, output: 32000 },
      },
      "deepseek/deepseek-v3": {
        id: "deepseek/deepseek-v3",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-12-26",
        last_updated: "2024-12-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.77, output: 0.77 },
        limit: { context: 163840, output: 16384 },
      },
      "deepseek/deepseek-v3.1": {
        id: "deepseek/deepseek-v3.1",
        name: "DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1 },
        limit: { context: 163840, output: 128000 },
      },
      "deepseek/deepseek-v3.1-terminus": {
        id: "deepseek/deepseek-v3.1-terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 131072, output: 65536 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.4, cache_read: 0.22 },
        limit: { context: 163842, output: 8000 },
      },
      "deepseek/deepseek-v3.2-thinking": {
        id: "deepseek/deepseek-v3.2-thinking",
        name: "DeepSeek V3.2 Thinking",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.28, output: 0.42, cache_read: 0.03 },
        limit: { context: 128000, output: 64000 },
      },
      "deepseek/deepseek-v3.2-exp": {
        id: "deepseek/deepseek-v3.2-exp",
        name: "DeepSeek V3.2 Exp",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.4 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-r1": {
        id: "deepseek/deepseek-r1",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-05-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 128000, output: 32768 },
      },
      "moonshotai/kimi-k2-turbo": {
        id: "moonshotai/kimi-k2-turbo",
        name: "Kimi K2 Turbo",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.4, output: 10 },
        limit: { context: 256000, output: 16384 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 131072, output: 16384 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-26",
        last_updated: "2026-01-26",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.2 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.47, output: 2, cache_read: 0.14 },
        limit: { context: 216144, output: 216144 },
      },
      "moonshotai/kimi-k2-thinking-turbo": {
        id: "moonshotai/kimi-k2-thinking-turbo",
        name: "Kimi K2 Thinking Turbo",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.15, output: 8, cache_read: 0.15 },
        limit: { context: 262114, output: 262114 },
      },
      "moonshotai/kimi-k2": {
        id: "moonshotai/kimi-k2",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 16384 },
        status: "deprecated",
      },
      "google/gemini-embedding-001": {
        id: "google/gemini-embedding-001",
        name: "Gemini Embedding 001",
        family: "gemini-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "google/gemini-2.5-flash-lite-preview-09-2025": {
        id: "google/gemini-2.5-flash-lite-preview-09-2025",
        name: "Gemini 2.5 Flash Lite Preview 09-25",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.01 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/imagen-4.0-fast-generate-001": {
        id: "google/imagen-4.0-fast-generate-001",
        name: "Imagen 4 Fast",
        family: "imagen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-06",
        last_updated: "2025-06",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/text-embedding-005": {
        id: "google/text-embedding-005",
        name: "Text Embedding 005",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-08",
        last_updated: "2024-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "google/gemini-2.5-flash-preview-09-2025": {
        id: "google/gemini-2.5-flash-preview-09-2025",
        name: "Gemini 2.5 Flash Preview 09-25",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.03, cache_write: 0.383 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-flash": {
        id: "google/gemini-3-flash",
        name: "Gemini 3 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, cache_read: 0.05 },
        limit: { context: 1000000, output: 64000 },
      },
      "google/imagen-4.0-ultra-generate-001": {
        id: "google/imagen-4.0-ultra-generate-001",
        name: "Imagen 4 Ultra",
        family: "imagen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-24",
        last_updated: "2025-05-24",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-3.1-flash-image-preview": {
        id: "google/gemini-3.1-flash-image-preview",
        name: "Gemini 3.1 Flash Image Preview (Nano Banana 2)",
        family: "gemini",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 131072, output: 32768 },
      },
      "google/gemini-3.1-flash-lite-preview": {
        id: "google/gemini-3.1-flash-lite-preview",
        name: "Gemini 3.1 Flash Lite Preview",
        family: "gemini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-03",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.5, cache_read: 0.025, cache_write: 1 },
        limit: { context: 1000000, output: 65000 },
      },
      "google/text-multilingual-embedding-002": {
        id: "google/text-multilingual-embedding-002",
        name: "Text Multilingual Embedding 002",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-03",
        last_updated: "2024-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "google/gemini-2.5-flash-lite": {
        id: "google/gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.01 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-pro-preview": {
        id: "google/gemini-3.1-pro-preview",
        name: "Gemini 3.1 Pro Preview",
        family: "gemini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-19",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2 },
        limit: { context: 1000000, output: 64000 },
      },
      "google/gemini-2.5-flash-image": {
        id: "google/gemini-2.5-flash-image",
        name: "Nano Banana (Gemini 2.5 Flash Image)",
        family: "gemini-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 32768, output: 32768 },
      },
      "google/gemini-3-pro-image": {
        id: "google/gemini-3-pro-image",
        name: "Nano Banana Pro (Gemini 3 Pro Image)",
        family: "gemini-pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 2, output: 120 },
        limit: { context: 65536, output: 32768 },
      },
      "google/gemini-2.5-flash-image-preview": {
        id: "google/gemini-2.5-flash-image-preview",
        name: "Nano Banana Preview (Gemini 2.5 Flash Image Preview)",
        family: "gemini-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 32768, output: 32768 },
      },
      "google/imagen-4.0-generate-001": {
        id: "google/imagen-4.0-generate-001",
        name: "Imagen 4",
        family: "imagen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 480, output: 0 },
      },
      "google/gemini-3-pro-preview": {
        id: "google/gemini-3-pro-preview",
        name: "Gemini 3 Pro Preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "video", "audio", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, cache_read: 0.2, context_over_200k: { input: 4, output: 18, cache_read: 0.4 } },
        limit: { context: 1000000, output: 64000 },
      },
      "google/gemini-2.0-flash": {
        id: "google/gemini-2.0-flash",
        name: "Gemini 2.0 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1048576, output: 8192 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.31 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.0-flash-lite": {
        id: "google/gemini-2.0-flash-lite",
        name: "Gemini 2.0 Flash Lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 1048576, output: 8192 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "audio", "video", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, cache_read: 0.075, input_audio: 1 },
        limit: { context: 1048576, output: 65536 },
      },
      "meituan/longcat-flash-thinking": {
        id: "meituan/longcat-flash-thinking",
        name: "LongCat Flash Thinking",
        family: "longcat",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 128000, output: 8192 },
      },
      "meituan/longcat-flash-thinking-2601": {
        id: "meituan/longcat-flash-thinking-2601",
        name: "LongCat Flash Thinking 2601",
        family: "longcat",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-13",
        last_updated: "2026-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 32768, output: 32768 },
      },
      "meituan/longcat-flash-chat": {
        id: "meituan/longcat-flash-chat",
        name: "LongCat Flash Chat",
        family: "longcat",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-30",
        last_updated: "2025-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        limit: { context: 128000, output: 8192 },
      },
      "bytedance/seed-1.6": {
        id: "bytedance/seed-1.6",
        name: "Seed 1.6",
        family: "seed",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.05 },
        limit: { context: 256000, output: 32000 },
      },
      "bytedance/seed-1.8": {
        id: "bytedance/seed-1.8",
        name: "Seed 1.8",
        family: "seed",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10",
        last_updated: "2025-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.05 },
        limit: { context: 256000, output: 64000 },
      },
      "meta/llama-3.1-8b": {
        id: "meta/llama-3.1-8b",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.03, output: 0.05 },
        limit: { context: 131072, output: 16384 },
      },
      "meta/llama-3.2-11b": {
        id: "meta/llama-3.2-11b",
        name: "Llama 3.2 11B Vision Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.16, output: 0.16 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-3.1-70b": {
        id: "meta/llama-3.1-70b",
        name: "Llama 3.1 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 131072, output: 16384 },
      },
      "meta/llama-3.2-90b": {
        id: "meta/llama-3.2-90b",
        name: "Llama 3.2 90B Vision Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.72, output: 0.72 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-3.2-1b": {
        id: "meta/llama-3.2-1b",
        name: "Llama 3.2 1B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-18",
        last_updated: "2024-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-3.2-3b": {
        id: "meta/llama-3.2-3b",
        name: "Llama 3.2 3B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-18",
        last_updated: "2024-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 8192 },
      },
      "meta/llama-4-maverick": {
        id: "meta/llama-4-maverick",
        name: "Llama-4-Maverick-17B-128E-Instruct-FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-3.3-70b": {
        id: "meta/llama-3.3-70b",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "meta/llama-4-scout": {
        id: "meta/llama-4-scout",
        name: "Llama-4-Scout-17B-16E-Instruct-FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 4096 },
      },
      "vercel/v0-1.5-md": {
        id: "vercel/v0-1.5-md",
        name: "v0-1.5-md",
        family: "v0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-09",
        last_updated: "2025-06-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, output: 32000 },
      },
      "vercel/v0-1.0-md": {
        id: "vercel/v0-1.0-md",
        name: "v0-1.0-md",
        family: "v0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, output: 32000 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "GPT 5.3 Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "GPT-5 pro",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, input: 128000, output: 272000 },
      },
      "openai/text-embedding-ada-002": {
        id: "openai/text-embedding-ada-002",
        name: "text-embedding-ada-002",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2022-12-15",
        last_updated: "2022-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8192, input: 6656, output: 1536 },
      },
      "openai/gpt-4o-mini-search-preview": {
        id: "openai/gpt-4o-mini-search-preview",
        name: "GPT 4o Mini Search Preview",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "GPT 5.1 Codex Max",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT-5.2-Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-12",
        last_updated: "2025-12",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/o3-deep-research": {
        id: "openai/o3-deep-research",
        name: "o3-deep-research",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-10",
        release_date: "2024-06-26",
        last_updated: "2024-06-26",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 40, cache_read: 2.5 },
        limit: { context: 200000, input: 100000, output: 100000 },
      },
      "openai/gpt-5.2-chat": {
        id: "openai/gpt-5.2-chat",
        name: "GPT-5.2 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.18 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/gpt-5-chat": {
        id: "openai/gpt-5-chat",
        name: "GPT-5 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/text-embedding-3-small": {
        id: "openai/text-embedding-3-small",
        name: "text-embedding-3-small",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8192, input: 6656, output: 1536 },
      },
      "openai/text-embedding-3-large": {
        id: "openai/text-embedding-3-large",
        name: "text-embedding-3-large",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0 },
        limit: { context: 8192, input: 6656, output: 1536 },
      },
      "openai/gpt-3.5-turbo": {
        id: "openai/gpt-3.5-turbo",
        name: "GPT-3.5 Turbo",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-09",
        release_date: "2023-03-01",
        last_updated: "2023-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 16385, input: 12289, output: 4096 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.5 },
        limit: { context: 131072, output: 131072 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex mini",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-05-16",
        last_updated: "2025-05-16",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.18 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/o3-pro": {
        id: "openai/o3-pro",
        name: "o3 Pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-10",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 80 },
        limit: { context: 200000, input: 100000, output: 100000 },
      },
      "openai/gpt-5.1-thinking": {
        id: "openai/gpt-5.1-thinking",
        name: "GPT 5.1 Thinking",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "GPT 5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-05",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/codex-mini": {
        id: "openai/codex-mini",
        name: "Codex Mini",
        family: "gpt-codex-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-05-16",
        last_updated: "2025-05-16",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.38 },
        limit: { context: 200000, input: 100000, output: 100000 },
      },
      "openai/gpt-5.4-pro": {
        id: "openai/gpt-5.4-pro",
        name: "GPT 5.4 Pro",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-05",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180 },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "openai/gpt-5.3-chat": {
        id: "openai/gpt-5.3-chat",
        name: "GPT-5.3 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-03",
        last_updated: "2026-03-06",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/gpt-oss-safeguard-20b": {
        id: "openai/gpt-oss-safeguard-20b",
        name: "gpt-oss-safeguard-20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.08, output: 0.3, cache_read: 0.04 },
        limit: { context: 131072, input: 65536, output: 65536 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT-5.1-Codex",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT 5.2 ",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.3 },
        limit: { context: 131072, input: 98304, output: 32768 },
      },
      "openai/gpt-3.5-turbo-instruct": {
        id: "openai/gpt-3.5-turbo-instruct",
        name: "GPT-3.5 Turbo Instruct",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-09",
        release_date: "2023-03-01",
        last_updated: "2023-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 8192, input: 4096, output: 4096 },
      },
      "openai/gpt-5.1-instant": {
        id: "openai/gpt-5.1-instant",
        name: "GPT-5.1 Instant",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text", "image"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 128000, input: 111616, output: 16384 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.005 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT-4.1 mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "openai/gpt-4-turbo": {
        id: "openai/gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-4.1-nano": {
        id: "openai/gpt-4.1-nano",
        name: "GPT-4.1 nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "o1",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "morph/morph-v3-large": {
        id: "morph/morph-v3-large",
        name: "Morph v3 Large",
        family: "morph",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.9, output: 1.9 },
        limit: { context: 32000, output: 32000 },
      },
      "morph/morph-v3-fast": {
        id: "morph/morph-v3-fast",
        name: "Morph v3 Fast",
        family: "morph",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 1.2 },
        limit: { context: 16000, output: 16000 },
      },
      "cohere/embed-v4.0": {
        id: "cohere/embed-v4.0",
        name: "Embed v4.0",
        family: "cohere-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.12, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "cohere/command-a": {
        id: "cohere/command-a",
        name: "Command A",
        family: "command",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 8000 },
      },
      "minimax/minimax-m2.1-lightning": {
        id: "minimax/minimax-m2.1-lightning",
        name: "MiniMax M2.1 Lightning",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.4, cache_read: 0.03, cache_write: 0.38 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2.5-highspeed": {
        id: "minimax/minimax-m2.5-highspeed",
        name: "MiniMax M2.5 High Speed",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.4, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 0, output: 0 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.38 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "MiniMax M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1.15, cache_read: 0.03, cache_write: 0.38 },
        limit: { context: 262114, output: 262114 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 204800, output: 131000 },
      },
      "recraft/recraft-v2": {
        id: "recraft/recraft-v2",
        name: "Recraft V2",
        family: "recraft",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-03",
        last_updated: "2024-03",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "recraft/recraft-v3": {
        id: "recraft/recraft-v3",
        name: "Recraft V3",
        family: "recraft",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-10",
        last_updated: "2024-10",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 512, output: 0 },
      },
      "perplexity/sonar-reasoning-pro": {
        id: "perplexity/sonar-reasoning-pro",
        name: "Sonar Reasoning Pro",
        family: "sonar-reasoning",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 127000, output: 8000 },
      },
      "perplexity/sonar": {
        id: "perplexity/sonar",
        name: "Sonar",
        family: "sonar",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 127000, output: 8000 },
      },
      "perplexity/sonar-reasoning": {
        id: "perplexity/sonar-reasoning",
        name: "Sonar Reasoning",
        family: "sonar-reasoning",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5 },
        limit: { context: 127000, output: 8000 },
      },
      "perplexity/sonar-pro": {
        id: "perplexity/sonar-pro",
        name: "Sonar Pro",
        family: "sonar-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-09",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8000 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-haiku-4.5": {
        id: "anthropic/claude-haiku-4.5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4.5": {
        id: "anthropic/claude-opus-4.5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 18.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.5-sonnet-20240620": {
        id: "anthropic/claude-3.5-sonnet-20240620",
        name: "Claude 3.5 Sonnet (2024-06-20)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-06-20",
        last_updated: "2024-06-20",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02",
        last_updated: "2026-02",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-sonnet-4.5": {
        id: "anthropic/claude-sonnet-4.5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3-opus": {
        id: "anthropic/claude-3-opus",
        name: "Claude Opus 3",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-02-29",
        last_updated: "2024-02-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-3.5-haiku": {
        id: "anthropic/claude-3.5-haiku",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-3-haiku": {
        id: "anthropic/claude-3-haiku",
        name: "Claude Haiku 3",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-13",
        last_updated: "2024-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-3.7-sonnet": {
        id: "anthropic/claude-3.7-sonnet",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.5-sonnet": {
        id: "anthropic/claude-3.5-sonnet",
        name: "Claude Sonnet 3.5 v2",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "xai/grok-4-fast-reasoning": {
        id: "xai/grok-4-fast-reasoning",
        name: "Grok 4 Fast Reasoning",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 256000 },
      },
      "xai/grok-4.20-non-reasoning-beta": {
        id: "xai/grok-4.20-non-reasoning-beta",
        name: "Grok 4.20 Beta Non-Reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.19999999999999998 },
        limit: { context: 2000000, output: 2000000 },
      },
      "xai/grok-imagine-image": {
        id: "xai/grok-imagine-image",
        name: "Grok Imagine Image",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-28",
        last_updated: "2026-02-19",
        modalities: { input: ["text"], output: ["text", "image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "xai/grok-4.1-fast-reasoning": {
        id: "xai/grok-4.1-fast-reasoning",
        name: "Grok 4.1 Fast Reasoning",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "xai/grok-4.1-fast-non-reasoning": {
        id: "xai/grok-4.1-fast-non-reasoning",
        name: "Grok 4.1 Fast Non-Reasoning",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "xai/grok-4.20-reasoning-beta": {
        id: "xai/grok-4.20-reasoning-beta",
        name: "Grok 4.20 Beta Reasoning",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.19999999999999998 },
        limit: { context: 2000000, output: 2000000 },
      },
      "xai/grok-imagine-image-pro": {
        id: "xai/grok-imagine-image-pro",
        name: "Grok Imagine Image Pro",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-28",
        last_updated: "2026-02-19",
        modalities: { input: ["text"], output: ["text", "image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "xai/grok-4.20-multi-agent-beta": {
        id: "xai/grok-4.20-multi-agent-beta",
        name: "Grok 4.20 Multi Agent Beta",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.19999999999999998 },
        limit: { context: 2000000, output: 2000000 },
      },
      "xai/grok-3-fast": {
        id: "xai/grok-3-fast",
        name: "Grok 3 Fast",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 1.25 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-4-fast-non-reasoning": {
        id: "xai/grok-4-fast-non-reasoning",
        name: "Grok 4 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "xai/grok-3-mini": {
        id: "xai/grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, reasoning: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-4": {
        id: "xai/grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, reasoning: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 64000 },
      },
      "xai/grok-3-mini-fast": {
        id: "xai/grok-3-mini-fast",
        name: "Grok 3 Mini Fast",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 4, reasoning: 4, cache_read: 0.15 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-code-fast-1": {
        id: "xai/grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "xai/grok-3": {
        id: "xai/grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "xai/grok-2-vision": {
        id: "xai/grok-2-vision",
        name: "Grok 2 Vision",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 8192, output: 4096 },
      },
    },
  },
  openai: {
    id: "openai",
    env: ["OPENAI_API_KEY"],
    npm: "@ai-sdk/openai",
    name: "OpenAI",
    doc: "https://platform.openai.com/docs/models",
    models: {
      "gpt-4o-2024-11-20": {
        id: "gpt-4o-2024-11-20",
        name: "GPT-4o (2024-11-20)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-11-20",
        last_updated: "2024-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "GPT-5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, input: 272000, output: 272000 },
      },
      "gpt-4o-mini": {
        id: "gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "text-embedding-ada-002": {
        id: "text-embedding-ada-002",
        name: "text-embedding-ada-002",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2022-12",
        release_date: "2022-12-15",
        last_updated: "2022-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "gpt-5-chat-latest": {
        id: "gpt-5-chat-latest",
        name: "GPT-5 Chat (latest)",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: true,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "codex-mini-latest": {
        id: "codex-mini-latest",
        name: "Codex Mini",
        family: "gpt-codex-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-05-16",
        last_updated: "2025-05-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.375 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1 Codex Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-4o-2024-05-13": {
        id: "gpt-4o-2024-05-13",
        name: "GPT-4o (2024-05-13)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 15 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-5.2-chat-latest": {
        id: "gpt-5.2-chat-latest",
        name: "GPT-5.2 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o3-deep-research": {
        id: "o3-deep-research",
        name: "o3-deep-research",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-06-26",
        last_updated: "2024-06-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 40, cache_read: 2.5 },
        limit: { context: 200000, output: 100000 },
      },
      o1: {
        id: "o1",
        name: "o1",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o4-mini-deep-research": {
        id: "o4-mini-deep-research",
        name: "o4-mini-deep-research",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-06-26",
        last_updated: "2024-06-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.3-codex-spark": {
        id: "gpt-5.3-codex-spark",
        name: "GPT-5.3 Codex Spark",
        family: "gpt-codex-spark",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, input: 100000, output: 32000 },
      },
      o3: {
        id: "o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "text-embedding-3-small": {
        id: "text-embedding-3-small",
        name: "text-embedding-3-small",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-01",
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8191, output: 1536 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "GPT-4.1 nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03 },
        limit: { context: 1047576, output: 32768 },
      },
      "text-embedding-3-large": {
        id: "text-embedding-3-large",
        name: "text-embedding-3-large",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-01",
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0 },
        limit: { context: 8191, output: 3072 },
      },
      "gpt-3.5-turbo": {
        id: "gpt-3.5-turbo",
        name: "GPT-3.5-turbo",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        knowledge: "2021-09-01",
        release_date: "2023-03-01",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5, cache_read: 1.25 },
        limit: { context: 16385, output: 4096 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "o3-pro": {
        id: "o3-pro",
        name: "o3-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-06-10",
        last_updated: "2025-06-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 80 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-4-turbo": {
        id: "gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "GPT-4.1 mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 2.5,
          output: 15,
          cache_read: 0.25,
          context_over_200k: { input: 5, output: 22.5, cache_read: 0.5 },
        },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "o1-preview": {
        id: "o1-preview",
        name: "o1-preview",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.4-pro": {
        id: "gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180, context_over_200k: { input: 60, output: 270 } },
        limit: { context: 1050000, input: 922000, output: 128000 },
      },
      "o1-pro": {
        id: "o1-pro",
        name: "o1-pro",
        family: "o-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2025-03-19",
        last_updated: "2025-03-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 150, output: 600 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.2-pro": {
        id: "gpt-5.2-pro",
        name: "GPT-5.2 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-4o-2024-08-06": {
        id: "gpt-4o-2024-08-06",
        name: "GPT-4o (2024-08-06)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-08-06",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.1-chat-latest": {
        id: "gpt-5.1-chat-latest",
        name: "GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-4": {
        id: "gpt-4",
        name: "GPT-4",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 60 },
        limit: { context: 8192, output: 8192 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.005 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "o1-mini": {
        id: "o1-mini",
        name: "o1-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 128000, output: 65536 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
    },
  },
  moark: {
    id: "moark",
    env: ["MOARK_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://moark.com/v1",
    name: "Moark",
    doc: "https://moark.com/docs/openapi/v1#tag/%E6%96%87%E6%9C%AC%E7%94%9F%E6%88%90",
    models: {
      "GLM-4.7": {
        id: "GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3.5, output: 14 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.1, output: 8.4 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  morph: {
    id: "morph",
    env: ["MORPH_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.morphllm.com/v1",
    name: "Morph",
    doc: "https://docs.morphllm.com/api-reference/introduction",
    models: {
      auto: {
        id: "auto",
        name: "Auto",
        family: "auto",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.85, output: 1.55 },
        limit: { context: 32000, output: 32000 },
      },
      "morph-v3-fast": {
        id: "morph-v3-fast",
        name: "Morph v3 Fast",
        family: "morph",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 1.2 },
        limit: { context: 16000, output: 16000 },
      },
      "morph-v3-large": {
        id: "morph-v3-large",
        name: "Morph v3 Large",
        family: "morph",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.9, output: 1.9 },
        limit: { context: 32000, output: 32000 },
      },
    },
  },
  cohere: {
    id: "cohere",
    env: ["COHERE_API_KEY"],
    npm: "@ai-sdk/cohere",
    name: "Cohere",
    doc: "https://docs.cohere.com/docs/models",
    models: {
      "c4ai-aya-expanse-32b": {
        id: "c4ai-aya-expanse-32b",
        name: "Aya Expanse 32B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-10-24",
        last_updated: "2024-10-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 128000, output: 4000 },
      },
      "command-a-03-2025": {
        id: "command-a-03-2025",
        name: "Command A",
        family: "command-a",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 8000 },
      },
      "command-r7b-arabic-02-2025": {
        id: "command-r7b-arabic-02-2025",
        name: "Command R7B Arabic",
        family: "command-r",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.0375, output: 0.15 },
        limit: { context: 128000, output: 4000 },
      },
      "command-a-translate-08-2025": {
        id: "command-a-translate-08-2025",
        name: "Command A Translate",
        family: "command-a",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 8000, output: 8000 },
      },
      "command-r-08-2024": {
        id: "command-r-08-2024",
        name: "Command R",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4000 },
      },
      "command-r-plus-08-2024": {
        id: "command-r-plus-08-2024",
        name: "Command R+",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 4000 },
      },
      "command-a-reasoning-08-2025": {
        id: "command-a-reasoning-08-2025",
        name: "Command A Reasoning",
        family: "command-a",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 32000 },
      },
      "c4ai-aya-expanse-8b": {
        id: "c4ai-aya-expanse-8b",
        name: "Aya Expanse 8B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-10-24",
        last_updated: "2024-10-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 8000, output: 4000 },
      },
      "c4ai-aya-vision-8b": {
        id: "c4ai-aya-vision-8b",
        name: "Aya Vision 8B",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-04",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 16000, output: 4000 },
      },
      "c4ai-aya-vision-32b": {
        id: "c4ai-aya-vision-32b",
        name: "Aya Vision 32B",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-04",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        limit: { context: 16000, output: 4000 },
      },
      "command-r7b-12-2024": {
        id: "command-r7b-12-2024",
        name: "Command R7B",
        family: "command-r",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-02-27",
        last_updated: "2024-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.0375, output: 0.15 },
        limit: { context: 128000, output: 4000 },
      },
      "command-a-vision-07-2025": {
        id: "command-a-vision-07-2025",
        name: "Command A Vision",
        family: "command-a",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 8000 },
      },
    },
  },
  v0: {
    id: "v0",
    env: ["V0_API_KEY"],
    npm: "@ai-sdk/vercel",
    name: "v0",
    doc: "https://sdk.vercel.ai/providers/ai-sdk-providers/vercel",
    models: {
      "v0-1.0-md": {
        id: "v0-1.0-md",
        name: "v0-1.0-md",
        family: "v0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, output: 32000 },
      },
      "v0-1.5-md": {
        id: "v0-1.5-md",
        name: "v0-1.5-md",
        family: "v0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-09",
        last_updated: "2025-06-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, output: 32000 },
      },
      "v0-1.5-lg": {
        id: "v0-1.5-lg",
        name: "v0-1.5-lg",
        family: "v0",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-09",
        last_updated: "2025-06-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 512000, output: 32000 },
      },
    },
  },
  minimax: {
    id: "minimax",
    env: ["MINIMAX_API_KEY"],
    npm: "@ai-sdk/anthropic",
    api: "https://api.minimax.io/anthropic/v1",
    name: "MiniMax (minimax.io)",
    doc: "https://platform.minimax.io/docs/guides/quickstart",
    models: {
      "MiniMax-M2.5": {
        id: "MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196608, output: 128000 },
      },
      "MiniMax-M2.5-highspeed": {
        id: "MiniMax-M2.5-highspeed",
        name: "MiniMax-M2.5-highspeed",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-13",
        last_updated: "2026-02-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.4, cache_read: 0.06, cache_write: 0.375 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMax-M2.1": {
        id: "MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  vultr: {
    id: "vultr",
    env: ["VULTR_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.vultrinference.com/v1",
    name: "Vultr",
    doc: "https://api.vultrinference.com/",
    models: {
      "kimi-k2-instruct": {
        id: "kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 58904, output: 4096 },
      },
      "qwen2.5-coder-32b-instruct": {
        id: "qwen2.5-coder-32b-instruct",
        name: "Qwen2.5 Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2024-11-06",
        last_updated: "2024-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 12952, output: 2048 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-06-23",
        last_updated: "2025-06-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 121808, output: 8192 },
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 121808, output: 8192 },
      },
      "deepseek-r1-distill-qwen-32b": {
        id: "deepseek-r1-distill-qwen-32b",
        name: "DeepSeek R1 Distill Qwen 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 121808, output: 8192 },
      },
    },
  },
  baseten: {
    id: "baseten",
    env: ["BASETEN_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://inference.baseten.co/v1",
    name: "Baseten",
    doc: "https://docs.baseten.co/development/model-apis/overview",
    models: {
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08-31",
        release_date: "2025-09-16",
        last_updated: "2025-09-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 200000, output: 200000 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.95, output: 3.15 },
        limit: { context: 202752, output: 131072 },
      },
      "nvidia/Nemotron-3-Super": {
        id: "nvidia/Nemotron-3-Super",
        name: "Nemotron 3 Super",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2026-02",
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.75 },
        limit: { context: 262144, output: 32678 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204000, output: 204000 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-25",
        last_updated: "2025-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 164000, output: 131000 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-10",
        release_date: "2025-12-01",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.45 },
        limit: { context: 163800, output: 131100 },
        status: "deprecated",
      },
      "deepseek-ai/DeepSeek-V3-0324": {
        id: "deepseek-ai/DeepSeek-V3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.77, output: 0.77 },
        limit: { context: 164000, output: 131000 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 Instruct 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-09-05",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 262144 },
        status: "deprecated",
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-12",
        release_date: "2026-01-30",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 8192 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2026-03-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 262144 },
        status: "deprecated",
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.5 },
        limit: { context: 128000, output: 128000 },
      },
    },
  },
  jiekou: {
    id: "jiekou",
    env: ["JIEKOU_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.jiekou.ai/openai",
    name: "Jiekou.AI",
    doc: "https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_models.dev",
    models: {
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "gpt-5-codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "gpt-5-pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 13.5, output: 108 },
        limit: { context: 400000, output: 272000 },
      },
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "claude-opus-4-5-20251101",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.5, output: 22.5 },
        limit: { context: 200000, output: 65536 },
      },
      "grok-4-fast-reasoning": {
        id: "grok-4-fast-reasoning",
        name: "grok-4-fast-reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.45 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gemini-2.5-flash-lite-preview-09-2025": {
        id: "gemini-2.5-flash-lite-preview-09-2025",
        name: "gemini-2.5-flash-lite-preview-09-2025",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.36 },
        limit: { context: 1048576, output: 65536 },
      },
      "gpt-5-chat-latest": {
        id: "gpt-5-chat-latest",
        name: "gpt-5-chat-latest",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      "gemini-2.5-pro-preview-06-05": {
        id: "gemini-2.5-pro-preview-06-05",
        name: "gemini-2.5-pro-preview-06-05",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 1048576, output: 200000 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "gpt-5.1-codex-max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      "grok-4-0709": {
        id: "grok-4-0709",
        name: "grok-4-0709",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.7, output: 13.5 },
        limit: { context: 256000, output: 8192 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "gpt-5.2-codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "claude-opus-4-6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02",
        last_updated: "2026-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 1000000, output: 128000 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "grok-code-fast-1",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 1.35 },
        limit: { context: 256000, output: 256000 },
      },
      "gemini-2.5-flash-preview-05-20": {
        id: "gemini-2.5-flash-preview-05-20",
        name: "gemini-2.5-flash-preview-05-20",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.135, output: 3.15 },
        limit: { context: 1048576, output: 200000 },
      },
      "grok-4-1-fast-reasoning": {
        id: "grok-4-1-fast-reasoning",
        name: "grok-4-1-fast-reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.45 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "gemini-2.5-flash",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 2.25 },
        limit: { context: 1048576, output: 65535 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "grok-4-1-fast-non-reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.45 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "gpt-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02",
        last_updated: "2026-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      o3: {
        id: "o3",
        name: "o3",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 40 },
        limit: { context: 131072, output: 131072 },
      },
      "gemini-3-flash-preview": {
        id: "gemini-3-flash-preview",
        name: "gemini-3-flash-preview",
        family: "gemini-flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 1048576, output: 65536 },
      },
      "claude-opus-4-20250514": {
        id: "claude-opus-4-20250514",
        name: "claude-opus-4-20250514",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 13.5, output: 67.5 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "claude-sonnet-4-5-20250929",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.7, output: 13.5 },
        limit: { context: 200000, output: 64000 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "gemini-2.5-flash-lite",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.36 },
        limit: { context: 1048576, output: 65535 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "gpt-5.1-codex-mini",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.225, output: 1.8 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "gpt-5.2",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.575, output: 12.6 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "claude-haiku-4-5-20251001",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.9, output: 4.5 },
        limit: { context: 20000, output: 64000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, output: 100000 },
      },
      "gemini-2.5-flash-lite-preview-06-17": {
        id: "gemini-2.5-flash-lite-preview-06-17",
        name: "gemini-2.5-flash-lite-preview-06-17",
        family: "gemini-flash-lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "video", "image", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.36 },
        limit: { context: 1048576, output: 65535 },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "gpt-5.1-codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.2-pro": {
        id: "gpt-5.2-pro",
        name: "gpt-5.2-pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 18.9, output: 151.2 },
        limit: { context: 400000, output: 128000 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "gemini-3-pro-preview",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.8, output: 10.8 },
        limit: { context: 1048576, output: 65536 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "o3-mini",
        family: "o",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 131072, output: 131072 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "grok-4-fast-non-reasoning",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18, output: 0.45 },
        limit: { context: 2000000, output: 2000000 },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "gpt-5-mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.225, output: 1.8 },
        limit: { context: 400000, output: 128000 },
      },
      "claude-sonnet-4-20250514": {
        id: "claude-sonnet-4-20250514",
        name: "claude-sonnet-4-20250514",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.7, output: 13.5 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "claude-opus-4-1-20250805",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 13.5, output: 67.5 },
        limit: { context: 200000, output: 32000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "gemini-2.5-pro",
        family: "gemini-pro",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video", "audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.125, output: 9 },
        limit: { context: 1048576, output: 65535 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "gpt-5-nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.045, output: 0.36 },
        limit: { context: 400000, output: 128000 },
      },
      "zai-org/glm-4.5": {
        id: "zai-org/glm-4.5",
        name: "GLM-4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 131072, output: 98304 },
      },
      "zai-org/glm-4.7-flash": {
        id: "zai-org/glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4 },
        limit: { context: 200000, output: 128000 },
      },
      "zai-org/glm-4.7": {
        id: "zai-org/glm-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/glm-4.5v": {
        id: "zai-org/glm-4.5v",
        name: "GLM 4.5V",
        family: "glmv",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8 },
        limit: { context: 65536, output: 16384 },
      },
      "minimaxai/minimax-m1-80k": {
        id: "minimaxai/minimax-m1-80k",
        name: "MiniMax M1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 1000000, output: 40000 },
      },
      "deepseek/deepseek-v3.1": {
        id: "deepseek/deepseek-v3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 163840, output: 32768 },
      },
      "deepseek/deepseek-r1-0528": {
        id: "deepseek/deepseek-r1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.5 },
        limit: { context: 163840, output: 32768 },
      },
      "deepseek/deepseek-v3-0324": {
        id: "deepseek/deepseek-v3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.14 },
        limit: { context: 163840, output: 163840 },
      },
      "moonshotai/kimi-k2-instruct": {
        id: "moonshotai/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.57, output: 2.3 },
        limit: { context: 131072, output: 131072 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 262144 },
      },
      "baidu/ernie-4.5-vl-424b-a47b": {
        id: "baidu/ernie-4.5-vl-424b-a47b",
        name: "ERNIE 4.5 VL 424B A47B",
        family: "ernie",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.42, output: 1.25 },
        limit: { context: 123000, output: 16000 },
      },
      "baidu/ernie-4.5-300b-a47b-paddle": {
        id: "baidu/ernie-4.5-300b-a47b-paddle",
        name: "ERNIE 4.5 300B A47B",
        family: "ernie",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 123000, output: 12000 },
      },
      "qwen/qwen3-235b-a22b-instruct-2507": {
        id: "qwen/qwen3-235b-a22b-instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.8 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen/qwen3-32b-fp8": {
        id: "qwen/qwen3-32b-fp8",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.45 },
        limit: { context: 40960, output: 20000 },
      },
      "qwen/qwen3-next-80b-a3b-thinking": {
        id: "qwen/qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 65536, output: 65536 },
      },
      "qwen/qwen3-coder-480b-a35b-instruct": {
        id: "qwen/qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 1.2 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-30b-a3b-fp8": {
        id: "qwen/qwen3-30b-a3b-fp8",
        name: "Qwen3 30B A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.45 },
        limit: { context: 40960, output: 20000 },
      },
      "qwen/qwen3-coder-next": {
        id: "qwen/qwen3-coder-next",
        name: "qwen/qwen3-coder-next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02",
        last_updated: "2026-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-235b-a22b-thinking-2507": {
        id: "qwen/qwen3-235b-a22b-thinking-2507",
        name: "Qwen3 235B A22b Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 3 },
        limit: { context: 131072, output: 131072 },
      },
      "qwen/qwen3-next-80b-a3b-instruct": {
        id: "qwen/qwen3-next-80b-a3b-instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 1.5 },
        limit: { context: 65536, output: 65536 },
      },
      "qwen/qwen3-235b-a22b-fp8": {
        id: "qwen/qwen3-235b-a22b-fp8",
        name: "Qwen3 235B A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 40960, output: 20000 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "Minimax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "xiaomimimo/mimo-v2-flash": {
        id: "xiaomimimo/mimo-v2-flash",
        name: "XiaomiMiMo/MiMo-V2-Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 131072 },
      },
    },
  },
  meganova: {
    id: "meganova",
    env: ["MEGANOVA_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.meganova.ai/v1",
    name: "Meganova",
    doc: "https://docs.meganova.ai",
    models: {
      "zai-org/GLM-4.6": {
        id: "zai-org/GLM-4.6",
        name: "GLM-4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 1.9 },
        limit: { context: 202752, output: 131072 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 202752, output: 131072 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 2.56 },
        limit: { context: 202752, output: 131072 },
      },
      "XiaomiMiMo/MiMo-V2-Flash": {
        id: "XiaomiMiMo/MiMo-V2-Flash",
        name: "MiMo V2 Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12-01",
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 262144, output: 32000 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.2 },
        limit: { context: 196608, output: 131072 },
      },
      "deepseek-ai/DeepSeek-V3.2-Exp": {
        id: "deepseek-ai/DeepSeek-V3.2-Exp",
        name: "DeepSeek V3.2 Exp",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-10-10",
        last_updated: "2025-10-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.4 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 2.15 },
        limit: { context: 163840, output: 64000 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-08-25",
        last_updated: "2025-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 0.38 },
        limit: { context: 164000, output: 164000 },
      },
      "deepseek-ai/DeepSeek-V3-0324": {
        id: "deepseek-ai/DeepSeek-V3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.88 },
        limit: { context: 163840, output: 163840 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2026-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2.8 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.6 },
        limit: { context: 262144, output: 262144 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 131072, output: 16384 },
      },
      "Qwen/Qwen3.5-Plus": {
        id: "Qwen/Qwen3.5-Plus",
        name: "Qwen3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02",
        last_updated: "2026-02",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2.4, reasoning: 2.4 },
        limit: { context: 1000000, output: 65536 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.6 },
        limit: { context: 262000, output: 262000 },
      },
      "Qwen/Qwen2.5-VL-32B-Instruct": {
        id: "Qwen/Qwen2.5-VL-32B-Instruct",
        name: "Qwen2.5 VL 32B Instruct",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 16384, output: 16384 },
      },
      "mistralai/Mistral-Nemo-Instruct-2407": {
        id: "mistralai/Mistral-Nemo-Instruct-2407",
        name: "Mistral Nemo Instruct 2407",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04 },
        limit: { context: 131072, output: 65536 },
      },
      "mistralai/Mistral-Small-3.2-24B-Instruct-2506": {
        id: "mistralai/Mistral-Small-3.2-24B-Instruct-2506",
        name: "Mistral Small 3.2 24B Instruct",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 8192 },
      },
    },
  },
  perplexity: {
    id: "perplexity",
    env: ["PERPLEXITY_API_KEY"],
    npm: "@ai-sdk/perplexity",
    name: "Perplexity",
    doc: "https://docs.perplexity.ai",
    models: {
      "sonar-reasoning-pro": {
        id: "sonar-reasoning-pro",
        name: "Sonar Reasoning Pro",
        family: "sonar-reasoning",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 128000, output: 4096 },
      },
      sonar: {
        id: "sonar",
        name: "Sonar",
        family: "sonar",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 128000, output: 4096 },
      },
      "sonar-deep-research": {
        id: "sonar-deep-research",
        name: "Perplexity Sonar Deep Research",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2025-02-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, reasoning: 3 },
        limit: { context: 128000, output: 32768 },
      },
      "sonar-pro": {
        id: "sonar-pro",
        name: "Sonar Pro",
        family: "sonar-pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2025-09-01",
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8192 },
      },
    },
  },
  huggingface: {
    id: "huggingface",
    env: ["HF_TOKEN"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://router.huggingface.co/v1",
    name: "Hugging Face",
    doc: "https://huggingface.co/docs/inference-providers",
    models: {
      "zai-org/GLM-4.7-Flash": {
        id: "zai-org/GLM-4.7-Flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 128000 },
      },
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM-4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.11 },
        limit: { context: 204800, output: 131072 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2, cache_read: 0.2 },
        limit: { context: 202752, output: 131072 },
      },
      "XiaomiMiMo/MiMo-V2-Flash": {
        id: "XiaomiMiMo/MiMo-V2-Flash",
        name: "MiMo-V2-Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 262144, output: 4096 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.03 },
        limit: { context: 204800, output: 131072 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-10",
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek-R1-0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 5 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek-ai/DeepSeek-V3.2": {
        id: "deepseek-ai/DeepSeek-V3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 0.4 },
        limit: { context: 163840, output: 65536 },
      },
      "moonshotai/Kimi-K2-Instruct": {
        id: "moonshotai/Kimi-K2-Instruct",
        name: "Kimi-K2-Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-07-14",
        last_updated: "2025-07-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 16384 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi-K2-Instruct-0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2025-09-04",
        last_updated: "2025-09-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 262144, output: 16384 },
      },
      "moonshotai/Kimi-K2.5": {
        id: "moonshotai/Kimi-K2.5",
        name: "Kimi-K2.5",
        family: "kimi",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-01",
        last_updated: "2026-01-01",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/Kimi-K2-Thinking": {
        id: "moonshotai/Kimi-K2-Thinking",
        name: "Kimi-K2-Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen3-Next-80B-A3B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 1 },
        limit: { context: 262144, output: 66536 },
      },
      "Qwen/Qwen3.5-397B-A17B": {
        id: "Qwen/Qwen3.5-397B-A17B",
        name: "Qwen3.5-397B-A17B",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-01",
        last_updated: "2026-02-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 262144, output: 32768 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3-235B-A22B-Thinking-2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 3 },
        limit: { context: 262144, output: 131072 },
      },
      "Qwen/Qwen3-Coder-Next": {
        id: "Qwen/Qwen3-Coder-Next",
        name: "Qwen3-Coder-Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-03",
        last_updated: "2026-02-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct",
        name: "Qwen3-Coder-480B-A35B-Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 2 },
        limit: { context: 262144, output: 66536 },
      },
      "Qwen/Qwen3-Embedding-4B": {
        id: "Qwen/Qwen3-Embedding-4B",
        name: "Qwen 3 Embedding 4B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32000, output: 2048 },
      },
      "Qwen/Qwen3-Embedding-8B": {
        id: "Qwen/Qwen3-Embedding-8B",
        name: "Qwen 3 Embedding 8B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0 },
        limit: { context: 32000, output: 4096 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Thinking": {
        id: "Qwen/Qwen3-Next-80B-A3B-Thinking",
        name: "Qwen3-Next-80B-A3B-Thinking",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 2 },
        limit: { context: 262144, output: 131072 },
      },
    },
  },
  anthropic: {
    id: "anthropic",
    env: ["ANTHROPIC_API_KEY"],
    npm: "@ai-sdk/anthropic",
    name: "Anthropic",
    doc: "https://docs.anthropic.com/en/docs/about-claude/models",
    models: {
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-5-haiku-latest": {
        id: "claude-3-5-haiku-latest",
        name: "Claude Haiku 3.5 (latest)",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Claude Opus 4.1 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-3-5-sonnet-20241022": {
        id: "claude-3-5-sonnet-20241022",
        name: "Claude Sonnet 3.5 v2",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-3-sonnet-20240229": {
        id: "claude-3-sonnet-20240229",
        name: "Claude Sonnet 3",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-04",
        last_updated: "2024-03-04",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 1000000, output: 128000 },
      },
      "claude-sonnet-4-6": {
        id: "claude-sonnet-4-6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "claude-sonnet-4-0": {
        id: "claude-sonnet-4-0",
        name: "Claude Sonnet 4 (latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-20250514": {
        id: "claude-opus-4-20250514",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-0": {
        id: "claude-opus-4-0",
        name: "Claude Opus 4 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-3-5-haiku-20241022": {
        id: "claude-3-5-haiku-20241022",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-3-5-sonnet-20240620": {
        id: "claude-3-5-sonnet-20240620",
        name: "Claude Sonnet 3.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-06-20",
        last_updated: "2024-06-20",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-3-7-sonnet-latest": {
        id: "claude-3-7-sonnet-latest",
        name: "Claude Sonnet 3.7 (latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-7-sonnet-20250219": {
        id: "claude-3-7-sonnet-20250219",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-haiku-20240307": {
        id: "claude-3-haiku-20240307",
        name: "Claude Haiku 3",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-03-13",
        last_updated: "2024-03-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5 (latest)",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5 (latest)",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-opus-20240229": {
        id: "claude-3-opus-20240229",
        name: "Claude Opus 3",
        family: "claude-opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-08-31",
        release_date: "2024-02-29",
        last_updated: "2024-02-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 4096 },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5 (latest)",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-sonnet-4-20250514": {
        id: "claude-sonnet-4-20250514",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
    },
  },
  "google-vertex-anthropic": {
    id: "google-vertex-anthropic",
    env: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_LOCATION", "GOOGLE_APPLICATION_CREDENTIALS"],
    npm: "@ai-sdk/google-vertex/anthropic",
    name: "Vertex (Anthropic)",
    doc: "https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/claude",
    models: {
      "claude-sonnet-4-5@20250929": {
        id: "claude-sonnet-4-5@20250929",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4-1@20250805": {
        id: "claude-opus-4-1@20250805",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-3-7-sonnet@20250219": {
        id: "claude-3-7-sonnet@20250219",
        name: "Claude Sonnet 3.7",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-10-31",
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-opus-4@20250514": {
        id: "claude-opus-4@20250514",
        name: "Claude Opus 4",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "claude-opus-4-5@20251101": {
        id: "claude-opus-4-5@20251101",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-5-haiku@20241022": {
        id: "claude-3-5-haiku@20241022",
        name: "Claude Haiku 3.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07-31",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-sonnet-4@20250514": {
        id: "claude-sonnet-4@20250514",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-3-5-sonnet@20241022": {
        id: "claude-3-5-sonnet@20241022",
        name: "Claude Sonnet 3.5 v2",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04-30",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 8192 },
      },
      "claude-opus-4-6@default": {
        id: "claude-opus-4-6@default",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 1000000, output: 128000 },
      },
      "claude-haiku-4-5@20251001": {
        id: "claude-haiku-4-5@20251001",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-02-28",
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-sonnet-4-6@default": {
        id: "claude-sonnet-4-6@default",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-08",
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 3,
          output: 15,
          cache_read: 0.3,
          cache_write: 3.75,
          context_over_200k: { input: 6, output: 22.5, cache_read: 0.6, cache_write: 7.5 },
        },
        limit: { context: 200000, output: 64000 },
      },
    },
  },
  friendli: {
    id: "friendli",
    env: ["FRIENDLI_TOKEN"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.friendli.ai/serverless/v1",
    name: "Friendli",
    doc: "https://friendli.ai/docs/guides/serverless_endpoints/introduction",
    models: {
      "zai-org/GLM-4.7": {
        id: "zai-org/GLM-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        limit: { context: 202752, output: 202752 },
      },
      "zai-org/GLM-5": {
        id: "zai-org/GLM-5",
        name: "GLM 5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3.2 },
        limit: { context: 202752, output: 202752 },
      },
      "MiniMaxAI/MiniMax-M2.5": {
        id: "MiniMaxAI/MiniMax-M2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196608, output: 196608 },
      },
      "MiniMaxAI/MiniMax-M2.1": {
        id: "MiniMaxAI/MiniMax-M2.1",
        name: "MiniMax M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-01-13",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 196608, output: 196608 },
      },
      "meta-llama/Llama-3.1-8B-Instruct": {
        id: "meta-llama/Llama-3.1-8B-Instruct",
        name: "Llama 3.1 8B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-08-01",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131072, output: 8000 },
      },
      "meta-llama/Llama-3.3-70B-Instruct": {
        id: "meta-llama/Llama-3.3-70B-Instruct",
        name: "Llama 3.3 70B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-08-01",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 0.6 },
        limit: { context: 131072, output: 131072 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507",
        name: "Qwen3 235B A22B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-07-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 262144, output: 262144 },
      },
    },
  },
  kilo: {
    id: "kilo",
    env: ["KILO_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.kilo.ai/api/gateway",
    name: "Kilo Gateway",
    doc: "https://kilo.ai",
    models: {
      "giga-potato-thinking": {
        id: "giga-potato-thinking",
        name: "Giga Potato Thinking (free)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-27",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "corethink:free": {
        id: "corethink:free",
        name: "CoreThink (free)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-27",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 78000, output: 8192 },
      },
      "morph-warp-grep-v2": {
        id: "morph-warp-grep-v2",
        name: "Morph: WarpGrep V2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-27",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "giga-potato": {
        id: "giga-potato",
        name: "Giga Potato (free)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-27",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 32000 },
      },
      "prime-intellect/intellect-3": {
        id: "prime-intellect/intellect-3",
        name: "Prime Intellect: INTELLECT-3",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-26",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 131072, output: 131072 },
      },
      "allenai/olmo-2-0325-32b-instruct": {
        id: "allenai/olmo-2-0325-32b-instruct",
        name: "AllenAI: Olmo 2 32B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 128000, output: 32768 },
      },
      "allenai/olmo-3-7b-instruct": {
        id: "allenai/olmo-3-7b-instruct",
        name: "AllenAI: Olmo 3 7B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.2 },
        limit: { context: 65536, output: 65536 },
      },
      "allenai/olmo-3-32b-think": {
        id: "allenai/olmo-3-32b-think",
        name: "AllenAI: Olmo 3 32B Think",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.5 },
        limit: { context: 65536, output: 65536 },
      },
      "allenai/molmo-2-8b": {
        id: "allenai/molmo-2-8b",
        name: "AllenAI: Molmo2 8B",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-09",
        last_updated: "2026-01-31",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 36864, output: 36864 },
      },
      "allenai/olmo-3.1-32b-instruct": {
        id: "allenai/olmo-3.1-32b-instruct",
        name: "AllenAI: Olmo 3.1 32B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-07",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 65536, output: 32768 },
      },
      "allenai/olmo-3-7b-think": {
        id: "allenai/olmo-3-7b-think",
        name: "AllenAI: Olmo 3 7B Think",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.2 },
        limit: { context: 65536, output: 65536 },
      },
      "allenai/olmo-3.1-32b-think": {
        id: "allenai/olmo-3.1-32b-think",
        name: "AllenAI: Olmo 3.1 32B Think",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-12-17",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.5 },
        limit: { context: 65536, output: 65536 },
      },
      "nex-agi/deepseek-v3.1-nex-n1": {
        id: "nex-agi/deepseek-v3.1-nex-n1",
        name: "Nex AGI: DeepSeek V3.1 Nex N1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 131072, output: 163840 },
      },
      "nvidia/llama-3.1-nemotron-70b-instruct": {
        id: "nvidia/llama-3.1-nemotron-70b-instruct",
        name: "NVIDIA: Llama 3.1 Nemotron 70B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-10-12",
        last_updated: "2024-10-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 1.2 },
        limit: { context: 131072, output: 16384 },
      },
      "nvidia/nemotron-3-super-120b-a12b:free": {
        id: "nvidia/nemotron-3-super-120b-a12b:free",
        name: "NVIDIA: Nemotron 3 Super (free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 262144 },
      },
      "nvidia/llama-3.3-nemotron-super-49b-v1.5": {
        id: "nvidia/llama-3.3-nemotron-super-49b-v1.5",
        name: "NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-16",
        last_updated: "2025-03-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 131072, output: 26215 },
      },
      "nvidia/nemotron-nano-12b-v2-vl": {
        id: "nvidia/nemotron-nano-12b-v2-vl",
        name: "NVIDIA: Nemotron Nano 12B 2 VL",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-28",
        last_updated: "2026-01-31",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 131072, output: 26215 },
      },
      "nvidia/nemotron-nano-9b-v2": {
        id: "nvidia/nemotron-nano-9b-v2",
        name: "NVIDIA: Nemotron Nano 9B V2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-18",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.16 },
        limit: { context: 131072, output: 26215 },
      },
      "nvidia/nemotron-3-nano-30b-a3b": {
        id: "nvidia/nemotron-3-nano-30b-a3b",
        name: "NVIDIA: Nemotron 3 Nano 30B A3B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-12",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.2 },
        limit: { context: 262144, output: 52429 },
      },
      "ibm-granite/granite-4.0-h-micro": {
        id: "ibm-granite/granite-4.0-h-micro",
        name: "IBM: Granite 4.0 Micro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-20",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.017, output: 0.11 },
        limit: { context: 131000, output: 32768 },
      },
      "arcee-ai/coder-large": {
        id: "arcee-ai/coder-large",
        name: "Arcee AI: Coder Large",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-05-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 0.8 },
        limit: { context: 32768, output: 32768 },
      },
      "arcee-ai/virtuoso-large": {
        id: "arcee-ai/virtuoso-large",
        name: "Arcee AI: Virtuoso Large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 1.2 },
        limit: { context: 131072, output: 64000 },
      },
      "arcee-ai/trinity-mini": {
        id: "arcee-ai/trinity-mini",
        name: "Arcee AI: Trinity Mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.045, output: 0.15 },
        limit: { context: 131072, output: 131072 },
      },
      "arcee-ai/maestro-reasoning": {
        id: "arcee-ai/maestro-reasoning",
        name: "Arcee AI: Maestro Reasoning",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-05-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.9, output: 3.3 },
        limit: { context: 131072, output: 32000 },
      },
      "arcee-ai/trinity-large-preview:free": {
        id: "arcee-ai/trinity-large-preview:free",
        name: "Arcee AI: Trinity Large Preview (free)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-28",
        last_updated: "2026-01-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 131000, output: 26200 },
      },
      "arcee-ai/spotlight": {
        id: "arcee-ai/spotlight",
        name: "Arcee AI: Spotlight",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-05-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 131072, output: 65537 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "Xiaomi: MiMo-V2-Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-14",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.29, cache_read: 0.045 },
        limit: { context: 262144, output: 65536 },
      },
      "microsoft/phi-4": {
        id: "microsoft/phi-4",
        name: "Microsoft: Phi 4",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.14 },
        limit: { context: 16384, output: 16384 },
      },
      "microsoft/wizardlm-2-8x22b": {
        id: "microsoft/wizardlm-2-8x22b",
        name: "WizardLM-2 8x22B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-24",
        last_updated: "2024-04-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.62, output: 0.62 },
        limit: { context: 65535, output: 8000 },
      },
      "alfredpros/codellama-7b-instruct-solidity": {
        id: "alfredpros/codellama-7b-instruct-solidity",
        name: "AlfredPros: CodeLLaMa 7B Instruct Solidity",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-14",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 1.2 },
        limit: { context: 4096, output: 4096 },
      },
      "liquid/lfm-2.2-6b": {
        id: "liquid/lfm-2.2-6b",
        name: "LiquidAI: LFM2-2.6B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-20",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.02 },
        limit: { context: 32768, output: 32768 },
      },
      "liquid/lfm-2-24b-a2b": {
        id: "liquid/lfm-2-24b-a2b",
        name: "LiquidAI: LFM2-24B-A2B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.12 },
        limit: { context: 32768, output: 32768 },
      },
      "liquid/lfm2-8b-a1b": {
        id: "liquid/lfm2-8b-a1b",
        name: "LiquidAI: LFM2-8B-A1B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-20",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.02 },
        limit: { context: 32768, output: 32768 },
      },
      "upstage/solar-pro-3": {
        id: "upstage/solar-pro-3",
        name: "Upstage: Solar Pro 3",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 32768 },
      },
      "switchpoint/router": {
        id: "switchpoint/router",
        name: "Switchpoint Router",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-07-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.85, output: 3.4 },
        limit: { context: 131072, output: 32768 },
      },
      "inception/mercury-2": {
        id: "inception/mercury-2",
        name: "Inception: Mercury 2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75, cache_read: 0.025 },
        limit: { context: 128000, output: 50000 },
      },
      "inception/mercury": {
        id: "inception/mercury",
        name: "Inception: Mercury",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-26",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75 },
        limit: { context: 128000, output: 32000 },
      },
      "inception/mercury-coder": {
        id: "inception/mercury-coder",
        name: "Inception: Mercury Coder",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75 },
        limit: { context: 128000, output: 32000 },
      },
      "kilo-auto/balanced": {
        id: "kilo-auto/balanced",
        name: "Kilo Auto Balanced",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 3 },
        limit: { context: 204800, output: 131072 },
      },
      "kilo-auto/free": {
        id: "kilo-auto/free",
        name: "Kilo Auto Free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "kilo-auto/small": {
        id: "kilo-auto/small",
        name: "Kilo Auto Small",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 400000, output: 128000 },
      },
      "kilo-auto/frontier": {
        id: "kilo-auto/frontier",
        name: "Kilo Auto Frontier",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 1000000, output: 128000 },
      },
      "amazon/nova-micro-v1": {
        id: "amazon/nova-micro-v1",
        name: "Amazon: Nova Micro 1.0",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.035, output: 0.14 },
        limit: { context: 128000, output: 5120 },
      },
      "amazon/nova-lite-v1": {
        id: "amazon/nova-lite-v1",
        name: "Amazon: Nova Lite 1.0",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.06, output: 0.24 },
        limit: { context: 300000, output: 5120 },
      },
      "amazon/nova-premier-v1": {
        id: "amazon/nova-premier-v1",
        name: "Amazon: Nova Premier 1.0",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-01",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 12.5 },
        limit: { context: 1000000, output: 32000 },
      },
      "amazon/nova-2-lite-v1": {
        id: "amazon/nova-2-lite-v1",
        name: "Amazon: Nova 2 Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1000000, output: 65535 },
      },
      "amazon/nova-pro-v1": {
        id: "amazon/nova-pro-v1",
        name: "Amazon: Nova Pro 1.0",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 3.2 },
        limit: { context: 300000, output: 5120 },
      },
      "anthracite-org/magnum-v4-72b": {
        id: "anthracite-org/magnum-v4-72b",
        name: "Magnum v4 72B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-10-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 5 },
        limit: { context: 16384, output: 2048 },
      },
      "essentialai/rnj-1-instruct": {
        id: "essentialai/rnj-1-instruct",
        name: "EssentialAI: Rnj 1 Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-05",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 32768, output: 6554 },
      },
      "gryphe/mythomax-l2-13b": {
        id: "gryphe/mythomax-l2-13b",
        name: "MythoMax 13B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-25",
        last_updated: "2024-04-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.06 },
        limit: { context: 4096, output: 4096 },
      },
      "alibaba/tongyi-deepresearch-30b-a3b": {
        id: "alibaba/tongyi-deepresearch-30b-a3b",
        name: "Tongyi DeepResearch 30B A3B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-18",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.09, output: 0.45 },
        limit: { context: 131072, output: 131072 },
      },
      "aion-labs/aion-1.0-mini": {
        id: "aion-labs/aion-1.0-mini",
        name: "AionLabs: Aion-1.0-Mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-02-05",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 1.4 },
        limit: { context: 131072, output: 32768 },
      },
      "aion-labs/aion-2.0": {
        id: "aion-labs/aion-2.0",
        name: "AionLabs: Aion-2.0",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-02-24",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 1.6 },
        limit: { context: 131072, output: 32768 },
      },
      "aion-labs/aion-rp-llama-3.1-8b": {
        id: "aion-labs/aion-rp-llama-3.1-8b",
        name: "AionLabs: Aion-RP 1.0 (8B)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-02-05",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 1.6 },
        limit: { context: 32768, output: 32768 },
      },
      "aion-labs/aion-1.0": {
        id: "aion-labs/aion-1.0",
        name: "AionLabs: Aion-1.0",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-02-05",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 4, output: 8 },
        limit: { context: 131072, output: 32768 },
      },
      "stepfun/step-3.5-flash:free": {
        id: "stepfun/step-3.5-flash:free",
        name: "StepFun: Step 3.5 Flash (free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 256000 },
      },
      "stepfun/step-3.5-flash": {
        id: "stepfun/step-3.5-flash",
        name: "StepFun: Step 3.5 Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3, cache_read: 0.02 },
        limit: { context: 256000, output: 256000 },
      },
      "relace/relace-search": {
        id: "relace/relace-search",
        name: "Relace: Relace Search",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-09",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 3 },
        limit: { context: 256000, output: 128000 },
      },
      "relace/relace-apply-3": {
        id: "relace/relace-apply-3",
        name: "Relace: Relace Apply 3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-09-26",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.85, output: 1.25 },
        limit: { context: 256000, output: 128000 },
      },
      "thedrummer/rocinante-12b": {
        id: "thedrummer/rocinante-12b",
        name: "TheDrummer: Rocinante 12B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09-30",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.43 },
        limit: { context: 32768, output: 32768 },
      },
      "thedrummer/cydonia-24b-v4.1": {
        id: "thedrummer/cydonia-24b-v4.1",
        name: "TheDrummer: Cydonia 24B V4.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-27",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.5 },
        limit: { context: 131072, output: 131072 },
      },
      "thedrummer/unslopnemo-12b": {
        id: "thedrummer/unslopnemo-12b",
        name: "TheDrummer: UnslopNemo 12B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-09",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 32768, output: 32768 },
      },
      "thedrummer/skyfall-36b-v2": {
        id: "thedrummer/skyfall-36b-v2",
        name: "TheDrummer: Skyfall 36B V2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 0.8 },
        limit: { context: 32768, output: 32768 },
      },
      "mancer/weaver": {
        id: "mancer/weaver",
        name: "Mancer: Weaver (alpha)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2023-08-02",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.75, output: 1 },
        limit: { context: 8000, output: 2000 },
      },
      "tencent/hunyuan-a13b-instruct": {
        id: "tencent/hunyuan-a13b-instruct",
        name: "Tencent: Hunyuan A13B Instruct",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0.57 },
        limit: { context: 131072, output: 131072 },
      },
      "kwaipilot/kat-coder-pro": {
        id: "kwaipilot/kat-coder-pro",
        name: "Kwaipilot: KAT-Coder-Pro V1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2025-10-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.207, output: 0.828, cache_read: 0.0414 },
        limit: { context: 256000, output: 128000 },
      },
      "deepseek/deepseek-r1-0528": {
        id: "deepseek/deepseek-r1-0528",
        name: "DeepSeek: R1 0528",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2.15, cache_read: 0.2 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-r1": {
        id: "deepseek/deepseek-r1",
        name: "DeepSeek: R1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 2.5 },
        limit: { context: 64000, output: 16000 },
      },
      "deepseek/deepseek-v3.2-speciale": {
        id: "deepseek/deepseek-v3.2-speciale",
        name: "DeepSeek: DeepSeek V3.2 Speciale",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.2, cache_read: 0.135 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-chat-v3.1": {
        id: "deepseek/deepseek-chat-v3.1",
        name: "DeepSeek: DeepSeek V3.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.75 },
        limit: { context: 32768, output: 7168 },
      },
      "deepseek/deepseek-chat-v3-0324": {
        id: "deepseek/deepseek-chat-v3-0324",
        name: "DeepSeek: DeepSeek V3 0324",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.77, cache_read: 0.095 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-r1-distill-llama-70b": {
        id: "deepseek/deepseek-r1-distill-llama-70b",
        name: "DeepSeek: R1 Distill Llama 70B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-01-23",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.7, output: 0.8, cache_read: 0.015 },
        limit: { context: 131072, output: 16384 },
      },
      "deepseek/deepseek-v3.1-terminus": {
        id: "deepseek/deepseek-v3.1-terminus",
        name: "DeepSeek: DeepSeek V3.1 Terminus",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.21, output: 0.79, cache_read: 0.13 },
        limit: { context: 163840, output: 32768 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "DeepSeek: DeepSeek V3.2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 0.38, cache_read: 0.125 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek/deepseek-chat": {
        id: "deepseek/deepseek-chat",
        name: "DeepSeek: DeepSeek V3",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.32, output: 0.89, cache_read: 0.15 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek/deepseek-r1-distill-qwen-32b": {
        id: "deepseek/deepseek-r1-distill-qwen-32b",
        name: "DeepSeek: R1 Distill Qwen 32B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.29, output: 0.29 },
        limit: { context: 32768, output: 32768 },
      },
      "deepseek/deepseek-v3.2-exp": {
        id: "deepseek/deepseek-v3.2-exp",
        name: "DeepSeek: DeepSeek V3.2 Exp",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 163840, output: 65536 },
      },
      "alpindale/goliath-120b": {
        id: "alpindale/goliath-120b",
        name: "Goliath 120B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2023-11-10",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3.75, output: 7.5 },
        limit: { context: 6144, output: 1024 },
      },
      "openrouter/hunter-alpha": {
        id: "openrouter/hunter-alpha",
        name: "Hunter Alpha",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1048576, output: 32000 },
      },
      "openrouter/auto": {
        id: "openrouter/auto",
        name: "Auto Router",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 2000000, output: 32768 },
      },
      "openrouter/free": {
        id: "openrouter/free",
        name: "Free Models Router",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-01",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 200000, output: 32768 },
      },
      "openrouter/healer-alpha": {
        id: "openrouter/healer-alpha",
        name: "Healer Alpha",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 262144, output: 32000 },
      },
      "openrouter/bodybuilder": {
        id: "openrouter/bodybuilder",
        name: "Body Builder (beta)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 32768 },
        status: "beta",
      },
      "moonshotai/kimi-k2": {
        id: "moonshotai/kimi-k2",
        name: "MoonshotAI: Kimi K2 0711",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.2 },
        limit: { context: 131000, output: 26215 },
      },
      "moonshotai/kimi-k2-0905": {
        id: "moonshotai/kimi-k2-0905",
        name: "MoonshotAI: Kimi K2 0905",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2, cache_read: 0.15 },
        limit: { context: 131072, output: 26215 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "MoonshotAI: Kimi K2.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2.2 },
        limit: { context: 262144, output: 65535 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "MoonshotAI: Kimi K2 Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.47, output: 2, cache_read: 0.2 },
        limit: { context: 131072, output: 65535 },
      },
      "baidu/ernie-4.5-vl-424b-a47b": {
        id: "baidu/ernie-4.5-vl-424b-a47b",
        name: "Baidu: ERNIE 4.5 VL 424B A47B ",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2026-01",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.42, output: 1.25 },
        limit: { context: 123000, output: 16000 },
      },
      "baidu/ernie-4.5-vl-28b-a3b": {
        id: "baidu/ernie-4.5-vl-28b-a3b",
        name: "Baidu: ERNIE 4.5 VL 28B A3B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.56 },
        limit: { context: 30000, output: 8000 },
      },
      "baidu/ernie-4.5-21b-a3b-thinking": {
        id: "baidu/ernie-4.5-21b-a3b-thinking",
        name: "Baidu: ERNIE 4.5 21B A3B Thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 131072, output: 65536 },
      },
      "baidu/ernie-4.5-300b-a47b": {
        id: "baidu/ernie-4.5-300b-a47b",
        name: "Baidu: ERNIE 4.5 300B A47B ",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.28, output: 1.1 },
        limit: { context: 123000, output: 12000 },
      },
      "baidu/ernie-4.5-21b-a3b": {
        id: "baidu/ernie-4.5-21b-a3b",
        name: "Baidu: ERNIE 4.5 21B A3B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.28 },
        limit: { context: 120000, output: 8000 },
      },
      "google/gemini-2.5-flash-lite-preview-09-2025": {
        id: "google/gemini-2.5-flash-lite-preview-09-2025",
        name: "Google: Gemini 2.5 Flash Lite Preview 09-2025",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-25",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, reasoning: 0.4, cache_read: 0.01, cache_write: 0.083333 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-pro-preview-customtools": {
        id: "google/gemini-3.1-pro-preview-customtools",
        name: "Google: Gemini 3.1 Pro Preview Custom Tools",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.5-pro-preview-05-06": {
        id: "google/gemini-2.5-pro-preview-05-06",
        name: "Google: Gemini 2.5 Pro Preview 05-06",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-06",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, reasoning: 10, cache_read: 0.125, cache_write: 0.375 },
        limit: { context: 1048576, output: 65535 },
      },
      "google/gemini-2.5-flash": {
        id: "google/gemini-2.5-flash",
        name: "Google: Gemini 2.5 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-17",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5, reasoning: 2.5, cache_read: 0.03, cache_write: 0.083333 },
        limit: { context: 1048576, output: 65535 },
      },
      "google/gemini-2.5-pro-preview": {
        id: "google/gemini-2.5-pro-preview",
        name: "Google: Gemini 2.5 Pro Preview 06-05",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-05",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, reasoning: 10, cache_read: 0.125, cache_write: 0.375 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3.1-flash-image-preview": {
        id: "google/gemini-3.1-flash-image-preview",
        name: "Google: Nano Banana 2 (Gemini 3.1 Flash Image Preview)",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 65536, output: 65536 },
      },
      "google/gemini-2.0-flash-001": {
        id: "google/gemini-2.0-flash-001",
        name: "Google: Gemini 2.0 Flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-11",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025, cache_write: 0.083333 },
        limit: { context: 1048576, output: 8192 },
      },
      "google/gemini-3.1-flash-lite-preview": {
        id: "google/gemini-3.1-flash-lite-preview",
        name: "Google: Gemini 3.1 Flash Lite Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-03",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.5, reasoning: 1.5 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Google: Gemini 3 Flash Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-17",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3, reasoning: 3, cache_read: 0.05, cache_write: 0.083333 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-2-27b-it": {
        id: "google/gemma-2-27b-it",
        name: "Google: Gemma 2 27B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-06-24",
        last_updated: "2024-06-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.65, output: 0.65 },
        limit: { context: 8192, output: 2048 },
      },
      "google/gemini-2.5-flash-lite": {
        id: "google/gemini-2.5-flash-lite",
        name: "Google: Gemini 2.5 Flash Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-17",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, reasoning: 0.4, cache_read: 0.01, cache_write: 0.083333 },
        limit: { context: 1048576, output: 65535 },
      },
      "google/gemini-3.1-pro-preview": {
        id: "google/gemini-3.1-pro-preview",
        name: "Google: Gemini 3.1 Pro Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-19",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemini-2.0-flash-lite-001": {
        id: "google/gemini-2.0-flash-lite-001",
        name: "Google: Gemini 2.0 Flash Lite",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-11",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 1048576, output: 8192 },
      },
      "google/gemini-2.5-flash-image": {
        id: "google/gemini-2.5-flash-image",
        name: "Google: Nano Banana (Gemini 2.5 Flash Image)",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-08",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 32768, output: 32768 },
      },
      "google/gemini-3-pro-image-preview": {
        id: "google/gemini-3-pro-image-preview",
        name: "Google: Nano Banana Pro (Gemini 3 Pro Image Preview)",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-20",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12 },
        limit: { context: 65536, output: 32768 },
      },
      "google/gemma-2-9b-it": {
        id: "google/gemma-2-9b-it",
        name: "Google: Gemma 2 9B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-06-28",
        last_updated: "2024-06-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09 },
        limit: { context: 8192, output: 1639 },
      },
      "google/gemma-3n-e4b-it": {
        id: "google/gemma-3n-e4b-it",
        name: "Google: Gemma 3n 4B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04 },
        limit: { context: 32768, output: 6554 },
      },
      "google/gemini-3-pro-preview": {
        id: "google/gemini-3-pro-preview",
        name: "Google: Gemini 3 Pro Preview",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-18",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12, reasoning: 12, cache_read: 0.2, cache_write: 0.375 },
        limit: { context: 1048576, output: 65536 },
      },
      "google/gemma-3-12b-it": {
        id: "google/gemma-3-12b-it",
        name: "Google: Gemma 3 12B",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.13, cache_read: 0.015 },
        limit: { context: 131072, output: 131072 },
      },
      "google/gemma-3-4b-it": {
        id: "google/gemma-3-4b-it",
        name: "Google: Gemma 3 4B",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.08 },
        limit: { context: 131072, output: 19200 },
      },
      "google/gemma-3-27b-it": {
        id: "google/gemma-3-27b-it",
        name: "Google: Gemma 3 27B",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.11, cache_read: 0.02 },
        limit: { context: 128000, output: 65536 },
      },
      "google/gemini-2.5-pro": {
        id: "google/gemini-2.5-pro",
        name: "Google: Gemini 2.5 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-03-20",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "image", "pdf", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, reasoning: 10, cache_read: 0.125, cache_write: 0.375 },
        limit: { context: 1048576, output: 65536 },
      },
      "z-ai/glm-5": {
        id: "z-ai/glm-5",
        name: "Z.ai: GLM 5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.72, output: 2.3 },
        limit: { context: 202752, output: 131072 },
      },
      "z-ai/glm-4.5-air": {
        id: "z-ai/glm-4.5-air",
        name: "Z.ai: GLM 4.5 Air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.85, cache_read: 0.025 },
        limit: { context: 131072, output: 98304 },
      },
      "z-ai/glm-4.5": {
        id: "z-ai/glm-4.5",
        name: "Z.ai: GLM 4.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-28",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.2, cache_read: 0.175 },
        limit: { context: 131072, output: 98304 },
      },
      "z-ai/glm-4.7-flash": {
        id: "z-ai/glm-4.7-flash",
        name: "Z.ai: GLM 4.7 Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.4, cache_read: 0.01 },
        limit: { context: 202752, output: 40551 },
      },
      "z-ai/glm-4.6": {
        id: "z-ai/glm-4.6",
        name: "Z.ai: GLM 4.6",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.39, output: 1.9, cache_read: 0.175 },
        limit: { context: 204800, output: 204800 },
      },
      "z-ai/glm-4.7": {
        id: "z-ai/glm-4.7",
        name: "Z.ai: GLM 4.7",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.38, output: 1.98, cache_read: 0.2 },
        limit: { context: 202752, output: 65535 },
      },
      "z-ai/glm-4-32b": {
        id: "z-ai/glm-4-32b",
        name: "Z.ai: GLM 4 32B ",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-25",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 128000, output: 32768 },
      },
      "z-ai/glm-4.5v": {
        id: "z-ai/glm-4.5v",
        name: "Z.ai: GLM 4.5V",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-11",
        last_updated: "2025-08-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.8, cache_read: 0.11 },
        limit: { context: 65536, output: 16384 },
      },
      "z-ai/glm-4.6v": {
        id: "z-ai/glm-4.6v",
        name: "Z.ai: GLM 4.6V",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-30",
        last_updated: "2026-01-10",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 131072, output: 131072 },
      },
      "deepcogito/cogito-v2.1-671b": {
        id: "deepcogito/cogito-v2.1-671b",
        name: "Deep Cogito: Cogito v2.1 671B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-11-14",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.25, output: 1.25 },
        limit: { context: 128000, output: 32768 },
      },
      "meituan/longcat-flash-chat": {
        id: "meituan/longcat-flash-chat",
        name: "Meituan: LongCat Flash Chat",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-30",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8, cache_read: 0.2 },
        limit: { context: 131072, output: 131072 },
      },
      "bytedance/ui-tars-1.5-7b": {
        id: "bytedance/ui-tars-1.5-7b",
        name: "ByteDance: UI-TARS 7B ",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.2 },
        limit: { context: 128000, output: 2048 },
      },
      "undi95/remm-slerp-l2-13b": {
        id: "undi95/remm-slerp-l2-13b",
        name: "ReMM SLERP 13B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2023-07-22",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 0.65 },
        limit: { context: 6144, output: 4096 },
      },
      "qwen/qwen3.5-27b": {
        id: "qwen/qwen3.5-27b",
        name: "Qwen: Qwen3.5-27B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.195, output: 1.56 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen-vl-plus": {
        id: "qwen/qwen-vl-plus",
        name: "Qwen: Qwen VL Plus",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-01-25",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1365, output: 0.4095, cache_read: 0.042 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen/qwen-vl-max": {
        id: "qwen/qwen-vl-max",
        name: "Qwen: Qwen VL Max",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-04-08",
        last_updated: "2025-08-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 3.2 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-next-80b-a3b-thinking": {
        id: "qwen/qwen3-next-80b-a3b-thinking",
        name: "Qwen: Qwen3 Next 80B A3B Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.0975, output: 0.78 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen-2.5-vl-7b-instruct": {
        id: "qwen/qwen-2.5-vl-7b-instruct",
        name: "Qwen: Qwen2.5-VL 7B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-28",
        last_updated: "2024-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 32768, output: 6554 },
      },
      "qwen/qwen3-max-thinking": {
        id: "qwen/qwen3-max-thinking",
        name: "Qwen: Qwen3 Max Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-23",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.78, output: 3.9 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen/qwen3-14b": {
        id: "qwen/qwen3-14b",
        name: "Qwen: Qwen3 14B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.24, cache_read: 0.025 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3.5-35b-a3b": {
        id: "qwen/qwen3.5-35b-a3b",
        name: "Qwen: Qwen3.5-35B-A3B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1625, output: 1.3 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwq-32b": {
        id: "qwen/qwq-32b",
        name: "Qwen: QwQ 32B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-28",
        last_updated: "2025-04-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.4 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3-coder-flash": {
        id: "qwen/qwen3-coder-flash",
        name: "Qwen: Qwen3 Coder Flash",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.195, output: 0.975, cache_read: 0.06 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen/qwen3-vl-8b-thinking": {
        id: "qwen/qwen3-vl-8b-thinking",
        name: "Qwen: Qwen3 VL 8B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.117, output: 1.365 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen2.5-vl-32b-instruct": {
        id: "qwen/qwen2.5-vl-32b-instruct",
        name: "Qwen: Qwen2.5 VL 32B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-24",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6, cache_read: 0.025 },
        limit: { context: 128000, output: 16384 },
      },
      "qwen/qwen-max": {
        id: "qwen/qwen-max",
        name: "Qwen: Qwen-Max ",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-04-03",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.04, output: 4.16, cache_read: 0.32 },
        limit: { context: 32768, output: 8192 },
      },
      "qwen/qwen2.5-coder-7b-instruct": {
        id: "qwen/qwen2.5-coder-7b-instruct",
        name: "Qwen: Qwen2.5 Coder 7B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-09-17",
        last_updated: "2024-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.09 },
        limit: { context: 32768, output: 6554 },
      },
      "qwen/qwen3-coder-next": {
        id: "qwen/qwen3-coder-next",
        name: "Qwen: Qwen3 Coder Next",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-02",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.75, cache_read: 0.035 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen-turbo": {
        id: "qwen/qwen-turbo",
        name: "Qwen: Qwen-Turbo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0325, output: 0.13, cache_read: 0.01 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen/qwen3-coder": {
        id: "qwen/qwen3-coder",
        name: "Qwen: Qwen3 Coder 480B A35B",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 1, cache_read: 0.022 },
        limit: { context: 262144, output: 52429 },
      },
      "qwen/qwen3-8b": {
        id: "qwen/qwen3-8b",
        name: "Qwen: Qwen3 8B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.4, cache_read: 0.05 },
        limit: { context: 40960, output: 8192 },
      },
      "qwen/qwen3-32b": {
        id: "qwen/qwen3-32b",
        name: "Qwen: Qwen3 32B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.24, cache_read: 0.04 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-235b-a22b-2507": {
        id: "qwen/qwen3-235b-a22b-2507",
        name: "Qwen: Qwen3 235B A22B Instruct 2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04",
        last_updated: "2026-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.071, output: 0.1 },
        limit: { context: 262144, output: 52429 },
      },
      "qwen/qwen3.5-397b-a17b": {
        id: "qwen/qwen3.5-397b-a17b",
        name: "Qwen: Qwen3.5 397B A17B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-15",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.39, output: 2.34 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen-2.5-7b-instruct": {
        id: "qwen/qwen-2.5-7b-instruct",
        name: "Qwen: Qwen2.5 7B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.1 },
        limit: { context: 32768, output: 6554 },
      },
      "qwen/qwen-2.5-coder-32b-instruct": {
        id: "qwen/qwen-2.5-coder-32b-instruct",
        name: "Qwen2.5 Coder 32B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-11-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.2, cache_read: 0.015 },
        limit: { context: 32768, output: 8192 },
      },
      "qwen/qwen3.5-plus-02-15": {
        id: "qwen/qwen3.5-plus-02-15",
        name: "Qwen: Qwen3.5 Plus 2026-02-15",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-15",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.26, output: 1.56 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen/qwen3-30b-a3b-instruct-2507": {
        id: "qwen/qwen3-30b-a3b-instruct-2507",
        name: "Qwen: Qwen3 30B A3B Instruct 2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-29",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.3, cache_read: 0.04 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwen2.5-vl-72b-instruct": {
        id: "qwen/qwen2.5-vl-72b-instruct",
        name: "Qwen: Qwen2.5 VL 72B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-02-01",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 0.8, cache_read: 0.075 },
        limit: { context: 32768, output: 32768 },
      },
      "qwen/qwen3-235b-a22b": {
        id: "qwen/qwen3-235b-a22b",
        name: "Qwen: Qwen3 235B A22B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.455, output: 1.82, cache_read: 0.15 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen/qwen3-coder-30b-a3b-instruct": {
        id: "qwen/qwen3-coder-30b-a3b-instruct",
        name: "Qwen: Qwen3 Coder 30B A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.27 },
        limit: { context: 160000, output: 32768 },
      },
      "qwen/qwen3-vl-235b-a22b-instruct": {
        id: "qwen/qwen3-vl-235b-a22b-instruct",
        name: "Qwen: Qwen3 VL 235B A22B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-23",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.88, cache_read: 0.11 },
        limit: { context: 262144, output: 52429 },
      },
      "qwen/qwen-2.5-72b-instruct": {
        id: "qwen/qwen-2.5-72b-instruct",
        name: "Qwen2.5 72B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-09",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0.39 },
        limit: { context: 32768, output: 16384 },
      },
      "qwen/qwen3-vl-30b-a3b-thinking": {
        id: "qwen/qwen3-vl-30b-a3b-thinking",
        name: "Qwen: Qwen3 VL 30B A3B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-11",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 1.56 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-vl-235b-a22b-thinking": {
        id: "qwen/qwen3-vl-235b-a22b-thinking",
        name: "Qwen: Qwen3 VL 235B A22B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-24",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 2.6 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-30b-a3b-thinking-2507": {
        id: "qwen/qwen3-30b-a3b-thinking-2507",
        name: "Qwen: Qwen3 30B A3B Thinking 2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 32768, output: 6554 },
      },
      "qwen/qwen-plus": {
        id: "qwen/qwen-plus",
        name: "Qwen: Qwen-Plus",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-01-25",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.2, cache_read: 0.08 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen/qwen3-235b-a22b-thinking-2507": {
        id: "qwen/qwen3-235b-a22b-thinking-2507",
        name: "Qwen: Qwen3 235B A22B Thinking 2507",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-25",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "qwen/qwen3.5-9b": {
        id: "qwen/qwen3.5-9b",
        name: "Qwen: Qwen3.5-9B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-10",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.15 },
        limit: { context: 256000, output: 32768 },
      },
      "qwen/qwen-plus-2025-07-28": {
        id: "qwen/qwen-plus-2025-07-28",
        name: "Qwen: Qwen Plus 0728",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-09",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 0.78 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen/qwen3-vl-30b-a3b-instruct": {
        id: "qwen/qwen3-vl-30b-a3b-instruct",
        name: "Qwen: Qwen3 VL 30B A3B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-05",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-next-80b-a3b-instruct": {
        id: "qwen/qwen3-next-80b-a3b-instruct",
        name: "Qwen: Qwen3 Next 80B A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 1.1 },
        limit: { context: 131072, output: 52429 },
      },
      "qwen/qwen3-vl-32b-instruct": {
        id: "qwen/qwen3-vl-32b-instruct",
        name: "Qwen: Qwen3 VL 32B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-21",
        last_updated: "2025-11-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.104, output: 0.416 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3-vl-8b-instruct": {
        id: "qwen/qwen3-vl-8b-instruct",
        name: "Qwen: Qwen3 VL 8B Instruct",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-11-25",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.5 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen/qwen3.5-122b-a10b": {
        id: "qwen/qwen3.5-122b-a10b",
        name: "Qwen: Qwen3.5-122B-A10B",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 2.08 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen/qwen3-max": {
        id: "qwen/qwen3-max",
        name: "Qwen: Qwen3 Max",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-05",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 6, cache_read: 0.24 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen/qwen3-30b-a3b": {
        id: "qwen/qwen3-30b-a3b",
        name: "Qwen: Qwen3 30B A3B",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-04",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.28, cache_read: 0.03 },
        limit: { context: 40960, output: 40960 },
      },
      "qwen/qwen3-coder-plus": {
        id: "qwen/qwen3-coder-plus",
        name: "Qwen: Qwen3 Coder Plus",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.65, output: 3.25, cache_read: 0.2 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen/qwen-plus-2025-07-28:thinking": {
        id: "qwen/qwen-plus-2025-07-28:thinking",
        name: "Qwen: Qwen Plus 0728 (thinking)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-09",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.26, output: 0.78 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen/qwen3.5-flash-02-23": {
        id: "qwen/qwen3.5-flash-02-23",
        name: "Qwen: Qwen3.5-Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1000000, output: 65536 },
      },
      "eleutherai/llemma_7b": {
        id: "eleutherai/llemma_7b",
        name: "EleutherAI: Llemma 7b",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-14",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.8, output: 1.2 },
        limit: { context: 4096, output: 4096 },
      },
      "x-ai/grok-3": {
        id: "x-ai/grok-3",
        name: "xAI: Grok 3",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 26215 },
      },
      "x-ai/grok-code-fast-1": {
        id: "x-ai/grok-code-fast-1",
        name: "xAI: Grok Code Fast 1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "x-ai/grok-4-fast": {
        id: "x-ai/grok-4-fast",
        name: "xAI: Grok 4 Fast",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "x-ai/grok-4": {
        id: "x-ai/grok-4",
        name: "xAI: Grok 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 51200 },
      },
      "x-ai/grok-4.1-fast": {
        id: "x-ai/grok-4.1-fast",
        name: "xAI: Grok 4.1 Fast",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "x-ai/grok-3-mini-beta": {
        id: "x-ai/grok-3-mini-beta",
        name: "xAI: Grok 3 Mini Beta",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 26215 },
      },
      "x-ai/grok-3-mini": {
        id: "x-ai/grok-3-mini",
        name: "xAI: Grok 3 Mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 26215 },
      },
      "x-ai/grok-code-fast-1:optimized:free": {
        id: "x-ai/grok-code-fast-1:optimized:free",
        name: "xAI: Grok Code Fast 1 Optimized (experimental, free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-27",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 256000, output: 10000 },
      },
      "x-ai/grok-4.20-multi-agent-beta": {
        id: "x-ai/grok-4.20-multi-agent-beta",
        name: "xAI: Grok 4.20 Multi-Agent Beta",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 2000000, output: 32768 },
      },
      "x-ai/grok-4.20-beta": {
        id: "x-ai/grok-4.20-beta",
        name: "xAI: Grok 4.20 Beta",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-12",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 2000000, output: 32768 },
      },
      "x-ai/grok-3-beta": {
        id: "x-ai/grok-3-beta",
        name: "xAI: Grok 3 Beta",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 26215 },
      },
      "meta-llama/llama-4-scout": {
        id: "meta-llama/llama-4-scout",
        name: "Meta: Llama 4 Scout",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.3 },
        limit: { context: 327680, output: 16384 },
      },
      "meta-llama/llama-3.1-70b-instruct": {
        id: "meta-llama/llama-3.1-70b-instruct",
        name: "Meta: Llama 3.1 70B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 131072, output: 26215 },
      },
      "meta-llama/llama-3.3-70b-instruct": {
        id: "meta-llama/llama-3.3-70b-instruct",
        name: "Meta: Llama 3.3 70B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-08-01",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.32 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/llama-3-70b-instruct": {
        id: "meta-llama/llama-3-70b-instruct",
        name: "Meta: Llama 3 70B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.51, output: 0.74 },
        limit: { context: 8192, output: 8000 },
      },
      "meta-llama/llama-3.2-11b-vision-instruct": {
        id: "meta-llama/llama-3.2-11b-vision-instruct",
        name: "Meta: Llama 3.2 11B Vision Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.049, output: 0.049 },
        limit: { context: 131072, output: 16384 },
      },
      "meta-llama/llama-3.2-3b-instruct": {
        id: "meta-llama/llama-3.2-3b-instruct",
        name: "Meta: Llama 3.2 3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.051, output: 0.34 },
        limit: { context: 80000, output: 16384 },
      },
      "meta-llama/llama-guard-3-8b": {
        id: "meta-llama/llama-guard-3-8b",
        name: "Llama Guard 3 8B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-04-18",
        last_updated: "2026-02-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.06 },
        limit: { context: 131072, output: 26215 },
      },
      "meta-llama/llama-3.2-1b-instruct": {
        id: "meta-llama/llama-3.2-1b-instruct",
        name: "Meta: Llama 3.2 1B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-09-18",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.027, output: 0.2 },
        limit: { context: 60000, output: 12000 },
      },
      "meta-llama/llama-3.1-405b-instruct": {
        id: "meta-llama/llama-3.1-405b-instruct",
        name: "Meta: Llama 3.1 405B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-07-16",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 4, output: 4 },
        limit: { context: 131000, output: 26200 },
      },
      "meta-llama/llama-4-maverick": {
        id: "meta-llama/llama-4-maverick",
        name: "Meta: Llama 4 Maverick",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-05",
        last_updated: "2025-12-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 1048576, output: 16384 },
      },
      "meta-llama/llama-3.1-8b-instruct": {
        id: "meta-llama/llama-3.1-8b-instruct",
        name: "Meta: Llama 3.1 8B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.05 },
        limit: { context: 16384, output: 16384 },
      },
      "meta-llama/llama-guard-4-12b": {
        id: "meta-llama/llama-guard-4-12b",
        name: "Meta: Llama Guard 4 12B",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.18, output: 0.18 },
        limit: { context: 163840, output: 32768 },
      },
      "meta-llama/llama-3-8b-instruct": {
        id: "meta-llama/llama-3-8b-instruct",
        name: "Meta: Llama 3 8B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-04-25",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.04 },
        limit: { context: 8192, output: 16384 },
      },
      "meta-llama/llama-3.1-405b": {
        id: "meta-llama/llama-3.1-405b",
        name: "Meta: Llama 3.1 405B (base)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-02",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 4, output: 4 },
        limit: { context: 32768, output: 32768 },
      },
      "tngtech/deepseek-r1t2-chimera": {
        id: "tngtech/deepseek-r1t2-chimera",
        name: "TNG: DeepSeek R1T2 Chimera",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-08",
        last_updated: "2025-07-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.85, cache_read: 0.125 },
        limit: { context: 163840, output: 163840 },
      },
      "mistralai/voxtral-small-24b-2507": {
        id: "mistralai/voxtral-small-24b-2507",
        name: "Mistral: Voxtral Small 24B 2507",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 32000, output: 6400 },
      },
      "mistralai/ministral-3b-2512": {
        id: "mistralai/ministral-3b-2512",
        name: "Mistral: Ministral 3 3B 2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131072, output: 32768 },
      },
      "mistralai/mistral-saba": {
        id: "mistralai/mistral-saba",
        name: "Mistral: Saba",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-17",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 32768, output: 32768 },
      },
      "mistralai/mistral-medium-3": {
        id: "mistralai/mistral-medium-3",
        name: "Mistral: Mistral Medium 3",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 26215 },
      },
      "mistralai/mistral-small-24b-instruct-2501": {
        id: "mistralai/mistral-small-24b-instruct-2501",
        name: "Mistral: Mistral Small 3",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.08 },
        limit: { context: 32768, output: 16384 },
      },
      "mistralai/codestral-2508": {
        id: "mistralai/codestral-2508",
        name: "Mistral: Codestral 2508",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 51200 },
      },
      "mistralai/pixtral-large-2411": {
        id: "mistralai/pixtral-large-2411",
        name: "Mistral: Pixtral Large 2411",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-19",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 131072, output: 32768 },
      },
      "mistralai/mistral-small-3.1-24b-instruct": {
        id: "mistralai/mistral-small-3.1-24b-instruct",
        name: "Mistral: Mistral Small 3.1 24B",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-17",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 0.56, cache_read: 0.015 },
        limit: { context: 128000, output: 131072 },
      },
      "mistralai/mistral-small-creative": {
        id: "mistralai/mistral-small-creative",
        name: "Mistral: Mistral Small Creative",
        attachment: false,
        reasoning: false,
        tool_call: true,
        release_date: "2025-12-17",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 32768, output: 32768 },
      },
      "mistralai/mistral-large-2512": {
        id: "mistralai/mistral-large-2512",
        name: "Mistral: Mistral Large 3 2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-01",
        last_updated: "2025-12-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 262144, output: 52429 },
      },
      "mistralai/ministral-8b-2512": {
        id: "mistralai/ministral-8b-2512",
        name: "Mistral: Ministral 3 8B 2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-02",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 262144, output: 32768 },
      },
      "mistralai/ministral-14b-2512": {
        id: "mistralai/ministral-14b-2512",
        name: "Mistral: Ministral 3 14B 2512",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 262144, output: 52429 },
      },
      "mistralai/devstral-medium": {
        id: "mistralai/devstral-medium",
        name: "Mistral: Devstral Medium",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-07-10",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 26215 },
      },
      "mistralai/mistral-large-2407": {
        id: "mistralai/mistral-large-2407",
        name: "Mistral Large 2407",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-19",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 131072, output: 32768 },
      },
      "mistralai/mistral-nemo": {
        id: "mistralai/mistral-nemo",
        name: "Mistral: Mistral Nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-01",
        last_updated: "2024-07-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04 },
        limit: { context: 131072, output: 16384 },
      },
      "mistralai/devstral-2512": {
        id: "mistralai/devstral-2512",
        name: "Mistral: Devstral 2 2512",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2, cache_read: 0.025 },
        limit: { context: 262144, output: 65536 },
      },
      "mistralai/devstral-small": {
        id: "mistralai/devstral-small",
        name: "Mistral: Devstral Small 1.1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-07",
        last_updated: "2025-07-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 131072, output: 26215 },
      },
      "mistralai/mistral-small-3.2-24b-instruct": {
        id: "mistralai/mistral-small-3.2-24b-instruct",
        name: "Mistral: Mistral Small 3.2 24B",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-20",
        last_updated: "2025-06-20",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.18, cache_read: 0.03 },
        limit: { context: 131072, output: 131072 },
      },
      "mistralai/mixtral-8x22b-instruct": {
        id: "mistralai/mixtral-8x22b-instruct",
        name: "Mistral: Mixtral 8x22B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-04-17",
        last_updated: "2024-04-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 65536, output: 13108 },
      },
      "mistralai/mistral-large-2411": {
        id: "mistralai/mistral-large-2411",
        name: "Mistral Large 2411",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-24",
        last_updated: "2024-11-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 131072, output: 26215 },
      },
      "mistralai/mistral-7b-instruct-v0.1": {
        id: "mistralai/mistral-7b-instruct-v0.1",
        name: "Mistral: Mistral 7B Instruct v0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.11, output: 0.19 },
        limit: { context: 2824, output: 565 },
      },
      "mistralai/mistral-large": {
        id: "mistralai/mistral-large",
        name: "Mistral Large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-24",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 25600 },
      },
      "mistralai/mixtral-8x7b-instruct": {
        id: "mistralai/mixtral-8x7b-instruct",
        name: "Mistral: Mixtral 8x7B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-12-10",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.54, output: 0.54 },
        limit: { context: 32768, output: 16384 },
      },
      "mistralai/mistral-medium-3.1": {
        id: "mistralai/mistral-medium-3.1",
        name: "Mistral: Mistral Medium 3.1",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, output: 26215 },
      },
      "openai/gpt-4o-2024-11-20": {
        id: "openai/gpt-4o-2024-11-20",
        name: "OpenAI: GPT-4o (2024-11-20)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-11-20",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.3-codex": {
        id: "openai/gpt-5.3-codex",
        name: "OpenAI: GPT-5.3-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2026-02-25",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "OpenAI: GPT-5 Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "OpenAI: GPT-5 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-10-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "OpenAI: GPT-4o-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-18",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.075 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4o-mini-search-preview": {
        id: "openai/gpt-4o-mini-search-preview",
        name: "OpenAI: GPT-4o-mini Search Preview",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4o:extended": {
        id: "openai/gpt-4o:extended",
        name: "OpenAI: GPT-4o (extended)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-05-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 6, output: 18 },
        limit: { context: 128000, output: 64000 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "OpenAI: GPT-5.1-Codex-Max",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4o-2024-05-13": {
        id: "openai/gpt-4o-2024-05-13",
        name: "OpenAI: GPT-4o (2024-05-13)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-05-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 15 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-4o-audio-preview": {
        id: "openai/gpt-4o-audio-preview",
        name: "OpenAI: GPT-4o Audio",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-15",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "text"], output: ["audio", "text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4o-mini-2024-07-18": {
        id: "openai/gpt-4o-mini-2024-07-18",
        name: "OpenAI: GPT-4o-mini (2024-07-18)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-07-18",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "OpenAI: GPT-5.2-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-audio": {
        id: "openai/gpt-audio",
        name: "OpenAI: GPT Audio",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-20",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "text"], output: ["audio", "text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o3-deep-research": {
        id: "openai/o3-deep-research",
        name: "OpenAI: o3 Deep Research",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-06-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 40, cache_read: 2.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-3.5-turbo-16k": {
        id: "openai/gpt-3.5-turbo-16k",
        name: "OpenAI: GPT-3.5 Turbo 16k",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-08-28",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 4 },
        limit: { context: 16385, output: 4096 },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "OpenAI: o1",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-05",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "OpenAI: GPT-5.1",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5-image-mini": {
        id: "openai/gpt-5-image-mini",
        name: "OpenAI: GPT-5 Image Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-16",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 2.5, output: 2 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-chat": {
        id: "openai/gpt-5.2-chat",
        name: "OpenAI: GPT-5.2 Chat",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o4-mini-deep-research": {
        id: "openai/o4-mini-deep-research",
        name: "OpenAI: o4 Mini Deep Research",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-06-26",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5-chat": {
        id: "openai/gpt-5-chat",
        name: "OpenAI: GPT-5 Chat",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-08-07",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.1-chat": {
        id: "openai/gpt-5.1-chat",
        name: "OpenAI: GPT-5.1 Chat",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "OpenAI: o3",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-16",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo-preview": {
        id: "openai/gpt-4-turbo-preview",
        name: "OpenAI: GPT-4 Turbo Preview",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-01-25",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-5-image": {
        id: "openai/gpt-5-image",
        name: "OpenAI: GPT-5 Image",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-14",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["image", "text"] },
        open_weights: false,
        cost: { input: 10, output: 10 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4.1-nano": {
        id: "openai/gpt-4.1-nano",
        name: "OpenAI: GPT-4.1 Nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-14",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.025 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-3.5-turbo-0613": {
        id: "openai/gpt-3.5-turbo-0613",
        name: "OpenAI: GPT-3.5 Turbo (older v0613)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-06-13",
        last_updated: "2023-06-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 2 },
        limit: { context: 4095, output: 4096 },
      },
      "openai/gpt-3.5-turbo": {
        id: "openai/gpt-3.5-turbo",
        name: "OpenAI: GPT-3.5 Turbo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-03-01",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 16385, output: 4096 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "OpenAI: gpt-oss-120b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.039, output: 0.19 },
        limit: { context: 131072, output: 26215 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "OpenAI: GPT-5.1-Codex-Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 100000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "OpenAI: GPT-5.2",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "OpenAI: GPT-4.1",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-14",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/o3-pro": {
        id: "openai/o3-pro",
        name: "OpenAI: o3 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-16",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 20, output: 80 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo": {
        id: "openai/gpt-4-turbo",
        name: "OpenAI: GPT-4 Turbo",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-09-13",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "OpenAI: GPT-5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-07",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "OpenAI: o4 Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-04-16",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.275 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "OpenAI: GPT-4.1 Mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-04-14",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "openai/gpt-4-0314": {
        id: "openai/gpt-4-0314",
        name: "OpenAI: GPT-4 (older v0314)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-05-28",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 60 },
        limit: { context: 8191, output: 4096 },
      },
      "openai/gpt-audio-mini": {
        id: "openai/gpt-audio-mini",
        name: "OpenAI: GPT Audio Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-20",
        last_updated: "2026-03-15",
        modalities: { input: ["audio", "text"], output: ["audio", "text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.4 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5.4": {
        id: "openai/gpt-5.4",
        name: "OpenAI: GPT-5.4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2026-03-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15 },
        limit: { context: 1050000, output: 128000 },
      },
      "openai/gpt-5.4-pro": {
        id: "openai/gpt-5.4-pro",
        name: "OpenAI: GPT-5.4 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2026-03-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180 },
        limit: { context: 1050000, output: 128000 },
      },
      "openai/gpt-5.3-chat": {
        id: "openai/gpt-5.3-chat",
        name: "OpenAI: GPT-5.3 Chat",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2026-03-04",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4-1106-preview": {
        id: "openai/gpt-4-1106-preview",
        name: "OpenAI: GPT-4 Turbo (older v1106)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-11-06",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "openai/gpt-oss-safeguard-20b": {
        id: "openai/gpt-oss-safeguard-20b",
        name: "OpenAI: gpt-oss-safeguard-20b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-29",
        last_updated: "2025-10-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3, cache_read: 0.037 },
        limit: { context: 131072, output: 65536 },
      },
      "openai/o1-pro": {
        id: "openai/o1-pro",
        name: "OpenAI: o1-pro",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: false,
        release_date: "2025-03-19",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 150, output: 600 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "OpenAI: GPT-5.1-Codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "OpenAI: GPT-5.2 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-12-11",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "OpenAI: o3 Mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2024-12-20",
        last_updated: "2026-03-15",
        modalities: { input: ["pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4o-2024-08-06": {
        id: "openai/gpt-4o-2024-08-06",
        name: "OpenAI: GPT-4o (2024-08-06)",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-08-06",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "OpenAI: GPT-5 Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-07",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "OpenAI: gpt-oss-20b",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.14 },
        limit: { context: 131072, output: 26215 },
      },
      "openai/gpt-4": {
        id: "openai/gpt-4",
        name: "OpenAI: GPT-4",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2023-03-14",
        last_updated: "2024-04-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 60 },
        limit: { context: 8191, output: 4096 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "OpenAI: GPT-5 Nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        release_date: "2025-08-07",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.005 },
        limit: { context: 400000, output: 128000 },
      },
      "openai/gpt-3.5-turbo-instruct": {
        id: "openai/gpt-3.5-turbo-instruct",
        name: "OpenAI: GPT-3.5 Turbo Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2023-03-01",
        last_updated: "2023-09-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 4095, output: 4096 },
      },
      "openai/o3-mini-high": {
        id: "openai/o3-mini-high",
        name: "OpenAI: o3 Mini High",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: false,
        release_date: "2025-01-31",
        last_updated: "2026-03-15",
        modalities: { input: ["pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/o4-mini-high": {
        id: "openai/o4-mini-high",
        name: "OpenAI: o4 Mini High",
        attachment: true,
        reasoning: true,
        tool_call: true,
        release_date: "2025-04-17",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, output: 100000 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "OpenAI: GPT-4o",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-05-13",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "openai/gpt-4o-search-preview": {
        id: "openai/gpt-4o-search-preview",
        name: "OpenAI: GPT-4o Search Preview",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2025-03-13",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 16384 },
      },
      "morph/morph-v3-fast": {
        id: "morph/morph-v3-fast",
        name: "Morph: Morph V3 Fast",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 1.2 },
        limit: { context: 81920, output: 38000 },
      },
      "morph/morph-v3-large": {
        id: "morph/morph-v3-large",
        name: "Morph: Morph V3 Large",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-15",
        last_updated: "2024-08-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.9, output: 1.9 },
        limit: { context: 262144, output: 131072 },
      },
      "cohere/command-r-08-2024": {
        id: "cohere/command-r-08-2024",
        name: "Cohere: Command R (08-2024)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4000 },
      },
      "cohere/command-r-plus-08-2024": {
        id: "cohere/command-r-plus-08-2024",
        name: "Cohere: Command R+ (08-2024)",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 4000 },
      },
      "cohere/command-r7b-12-2024": {
        id: "cohere/command-r7b-12-2024",
        name: "Cohere: Command R7B (12-2024)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-02-27",
        last_updated: "2024-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.0375, output: 0.15 },
        limit: { context: 128000, output: 4000 },
      },
      "cohere/command-a": {
        id: "cohere/command-a",
        name: "Cohere: Command A",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 8192 },
      },
      "minimax/minimax-m1": {
        id: "minimax/minimax-m1",
        name: "MiniMax: MiniMax M1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 2.2 },
        limit: { context: 1000000, output: 40000 },
      },
      "minimax/minimax-01": {
        id: "minimax/minimax-01",
        name: "MiniMax: MiniMax-01",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 1.1 },
        limit: { context: 1000192, output: 1000192 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "MiniMax: MiniMax M2.1",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.95, cache_read: 0.03 },
        limit: { context: 196608, output: 39322 },
      },
      "minimax/minimax-m2-her": {
        id: "minimax/minimax-m2-her",
        name: "MiniMax: MiniMax M2-her",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2026-01-23",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 65536, output: 2048 },
      },
      "minimax/minimax-m2.5:free": {
        id: "minimax/minimax-m2.5:free",
        name: "MiniMax: MiniMax M2.5 (free)",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0, cache_read: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "minimax/minimax-m2": {
        id: "minimax/minimax-m2",
        name: "MiniMax: MiniMax M2",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-23",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.255, output: 1, cache_read: 0.03 },
        limit: { context: 196608, output: 196608 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax: MiniMax M2.5",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 1.2, cache_read: 0.029 },
        limit: { context: 196608, output: 196608 },
      },
      "sao10k/l3.1-70b-hanami-x1": {
        id: "sao10k/l3.1-70b-hanami-x1",
        name: "Sao10K: Llama 3.1 70B Hanami x1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-01-08",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 3, output: 3 },
        limit: { context: 16000, output: 16000 },
      },
      "sao10k/l3-lunaris-8b": {
        id: "sao10k/l3-lunaris-8b",
        name: "Sao10K: Llama 3 8B Lunaris",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-13",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.05 },
        limit: { context: 8192, output: 8192 },
      },
      "sao10k/l3.1-euryale-70b": {
        id: "sao10k/l3.1-euryale-70b",
        name: "Sao10K: Llama 3.1 Euryale 70B v2.2",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-08-28",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.85, output: 0.85 },
        limit: { context: 131072, output: 16384 },
      },
      "sao10k/l3-euryale-70b": {
        id: "sao10k/l3-euryale-70b",
        name: "Sao10k: Llama 3 Euryale 70B v2.1",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-06-18",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.48, output: 1.48 },
        limit: { context: 8192, output: 8192 },
      },
      "sao10k/l3.3-euryale-70b": {
        id: "sao10k/l3.3-euryale-70b",
        name: "Sao10K: Llama 3.3 Euryale 70B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-12-18",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.65, output: 0.75 },
        limit: { context: 131072, output: 16384 },
      },
      "writer/palmyra-x5": {
        id: "writer/palmyra-x5",
        name: "Writer: Palmyra X5",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2025-04-28",
        last_updated: "2025-04-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 6 },
        limit: { context: 1040000, output: 8192 },
      },
      "perplexity/sonar-reasoning-pro": {
        id: "perplexity/sonar-reasoning-pro",
        name: "Perplexity: Sonar Reasoning Pro",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 128000, output: 25600 },
      },
      "perplexity/sonar": {
        id: "perplexity/sonar",
        name: "Perplexity: Sonar",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 127072, output: 25415 },
      },
      "perplexity/sonar-deep-research": {
        id: "perplexity/sonar-deep-research",
        name: "Perplexity: Sonar Deep Research",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-01-27",
        last_updated: "2025-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 128000, output: 25600 },
      },
      "perplexity/sonar-pro": {
        id: "perplexity/sonar-pro",
        name: "Perplexity: Sonar Pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-01-01",
        last_updated: "2025-09-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8000 },
      },
      "perplexity/sonar-pro-search": {
        id: "perplexity/sonar-pro-search",
        name: "Perplexity: Sonar Pro Search",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-10-31",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, output: 8000 },
      },
      "bytedance-seed/seed-2.0-mini": {
        id: "bytedance-seed/seed-2.0-mini",
        name: "ByteDance Seed: Seed-2.0-Mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-27",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 262144, output: 131072 },
      },
      "bytedance-seed/seed-1.6": {
        id: "bytedance-seed/seed-1.6",
        name: "ByteDance Seed: Seed 1.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 262144, output: 32768 },
      },
      "bytedance-seed/seed-1.6-flash": {
        id: "bytedance-seed/seed-1.6-flash",
        name: "ByteDance Seed: Seed 1.6 Flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 262144, output: 32768 },
      },
      "bytedance-seed/seed-2.0-lite": {
        id: "bytedance-seed/seed-2.0-lite",
        name: "ByteDance Seed: Seed-2.0-Lite",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-10",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 2 },
        limit: { context: 262144, output: 131072 },
      },
      "anthropic/claude-3.5-sonnet": {
        id: "anthropic/claude-3.5-sonnet",
        name: "Anthropic: Claude 3.5 Sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-10-22",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 6, output: 30 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-3.7-sonnet": {
        id: "anthropic/claude-3.7-sonnet",
        name: "Anthropic: Claude 3.7 Sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-19",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4.1": {
        id: "anthropic/claude-opus-4.1",
        name: "Anthropic: Claude Opus 4.1",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-3-haiku": {
        id: "anthropic/claude-3-haiku",
        name: "Anthropic: Claude 3 Haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-03-07",
        last_updated: "2024-03-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1.25, cache_read: 0.03, cache_write: 0.3 },
        limit: { context: 200000, output: 4096 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Anthropic: Claude Sonnet 4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-17",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 1000000, output: 128000 },
      },
      "anthropic/claude-haiku-4.5": {
        id: "anthropic/claude-haiku-4.5",
        name: "Anthropic: Claude Haiku 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-3.5-haiku": {
        id: "anthropic/claude-3.5-haiku",
        name: "Anthropic: Claude 3.5 Haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4, cache_read: 0.08, cache_write: 1 },
        limit: { context: 200000, output: 8192 },
      },
      "anthropic/claude-3.7-sonnet:thinking": {
        id: "anthropic/claude-3.7-sonnet:thinking",
        name: "Anthropic: Claude 3.7 Sonnet (thinking)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-02-19",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4.5": {
        id: "anthropic/claude-opus-4.5",
        name: "Anthropic: Claude Opus 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-11-24",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-opus-4": {
        id: "anthropic/claude-opus-4",
        name: "Anthropic: Claude Opus 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-22",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
      },
      "anthropic/claude-sonnet-4": {
        id: "anthropic/claude-sonnet-4",
        name: "Anthropic: Claude Sonnet 4",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-22",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
      },
      "anthropic/claude-sonnet-4.5": {
        id: "anthropic/claude-sonnet-4.5",
        name: "Anthropic: Claude Sonnet 4.5",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "pdf", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 1000000, output: 64000 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Anthropic: Claude Opus 4.6",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 1000000, output: 128000 },
      },
      "ai21/jamba-large-1.7": {
        id: "ai21/jamba-large-1.7",
        name: "AI21: Jamba Large 1.7",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-09",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 256000, output: 4096 },
      },
      "kilo/auto": {
        id: "kilo/auto",
        name: "Kilo: Auto",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2024-06-01",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 1000000, output: 128000 },
      },
      "kilo/auto-free": {
        id: "kilo/auto-free",
        name: "Deprecated Kilo Auto Free",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 204800, output: 131072 },
      },
      "kilo/auto-small": {
        id: "kilo/auto-small",
        name: "Deprecated Kilo Auto Small",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-15",
        last_updated: "2026-03-15",
        modalities: { input: ["image", "text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 400000, output: 128000 },
      },
      "inflection/inflection-3-productivity": {
        id: "inflection/inflection-3-productivity",
        name: "Inflection: Inflection 3 Productivity",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-10-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 8000, output: 1024 },
      },
      "inflection/inflection-3-pi": {
        id: "inflection/inflection-3-pi",
        name: "Inflection: Inflection 3 Pi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-10-11",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 8000, output: 1024 },
      },
      "nousresearch/hermes-4-405b": {
        id: "nousresearch/hermes-4-405b",
        name: "Nous: Hermes 4 405B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-25",
        last_updated: "2025-08-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 3 },
        limit: { context: 131072, output: 26215 },
      },
      "nousresearch/hermes-3-llama-3.1-70b": {
        id: "nousresearch/hermes-3-llama-3.1-70b",
        name: "Nous: Hermes 3 70B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-18",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 131072, output: 32768 },
      },
      "nousresearch/hermes-4-70b": {
        id: "nousresearch/hermes-4-70b",
        name: "Nous: Hermes 4 70B",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        release_date: "2025-08-25",
        last_updated: "2026-03-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.4, cache_read: 0.055 },
        limit: { context: 131072, output: 131072 },
      },
      "nousresearch/hermes-3-llama-3.1-405b": {
        id: "nousresearch/hermes-3-llama-3.1-405b",
        name: "Nous: Hermes 3 405B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-08-16",
        last_updated: "2024-08-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 1 },
        limit: { context: 131072, output: 16384 },
      },
      "nousresearch/hermes-2-pro-llama-3-8b": {
        id: "nousresearch/hermes-2-pro-llama-3-8b",
        name: "NousResearch: Hermes 2 Pro - Llama-3 8B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        release_date: "2024-05-27",
        last_updated: "2024-06-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.14, output: 0.14 },
        limit: { context: 8192, output: 8192 },
      },
    },
  },
  "nano-gpt": {
    id: "nano-gpt",
    env: ["NANO_GPT_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://nano-gpt.com/api/v1",
    name: "NanoGPT",
    doc: "https://docs.nano-gpt.com",
    models: {
      "exa-research-pro": {
        id: "exa-research-pro",
        name: "Exa (Research Pro)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-04",
        last_updated: "2025-06-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 2.5 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "gemini-2.0-pro-exp-02-05": {
        id: "gemini-2.0-pro-exp-02-05",
        name: "Gemini 2.0 Pro 0205",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-05",
        last_updated: "2025-02-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.989, output: 7.956 },
        limit: { context: 2097152, input: 2097152, output: 8192 },
      },
      "qwen-image": {
        id: "qwen-image",
        name: "Qwen Image",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "Llama-3.3-70B-Shakudo": {
        id: "Llama-3.3-70B-Shakudo",
        name: "Llama 3.3 70B Shakudo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "ernie-4.5-8k-preview": {
        id: "ernie-4.5-8k-preview",
        name: "Ernie 4.5 8k Preview",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.66, output: 2.6 },
        limit: { context: 8000, input: 8000, output: 16384 },
      },
      "claude-3-7-sonnet-thinking:128000": {
        id: "claude-3-7-sonnet-thinking:128000",
        name: "Claude 3.7 Sonnet Thinking (128K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "phi-4-multimodal-instruct": {
        id: "phi-4-multimodal-instruct",
        name: "Phi 4 Multimodal",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.11 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "z-image-turbo": {
        id: "z-image-turbo",
        name: "Z Image Turbo",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-11-27",
        last_updated: "2025-11-27",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "Llama-3.3+(3v3.3)-70B-TenyxChat-DaybreakStorywriter": {
        id: "Llama-3.3+(3v3.3)-70B-TenyxChat-DaybreakStorywriter",
        name: "Llama 3.3+ 70B TenyxChat DaybreakStorywriter",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "mistral-small-31-24b-instruct": {
        id: "mistral-small-31-24b-instruct",
        name: "Mistral Small 31 24b Instruct",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, input: 128000, output: 131072 },
      },
      "Llama-3.3-70B-The-Omega-Directive-Unslop-v2.0": {
        id: "Llama-3.3-70B-The-Omega-Directive-Unslop-v2.0",
        name: "Llama 3.3 70B Omega Directive Unslop v2.0",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Baichuan-M2": {
        id: "Baichuan-M2",
        name: "Baichuan M2 32B Medical",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15.73, output: 15.73 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "doubao-1.5-vision-pro-32k": {
        id: "doubao-1.5-vision-pro-32k",
        name: "Doubao 1.5 Vision Pro 32k",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-22",
        last_updated: "2025-01-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.459, output: 1.377 },
        limit: { context: 32000, input: 32000, output: 8192 },
      },
      "GLM-4.5-Air-Derestricted-Iceblink-v2-ReExtract": {
        id: "GLM-4.5-Air-Derestricted-Iceblink-v2-ReExtract",
        name: "GLM 4.5 Air Derestricted Iceblink v2 ReExtract",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-12",
        last_updated: "2025-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 131072, input: 131072, output: 65536 },
      },
      "claude-opus-4-5-20251101": {
        id: "claude-opus-4-5-20251101",
        name: "Claude 4.5 Opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "Llama-3.3-70B-ArliAI-RPMax-v1.4": {
        id: "Llama-3.3-70B-ArliAI-RPMax-v1.4",
        name: "Llama 3.3 70B RPMax v1.4",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "jamba-large-1.6": {
        id: "jamba-large-1.6",
        name: "Jamba Large 1.6",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.989, output: 7.99 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "Llama-3.3-70B-Aurora-Borealis": {
        id: "Llama-3.3-70B-Aurora-Borealis",
        name: "Llama 3.3 70B Aurora Borealis",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "ernie-x1-32k": {
        id: "ernie-x1-32k",
        name: "Ernie X1 32k",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 1.32 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "Llama-3.3-70B-Magnum-v4-SE": {
        id: "Llama-3.3-70B-Magnum-v4-SE",
        name: "Llama 3.3 70B Magnum v4 SE",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "deepseek-reasoner": {
        id: "deepseek-reasoner",
        name: "DeepSeek Reasoner",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.7 },
        limit: { context: 64000, input: 64000, output: 65536 },
      },
      "KAT-Coder-Pro-V1": {
        id: "KAT-Coder-Pro-V1",
        name: "KAT Coder Pro V1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-10-28",
        last_updated: "2025-10-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "hunyuan-turbos-20250226": {
        id: "hunyuan-turbos-20250226",
        name: "Hunyuan Turbo S",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.187, output: 0.374 },
        limit: { context: 24000, input: 24000, output: 8192 },
      },
      "jamba-large-1.7": {
        id: "jamba-large-1.7",
        name: "Jamba Large 1.7",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.989, output: 7.99 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "mercury-coder-small": {
        id: "mercury-coder-small",
        name: "Mercury Coder Small",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-26",
        last_updated: "2025-02-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-1-5-thinking-pro-vision-250415": {
        id: "doubao-1-5-thinking-pro-vision-250415",
        name: "Doubao 1.5 Thinking Pro Vision",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.4 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "yi-medium-200k": {
        id: "yi-medium-200k",
        name: "Yi Medium 200k",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-03-01",
        last_updated: "2024-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 2.499 },
        limit: { context: 200000, input: 200000, output: 4096 },
      },
      "gemini-2.5-flash-lite-preview-09-2025": {
        id: "gemini-2.5-flash-lite-preview-09-2025",
        name: "Gemini 2.5 Flash Lite Preview (09/2025)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "deepseek-chat-cheaper": {
        id: "deepseek-chat-cheaper",
        name: "DeepSeek V3/Chat Cheaper",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "step-r1-v-mini": {
        id: "step-r1-v-mini",
        name: "Step R1 V Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-08",
        last_updated: "2025-04-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 11 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "gemini-2.5-pro-preview-06-05": {
        id: "gemini-2.5-pro-preview-06-05",
        name: "Gemini 2.5 Pro Preview 0605",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "yi-lightning": {
        id: "yi-lightning",
        name: "Yi Lightning",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-10-16",
        last_updated: "2024-10-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 12000, input: 12000, output: 4096 },
      },
      "deepseek-reasoner-cheaper": {
        id: "deepseek-reasoner-cheaper",
        name: "Deepseek R1 Cheaper",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.7 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "ernie-4.5-turbo-vl-32k": {
        id: "ernie-4.5-turbo-vl-32k",
        name: "Ernie 4.5 Turbo VL 32k",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.495, output: 1.43 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "v0-1.0-md": {
        id: "v0-1.0-md",
        name: "v0 1.0 MD",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-04",
        last_updated: "2025-07-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "Llama-3.3-70B-Ignition-v0.1": {
        id: "Llama-3.3-70B-Ignition-v0.1",
        name: "Llama 3.3 70B Ignition v0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "glm-z1-air": {
        id: "glm-z1-air",
        name: "GLM Z1 Air",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.07, output: 0.07 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "claude-3-5-sonnet-20241022": {
        id: "claude-3-5-sonnet-20241022",
        name: "Claude 3.5 Sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 8192 },
      },
      "Llama-3.3-70B-RAWMAW": {
        id: "Llama-3.3-70B-RAWMAW",
        name: "Llama 3.3 70B RAWMAW",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Magistral-Small-2506": {
        id: "Magistral-Small-2506",
        name: "Magistral Small 2506",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.4 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "ernie-x1-turbo-32k": {
        id: "ernie-x1-turbo-32k",
        name: "Ernie X1 Turbo 32k",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.165, output: 0.66 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "sonar-reasoning-pro": {
        id: "sonar-reasoning-pro",
        name: "Perplexity Reasoning Pro",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 7.9985 },
        limit: { context: 127000, input: 127000, output: 128000 },
      },
      "deepseek-r1-sambanova": {
        id: "deepseek-r1-sambanova",
        name: "DeepSeek R1 Fast",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-20",
        last_updated: "2025-02-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 6.987 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "claude-3-7-sonnet-thinking:1024": {
        id: "claude-3-7-sonnet-thinking:1024",
        name: "Claude 3.7 Sonnet Thinking (1K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "Llama-3.3-70B-Magnum-v4-SE-Cirrus-x1-SLERP": {
        id: "Llama-3.3-70B-Magnum-v4-SE-Cirrus-x1-SLERP",
        name: "Llama 3.3 70B Magnum v4 SE Cirrus x1 SLERP",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-ArliAI-RPMax-v3": {
        id: "Llama-3.3-70B-ArliAI-RPMax-v3",
        name: "Llama 3.3 70B ArliAI RPMax v3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "qwen-long": {
        id: "qwen-long",
        name: "Qwen Long 10M",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-25",
        last_updated: "2025-01-25",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.408 },
        limit: { context: 10000000, input: 10000000, output: 8192 },
      },
      "gemini-2.5-flash-preview-04-17": {
        id: "gemini-2.5-flash-preview-04-17",
        name: "Gemini 2.5 Flash Preview",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "Llama-3.3-70B-Progenitor-V3.3": {
        id: "Llama-3.3-70B-Progenitor-V3.3",
        name: "Llama 3.3 70B Progenitor V3.3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "GLM-4.5-Air-Derestricted-Iceblink-v2": {
        id: "GLM-4.5-Air-Derestricted-Iceblink-v2",
        name: "GLM 4.5 Air Derestricted Iceblink v2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 158600, input: 158600, output: 65536 },
      },
      "gemini-2.5-flash-preview-09-2025": {
        id: "gemini-2.5-flash-preview-09-2025",
        name: "Gemini 2.5 Flash Preview (09/2025)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "study_gpt-chatgpt-4o-latest": {
        id: "study_gpt-chatgpt-4o-latest",
        name: "Study Mode",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 16384 },
      },
      "qwq-32b": {
        id: "qwq-32b",
        name: "Qwen: QwQ 32B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25599999, output: 0.30499999 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "gemini-2.5-pro-preview-05-06": {
        id: "gemini-2.5-pro-preview-05-06",
        name: "Gemini 2.5 Pro Preview 0506",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-06",
        last_updated: "2025-05-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "Llama-3.3-70B-MS-Nevoria": {
        id: "Llama-3.3-70B-MS-Nevoria",
        name: "Llama 3.3 70B MS Nevoria",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-seed-1-6-250615": {
        id: "doubao-seed-1-6-250615",
        name: "Doubao Seed 1.6",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-15",
        last_updated: "2025-06-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.204, output: 0.51 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "gemini-2.5-flash-preview-05-20": {
        id: "gemini-2.5-flash-preview-05-20",
        name: "Gemini 2.5 Flash 0520",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 1048000, input: 1048000, output: 65536 },
      },
      "glm-4": {
        id: "glm-4",
        name: "GLM-4",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-01-16",
        last_updated: "2024-01-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 14.994 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "azure-gpt-4-turbo": {
        id: "azure-gpt-4-turbo",
        name: "Azure gpt-4-turbo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-11-06",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 30.005 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "Llama-3.3-70B-Legion-V2.1": {
        id: "Llama-3.3-70B-Legion-V2.1",
        name: "Llama 3.3 70B Legion V2.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "claude-3-7-sonnet-thinking:32768": {
        id: "claude-3-7-sonnet-thinking:32768",
        name: "Claude 3.7 Sonnet Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-07-15",
        last_updated: "2025-07-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "gemini-2.5-flash": {
        id: "gemini-2.5-flash",
        name: "Gemini 2.5 Flash",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "asi1-mini": {
        id: "asi1-mini",
        name: "ASI1 Mini",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "gemini-exp-1206": {
        id: "gemini-exp-1206",
        name: "Gemini 2.0 Pro 1206",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.258, output: 4.998 },
        limit: { context: 2097152, input: 2097152, output: 8192 },
      },
      "qwen-max": {
        id: "qwen-max",
        name: "Qwen 2.5 Max",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-04-03",
        last_updated: "2024-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5997, output: 6.392 },
        limit: { context: 32000, input: 32000, output: 8192 },
      },
      brave: {
        id: "brave",
        name: "Brave (Answers)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-03-02",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 5 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "doubao-1-5-thinking-pro-250415": {
        id: "doubao-1-5-thinking-pro-250415",
        name: "Doubao 1.5 Thinking Pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.4 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "claude-sonnet-4-thinking:64000": {
        id: "claude-sonnet-4-thinking:64000",
        name: "Claude 4 Sonnet Thinking (64K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "GLM-4.5-Air-Derestricted-Steam-ReExtract": {
        id: "GLM-4.5-Air-Derestricted-Steam-ReExtract",
        name: "GLM 4.5 Air Derestricted Steam ReExtract",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-12",
        last_updated: "2025-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 131072, input: 131072, output: 65536 },
      },
      "kimi-k2-instruct-fast": {
        id: "kimi-k2-instruct-fast",
        name: "Kimi K2 0711 Fast",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-15",
        last_updated: "2025-07-15",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 2 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "Llama-3.3-70B-GeneticLemonade-Opus": {
        id: "Llama-3.3-70B-GeneticLemonade-Opus",
        name: "Llama 3.3 70B GeneticLemonade Opus",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Gemma-3-27B-Big-Tiger-v3": {
        id: "Gemma-3-27B-Big-Tiger-v3",
        name: "Gemma 3 27B Big Tiger v3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-seed-2-0-mini-260215": {
        id: "doubao-seed-2-0-mini-260215",
        name: "Doubao Seed 2.0 Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0493, output: 0.4845 },
        limit: { context: 256000, input: 256000, output: 32000 },
      },
      "claude-sonnet-4-5-20250929-thinking": {
        id: "claude-sonnet-4-5-20250929-thinking",
        name: "Claude Sonnet 4.5 Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "glm-4-air": {
        id: "glm-4-air",
        name: "GLM-4 Air",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-05",
        last_updated: "2024-06-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "GLM-4.5-Air-Derestricted-Iceblink-ReExtract": {
        id: "GLM-4.5-Air-Derestricted-Iceblink-ReExtract",
        name: "GLM 4.5 Air Derestricted Iceblink ReExtract",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-12",
        last_updated: "2025-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 131072, input: 131072, output: 98304 },
      },
      "gemini-2.0-pro-reasoner": {
        id: "gemini-2.0-pro-reasoner",
        name: "Gemini 2.0 Pro Reasoner",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-05",
        last_updated: "2025-02-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.292, output: 4.998 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "gemini-2.0-flash-001": {
        id: "gemini-2.0-flash-001",
        name: "Gemini 2.0 Flash",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.408 },
        limit: { context: 1000000, input: 1000000, output: 8192 },
      },
      "glm-4-plus": {
        id: "glm-4-plus",
        name: "GLM-4 Plus",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-08-01",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 7.497, output: 7.497 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "gemini-2.0-flash-exp-image-generation": {
        id: "gemini-2.0-flash-exp-image-generation",
        name: "Gemini Text + Image",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 32767, input: 32767, output: 8192 },
      },
      "GLM-4.5-Air-Derestricted": {
        id: "GLM-4.5-Air-Derestricted",
        name: "GLM 4.5 Air Derestricted",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 202600, input: 202600, output: 98304 },
      },
      "gemini-2.0-flash-thinking-exp-1219": {
        id: "gemini-2.0-flash-thinking-exp-1219",
        name: "Gemini 2.0 Flash Thinking 1219",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-19",
        last_updated: "2024-12-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.408 },
        limit: { context: 32767, input: 32767, output: 8192 },
      },
      "glm-4.1v-thinking-flashx": {
        id: "glm-4.1v-thinking-flashx",
        name: "GLM 4.1V Thinking FlashX",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 64000, input: 64000, output: 8192 },
      },
      "Llama-3.3-70B-StrawberryLemonade-v1.0": {
        id: "Llama-3.3-70B-StrawberryLemonade-v1.0",
        name: "Llama 3.3 70B StrawberryLemonade v1.0",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-Fallen-v1": {
        id: "Llama-3.3-70B-Fallen-v1",
        name: "Llama 3.3 70B Fallen v1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Gemma-3-27B-Nidum-Uncensored": {
        id: "Gemma-3-27B-Nidum-Uncensored",
        name: "Gemma 3 27B Nidum Uncensored",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 96000 },
      },
      "Llama-3.3-70B-Electranova-v1.0": {
        id: "Llama-3.3-70B-Electranova-v1.0",
        name: "Llama 3.3 70B Electranova v1.0",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "grok-3-fast-beta": {
        id: "grok-3-fast-beta",
        name: "Grok 3 Fast Beta",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25 },
        limit: { context: 131072, input: 131072, output: 131072 },
      },
      "qwen-turbo": {
        id: "qwen-turbo",
        name: "Qwen Turbo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04998, output: 0.2006 },
        limit: { context: 1000000, input: 1000000, output: 8192 },
      },
      "Llama-3.3-70B-Sapphira-0.1": {
        id: "Llama-3.3-70B-Sapphira-0.1",
        name: "Llama 3.3 70B Sapphira 0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "gemini-2.5-pro-preview-03-25": {
        id: "gemini-2.5-pro-preview-03-25",
        name: "Gemini 2.5 Pro Preview 0325",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "step-2-16k-exp": {
        id: "step-2-16k-exp",
        name: "Step-2 16k Exp",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-05",
        last_updated: "2024-07-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 7.004, output: 19.992 },
        limit: { context: 16000, input: 16000, output: 8192 },
      },
      chroma: {
        id: "chroma",
        name: "Chroma",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-08-12",
        last_updated: "2025-08-12",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      sonar: {
        id: "sonar",
        name: "Perplexity Simple",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.003, output: 1.003 },
        limit: { context: 127000, input: 127000, output: 128000 },
      },
      fastgpt: {
        id: "fastgpt",
        name: "Web Answer",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-08-01",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 7.5, output: 7.5 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "claude-sonnet-4-thinking:8192": {
        id: "claude-sonnet-4-thinking:8192",
        name: "Claude 4 Sonnet Thinking (8K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "Llama-3.3-70B-Electra-R1": {
        id: "Llama-3.3-70B-Electra-R1",
        name: "Llama 3.3 70B Electra R1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-Fallen-R1-v1": {
        id: "Llama-3.3-70B-Fallen-R1-v1",
        name: "Llama 3.3 70B Fallen R1 v1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Gemma-3-27B-it-Abliterated": {
        id: "Gemma-3-27B-it-Abliterated",
        name: "Gemma 3 27B IT Abliterated",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-03",
        last_updated: "2025-07-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.42, output: 0.42 },
        limit: { context: 32768, input: 32768, output: 96000 },
      },
      "doubao-1.5-pro-256k": {
        id: "doubao-1.5-pro-256k",
        name: "Doubao 1.5 Pro 256k",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-12",
        last_updated: "2025-03-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.799, output: 1.445 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "claude-opus-4-thinking": {
        id: "claude-opus-4-thinking",
        name: "Claude 4 Opus Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-07-15",
        last_updated: "2025-07-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek R1",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.7 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "doubao-1-5-thinking-vision-pro-250428": {
        id: "doubao-1-5-thinking-vision-pro-250428",
        name: "Doubao 1.5 Thinking Vision Pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-15",
        last_updated: "2025-05-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.55, output: 1.43 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "doubao-seed-2-0-lite-260215": {
        id: "doubao-seed-2-0-lite-260215",
        name: "Doubao Seed 2.0 Lite",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1462, output: 0.8738 },
        limit: { context: 256000, input: 256000, output: 32000 },
      },
      "claude-opus-4-20250514": {
        id: "claude-opus-4-20250514",
        name: "Claude 4 Opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-14",
        last_updated: "2025-05-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "qwen25-vl-72b-instruct": {
        id: "qwen25-vl-72b-instruct",
        name: "Qwen25 VL 72b",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-10",
        last_updated: "2025-05-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.69989, output: 0.69989 },
        limit: { context: 32000, input: 32000, output: 32768 },
      },
      "azure-gpt-4o": {
        id: "azure-gpt-4o",
        name: "Azure gpt-4o",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 9.996 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "sonar-deep-research": {
        id: "sonar-deep-research",
        name: "Perplexity Deep Research",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-25",
        last_updated: "2025-02-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.4, output: 13.6 },
        limit: { context: 60000, input: 60000, output: 128000 },
      },
      "ernie-4.5-turbo-128k": {
        id: "ernie-4.5-turbo-128k",
        name: "Ernie 4.5 Turbo 128k",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.132, output: 0.55 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "azure-o1": {
        id: "azure-o1",
        name: "Azure o1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-17",
        last_updated: "2024-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 59.993 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "gemini-3-pro-preview-thinking": {
        id: "gemini-3-pro-preview-thinking",
        name: "Gemini 3 Pro Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "grok-3-mini-beta": {
        id: "grok-3-mini-beta",
        name: "Grok 3 Mini Beta",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5 },
        limit: { context: 131072, input: 131072, output: 131072 },
      },
      "claude-opus-4-1-thinking": {
        id: "claude-opus-4-1-thinking",
        name: "Claude 4.1 Opus Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "gemini-2.5-flash-nothinking": {
        id: "gemini-2.5-flash-nothinking",
        name: "Gemini 2.5 Flash (No Thinking)",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "doubao-seed-1-8-251215": {
        id: "doubao-seed-1-8-251215",
        name: "Doubao Seed 1.8",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-15",
        last_updated: "2025-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.612, output: 6.12 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "claude-3-7-sonnet-thinking:8192": {
        id: "claude-3-7-sonnet-thinking:8192",
        name: "Claude 3.7 Sonnet Thinking (8K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "qvq-max": {
        id: "qvq-max",
        name: "Qwen: QvQ Max",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-28",
        last_updated: "2025-03-28",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.4, output: 5.3 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "claude-sonnet-4-5-20250929": {
        id: "claude-sonnet-4-5-20250929",
        name: "Claude Sonnet 4.5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "auto-model-basic": {
        id: "auto-model-basic",
        name: "Auto model (Basic)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 1000000, input: 1000000, output: 1000000 },
      },
      "Llama-3.3-70B-The-Omega-Directive-Unslop-v2.1": {
        id: "Llama-3.3-70B-The-Omega-Directive-Unslop-v2.1",
        name: "Llama 3.3 70B Omega Directive Unslop v2.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "claude-3-5-haiku-20241022": {
        id: "claude-3-5-haiku-20241022",
        name: "Claude 3.5 Haiku",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8, output: 4 },
        limit: { context: 200000, input: 200000, output: 8192 },
      },
      "glm-4-plus-0111": {
        id: "glm-4-plus-0111",
        name: "GLM 4 Plus 0111",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 9.996 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "Llama-3.3-70B-Bigger-Body": {
        id: "Llama-3.3-70B-Bigger-Body",
        name: "Llama 3.3 70B Bigger Body",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "gemini-2.5-flash-lite": {
        id: "gemini-2.5-flash-lite",
        name: "Gemini 2.5 Flash Lite",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "KAT-Coder-Air-V1": {
        id: "KAT-Coder-Air-V1",
        name: "KAT Coder Air V1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-10-28",
        last_updated: "2025-10-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.2 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "MiniMax-M2": {
        id: "MiniMax-M2",
        name: "MiniMax M2",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-10-25",
        last_updated: "2025-10-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 1.53 },
        limit: { context: 200000, input: 200000, output: 131072 },
      },
      "doubao-seed-1-6-flash-250615": {
        id: "doubao-seed-1-6-flash-250615",
        name: "Doubao Seed 1.6 Flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-15",
        last_updated: "2025-06-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0374, output: 0.374 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "glm-4-air-0111": {
        id: "glm-4-air-0111",
        name: "GLM 4 Air 0111",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-11",
        last_updated: "2025-01-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1394, output: 0.1394 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "phi-4-mini-instruct": {
        id: "phi-4-mini-instruct",
        name: "Phi 4 Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "jamba-mini-1.6": {
        id: "jamba-mini-1.6",
        name: "Jamba Mini 1.6",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1989, output: 0.408 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "v0-1.5-md": {
        id: "v0-1.5-md",
        name: "v0 1.5 MD",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-04",
        last_updated: "2025-07-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "command-a-reasoning-08-2025": {
        id: "command-a-reasoning-08-2025",
        name: "Cohere Command A (08/2025)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-22",
        last_updated: "2025-08-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, input: 256000, output: 8192 },
      },
      "kimi-thinking-preview": {
        id: "kimi-thinking-preview",
        name: "Kimi Thinking Preview",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 31.46, output: 31.46 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "claude-3-5-sonnet-20240620": {
        id: "claude-3-5-sonnet-20240620",
        name: "Claude 3.5 Sonnet Old",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-06-20",
        last_updated: "2024-06-20",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 8192 },
      },
      "deepseek-v3-0324": {
        id: "deepseek-v3-0324",
        name: "DeepSeek Chat 0324",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "claude-sonnet-4-thinking:1024": {
        id: "claude-sonnet-4-thinking:1024",
        name: "Claude 4 Sonnet Thinking (1K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "Llama-3.3-70B-Incandescent-Malevolence": {
        id: "Llama-3.3-70B-Incandescent-Malevolence",
        name: "Llama 3.3 70B Incandescent Malevolence",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-1.5-pro-32k": {
        id: "doubao-1.5-pro-32k",
        name: "Doubao 1.5 Pro 32k",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-22",
        last_updated: "2025-01-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1343, output: 0.3349 },
        limit: { context: 32000, input: 32000, output: 8192 },
      },
      "Llama-3.3-70B-Forgotten-Safeword-3.6": {
        id: "Llama-3.3-70B-Forgotten-Safeword-3.6",
        name: "Llama 3.3 70B Forgotten Safeword 3.6",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "step-2-mini": {
        id: "step-2-mini",
        name: "Step-2 Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-05",
        last_updated: "2024-07-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.408 },
        limit: { context: 8000, input: 8000, output: 4096 },
      },
      "Mistral-Nemo-12B-Instruct-2407": {
        id: "Mistral-Nemo-12B-Instruct-2407",
        name: "Mistral Nemo 12B Instruct 2407",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.01, output: 0.01 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Baichuan4-Turbo": {
        id: "Baichuan4-Turbo",
        name: "Baichuan 4 Turbo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.42, output: 2.42 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "ernie-5.0-thinking-latest": {
        id: "ernie-5.0-thinking-latest",
        name: "Ernie 5.0 Thinking",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 2 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "qwen3-30b-a3b-instruct-2507": {
        id: "qwen3-30b-a3b-instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-20",
        last_updated: "2025-02-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "Gemma-3-27B-Glitter": {
        id: "Gemma-3-27B-Glitter",
        name: "Gemma 3 27B Glitter",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "claude-opus-4-thinking:32000": {
        id: "claude-opus-4-thinking:32000",
        name: "Claude 4 Opus Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "auto-model-premium": {
        id: "auto-model-premium",
        name: "Auto model (Premium)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 1000000, input: 1000000, output: 1000000 },
      },
      "claude-3-7-sonnet-20250219": {
        id: "claude-3-7-sonnet-20250219",
        name: "Claude 3.7 Sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 16000 },
      },
      "gemini-2.0-flash-thinking-exp-01-21": {
        id: "gemini-2.0-flash-thinking-exp-01-21",
        name: "Gemini 2.0 Flash Thinking 0121",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-21",
        last_updated: "2025-01-21",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 1.003 },
        limit: { context: 1000000, input: 1000000, output: 8192 },
      },
      "claude-sonnet-4-thinking:32768": {
        id: "claude-sonnet-4-thinking:32768",
        name: "Claude 4 Sonnet Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "claude-opus-4-1-thinking:32768": {
        id: "claude-opus-4-1-thinking:32768",
        name: "Claude 4.1 Opus Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "jamba-large": {
        id: "jamba-large",
        name: "Jamba Large",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.989, output: 7.99 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3 Coder 30B A3B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "Llama-3.3-70B-MiraiFanfare": {
        id: "Llama-3.3-70B-MiraiFanfare",
        name: "Llama 3.3 70b Mirai Fanfare",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.493, output: 0.493 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "venice-uncensored:web": {
        id: "venice-uncensored:web",
        name: "Venice Uncensored Web",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-01",
        last_updated: "2024-05-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 80000, input: 80000, output: 16384 },
      },
      "qwen3-max-2026-01-23": {
        id: "qwen3-max-2026-01-23",
        name: "Qwen3 Max 2026-01-23",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-26",
        last_updated: "2026-01-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2002, output: 6.001 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "gemini-2.5-flash-lite-preview-09-2025-thinking": {
        id: "gemini-2.5-flash-lite-preview-09-2025-thinking",
        name: "Gemini 2.5 Flash Lite Preview (09/2025) – Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "ernie-x1-32k-preview": {
        id: "ernie-x1-32k-preview",
        name: "Ernie X1 32k",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-03",
        last_updated: "2025-04-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 1.32 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "glm-z1-airx": {
        id: "glm-z1-airx",
        name: "GLM Z1 AirX",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 32000, input: 32000, output: 16384 },
      },
      "ernie-x1.1-preview": {
        id: "ernie-x1.1-preview",
        name: "ERNIE X1.1",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-10",
        last_updated: "2025-09-10",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 64000, input: 64000, output: 8192 },
      },
      "claude-haiku-4-5-20251001": {
        id: "claude-haiku-4-5-20251001",
        name: "Claude Haiku 4.5",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-10-15",
        last_updated: "2025-10-15",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "exa-research": {
        id: "exa-research",
        name: "Exa (Research)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-04",
        last_updated: "2025-06-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 2.5 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "Llama-3.3-70B-Mokume-Gane-R1": {
        id: "Llama-3.3-70B-Mokume-Gane-R1",
        name: "Llama 3.3 70B Mokume Gane R1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "glm-4.1v-thinking-flash": {
        id: "glm-4.1v-thinking-flash",
        name: "GLM 4.1V Thinking Flash",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 64000, input: 64000, output: 8192 },
      },
      "Llama-3.3-70B-GeneticLemonade-Unleashed-v3": {
        id: "Llama-3.3-70B-GeneticLemonade-Unleashed-v3",
        name: "Llama 3.3 70B GeneticLemonade Unleashed v3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-Predatorial-Extasy": {
        id: "Llama-3.3-70B-Predatorial-Extasy",
        name: "Llama 3.3 70B Predatorial Extasy",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "deepseek-chat": {
        id: "deepseek-chat",
        name: "DeepSeek V3/Deepseek Chat",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "glm-4-airx": {
        id: "glm-4-airx",
        name: "GLM-4 AirX",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-05",
        last_updated: "2024-06-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.006 },
        limit: { context: 8000, input: 8000, output: 4096 },
      },
      "gemini-2.5-flash-lite-preview-06-17": {
        id: "gemini-2.5-flash-lite-preview-06-17",
        name: "Gemini 2.5 Flash Lite Preview",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-17",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "doubao-seed-1-6-thinking-250615": {
        id: "doubao-seed-1-6-thinking-250615",
        name: "Doubao Seed 1.6 Thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-15",
        last_updated: "2025-06-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.204, output: 2.04 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "claude-3-7-sonnet-thinking": {
        id: "claude-3-7-sonnet-thinking",
        name: "Claude 3.7 Sonnet Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 16000 },
      },
      "GLM-4.5-Air-Derestricted-Steam": {
        id: "GLM-4.5-Air-Derestricted-Steam",
        name: "GLM 4.5 Air Derestricted Steam",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 220600, input: 220600, output: 65536 },
      },
      "gemini-3-pro-image-preview": {
        id: "gemini-3-pro-image-preview",
        name: "Gemini 3 Pro Image",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "MiniMax-M1": {
        id: "MiniMax-M1",
        name: "MiniMax M1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-16",
        last_updated: "2025-06-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1394, output: 1.3328 },
        limit: { context: 1000000, input: 1000000, output: 131072 },
      },
      "ernie-5.0-thinking-preview": {
        id: "ernie-5.0-thinking-preview",
        name: "Ernie 5.0 Thinking Preview",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 2 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "claude-opus-4-thinking:1024": {
        id: "claude-opus-4-thinking:1024",
        name: "Claude 4 Opus Thinking (1K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "Llama-3.3-70B-Strawberrylemonade-v1.2": {
        id: "Llama-3.3-70B-Strawberrylemonade-v1.2",
        name: "Llama 3.3 70B StrawberryLemonade v1.2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-Vulpecula-R1": {
        id: "Llama-3.3-70B-Vulpecula-R1",
        name: "Llama 3.3 70B Vulpecula R1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "GLM-4.6-Derestricted-v5": {
        id: "GLM-4.6-Derestricted-v5",
        name: "GLM 4.6 Derestricted v5",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.5 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "Llama-3.3-70B-Cirrus-x1": {
        id: "Llama-3.3-70B-Cirrus-x1",
        name: "Llama 3.3 70B Cirrus x1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Llama-3.3-70B-ArliAI-RPMax-v2": {
        id: "Llama-3.3-70B-ArliAI-RPMax-v2",
        name: "Llama 3.3 70B ArliAI RPMax v2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-seed-code-preview-latest": {
        id: "doubao-seed-code-preview-latest",
        name: "Doubao Seed Code Preview",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "sonar-pro": {
        id: "sonar-pro",
        name: "Perplexity Pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-19",
        last_updated: "2025-02-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 128000 },
      },
      "Llama-3.3+(3.1v3.3)-70B-New-Dawn-v1.1": {
        id: "Llama-3.3+(3.1v3.3)-70B-New-Dawn-v1.1",
        name: "Llama 3.3+ 70B New Dawn v1.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "qwen3-vl-235b-a22b-thinking": {
        id: "qwen3-vl-235b-a22b-thinking",
        name: "Qwen3 VL 235B A22B Thinking",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 6 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "claude-sonnet-4-thinking": {
        id: "claude-sonnet-4-thinking",
        name: "Claude 4 Sonnet Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "Qwen2.5-32B-EVA-v0.2": {
        id: "Qwen2.5-32B-EVA-v0.2",
        name: "Qwen 2.5 32b EVA",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-09-01",
        last_updated: "2024-09-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.493, output: 0.493 },
        limit: { context: 24576, input: 24576, output: 8192 },
      },
      "v0-1.5-lg": {
        id: "v0-1.5-lg",
        name: "v0 1.5 LG",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-04",
        last_updated: "2025-07-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75 },
        limit: { context: 1000000, input: 1000000, output: 64000 },
      },
      "Llama-3.3-70B-Cu-Mai-R1": {
        id: "Llama-3.3-70B-Cu-Mai-R1",
        name: "Llama 3.3 70B Cu Mai R1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      hidream: {
        id: "hidream",
        name: "Hidream",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2024-01-01",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["image"] },
        open_weights: false,
        limit: { context: 0, output: 0 },
      },
      "auto-model": {
        id: "auto-model",
        name: "Auto model",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 1000000, input: 1000000, output: 1000000 },
      },
      "jamba-mini-1.7": {
        id: "jamba-mini-1.7",
        name: "Jamba Mini 1.7",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1989, output: 0.408 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "doubao-seed-2-0-pro-260215": {
        id: "doubao-seed-2-0-pro-260215",
        name: "Doubao Seed 2.0 Pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.782, output: 3.876 },
        limit: { context: 256000, input: 256000, output: 128000 },
      },
      "Llama-3.3-70B-Nova": {
        id: "Llama-3.3-70B-Nova",
        name: "Llama 3.3 70B Nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "gemini-2.5-flash-preview-09-2025-thinking": {
        id: "gemini-2.5-flash-preview-09-2025-thinking",
        name: "Gemini 2.5 Flash Preview (09/2025) – Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 2.5 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "Llama-3.3-70B-Sapphira-0.2": {
        id: "Llama-3.3-70B-Sapphira-0.2",
        name: "Llama 3.3 70B Sapphira 0.2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "auto-model-standard": {
        id: "auto-model-standard",
        name: "Auto model (Standard)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-06-01",
        last_updated: "2024-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 1000000, input: 1000000, output: 1000000 },
      },
      "grok-3-mini-fast-beta": {
        id: "grok-3-mini-fast-beta",
        name: "Grok 3 Mini Fast Beta",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 4 },
        limit: { context: 131072, input: 131072, output: 131072 },
      },
      "qwen-plus": {
        id: "qwen-plus",
        name: "Qwen Plus",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3995, output: 1.2002 },
        limit: { context: 995904, input: 995904, output: 32768 },
      },
      "Meta-Llama-3-1-8B-Instruct-FP8": {
        id: "Meta-Llama-3-1-8B-Instruct-FP8",
        name: "Llama 3.1 8B (decentralized)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.03 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "step-3": {
        id: "step-3",
        name: "Step-3",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-31",
        last_updated: "2025-07-31",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2499, output: 0.6494 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "Gemma-3-27B-it": {
        id: "Gemma-3-27B-it",
        name: "Gemma 3 27B IT",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "universal-summarizer": {
        id: "universal-summarizer",
        name: "Universal Summarizer",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-05-01",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 30 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      deepclaude: {
        id: "deepclaude",
        name: "DeepClaude",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-01",
        last_updated: "2025-02-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "brave-pro": {
        id: "brave-pro",
        name: "Brave (Pro)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-03-02",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 5 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "gemini-3-pro-preview": {
        id: "gemini-3-pro-preview",
        name: "Gemini 3 Pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 12 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "claude-3-7-sonnet-reasoner": {
        id: "claude-3-7-sonnet-reasoner",
        name: "Claude 3.7 Sonnet Reasoner",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-29",
        last_updated: "2025-03-29",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "gemini-2.0-flash-lite": {
        id: "gemini-2.0-flash-lite",
        name: "Gemini 2.0 Flash Lite",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0748, output: 0.306 },
        limit: { context: 1000000, input: 1000000, output: 8192 },
      },
      "claude-opus-4-thinking:8192": {
        id: "claude-opus-4-thinking:8192",
        name: "Claude 4 Opus Thinking (8K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "claude-opus-4-thinking:32768": {
        id: "claude-opus-4-thinking:32768",
        name: "Claude 4 Opus Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "glm-zero-preview": {
        id: "glm-zero-preview",
        name: "GLM Zero Preview",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.802, output: 1.802 },
        limit: { context: 8000, input: 8000, output: 4096 },
      },
      "azure-gpt-4o-mini": {
        id: "azure-gpt-4o-mini",
        name: "Azure gpt-4o-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1496, output: 0.595 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "deepseek-math-v2": {
        id: "deepseek-math-v2",
        name: "DeepSeek Math V2",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.2 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "glm-4-long": {
        id: "glm-4-long",
        name: "GLM-4 Long",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-08-01",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 1000000, input: 1000000, output: 4096 },
      },
      "GLM-4.5-Air-Derestricted-Iceblink": {
        id: "GLM-4.5-Air-Derestricted-Iceblink",
        name: "GLM 4.5 Air Derestricted Iceblink",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 131072, input: 131072, output: 98304 },
      },
      "claude-opus-4-1-thinking:1024": {
        id: "claude-opus-4-1-thinking:1024",
        name: "Claude 4.1 Opus Thinking (1K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "qwen3-vl-235b-a22b-instruct-original": {
        id: "qwen3-vl-235b-a22b-instruct-original",
        name: "Qwen3 VL 235B A22B Instruct Original",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.2 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "Llama-3.3+(3.1v3.3)-70B-Hanami-x1": {
        id: "Llama-3.3+(3.1v3.3)-70B-Hanami-x1",
        name: "Llama 3.3+ 70B Hanami x1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "claude-opus-4-1-thinking:8192": {
        id: "claude-opus-4-1-thinking:8192",
        name: "Claude 4.1 Opus Thinking (8K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "Llama-3.3-70B-Damascus-R1": {
        id: "Llama-3.3-70B-Damascus-R1",
        name: "Damascus R1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "Gemma-3-27B-ArliAI-RPMax-v3": {
        id: "Gemma-3-27B-ArliAI-RPMax-v3",
        name: "Gemma 3 27B RPMax v3",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-03",
        last_updated: "2025-07-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "gemini-2.5-flash-preview-05-20:thinking": {
        id: "gemini-2.5-flash-preview-05-20:thinking",
        name: "Gemini 2.5 Flash 0520 Thinking",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-20",
        last_updated: "2025-05-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 3.5 },
        limit: { context: 1048000, input: 1048000, output: 65536 },
      },
      "claude-sonnet-4-20250514": {
        id: "claude-sonnet-4-20250514",
        name: "Claude 4 Sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.994 },
        limit: { context: 200000, input: 200000, output: 64000 },
      },
      "claude-opus-4-1-thinking:32000": {
        id: "claude-opus-4-1-thinking:32000",
        name: "Claude 4.1 Opus Thinking (32K)",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "sarvan-medium": {
        id: "sarvan-medium",
        name: "Sarvam Medium",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.75 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "Llama-3.3-70B-Anthrobomination": {
        id: "Llama-3.3-70B-Anthrobomination",
        name: "Llama 3.3 70B Anthrobomination",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "venice-uncensored": {
        id: "venice-uncensored",
        name: "Venice Uncensored",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-24",
        last_updated: "2025-02-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "Baichuan4-Air": {
        id: "Baichuan4-Air",
        name: "Baichuan 4 Air",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.157, output: 0.157 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "jamba-mini": {
        id: "jamba-mini",
        name: "Jamba Mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1989, output: 0.408 },
        limit: { context: 256000, input: 256000, output: 4096 },
      },
      "KAT-Coder-Exp-72B-1010": {
        id: "KAT-Coder-Exp-72B-1010",
        name: "KAT Coder Exp 72B 1010",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-10-28",
        last_updated: "2025-10-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.2 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "gemini-2.5-flash-preview-04-17:thinking": {
        id: "gemini-2.5-flash-preview-04-17:thinking",
        name: "Gemini 2.5 Flash Preview Thinking",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-17",
        last_updated: "2025-04-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 3.5 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "brave-research": {
        id: "brave-research",
        name: "Brave (Research)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-03-02",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 5 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "claude-opus-4-1-20250805": {
        id: "claude-opus-4-1-20250805",
        name: "Claude 4.1 Opus",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.994, output: 75.004 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "Llama-3.3-70B-Argunaut-1-SFT": {
        id: "Llama-3.3-70B-Argunaut-1-SFT",
        name: "Llama 3.3 70B Argunaut 1 SFT",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "claude-opus-4-5-20251101:thinking": {
        id: "claude-opus-4-5-20251101:thinking",
        name: "Claude 4.5 Opus Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 200000, input: 200000, output: 32000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-05",
        last_updated: "2025-06-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "grok-3-beta": {
        id: "grok-3-beta",
        name: "Grok 3 Beta",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 131072, input: 131072, output: 131072 },
      },
      "azure-o3-mini": {
        id: "azure-o3-mini",
        name: "Azure o3-mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.088, output: 4.3996 },
        limit: { context: 200000, input: 200000, output: 65536 },
      },
      "QwQ-32B-ArliAI-RpR-v1": {
        id: "QwQ-32B-ArliAI-RpR-v1",
        name: "QwQ 32b Arli V1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "Llama-3.3-70B-Forgotten-Abomination-v5.0": {
        id: "Llama-3.3-70B-Forgotten-Abomination-v5.0",
        name: "Llama 3.3 70B Forgotten Abomination v5.0",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "doubao-seed-2-0-code-preview-260215": {
        id: "doubao-seed-2-0-code-preview-260215",
        name: "Doubao Seed 2.0 Code Preview",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.782, output: 3.893 },
        limit: { context: 256000, input: 256000, output: 128000 },
      },
      "Llama-3.3-70B-Mhnnn-x1": {
        id: "Llama-3.3-70B-Mhnnn-x1",
        name: "Llama 3.3 70B Mhnnn x1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "hunyuan-t1-latest": {
        id: "hunyuan-t1-latest",
        name: "Hunyuan T1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-22",
        last_updated: "2025-03-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 0.66 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "Gemma-3-27B-CardProjector-v4": {
        id: "Gemma-3-27B-CardProjector-v4",
        name: "Gemma 3 27B CardProjector v4",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "glm-4-flash": {
        id: "glm-4-flash",
        name: "GLM-4 Flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-08-01",
        last_updated: "2024-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1003 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "learnlm-1.5-pro-experimental": {
        id: "learnlm-1.5-pro-experimental",
        name: "Gemini LearnLM Experimental",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-14",
        last_updated: "2024-05-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.502, output: 10.506 },
        limit: { context: 32767, input: 32767, output: 8192 },
      },
      "Llama-3.3-70B-Dark-Ages-v0.1": {
        id: "Llama-3.3-70B-Dark-Ages-v0.1",
        name: "Llama 3.3 70B Dark Ages v0.1",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "yi-large": {
        id: "yi-large",
        name: "Yi Large",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.196, output: 3.196 },
        limit: { context: 32000, input: 32000, output: 4096 },
      },
      "exa-answer": {
        id: "exa-answer",
        name: "Exa (Answer)",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-04",
        last_updated: "2025-06-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 2.5 },
        limit: { context: 4096, input: 4096, output: 4096 },
      },
      "gemini-2.5-pro-exp-03-25": {
        id: "gemini-2.5-pro-exp-03-25",
        name: "Gemini 2.5 Pro Experimental 0325",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "abacusai/Dracarys-72B-Instruct": {
        id: "abacusai/Dracarys-72B-Instruct",
        name: "Llama 3.1 70B Dracarys 2",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-02",
        last_updated: "2025-08-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "allenai/olmo-3-32b-think": {
        id: "allenai/olmo-3-32b-think",
        name: "Olmo 3 32B Think",
        family: "allenai",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-01",
        last_updated: "2025-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.44999999999999996 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "allenai/molmo-2-8b": {
        id: "allenai/molmo-2-8b",
        name: "Molmo 2 8B",
        family: "allenai",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 36864, input: 36864, output: 36864 },
      },
      "allenai/olmo-3.1-32b-instruct": {
        id: "allenai/olmo-3.1-32b-instruct",
        name: "Olmo 3.1 32B Instruct",
        family: "allenai",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-25",
        last_updated: "2026-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.6 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "allenai/olmo-3.1-32b-think": {
        id: "allenai/olmo-3.1-32b-think",
        name: "Olmo 3.1 32B Think",
        family: "allenai",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-25",
        last_updated: "2026-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.5 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "nex-agi/deepseek-v3.1-nex-n1": {
        id: "nex-agi/deepseek-v3.1-nex-n1",
        name: "DeepSeek V3.1 Nex N1",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-10",
        last_updated: "2025-12-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "Envoid 2/Llama-3.05-Nemotron-Tenyxchat-Storybreaker-70B": {
        id: "Envoid 2/Llama-3.05-Nemotron-Tenyxchat-Storybreaker-70B",
        name: "Nemotron Tenyxchat Storybreaker 70b",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "Envoid 2/Llama-3.05-NT-Storybreaker-Ministral-70B": {
        id: "Envoid 2/Llama-3.05-NT-Storybreaker-Ministral-70B",
        name: "Llama 3.05 Storybreaker Ministral 70b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "zai-org/glm-5": {
        id: "zai-org/glm-5",
        name: "GLM 5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 2.55 },
        limit: { context: 200000, input: 200000, output: 128000 },
      },
      "zai-org/glm-4.7-flash": {
        id: "zai-org/glm-4.7-flash",
        name: "GLM 4.7 Flash",
        family: "glm-flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.4 },
        limit: { context: 200000, input: 200000, output: 128000 },
      },
      "zai-org/glm-4.7": {
        id: "zai-org/glm-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.8 },
        limit: { context: 200000, input: 200000, output: 128000 },
      },
      "zai-org/glm-5:thinking": {
        id: "zai-org/glm-5:thinking",
        name: "GLM 5 Thinking",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 2.55 },
        limit: { context: 200000, input: 200000, output: 128000 },
      },
      "nvidia/Llama-3.1-Nemotron-70B-Instruct-HF": {
        id: "nvidia/Llama-3.1-Nemotron-70B-Instruct-HF",
        name: "Nvidia Nemotron 70b",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.357, output: 0.408 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "nvidia/Llama-3.3-Nemotron-Super-49B-v1": {
        id: "nvidia/Llama-3.3-Nemotron-Super-49B-v1",
        name: "Nvidia Nemotron Super 49B",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "nvidia/nvidia-nemotron-nano-9b-v2": {
        id: "nvidia/nvidia-nemotron-nano-9b-v2",
        name: "Nvidia Nemotron Nano 9B v2",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-18",
        last_updated: "2025-08-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "nvidia/Llama-3.1-Nemotron-Ultra-253B-v1": {
        id: "nvidia/Llama-3.1-Nemotron-Ultra-253B-v1",
        name: "Nvidia Nemotron Ultra 253B",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-03",
        last_updated: "2025-07-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 0.8 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "nvidia/nemotron-3-nano-30b-a3b": {
        id: "nvidia/nemotron-3-nano-30b-a3b",
        name: "Nvidia Nemotron 3 Nano 30B",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-15",
        last_updated: "2025-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 256000, input: 256000, output: 262144 },
      },
      "nvidia/Llama-3_3-Nemotron-Super-49B-v1_5": {
        id: "nvidia/Llama-3_3-Nemotron-Super-49B-v1_5",
        name: "Nvidia Nemotron Super 49B v1.5",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.25 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "arcee-ai/trinity-mini": {
        id: "arcee-ai/trinity-mini",
        name: "Trinity Mini",
        family: "trinity-mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.045000000000000005, output: 0.15 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "arcee-ai/trinity-large": {
        id: "arcee-ai/trinity-large",
        name: "Trinity Large",
        family: "trinity",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "meganova-ai/manta-flash-1.0": {
        id: "meganova-ai/manta-flash-1.0",
        name: "Manta Flash 1.0",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-20",
        last_updated: "2025-12-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.16 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "meganova-ai/manta-pro-1.0": {
        id: "meganova-ai/manta-pro-1.0",
        name: "Manta Pro 1.0",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-20",
        last_updated: "2025-12-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.060000000000000005, output: 0.5 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "meganova-ai/manta-mini-1.0": {
        id: "meganova-ai/manta-mini-1.0",
        name: "Manta Mini 1.0",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-20",
        last_updated: "2025-12-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0.16 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "Alibaba-NLP 2/Tongyi-DeepResearch-30B-A3B": {
        id: "Alibaba-NLP 2/Tongyi-DeepResearch-30B-A3B",
        name: "Tongyi DeepResearch 30B A3B",
        family: "yi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.08, output: 0.24000000000000002 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "xiaomi/mimo-v2-flash-original": {
        id: "xiaomi/mimo-v2-flash-original",
        name: "MiMo V2 Flash Original",
        family: "mimo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.102, output: 0.306 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "xiaomi/mimo-v2-flash": {
        id: "xiaomi/mimo-v2-flash",
        name: "MiMo V2 Flash",
        family: "mimo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.102, output: 0.306 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "xiaomi/mimo-v2-flash-thinking": {
        id: "xiaomi/mimo-v2-flash-thinking",
        name: "MiMo V2 Flash (Thinking)",
        family: "mimo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.102, output: 0.306 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "xiaomi/mimo-v2-flash-thinking-original": {
        id: "xiaomi/mimo-v2-flash-thinking-original",
        name: "MiMo V2 Flash (Thinking) Original",
        family: "mimo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.102, output: 0.306 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "microsoft/MAI-DS-R1-FP8": {
        id: "microsoft/MAI-DS-R1-FP8",
        name: "Microsoft DeepSeek R1",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "microsoft/wizardlm-2-8x22b": {
        id: "microsoft/wizardlm-2-8x22b",
        name: "WizardLM-2 8x22B",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "EVA-UNIT-01 2/EVA-Qwen2.5-72B-v0.2": {
        id: "EVA-UNIT-01 2/EVA-Qwen2.5-72B-v0.2",
        name: "EVA-Qwen2.5-72B-v0.2",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7989999999999999, output: 0.7989999999999999 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "EVA-UNIT-01 2/EVA-LLaMA-3.33-70B-v0.0": {
        id: "EVA-UNIT-01 2/EVA-LLaMA-3.33-70B-v0.0",
        name: "EVA Llama 3.33 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.006 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "EVA-UNIT-01 2/EVA-LLaMA-3.33-70B-v0.1": {
        id: "EVA-UNIT-01 2/EVA-LLaMA-3.33-70B-v0.1",
        name: "EVA-LLaMA-3.33-70B-v0.1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.006 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "EVA-UNIT-01 2/EVA-Qwen2.5-32B-v0.2": {
        id: "EVA-UNIT-01 2/EVA-Qwen2.5-32B-v0.2",
        name: "EVA-Qwen2.5-32B-v0.2",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7989999999999999, output: 0.7989999999999999 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5": {
        id: "failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5",
        name: "Llama 3 70B abliterated",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "featherless-ai/Qwerky-72B": {
        id: "featherless-ai/Qwerky-72B",
        name: "Qwerky 72B",
        family: "qwerky",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-20",
        last_updated: "2025-03-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 0.5 },
        limit: { context: 32000, input: 32000, output: 8192 },
      },
      "MiniMaxAI 2/MiniMax-M1-80k": {
        id: "MiniMaxAI 2/MiniMax-M1-80k",
        name: "MiniMax M1 80K",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-16",
        last_updated: "2025-06-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6052, output: 2.4225000000000003 },
        limit: { context: 1000000, input: 1000000, output: 131072 },
      },
      "TEE/glm-5": {
        id: "TEE/glm-5",
        name: "GLM 5 TEE",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.2, output: 3.5 },
        limit: { context: 203000, input: 203000, output: 65535 },
      },
      "TEE/deepseek-v3.1": {
        id: "TEE/deepseek-v3.1",
        name: "DeepSeek V3.1 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 2.5 },
        limit: { context: 164000, input: 164000, output: 8192 },
      },
      "TEE/glm-4.7-flash": {
        id: "TEE/glm-4.7-flash",
        name: "GLM 4.7 Flash TEE",
        family: "glm-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-19",
        last_updated: "2026-01-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.5 },
        limit: { context: 203000, input: 203000, output: 65535 },
      },
      "TEE/qwen3-coder": {
        id: "TEE/qwen3-coder",
        name: "Qwen3 Coder 480B TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "TEE/glm-4.6": {
        id: "TEE/glm-4.6",
        name: "GLM 4.6 TEE",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.75, output: 2 },
        limit: { context: 203000, input: 203000, output: 65535 },
      },
      "TEE/deepseek-r1-0528": {
        id: "TEE/deepseek-r1-0528",
        name: "DeepSeek R1 0528 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 2 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "TEE/minimax-m2.1": {
        id: "TEE/minimax-m2.1",
        name: "MiniMax M2.1 TEE",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 200000, input: 200000, output: 131072 },
      },
      "TEE/qwen3.5-397b-a17b": {
        id: "TEE/qwen3.5-397b-a17b",
        name: "Qwen3.5 397B A17B TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-28",
        last_updated: "2026-02-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 258048, input: 258048, output: 65536 },
      },
      "TEE/gpt-oss-120b": {
        id: "TEE/gpt-oss-120b",
        name: "GPT-OSS 120B TEE",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 2 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "TEE/kimi-k2.5": {
        id: "TEE/kimi-k2.5",
        name: "Kimi K2.5 TEE",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.9 },
        limit: { context: 128000, input: 128000, output: 65535 },
      },
      "TEE/qwen3-30b-a3b-instruct-2507": {
        id: "TEE/qwen3-30b-a3b-instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507 TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.44999999999999996 },
        limit: { context: 262000, input: 262000, output: 32768 },
      },
      "TEE/kimi-k2.5-thinking": {
        id: "TEE/kimi-k2.5-thinking",
        name: "Kimi K2.5 Thinking TEE",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.9 },
        limit: { context: 128000, input: 128000, output: 65535 },
      },
      "TEE/qwen2.5-vl-72b-instruct": {
        id: "TEE/qwen2.5-vl-72b-instruct",
        name: "Qwen2.5 VL 72B TEE",
        family: "qwen",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-01",
        last_updated: "2025-02-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "TEE/deepseek-v3.2": {
        id: "TEE/deepseek-v3.2",
        name: "DeepSeek V3.2 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1 },
        limit: { context: 164000, input: 164000, output: 65536 },
      },
      "TEE/glm-4.7": {
        id: "TEE/glm-4.7",
        name: "GLM 4.7 TEE",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-29",
        last_updated: "2026-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.85, output: 3.3 },
        limit: { context: 131000, input: 131000, output: 65535 },
      },
      "TEE/kimi-k2-thinking": {
        id: "TEE/kimi-k2-thinking",
        name: "Kimi K2 Thinking TEE",
        family: "kimi-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 2 },
        limit: { context: 128000, input: 128000, output: 65535 },
      },
      "TEE/llama3-3-70b": {
        id: "TEE/llama3-3-70b",
        name: "Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-03",
        last_updated: "2025-07-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 2 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "TEE/gemma-3-27b-it": {
        id: "TEE/gemma-3-27b-it",
        name: "Gemma 3 27B TEE",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "TEE/gpt-oss-20b": {
        id: "TEE/gpt-oss-20b",
        name: "GPT-OSS 20B TEE",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "amazon/nova-micro-v1": {
        id: "amazon/nova-micro-v1",
        name: "Amazon Nova Micro 1.0",
        family: "nova-micro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0357, output: 0.1394 },
        limit: { context: 128000, input: 128000, output: 5120 },
      },
      "amazon/nova-lite-v1": {
        id: "amazon/nova-lite-v1",
        name: "Amazon Nova Lite 1.0",
        family: "nova-lite",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0595, output: 0.238 },
        limit: { context: 300000, input: 300000, output: 5120 },
      },
      "amazon/nova-2-lite-v1": {
        id: "amazon/nova-2-lite-v1",
        name: "Amazon Nova 2 Lite",
        family: "nova",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5099999999999999, output: 4.25 },
        limit: { context: 1000000, input: 1000000, output: 65535 },
      },
      "amazon/nova-pro-v1": {
        id: "amazon/nova-pro-v1",
        name: "Amazon Nova Pro 1.0",
        family: "nova-pro",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7989999999999999, output: 3.1959999999999997 },
        limit: { context: 300000, input: 300000, output: 32000 },
      },
      "Infermatic 2/MN-12B-Inferor-v0.0": {
        id: "Infermatic 2/MN-12B-Inferor-v0.0",
        name: "Mistral Nemo Inferor 12B",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25499999999999995, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "anthracite-org/magnum-v2-72b": {
        id: "anthracite-org/magnum-v2-72b",
        name: "Magnum V2 72B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.992 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "anthracite-org/magnum-v4-72b": {
        id: "anthracite-org/magnum-v4-72b",
        name: "Magnum v4 72B",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.992 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "essentialai/rnj-1-instruct": {
        id: "essentialai/rnj-1-instruct",
        name: "RNJ-1 Instruct 8B",
        family: "rnj",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-13",
        last_updated: "2025-12-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "NousResearch 2/hermes-4-405b": {
        id: "NousResearch 2/hermes-4-405b",
        name: "Hermes 4 Large",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-26",
        last_updated: "2025-08-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "NousResearch 2/hermes-3-llama-3.1-70b": {
        id: "NousResearch 2/hermes-3-llama-3.1-70b",
        name: "Hermes 3 70B",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-07",
        last_updated: "2026-01-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.408, output: 0.408 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "NousResearch 2/DeepHermes-3-Mistral-24B-Preview": {
        id: "NousResearch 2/DeepHermes-3-Mistral-24B-Preview",
        name: "DeepHermes-3 Mistral 24B (Preview)",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-10",
        last_updated: "2025-05-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "NousResearch 2/hermes-4-70b": {
        id: "NousResearch 2/hermes-4-70b",
        name: "Hermes 4 Medium",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-03",
        last_updated: "2025-07-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.39949999999999997 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "NousResearch 2/hermes-4-405b:thinking": {
        id: "NousResearch 2/hermes-4-405b:thinking",
        name: "Hermes 4 Large (Thinking)",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "NousResearch 2/Hermes-4-70B:thinking": {
        id: "NousResearch 2/Hermes-4-70B:thinking",
        name: "Hermes 4 (Thinking)",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-17",
        last_updated: "2025-09-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.39949999999999997 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "Sao10K 2/L3.1-70B-Hanami-x1": {
        id: "Sao10K 2/L3.1-70B-Hanami-x1",
        name: "Llama 3.1 70B Hanami",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Sao10K 2/L3.3-70B-Euryale-v2.3": {
        id: "Sao10K 2/L3.3-70B-Euryale-v2.3",
        name: "Llama 3.3 70B Euryale",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 20480, input: 20480, output: 16384 },
      },
      "Sao10K 2/L3.1-70B-Euryale-v2.2": {
        id: "Sao10K 2/L3.1-70B-Euryale-v2.2",
        name: "Llama 3.1 70B Euryale",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.357 },
        limit: { context: 20480, input: 20480, output: 16384 },
      },
      "Sao10K 2/L3-8B-Stheno-v3.2": {
        id: "Sao10K 2/L3-8B-Stheno-v3.2",
        name: "Sao10K Stheno 8b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-11-29",
        last_updated: "2024-11-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "pamanseau/OpenReasoning-Nemotron-32B": {
        id: "pamanseau/OpenReasoning-Nemotron-32B",
        name: "OpenReasoning Nemotron 32B",
        family: "nemotron",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 32768, input: 32768, output: 65536 },
      },
      "LLM360 2/K2-Think": {
        id: "LLM360 2/K2-Think",
        name: "K2-Think",
        family: "kimi-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "NeverSleep 2/Llama-3-Lumimaid-70B-v0.1": {
        id: "NeverSleep 2/Llama-3-Lumimaid-70B-v0.1",
        name: "Lumimaid 70b",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 2.006 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "NeverSleep 2/Lumimaid-v0.2-70B": {
        id: "NeverSleep 2/Lumimaid-v0.2-70B",
        name: "Lumimaid v0.2",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 1.5 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "deepseek-ai/deepseek-v3.2-exp-thinking": {
        id: "deepseek-ai/deepseek-v3.2-exp-thinking",
        name: "DeepSeek V3.2 Exp Thinking",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 163840, input: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-R1-0528": {
        id: "deepseek-ai/DeepSeek-R1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.7 },
        limit: { context: 128000, input: 128000, output: 163840 },
      },
      "deepseek-ai/DeepSeek-V3.1:thinking": {
        id: "deepseek-ai/DeepSeek-V3.1:thinking",
        name: "DeepSeek V3.1 Thinking",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.1": {
        id: "deepseek-ai/DeepSeek-V3.1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus",
        name: "DeepSeek V3.1 Terminus",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-02",
        last_updated: "2025-08-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "deepseek-ai/deepseek-v3.2-exp": {
        id: "deepseek-ai/deepseek-v3.2-exp",
        name: "DeepSeek V3.2 Exp",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 163840, input: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus:thinking": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus:thinking",
        name: "DeepSeek V3.1 Terminus (Thinking)",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-22",
        last_updated: "2025-09-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "raifle/sorcererlm-8x22b": {
        id: "raifle/sorcererlm-8x22b",
        name: "SorcererLM 8x22B",
        family: "mixtral",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.505, output: 4.505 },
        limit: { context: 16000, input: 16000, output: 8192 },
      },
      "Salesforce 2/Llama-xLAM-2-70b-fc-r": {
        id: "Salesforce 2/Llama-xLAM-2-70b-fc-r",
        name: "Llama-xLAM-2 70B fc-r",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-13",
        last_updated: "2025-04-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 2.5 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "aion-labs/aion-1.0-mini": {
        id: "aion-labs/aion-1.0-mini",
        name: "Aion 1.0 mini (DeepSeek)",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-20",
        last_updated: "2025-02-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7989999999999999, output: 1.394 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "aion-labs/aion-rp-llama-3.1-8b": {
        id: "aion-labs/aion-rp-llama-3.1-8b",
        name: "Llama 3.1 8b (uncensored)",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "aion-labs/aion-1.0": {
        id: "aion-labs/aion-1.0",
        name: "Aion 1.0",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-01",
        last_updated: "2025-02-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.995, output: 7.99 },
        limit: { context: 65536, input: 65536, output: 8192 },
      },
      "mlabonne/NeuralDaredevil-8B-abliterated": {
        id: "mlabonne/NeuralDaredevil-8B-abliterated",
        name: "Neural Daredevil 8B abliterated",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.44, output: 0.44 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "unsloth/gemma-3-1b-it": {
        id: "unsloth/gemma-3-1b-it",
        name: "Gemma 3 1B IT",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1003 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "unsloth/gemma-3-12b-it": {
        id: "unsloth/gemma-3-12b-it",
        name: "Gemma 3 12B IT",
        family: "unsloth",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.272, output: 0.272 },
        limit: { context: 128000, input: 128000, output: 131072 },
      },
      "unsloth/gemma-3-4b-it": {
        id: "unsloth/gemma-3-4b-it",
        name: "Gemma 3 4B IT",
        family: "unsloth",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2006 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "unsloth/gemma-3-27b-it": {
        id: "unsloth/gemma-3-27b-it",
        name: "Gemma 3 27B IT",
        family: "unsloth",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2992, output: 0.2992 },
        limit: { context: 128000, input: 128000, output: 96000 },
      },
      "meituan-longcat/LongCat-Flash-Chat-FP8": {
        id: "meituan-longcat/LongCat-Flash-Chat-FP8",
        name: "LongCat Flash",
        family: "longcat",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-31",
        last_updated: "2025-08-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.7 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "cognitivecomputations/dolphin-2.9.2-qwen2-72b": {
        id: "cognitivecomputations/dolphin-2.9.2-qwen2-72b",
        name: "Dolphin 72b",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.306, output: 0.306 },
        limit: { context: 8192, input: 8192, output: 4096 },
      },
      "tencent/Hunyuan-MT-7B": {
        id: "tencent/Hunyuan-MT-7B",
        name: "Hunyuan MT 7B",
        family: "hunyuan",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-18",
        last_updated: "2025-09-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 20 },
        limit: { context: 8192, input: 8192, output: 8192 },
      },
      "soob3123/Veiled-Calla-12B": {
        id: "soob3123/Veiled-Calla-12B",
        name: "Veiled Calla 12B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-13",
        last_updated: "2025-04-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "soob3123/amoral-gemma3-27B-v2": {
        id: "soob3123/amoral-gemma3-27B-v2",
        name: "Amoral Gemma3 27B v2",
        family: "gemma",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-23",
        last_updated: "2025-05-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "soob3123/GrayLine-Qwen3-8B": {
        id: "soob3123/GrayLine-Qwen3-8B",
        name: "Grayline Qwen3 8B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.3 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "GalrionSoftworks 2/MN-LooseCannon-12B-v1": {
        id: "GalrionSoftworks 2/MN-LooseCannon-12B-v1",
        name: "MN-LooseCannon-12B-v1",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "deepseek/deepseek-prover-v2-671b": {
        id: "deepseek/deepseek-prover-v2-671b",
        name: "DeepSeek Prover v2 671B",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-30",
        last_updated: "2025-04-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 2.5 },
        limit: { context: 160000, input: 160000, output: 16384 },
      },
      "deepseek/deepseek-v3.2-speciale": {
        id: "deepseek/deepseek-v3.2-speciale",
        name: "DeepSeek V3.2 Speciale",
        family: "deepseek",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 163000, input: 163000, output: 65536 },
      },
      "deepseek/deepseek-v3.2": {
        id: "deepseek/deepseek-v3.2",
        name: "DeepSeek V3.2",
        family: "deepseek",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 163000, input: 163000, output: 65536 },
      },
      "deepseek/deepseek-v3.2:thinking": {
        id: "deepseek/deepseek-v3.2:thinking",
        name: "DeepSeek V3.2 Thinking",
        family: "deepseek",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27999999999999997, output: 0.42000000000000004 },
        limit: { context: 163000, input: 163000, output: 65536 },
      },
      "moonshotai/kimi-k2-instruct": {
        id: "moonshotai/kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-07-01",
        last_updated: "2025-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 2 },
        limit: { context: 256000, input: 256000, output: 8192 },
      },
      "moonshotai/kimi-k2.5:thinking": {
        id: "moonshotai/kimi-k2.5:thinking",
        name: "Kimi K2.5 Thinking",
        family: "kimi-thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        release_date: "2026-01-26",
        last_updated: "2026-01-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.9 },
        limit: { context: 256000, input: 256000, output: 65536 },
      },
      "moonshotai/kimi-k2-thinking-turbo-original": {
        id: "moonshotai/kimi-k2-thinking-turbo-original",
        name: "Kimi K2 Thinking Turbo Original",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.15, output: 8 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 256000, input: 256000, output: 262144 },
      },
      "moonshotai/kimi-k2-instruct-0711": {
        id: "moonshotai/kimi-k2-instruct-0711",
        name: "Kimi K2 0711",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 2 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "moonshotai/Kimi-Dev-72B": {
        id: "moonshotai/Kimi-Dev-72B",
        name: "Kimi Dev 72B",
        family: "kimi",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 0.4 },
        limit: { context: 128000, input: 128000, output: 131072 },
      },
      "moonshotai/kimi-k2.5": {
        id: "moonshotai/kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        release_date: "2026-01-26",
        last_updated: "2026-01-26",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.9 },
        limit: { context: 256000, input: 256000, output: 65536 },
      },
      "moonshotai/kimi-k2-thinking": {
        id: "moonshotai/kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 256000, input: 256000, output: 262144 },
      },
      "moonshotai/kimi-k2-thinking-original": {
        id: "moonshotai/kimi-k2-thinking-original",
        name: "Kimi K2 Thinking Original",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 2.5 },
        limit: { context: 256000, input: 256000, output: 16384 },
      },
      "MarinaraSpaghetti 2/NemoMix-Unleashed-12B": {
        id: "MarinaraSpaghetti 2/NemoMix-Unleashed-12B",
        name: "NemoMix 12B Unleashed",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "baidu/ernie-4.5-vl-28b-a3b": {
        id: "baidu/ernie-4.5-vl-28b-a3b",
        name: "ERNIE 4.5 VL 28B",
        family: "ernie",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13999999999999999, output: 0.5599999999999999 },
        limit: { context: 32768, input: 32768, output: 16384 },
      },
      "baidu/ernie-4.5-300b-a47b": {
        id: "baidu/ernie-4.5-300b-a47b",
        name: "ERNIE 4.5 300B",
        family: "ernie",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-30",
        last_updated: "2025-06-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.35, output: 1.15 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "google/gemini-flash-1.5": {
        id: "google/gemini-flash-1.5",
        name: "Gemini 1.5 Flash",
        family: "gemini-flash",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-14",
        last_updated: "2024-05-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0748, output: 0.306 },
        limit: { context: 2000000, input: 2000000, output: 8192 },
      },
      "google/gemini-3-flash-preview": {
        id: "google/gemini-3-flash-preview",
        name: "Gemini 3 Flash (Preview)",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "google/gemini-3-flash-preview-thinking": {
        id: "google/gemini-3-flash-preview-thinking",
        name: "Gemini 3 Flash Thinking",
        family: "gemini-flash",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-17",
        last_updated: "2025-12-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 3 },
        limit: { context: 1048756, input: 1048756, output: 65536 },
      },
      "z-ai/glm-4.6:thinking": {
        id: "z-ai/glm-4.6:thinking",
        name: "GLM 4.6 Thinking",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.5 },
        limit: { context: 200000, input: 200000, output: 65535 },
      },
      "z-ai/glm-4.5v:thinking": {
        id: "z-ai/glm-4.5v:thinking",
        name: "GLM 4.5V Thinking",
        family: "glmv",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-22",
        last_updated: "2025-11-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 1.7999999999999998 },
        limit: { context: 64000, input: 64000, output: 96000 },
      },
      "z-ai/glm-4.6": {
        id: "z-ai/glm-4.6",
        name: "GLM 4.6",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-30",
        last_updated: "2025-09-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.5 },
        limit: { context: 200000, input: 200000, output: 65535 },
      },
      "z-ai/glm-4.5v": {
        id: "z-ai/glm-4.5v",
        name: "GLM 4.5V",
        family: "glmv",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-22",
        last_updated: "2025-11-22",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 1.7999999999999998 },
        limit: { context: 64000, input: 64000, output: 96000 },
      },
      "Tongyi-Zhiwen 2/QwenLong-L1-32B": {
        id: "Tongyi-Zhiwen 2/QwenLong-L1-32B",
        name: "QwenLong L1 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-25",
        last_updated: "2025-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13999999999999999, output: 0.6 },
        limit: { context: 128000, input: 128000, output: 40960 },
      },
      "stepfun-ai/step-3.5-flash:thinking": {
        id: "stepfun-ai/step-3.5-flash:thinking",
        name: "Step 3.5 Flash Thinking",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 256000, input: 256000, output: 256000 },
      },
      "stepfun-ai/step-3.5-flash": {
        id: "stepfun-ai/step-3.5-flash",
        name: "Step 3.5 Flash",
        family: "step",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-02",
        last_updated: "2026-02-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 256000, input: 256000, output: 256000 },
      },
      "deepcogito/cogito-v2.1-671b": {
        id: "deepcogito/cogito-v2.1-671b",
        name: "Cogito v2.1 671B MoE",
        family: "cogito",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 1.25 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "deepcogito/cogito-v1-preview-qwen-32B": {
        id: "deepcogito/cogito-v1-preview-qwen-32B",
        name: "Cogito v1 Preview Qwen 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-05-10",
        last_updated: "2025-05-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.7999999999999998, output: 1.7999999999999998 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "undi95/remm-slerp-l2-13b": {
        id: "undi95/remm-slerp-l2-13b",
        name: "ReMM SLERP 13B",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7989999999999999, output: 1.2069999999999999 },
        limit: { context: 6144, input: 6144, output: 4096 },
      },
      "qwen/qwen3.5-397b-a17b": {
        id: "qwen/qwen3.5-397b-a17b",
        name: "Qwen3.5 397B A17B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3.6 },
        limit: { context: 258048, input: 258048, output: 65536 },
      },
      "CrucibleLab 2/L3.3-70B-Loki-V2.0": {
        id: "CrucibleLab 2/L3.3-70B-Loki-V2.0",
        name: "L3.3 70B Loki v2.0",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-22",
        last_updated: "2026-01-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "inflatebot/MN-12B-Mag-Mell-R1": {
        id: "inflatebot/MN-12B-Mag-Mell-R1",
        name: "Mag Mell R1",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "nothingiisreal/L3.1-70B-Celeste-V0.1-BF16": {
        id: "nothingiisreal/L3.1-70B-Celeste-V0.1-BF16",
        name: "Llama 3.1 70B Celeste v0.1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "x-ai/grok-4-fast:thinking": {
        id: "x-ai/grok-4-fast:thinking",
        name: "Grok 4 Fast Thinking",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, input: 2000000, output: 131072 },
      },
      "x-ai/grok-code-fast-1": {
        id: "x-ai/grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5 },
        limit: { context: 256000, input: 256000, output: 131072 },
      },
      "x-ai/grok-4.1-fast-reasoning": {
        id: "x-ai/grok-4.1-fast-reasoning",
        name: "Grok 4.1 Fast Reasoning",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, input: 2000000, output: 131072 },
      },
      "x-ai/grok-4-fast": {
        id: "x-ai/grok-4-fast",
        name: "Grok 4 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-20",
        last_updated: "2025-09-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, input: 2000000, output: 131072 },
      },
      "x-ai/grok-4.1-fast": {
        id: "x-ai/grok-4.1-fast",
        name: "Grok 4.1 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-20",
        last_updated: "2025-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5 },
        limit: { context: 2000000, input: 2000000, output: 131072 },
      },
      "x-ai/grok-4-07-09": {
        id: "x-ai/grok-4-07-09",
        name: "Grok 4",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15 },
        limit: { context: 256000, input: 256000, output: 131072 },
      },
      "Gryphe 2/MythoMax-L2-13b": {
        id: "Gryphe 2/MythoMax-L2-13b",
        name: "MythoMax 13B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1003 },
        limit: { context: 4000, input: 4000, output: 4096 },
      },
      "meta-llama/llama-4-scout": {
        id: "meta-llama/llama-4-scout",
        name: "Llama 4 Scout",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.085, output: 0.46 },
        limit: { context: 328000, input: 328000, output: 65536 },
      },
      "meta-llama/llama-3.2-90b-vision-instruct": {
        id: "meta-llama/llama-3.2-90b-vision-instruct",
        name: "Llama 3.2 Medium",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.9009999999999999, output: 0.9009999999999999 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "meta-llama/llama-3.3-70b-instruct": {
        id: "meta-llama/llama-3.3-70b-instruct",
        name: "Llama 3.3 70b Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-02-27",
        last_updated: "2025-02-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.23 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "meta-llama/llama-3.2-3b-instruct": {
        id: "meta-llama/llama-3.2-3b-instruct",
        name: "Llama 3.2 3b Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0306, output: 0.0493 },
        limit: { context: 131072, input: 131072, output: 8192 },
      },
      "meta-llama/llama-4-maverick": {
        id: "meta-llama/llama-4-maverick",
        name: "Llama 4 Maverick",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.18000000000000002, output: 0.8 },
        limit: { context: 1048576, input: 1048576, output: 65536 },
      },
      "meta-llama/llama-3.1-8b-instruct": {
        id: "meta-llama/llama-3.1-8b-instruct",
        name: "Llama 3.1 8b Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0544, output: 0.0544 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "tngtech/DeepSeek-TNG-R1T2-Chimera": {
        id: "tngtech/DeepSeek-TNG-R1T2-Chimera",
        name: "DeepSeek TNG R1T2 Chimera",
        family: "tngtech",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.31, output: 0.31 },
        limit: { context: 128000, input: 128000, output: 8192 },
      },
      "tngtech/tng-r1t-chimera": {
        id: "tngtech/tng-r1t-chimera",
        name: "TNG R1T Chimera",
        family: "tngtech",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-26",
        last_updated: "2025-11-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "mistralai/ministral-3b-2512": {
        id: "mistralai/ministral-3b-2512",
        name: "Ministral 3B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-04",
        last_updated: "2025-12-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 131072, input: 131072, output: 32768 },
      },
      "mistralai/mistral-saba": {
        id: "mistralai/mistral-saba",
        name: "Mistral Saba",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1989, output: 0.595 },
        limit: { context: 32000, input: 32000, output: 32768 },
      },
      "mistralai/mistral-medium-3": {
        id: "mistralai/mistral-medium-3",
        name: "Mistral Medium 3",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-25",
        last_updated: "2025-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, input: 131072, output: 32768 },
      },
      "mistralai/Mistral-Nemo-Instruct-2407": {
        id: "mistralai/Mistral-Nemo-Instruct-2407",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1207 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "mistralai/codestral-2508": {
        id: "mistralai/codestral-2508",
        name: "Codestral 2508",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.8999999999999999 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "mistralai/mistral-large-3-675b-instruct-2512": {
        id: "mistralai/mistral-large-3-675b-instruct-2512",
        name: "Mistral Large 3 675B",
        family: "mistral-large",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 3 },
        limit: { context: 262144, input: 262144, output: 256000 },
      },
      "mistralai/mistral-small-creative": {
        id: "mistralai/mistral-small-creative",
        name: "Mistral Small Creative",
        family: "mistral-small",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-16",
        last_updated: "2025-12-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "mistralai/ministral-8b-2512": {
        id: "mistralai/ministral-8b-2512",
        name: "Ministral 8B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-04",
        last_updated: "2025-12-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 262144, input: 262144, output: 32768 },
      },
      "mistralai/mixtral-8x22b-instruct-v0.1": {
        id: "mistralai/mixtral-8x22b-instruct-v0.1",
        name: "Mixtral 8x22B",
        family: "mixtral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.8999999999999999, output: 0.8999999999999999 },
        limit: { context: 65536, input: 65536, output: 32768 },
      },
      "mistralai/ministral-14b-2512": {
        id: "mistralai/ministral-14b-2512",
        name: "Ministral 14B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-04",
        last_updated: "2025-12-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 262144, input: 262144, output: 32768 },
      },
      "mistralai/ministral-14b-instruct-2512": {
        id: "mistralai/ministral-14b-instruct-2512",
        name: "Ministral 3 14B",
        family: "ministral",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-02",
        last_updated: "2025-12-02",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 262144, input: 262144, output: 32768 },
      },
      "mistralai/Devstral-Small-2505": {
        id: "mistralai/Devstral-Small-2505",
        name: "Mistral Devstral Small 2505",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-02",
        last_updated: "2025-08-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.060000000000000005, output: 0.060000000000000005 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "mistralai/mistral-tiny": {
        id: "mistralai/mistral-tiny",
        name: "Mistral Tiny",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-12-11",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25499999999999995, output: 0.25499999999999995 },
        limit: { context: 32000, input: 32000, output: 8192 },
      },
      "mistralai/mistral-7b-instruct": {
        id: "mistralai/mistral-7b-instruct",
        name: "Mistral 7B Instruct",
        family: "mistral",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-27",
        last_updated: "2024-05-27",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.0544, output: 0.0544 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "mistralai/devstral-2-123b-instruct-2512": {
        id: "mistralai/devstral-2-123b-instruct-2512",
        name: "Devstral 2 123B",
        family: "devstral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.4 },
        limit: { context: 262144, input: 262144, output: 65536 },
      },
      "mistralai/mistral-large": {
        id: "mistralai/mistral-large",
        name: "Mistral Large 2411",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-02-26",
        last_updated: "2024-02-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.006, output: 6.001 },
        limit: { context: 128000, input: 128000, output: 256000 },
      },
      "mistralai/mixtral-8x7b-instruct-v0.1": {
        id: "mistralai/mixtral-8x7b-instruct-v0.1",
        name: "Mixtral 8x7B",
        family: "mixtral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.27 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "mistralai/mistral-medium-3.1": {
        id: "mistralai/mistral-medium-3.1",
        name: "Mistral Medium 3.1",
        family: "mistral-medium",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-05",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 131072, input: 131072, output: 32768 },
      },
      "LatitudeGames 2/Wayfarer-Large-70B-Llama-3.3": {
        id: "LatitudeGames 2/Wayfarer-Large-70B-Llama-3.3",
        name: "Llama 3.3 70B Wayfarer",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-20",
        last_updated: "2025-02-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.700000007, output: 0.700000007 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "openai/gpt-4o-2024-11-20": {
        id: "openai/gpt-4o-2024-11-20",
        name: "GPT-4o (2024-11-20)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-11-20",
        last_updated: "2024-11-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5.1-2025-11-13": {
        id: "openai/gpt-5.1-2025-11-13",
        name: "GPT-5.1 (2025-11-13)",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 1000000, input: 1000000, output: 32768 },
      },
      "openai/gpt-5-codex": {
        id: "openai/gpt-5-codex",
        name: "GPT-5 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 256000, input: 256000, output: 32768 },
      },
      "openai/gpt-5-pro": {
        id: "openai/gpt-5-pro",
        name: "GPT 5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-4o-mini": {
        id: "openai/gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1496, output: 0.595 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5-chat-latest": {
        id: "openai/gpt-5-chat-latest",
        name: "GPT 5 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-4o-mini-search-preview": {
        id: "openai/gpt-4o-mini-search-preview",
        name: "GPT-4o mini Search Preview",
        family: "gpt-mini",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.088, output: 0.35 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5.1-codex-max": {
        id: "openai/gpt-5.1-codex-max",
        name: "GPT 5.1 Codex Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 20 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-5.2-codex": {
        id: "openai/gpt-5.2-codex",
        name: "GPT 5.2 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o3-deep-research": {
        id: "openai/o3-deep-research",
        name: "OpenAI o3 Deep Research",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/o1": {
        id: "openai/o1",
        name: "OpenAI o1",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-17",
        last_updated: "2024-12-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.993999999999998, output: 59.993 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-5.1": {
        id: "openai/gpt-5.1",
        name: "GPT 5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-5.2-chat": {
        id: "openai/gpt-5.2-chat",
        name: "GPT 5.2 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-01",
        last_updated: "2026-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 400000, output: 16384 },
      },
      "openai/o4-mini-deep-research": {
        id: "openai/o4-mini-deep-research",
        name: "OpenAI o4-mini Deep Research",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-5.1-chat": {
        id: "openai/gpt-5.1-chat",
        name: "GPT 5.1 Chat",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o3": {
        id: "openai/o3",
        name: "OpenAI o3",
        family: "o",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo-preview": {
        id: "openai/gpt-4-turbo-preview",
        name: "GPT-4 Turbo Preview",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-11-06",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 30.004999999999995 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "openai/gpt-4.1-nano": {
        id: "openai/gpt-4.1-nano",
        name: "GPT 4.1 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4 },
        limit: { context: 1047576, input: 1047576, output: 32768 },
      },
      "openai/gpt-3.5-turbo": {
        id: "openai/gpt-3.5-turbo",
        name: "GPT-3.5 Turbo",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2022-11-30",
        last_updated: "2024-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 16385, input: 16385, output: 4096 },
      },
      "openai/gpt-oss-120b": {
        id: "openai/gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.25 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5.1-codex-mini": {
        id: "openai/gpt-5.1-codex-mini",
        name: "GPT 5.1 Codex Mini",
        family: "gpt-codex-mini",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-5.2": {
        id: "openai/gpt-5.2",
        name: "GPT 5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-01-01",
        last_updated: "2026-01-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/gpt-4.1": {
        id: "openai/gpt-4.1",
        name: "GPT 4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2025-09-10",
        last_updated: "2025-09-10",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8 },
        limit: { context: 1047576, input: 1047576, output: 32768 },
      },
      "openai/o3-mini-low": {
        id: "openai/o3-mini-low",
        name: "OpenAI o3-mini (Low)",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-4-turbo": {
        id: "openai/gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2023-11-06",
        last_updated: "2024-01-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "openai/gpt-5": {
        id: "openai/gpt-5",
        name: "GPT 5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o4-mini": {
        id: "openai/o4-mini",
        name: "OpenAI o4-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-4.1-mini": {
        id: "openai/gpt-4.1-mini",
        name: "GPT 4.1 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6 },
        limit: { context: 1047576, input: 1047576, output: 32768 },
      },
      "openai/o1-preview": {
        id: "openai/o1-preview",
        name: "OpenAI o1-preview",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 14.993999999999998, output: 59.993 },
        limit: { context: 128000, input: 128000, output: 32768 },
      },
      "openai/gpt-oss-safeguard-20b": {
        id: "openai/gpt-oss-safeguard-20b",
        name: "GPT OSS Safeguard 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-10-29",
        last_updated: "2025-10-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/o1-pro": {
        id: "openai/o1-pro",
        name: "OpenAI o1 Pro",
        family: "o-pro",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-25",
        last_updated: "2025-01-25",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 150, output: 600 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-5.1-codex": {
        id: "openai/gpt-5.1-codex",
        name: "GPT 5.1 Codex",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/chatgpt-4o-latest": {
        id: "openai/chatgpt-4o-latest",
        name: "ChatGPT 4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 14.993999999999998 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5.2-pro": {
        id: "openai/gpt-5.2-pro",
        name: "GPT 5.2 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-01-01",
        last_updated: "2026-01-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 21, output: 168 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o3-mini": {
        id: "openai/o3-mini",
        name: "OpenAI o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-4o-2024-08-06": {
        id: "openai/gpt-4o-2024-08-06",
        name: "GPT-4o (2024-08-06)",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-08-06",
        last_updated: "2024-08-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 9.996 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5-mini": {
        id: "openai/gpt-5-mini",
        name: "GPT 5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o3-pro-2025-06-10": {
        id: "openai/o3-pro-2025-06-10",
        name: "OpenAI o3-pro (2025-06-10)",
        family: "o-pro",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-06-10",
        last_updated: "2025-06-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 9.996, output: 19.992 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "GPT OSS 20B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.04, output: 0.15 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-5.1-chat-latest": {
        id: "openai/gpt-5.1-chat-latest",
        name: "GPT 5.1 Chat (Latest)",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10 },
        limit: { context: 400000, input: 400000, output: 16384 },
      },
      "openai/gpt-5-nano": {
        id: "openai/gpt-5-nano",
        name: "GPT 5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4 },
        limit: { context: 400000, input: 400000, output: 128000 },
      },
      "openai/o3-mini-high": {
        id: "openai/o3-mini-high",
        name: "OpenAI o3-mini (High)",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-01-31",
        last_updated: "2025-01-31",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.64, output: 2.588 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/o4-mini-high": {
        id: "openai/o4-mini-high",
        name: "OpenAI o4-mini high",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4 },
        limit: { context: 200000, input: 200000, output: 100000 },
      },
      "openai/gpt-4o": {
        id: "openai/gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 9.996 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "openai/gpt-4o-search-preview": {
        id: "openai/gpt-4o-search-preview",
        name: "GPT-4o Search Preview",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.47, output: 5.88 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "cohere/command-r-plus-08-2024": {
        id: "cohere/command-r-plus-08-2024",
        name: "Cohere: Command R+",
        family: "command-r",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.856, output: 14.246 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "cohere/command-r": {
        id: "cohere/command-r",
        name: "Cohere: Command R",
        family: "command-r",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-03-11",
        last_updated: "2024-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.476, output: 1.428 },
        limit: { context: 128000, input: 128000, output: 4096 },
      },
      "THUDM/GLM-4-32B-0414": {
        id: "THUDM/GLM-4-32B-0414",
        name: "GLM 4 32B 0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "THUDM/GLM-4-9B-0414": {
        id: "THUDM/GLM-4-9B-0414",
        name: "GLM 4 9B 0414",
        family: "glm",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 32000, input: 32000, output: 8000 },
      },
      "THUDM/GLM-Z1-32B-0414": {
        id: "THUDM/GLM-Z1-32B-0414",
        name: "GLM Z1 32B 0414",
        family: "glm-z",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 128000, input: 128000, output: 65536 },
      },
      "THUDM/GLM-Z1-9B-0414": {
        id: "THUDM/GLM-Z1-9B-0414",
        name: "GLM Z1 9B 0414",
        family: "glm-z",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 32000, input: 32000, output: 8000 },
      },
      "THUDM/GLM-Z1-Rumination-32B-0414": {
        id: "THUDM/GLM-Z1-Rumination-32B-0414",
        name: "GLM Z1 Rumination 32B 0414",
        family: "glm-z",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.2 },
        limit: { context: 32000, input: 32000, output: 65536 },
      },
      "minimax/minimax-01": {
        id: "minimax/minimax-01",
        name: "MiniMax 01",
        family: "minimax",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-15",
        last_updated: "2025-01-15",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1394, output: 1.1219999999999999 },
        limit: { context: 1000192, input: 1000192, output: 16384 },
      },
      "minimax/minimax-m2.1": {
        id: "minimax/minimax-m2.1",
        name: "MiniMax M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2025-12-19",
        last_updated: "2025-12-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.33, output: 1.32 },
        limit: { context: 200000, input: 200000, output: 131072 },
      },
      "minimax/minimax-m2-her": {
        id: "minimax/minimax-m2-her",
        name: "MiniMax M2-her",
        family: "minimax",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-24",
        last_updated: "2026-01-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.30200000000000005, output: 1.2069999999999999 },
        limit: { context: 65532, input: 65532, output: 2048 },
      },
      "minimax/minimax-m2.5": {
        id: "minimax/minimax-m2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, input: 204800, output: 131072 },
      },
      "chutesai/Mistral-Small-3.2-24B-Instruct-2506": {
        id: "chutesai/Mistral-Small-3.2-24B-Instruct-2506",
        name: "Mistral Small 3.2 24b Instruct",
        family: "chutesai",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.4 },
        limit: { context: 128000, input: 128000, output: 131072 },
      },
      "baseten/Kimi-K2-Instruct-FP4": {
        id: "baseten/Kimi-K2-Instruct-FP4",
        name: "Kimi K2 0711 Instruct FP4",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-11",
        last_updated: "2025-07-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 2 },
        limit: { context: 128000, input: 128000, output: 131072 },
      },
      "ReadyArt 2/The-Omega-Abomination-L-70B-v1.0": {
        id: "ReadyArt 2/The-Omega-Abomination-L-70B-v1.0",
        name: "The Omega Abomination V1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.95 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "ReadyArt 2/MS3.2-The-Omega-Directive-24B-Unslop-v2.0": {
        id: "ReadyArt 2/MS3.2-The-Omega-Directive-24B-Unslop-v2.0",
        name: "Omega Directive 24B Unslop v2.0",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 0.5 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "TheDrummer 2/Cydonia-24B-v4.3": {
        id: "TheDrummer 2/Cydonia-24B-v4.3",
        name: "The Drummer Cydonia 24B v4.3",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-25",
        last_updated: "2025-12-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1207 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "TheDrummer 2/Anubis-70B-v1": {
        id: "TheDrummer 2/Anubis-70B-v1",
        name: "Anubis 70B v1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.31, output: 0.31 },
        limit: { context: 65536, input: 65536, output: 16384 },
      },
      "TheDrummer 2/Cydonia-24B-v4": {
        id: "TheDrummer 2/Cydonia-24B-v4",
        name: "The Drummer Cydonia 24B v4",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2006, output: 0.2414 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "TheDrummer 2/Magidonia-24B-v4.3": {
        id: "TheDrummer 2/Magidonia-24B-v4.3",
        name: "The Drummer Magidonia 24B v4.3",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-12-25",
        last_updated: "2025-12-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1207 },
        limit: { context: 32768, input: 32768, output: 32768 },
      },
      "TheDrummer 2/Anubis-70B-v1.1": {
        id: "TheDrummer 2/Anubis-70B-v1.1",
        name: "Anubis 70B v1.1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.31, output: 0.31 },
        limit: { context: 131072, input: 131072, output: 16384 },
      },
      "TheDrummer 2/Rocinante-12B-v1.1": {
        id: "TheDrummer 2/Rocinante-12B-v1.1",
        name: "Rocinante 12b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.408, output: 0.595 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "TheDrummer 2/Cydonia-24B-v2": {
        id: "TheDrummer 2/Cydonia-24B-v2",
        name: "The Drummer Cydonia 24B v2",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1207 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "TheDrummer 2/skyfall-36b-v2": {
        id: "TheDrummer 2/skyfall-36b-v2",
        name: "TheDrummer Skyfall 36B V2",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-03-10",
        last_updated: "2025-03-10",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 64000, input: 64000, output: 32768 },
      },
      "TheDrummer 2/UnslopNemo-12B-v4.1": {
        id: "TheDrummer 2/UnslopNemo-12B-v4.1",
        name: "UnslopNemo 12b v4",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "TheDrummer 2/Cydonia-24B-v4.1": {
        id: "TheDrummer 2/Cydonia-24B-v4.1",
        name: "The Drummer Cydonia 24B v4.1",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-19",
        last_updated: "2025-08-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1003, output: 0.1207 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "Steelskull 2/L3.3-Electra-R1-70b": {
        id: "Steelskull 2/L3.3-Electra-R1-70b",
        name: "Steelskull Electra R1 70b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.69989, output: 0.69989 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Steelskull 2/L3.3-MS-Evalebis-70b": {
        id: "Steelskull 2/L3.3-MS-Evalebis-70b",
        name: "MS Evalebis 70b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Steelskull 2/L3.3-Cu-Mai-R1-70b": {
        id: "Steelskull 2/L3.3-Cu-Mai-R1-70b",
        name: "Llama 3.3 70B Cu Mai",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Steelskull 2/L3.3-Nevoria-R1-70b": {
        id: "Steelskull 2/L3.3-Nevoria-R1-70b",
        name: "Steelskull Nevoria R1 70b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Steelskull 2/L3.3-MS-Nevoria-70b": {
        id: "Steelskull 2/L3.3-MS-Nevoria-70b",
        name: "Steelskull Nevoria 70b",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Steelskull 2/L3.3-MS-Evayale-70B": {
        id: "Steelskull 2/L3.3-MS-Evayale-70B",
        name: "Evayale 70b ",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "Doctor-Shotgun 2/MS3.2-24B-Magnum-Diamond": {
        id: "Doctor-Shotgun 2/MS3.2-24B-Magnum-Diamond",
        name: "MS3.2 24B Magnum Diamond",
        family: "mistral",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-11-24",
        last_updated: "2025-11-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 32768 },
      },
      "shisa-ai/shisa-v2.1-llama3.3-70b": {
        id: "shisa-ai/shisa-v2.1-llama3.3-70b",
        name: "Shisa V2.1 Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 0.5 },
        limit: { context: 32768, input: 32768, output: 4096 },
      },
      "shisa-ai/shisa-v2-llama3.3-70b": {
        id: "shisa-ai/shisa-v2-llama3.3-70b",
        name: "Shisa V2 Llama 3.3 70B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-07-26",
        last_updated: "2025-07-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 0.5 },
        limit: { context: 128000, input: 128000, output: 16384 },
      },
      "anthropic/claude-sonnet-4.6:thinking": {
        id: "anthropic/claude-sonnet-4.6:thinking",
        name: "Claude Sonnet 4.6 Thinking",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.993999999999998 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4.6:thinking:low": {
        id: "anthropic/claude-opus-4.6:thinking:low",
        name: "Claude 4.6 Opus Thinking Low",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4.6:thinking": {
        id: "anthropic/claude-opus-4.6:thinking",
        name: "Claude 4.6 Opus Thinking",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-sonnet-4.6": {
        id: "anthropic/claude-sonnet-4.6",
        name: "Claude Sonnet 4.6",
        family: "claude-sonnet",
        attachment: true,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-17",
        last_updated: "2026-02-17",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.992, output: 14.993999999999998 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4.6:thinking:medium": {
        id: "anthropic/claude-opus-4.6:thinking:medium",
        name: "Claude 4.6 Opus Thinking Medium",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4.6:thinking:max": {
        id: "anthropic/claude-opus-4.6:thinking:max",
        name: "Claude 4.6 Opus Thinking Max",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "anthropic/claude-opus-4.6": {
        id: "anthropic/claude-opus-4.6",
        name: "Claude 4.6 Opus",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 4.998, output: 25.007 },
        limit: { context: 1000000, input: 1000000, output: 128000 },
      },
      "miromind-ai/mirothinker-v1.5-235b": {
        id: "miromind-ai/mirothinker-v1.5-235b",
        name: "MiroThinker v1.5 235B",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2026-01-07",
        last_updated: "2026-01-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 32768, input: 32768, output: 4000 },
      },
      "huihui-ai/DeepSeek-R1-Distill-Llama-70B-abliterated": {
        id: "huihui-ai/DeepSeek-R1-Distill-Llama-70B-abliterated",
        name: "DeepSeek R1 Llama 70B Abliterated",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "huihui-ai/Qwen2.5-32B-Instruct-abliterated": {
        id: "huihui-ai/Qwen2.5-32B-Instruct-abliterated",
        name: "Qwen 2.5 32B Abliterated",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-06",
        last_updated: "2025-01-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "huihui-ai/DeepSeek-R1-Distill-Qwen-32B-abliterated": {
        id: "huihui-ai/DeepSeek-R1-Distill-Qwen-32B-abliterated",
        name: "DeepSeek R1 Qwen Abliterated",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: false,
        structured_output: false,
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.4, output: 1.4 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
      "huihui-ai/Llama-3.3-70B-Instruct-abliterated": {
        id: "huihui-ai/Llama-3.3-70B-Instruct-abliterated",
        name: "Llama 3.3 70B Instruct abliterated",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "huihui-ai/Llama-3.1-Nemotron-70B-Instruct-HF-abliterated": {
        id: "huihui-ai/Llama-3.1-Nemotron-70B-Instruct-HF-abliterated",
        name: "Nemotron 3.1 70B abliterated",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.7, output: 0.7 },
        limit: { context: 16384, input: 16384, output: 16384 },
      },
      "inflection/inflection-3-productivity": {
        id: "inflection/inflection-3-productivity",
        name: "Inflection 3 Productivity",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-10-11",
        last_updated: "2024-10-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 9.996 },
        limit: { context: 8000, input: 8000, output: 4096 },
      },
      "inflection/inflection-3-pi": {
        id: "inflection/inflection-3-pi",
        name: "Inflection 3 Pi",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-10-11",
        last_updated: "2024-10-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.499, output: 9.996 },
        limit: { context: 8000, input: 8000, output: 4096 },
      },
      "dmind/dmind-1-mini": {
        id: "dmind/dmind-1-mini",
        name: "DMind-1-Mini",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.4 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "dmind/dmind-1": {
        id: "dmind/dmind-1",
        name: "DMind-1",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2025-06-01",
        last_updated: "2025-06-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.6 },
        limit: { context: 32768, input: 32768, output: 8192 },
      },
      "VongolaChouko 2/Starcannon-Unleashed-12B-v1.0": {
        id: "VongolaChouko 2/Starcannon-Unleashed-12B-v1.0",
        name: "Mistral Nemo Starcannon 12b v1",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        release_date: "2024-07-01",
        last_updated: "2024-07-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.49299999999999994, output: 0.49299999999999994 },
        limit: { context: 16384, input: 16384, output: 8192 },
      },
    },
  },
  cerebras: {
    id: "cerebras",
    env: ["CEREBRAS_API_KEY"],
    npm: "@ai-sdk/cerebras",
    name: "Cerebras",
    doc: "https://inference-docs.cerebras.ai/models/overview",
    models: {
      "qwen-3-235b-a22b-instruct-2507": {
        id: "qwen-3-235b-a22b-instruct-2507",
        name: "Qwen 3 235B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-22",
        last_updated: "2025-07-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 1.2 },
        limit: { context: 131000, output: 32000 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "GPT OSS 120B",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.69 },
        limit: { context: 131072, output: 32768 },
      },
      "llama3.1-8b": {
        id: "llama3.1-8b",
        name: "Llama 3.1 8B",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.1 },
        limit: { context: 32000, output: 8000 },
      },
      "zai-glm-4.7": {
        id: "zai-glm-4.7",
        name: "Z.AI GLM-4.7",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-01-10",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.25, output: 2.75, cache_read: 0, cache_write: 0 },
        limit: { context: 131072, output: 40000 },
      },
    },
  },
  azure: {
    id: "azure",
    env: ["AZURE_RESOURCE_NAME", "AZURE_API_KEY"],
    npm: "@ai-sdk/azure",
    name: "Azure",
    doc: "https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models",
    models: {
      "gpt-5.3-codex": {
        id: "gpt-5.3-codex",
        name: "GPT-5.3 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-02-24",
        last_updated: "2026-02-24",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5-codex": {
        id: "gpt-5-codex",
        name: "GPT-5-Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5-pro": {
        id: "gpt-5-pro",
        name: "GPT-5 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-10-06",
        last_updated: "2025-10-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 120 },
        limit: { context: 400000, output: 272000 },
      },
      "phi-3-small-128k-instruct": {
        id: "phi-3-small-128k-instruct",
        name: "Phi-3-small-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-4o-mini": {
        id: "gpt-4o-mini",
        name: "GPT-4o mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.15, output: 0.6, cache_read: 0.08 },
        limit: { context: 128000, output: 16384 },
      },
      "text-embedding-ada-002": {
        id: "text-embedding-ada-002",
        name: "text-embedding-ada-002",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2022-12-15",
        last_updated: "2022-12-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0 },
        limit: { context: 8192, output: 1536 },
      },
      "grok-4-fast-reasoning": {
        id: "grok-4-fast-reasoning",
        name: "Grok 4 Fast (Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "gpt-5.1-codex-max": {
        id: "gpt-5.1-codex-max",
        name: "GPT-5.1 Codex Max",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-13",
        last_updated: "2025-11-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "phi-3-medium-128k-instruct": {
        id: "phi-3-medium-128k-instruct",
        name: "Phi-3-medium-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 128000, output: 4096 },
      },
      "phi-4-multimodal": {
        id: "phi-4-multimodal",
        name: "Phi-4-multimodal",
        family: "phi",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text", "image", "audio"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.32, input_audio: 4 },
        limit: { context: 128000, output: 4096 },
      },
      "mai-ds-r1": {
        id: "mai-ds-r1",
        name: "MAI-DS-R1",
        family: "mai",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 128000, output: 8192 },
      },
      "claude-opus-4-1": {
        id: "claude-opus-4-1",
        name: "Claude Opus 4.1",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 75, cache_read: 1.5, cache_write: 18.75 },
        limit: { context: 200000, output: 32000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "phi-3.5-moe-instruct": {
        id: "phi-3.5-moe-instruct",
        name: "Phi-3.5-MoE-instruct",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.16, output: 0.64 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-4-turbo-vision": {
        id: "gpt-4-turbo-vision",
        name: "GPT-4 Turbo Vision",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "ministral-3b": {
        id: "ministral-3b",
        name: "Ministral 3B",
        family: "ministral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2024-10-22",
        last_updated: "2024-10-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.04 },
        limit: { context: 128000, output: 8192 },
      },
      "gpt-5.2-codex": {
        id: "gpt-5.2-codex",
        name: "GPT-5.2 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-01-14",
        last_updated: "2026-01-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 400000, output: 128000 },
      },
      "grok-3": {
        id: "grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "claude-opus-4-6": {
        id: "claude-opus-4-6",
        name: "Claude Opus 4.6",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: {
          input: 5,
          output: 25,
          cache_read: 0.5,
          cache_write: 6.25,
          context_over_200k: { input: 10, output: 37.5, cache_read: 1, cache_write: 12.5 },
        },
        limit: { context: 200000, output: 128000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "llama-3.2-90b-vision-instruct": {
        id: "llama-3.2-90b-vision-instruct",
        name: "Llama-3.2-90B-Vision-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.04, output: 2.04 },
        limit: { context: 128000, output: 8192 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "llama-3.3-70b-instruct": {
        id: "llama-3.3-70b-instruct",
        name: "Llama-3.3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-12-06",
        last_updated: "2024-12-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.71, output: 0.71 },
        limit: { context: 128000, output: 32768 },
      },
      "grok-4-1-fast-reasoning": {
        id: "grok-4-1-fast-reasoning",
        name: "Grok 4.1 Fast (Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-27",
        last_updated: "2025-06-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 128000, input: 128000, output: 8192 },
        status: "beta",
      },
      "phi-3.5-mini-instruct": {
        id: "phi-3.5-mini-instruct",
        name: "Phi-3.5-mini-instruct",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 128000, output: 4096 },
      },
      "cohere-command-a": {
        id: "cohere-command-a",
        name: "Command A",
        family: "command-a",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2025-03-13",
        last_updated: "2025-03-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 256000, output: 8000 },
      },
      "mistral-medium-2505": {
        id: "mistral-medium-2505",
        name: "Mistral Medium 3",
        family: "mistral-medium",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-05",
        release_date: "2025-05-07",
        last_updated: "2025-05-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 2 },
        limit: { context: 128000, output: 128000 },
      },
      "deepseek-v3.1": {
        id: "deepseek-v3.1",
        name: "DeepSeek-V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-08-21",
        last_updated: "2025-08-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.56, output: 1.68 },
        limit: { context: 131072, output: 131072 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "Grok 4.1 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-06-27",
        last_updated: "2025-06-27",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 128000, input: 128000, output: 8192 },
        status: "beta",
      },
      o1: {
        id: "o1",
        name: "o1",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-12-05",
        last_updated: "2024-12-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 15, output: 60, cache_read: 7.5 },
        limit: { context: 200000, output: 100000 },
      },
      "gpt-5.1": {
        id: "gpt-5.1",
        name: "GPT-5.1",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 272000, output: 128000 },
      },
      "llama-4-scout-17b-16e-instruct": {
        id: "llama-4-scout-17b-16e-instruct",
        name: "Llama 4 Scout 17B 16E Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.78 },
        limit: { context: 128000, output: 8192 },
      },
      "meta-llama-3.1-405b-instruct": {
        id: "meta-llama-3.1-405b-instruct",
        name: "Meta-Llama-3.1-405B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 5.33, output: 16 },
        limit: { context: 128000, output: 32768 },
      },
      "cohere-command-r-plus-08-2024": {
        id: "cohere-command-r-plus-08-2024",
        name: "Command R+",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.5, output: 10 },
        limit: { context: 128000, output: 4000 },
      },
      "gpt-5.2-chat": {
        id: "gpt-5.2-chat",
        name: "GPT-5.2 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-5-chat": {
        id: "gpt-5-chat",
        name: "GPT-5 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: false,
        temperature: false,
        knowledge: "2024-10-24",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 128000, output: 16384 },
      },
      "grok-4": {
        id: "grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, reasoning: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 64000 },
      },
      "gpt-5.1-chat": {
        id: "gpt-5.1-chat",
        name: "GPT-5.1 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 128000, output: 16384 },
      },
      "meta-llama-3-8b-instruct": {
        id: "meta-llama-3-8b-instruct",
        name: "Meta-Llama-3-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.61 },
        limit: { context: 8192, output: 2048 },
      },
      o3: {
        id: "o3",
        name: "o3",
        family: "o",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 200000, output: 100000 },
      },
      "llama-3.2-11b-vision-instruct": {
        id: "llama-3.2-11b-vision-instruct",
        name: "Llama-3.2-11B-Vision-Instruct",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-09-25",
        last_updated: "2024-09-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.37, output: 0.37 },
        limit: { context: 128000, output: 8192 },
      },
      "meta-llama-3-70b-instruct": {
        id: "meta-llama-3-70b-instruct",
        name: "Meta-Llama-3-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-04-18",
        last_updated: "2024-04-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.68, output: 3.54 },
        limit: { context: 8192, output: 2048 },
      },
      "deepseek-r1-0528": {
        id: "deepseek-r1-0528",
        name: "DeepSeek-R1-0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 163840, output: 163840 },
      },
      "gpt-3.5-turbo-0301": {
        id: "gpt-3.5-turbo-0301",
        name: "GPT-3.5 Turbo 0301",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-03-01",
        last_updated: "2023-03-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 4096, output: 4096 },
      },
      "text-embedding-3-small": {
        id: "text-embedding-3-small",
        name: "text-embedding-3-small",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.02, output: 0 },
        limit: { context: 8191, output: 1536 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek-R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-01-20",
        last_updated: "2025-01-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.35, output: 5.4 },
        limit: { context: 163840, output: 163840 },
      },
      "phi-4-mini": {
        id: "phi-4-mini",
        name: "Phi-4-mini",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, output: 4096 },
      },
      "deepseek-v3.2-speciale": {
        id: "deepseek-v3.2-speciale",
        name: "DeepSeek-V3.2-Speciale",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 1.68 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-4.1-nano": {
        id: "gpt-4.1-nano",
        name: "GPT-4.1 nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.4, cache_read: 0.03 },
        limit: { context: 1047576, output: 32768 },
      },
      "cohere-command-r-08-2024": {
        id: "cohere-command-r-08-2024",
        name: "Command R",
        family: "command-r",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06-01",
        release_date: "2024-08-30",
        last_updated: "2024-08-30",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 128000, output: 4000 },
      },
      "gpt-3.5-turbo-0613": {
        id: "gpt-3.5-turbo-0613",
        name: "GPT-3.5 Turbo 0613",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-06-13",
        last_updated: "2023-06-13",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 4 },
        limit: { context: 16384, output: 16384 },
      },
      "text-embedding-3-large": {
        id: "text-embedding-3-large",
        name: "text-embedding-3-large",
        family: "text-embedding",
        attachment: false,
        reasoning: false,
        tool_call: false,
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.13, output: 0 },
        limit: { context: 8191, output: 3072 },
      },
      "gpt-5.1-codex-mini": {
        id: "gpt-5.1-codex-mini",
        name: "GPT-5.1 Codex Mini",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.025 },
        limit: { context: 400000, output: 128000 },
      },
      "gpt-5.2": {
        id: "gpt-5.2",
        name: "GPT-5.2",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2025-12-11",
        last_updated: "2025-12-11",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-02-06",
        last_updated: "2026-02-06",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 262144 },
        provider: {
          npm: "@ai-sdk/openai-compatible",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/models",
          shape: "completions",
        },
      },
      "deepseek-v3-0324": {
        id: "deepseek-v3-0324",
        name: "DeepSeek-V3-0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1.14, output: 4.56 },
        limit: { context: 131072, output: 131072 },
      },
      "model-router": {
        id: "model-router",
        name: "Model Router",
        family: "model-router",
        attachment: true,
        reasoning: false,
        tool_call: true,
        release_date: "2025-05-19",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.14, output: 0 },
        limit: { context: 128000, output: 16384 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT-4.1",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 8, cache_read: 0.5 },
        limit: { context: 1047576, output: 32768 },
      },
      "gpt-4-turbo": {
        id: "gpt-4-turbo",
        name: "GPT-4 Turbo",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-11-06",
        last_updated: "2024-04-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 10, output: 30 },
        limit: { context: 128000, output: 4096 },
      },
      "mistral-nemo": {
        id: "mistral-nemo",
        name: "Mistral Nemo",
        family: "mistral-nemo",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2024-07-18",
        last_updated: "2024-07-18",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.15 },
        limit: { context: 128000, output: 128000 },
      },
      "deepseek-v3.2": {
        id: "deepseek-v3.2",
        name: "DeepSeek-V3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-12-01",
        last_updated: "2025-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.58, output: 1.68 },
        limit: { context: 128000, output: 128000 },
      },
      "cohere-embed-v-4-0": {
        id: "cohere-embed-v-4-0",
        name: "Embed v4",
        family: "cohere-embed",
        attachment: true,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2025-04-15",
        last_updated: "2025-04-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.12, output: 0 },
        limit: { context: 128000, output: 1536 },
      },
      "grok-3-mini": {
        id: "grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, reasoning: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "gpt-4-32k": {
        id: "gpt-4-32k",
        name: "GPT-4 32K",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-03-14",
        last_updated: "2023-03-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 60, output: 120 },
        limit: { context: 32768, output: 32768 },
      },
      "gpt-5": {
        id: "gpt-5",
        name: "GPT-5",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.13 },
        limit: { context: 272000, output: 128000 },
      },
      "o4-mini": {
        id: "o4-mini",
        name: "o4-mini",
        family: "o-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2025-04-16",
        last_updated: "2025-04-16",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.28 },
        limit: { context: 200000, output: 100000 },
      },
      "phi-4": {
        id: "phi-4",
        name: "Phi-4",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-4.1-mini": {
        id: "gpt-4.1-mini",
        name: "GPT-4.1 mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-05",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.4, output: 1.6, cache_read: 0.1 },
        limit: { context: 1047576, output: 32768 },
      },
      "phi-4-reasoning-plus": {
        id: "phi-4-reasoning-plus",
        name: "Phi-4-reasoning-plus",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 32000, output: 4096 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-11-06",
        last_updated: "2025-12-02",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 2.5, cache_read: 0.15 },
        limit: { context: 262144, output: 262144 },
      },
      "gpt-5.4": {
        id: "gpt-5.4",
        name: "GPT-5.4",
        family: "gpt",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 15, cache_read: 0.25 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "codex-mini": {
        id: "codex-mini",
        name: "Codex Mini",
        family: "gpt-codex-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-05-16",
        last_updated: "2025-05-16",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 6, cache_read: 0.375 },
        limit: { context: 200000, output: 100000 },
      },
      "phi-3-mini-4k-instruct": {
        id: "phi-3-mini-4k-instruct",
        name: "Phi-3-mini-instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 4096, output: 1024 },
      },
      "meta-llama-3.1-70b-instruct": {
        id: "meta-llama-3.1-70b-instruct",
        name: "Meta-Llama-3.1-70B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.68, output: 3.54 },
        limit: { context: 128000, output: 32768 },
      },
      "o1-preview": {
        id: "o1-preview",
        name: "o1-preview",
        family: "o",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 16.5, output: 66, cache_read: 8.25 },
        limit: { context: 128000, output: 32768 },
      },
      "gpt-5.4-pro": {
        id: "gpt-5.4-pro",
        name: "GPT-5.4 Pro",
        family: "gpt-pro",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-05",
        last_updated: "2026-03-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 30, output: 180 },
        limit: { context: 400000, input: 272000, output: 128000 },
      },
      "gpt-5.3-chat": {
        id: "gpt-5.3-chat",
        name: "GPT-5.3 Chat",
        family: "gpt-codex",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2025-08-31",
        release_date: "2026-03-03",
        last_updated: "2026-03-03",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.75, output: 14, cache_read: 0.175 },
        limit: { context: 128000, output: 16384 },
      },
      "meta-llama-3.1-8b-instruct": {
        id: "meta-llama-3.1-8b-instruct",
        name: "Meta-Llama-3.1-8B-Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.61 },
        limit: { context: 128000, output: 32768 },
      },
      "claude-haiku-4-5": {
        id: "claude-haiku-4-5",
        name: "Claude Haiku 4.5",
        family: "claude-haiku",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-02-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 5, cache_read: 0.1, cache_write: 1.25 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "gpt-5.1-codex": {
        id: "gpt-5.1-codex",
        name: "GPT-5.1 Codex",
        family: "gpt-codex",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: false,
        knowledge: "2024-09-30",
        release_date: "2025-11-14",
        last_updated: "2025-11-14",
        modalities: { input: ["text", "image", "audio"], output: ["text", "image", "audio"] },
        open_weights: false,
        cost: { input: 1.25, output: 10, cache_read: 0.125 },
        limit: { context: 400000, output: 128000 },
      },
      "mistral-large-2411": {
        id: "mistral-large-2411",
        name: "Mistral Large 24.11",
        family: "mistral-large",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6 },
        limit: { context: 128000, output: 32768 },
      },
      "claude-opus-4-5": {
        id: "claude-opus-4-5",
        name: "Claude Opus 4.5",
        family: "claude-opus",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03-31",
        release_date: "2025-11-24",
        last_updated: "2025-08-01",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 0.5, cache_write: 6.25 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "phi-4-mini-reasoning": {
        id: "phi-4-mini-reasoning",
        name: "Phi-4-mini-reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.075, output: 0.3 },
        limit: { context: 128000, output: 4096 },
      },
      "gpt-3.5-turbo-0125": {
        id: "gpt-3.5-turbo-0125",
        name: "GPT-3.5 Turbo 0125",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2024-01-25",
        last_updated: "2024-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 1.5 },
        limit: { context: 16384, output: 16384 },
      },
      "cohere-embed-v3-multilingual": {
        id: "cohere-embed-v3-multilingual",
        name: "Embed v3 Multilingual",
        family: "cohere-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-11-07",
        last_updated: "2023-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "phi-3-medium-4k-instruct": {
        id: "phi-3-medium-4k-instruct",
        name: "Phi-3-medium-instruct (4k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.17, output: 0.68 },
        limit: { context: 4096, output: 1024 },
      },
      "cohere-embed-v3-english": {
        id: "cohere-embed-v3-english",
        name: "Embed v3 English",
        family: "cohere-embed",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        release_date: "2023-11-07",
        last_updated: "2023-11-07",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0 },
        limit: { context: 512, output: 1024 },
      },
      "o3-mini": {
        id: "o3-mini",
        name: "o3-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05",
        release_date: "2024-12-20",
        last_updated: "2025-01-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 200000, output: 100000 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "Grok 4 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "llama-4-maverick-17b-128e-instruct-fp8": {
        id: "llama-4-maverick-17b-128e-instruct-fp8",
        name: "Llama 4 Maverick 17B 128E Instruct FP8",
        family: "llama",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2025-04-05",
        last_updated: "2025-04-05",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 1 },
        limit: { context: 128000, output: 8192 },
      },
      "claude-sonnet-4-5": {
        id: "claude-sonnet-4-5",
        name: "Claude Sonnet 4.5",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-11-18",
        last_updated: "2025-11-18",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.3, cache_write: 3.75 },
        limit: { context: 200000, output: 64000 },
        provider: {
          npm: "@ai-sdk/anthropic",
          api: "https://${AZURE_RESOURCE_NAME}.services.ai.azure.com/anthropic/v1",
        },
      },
      "gpt-5-mini": {
        id: "gpt-5-mini",
        name: "GPT-5 Mini",
        family: "gpt-mini",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 2, cache_read: 0.03 },
        limit: { context: 272000, output: 128000 },
      },
      "phi-3-mini-128k-instruct": {
        id: "phi-3-mini-128k-instruct",
        name: "Phi-3-mini-instruct (128k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 128000, output: 4096 },
      },
      "phi-4-reasoning": {
        id: "phi-4-reasoning",
        name: "Phi-4-reasoning",
        family: "phi",
        attachment: false,
        reasoning: true,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-12-11",
        last_updated: "2024-12-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.125, output: 0.5 },
        limit: { context: 32000, output: 4096 },
      },
      "gpt-3.5-turbo-1106": {
        id: "gpt-3.5-turbo-1106",
        name: "GPT-3.5 Turbo 1106",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-11-06",
        last_updated: "2023-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1, output: 2 },
        limit: { context: 16384, output: 16384 },
      },
      "gpt-4": {
        id: "gpt-4",
        name: "GPT-4",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-11",
        release_date: "2023-03-14",
        last_updated: "2023-03-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 60, output: 120 },
        limit: { context: 8192, output: 8192 },
      },
      "gpt-5-nano": {
        id: "gpt-5-nano",
        name: "GPT-5 Nano",
        family: "gpt-nano",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2024-05-30",
        release_date: "2025-08-07",
        last_updated: "2025-08-07",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.05, output: 0.4, cache_read: 0.01 },
        limit: { context: 272000, output: 128000 },
      },
      "gpt-3.5-turbo-instruct": {
        id: "gpt-3.5-turbo-instruct",
        name: "GPT-3.5 Turbo Instruct",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2021-08",
        release_date: "2023-09-21",
        last_updated: "2023-09-21",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.5, output: 2 },
        limit: { context: 4096, output: 4096 },
      },
      "o1-mini": {
        id: "o1-mini",
        name: "o1-mini",
        family: "o-mini",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: false,
        knowledge: "2023-09",
        release_date: "2024-09-12",
        last_updated: "2024-09-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.1, output: 4.4, cache_read: 0.55 },
        limit: { context: 128000, output: 65536 },
      },
      "mistral-small-2503": {
        id: "mistral-small-2503",
        name: "Mistral Small 3.1",
        family: "mistral-small",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-09",
        release_date: "2025-03-01",
        last_updated: "2025-03-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.1, output: 0.3 },
        limit: { context: 128000, output: 32768 },
      },
      "codestral-2501": {
        id: "codestral-2501",
        name: "Codestral 25.01",
        family: "codestral",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-03",
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 256000, output: 256000 },
      },
      "gpt-4o": {
        id: "gpt-4o",
        name: "GPT-4o",
        family: "gpt",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-09",
        release_date: "2024-05-13",
        last_updated: "2024-05-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.5, output: 10, cache_read: 1.25 },
        limit: { context: 128000, output: 16384 },
      },
      "phi-3-small-8k-instruct": {
        id: "phi-3-small-8k-instruct",
        name: "Phi-3-small-instruct (8k)",
        family: "phi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2024-04-23",
        last_updated: "2024-04-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 8192, output: 2048 },
      },
    },
  },
  cortecs: {
    id: "cortecs",
    env: ["CORTECS_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://api.cortecs.ai/v1",
    name: "Cortecs",
    doc: "https://api.cortecs.ai/v1/models",
    models: {
      "kimi-k2-instruct": {
        id: "kimi-k2-instruct",
        name: "Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-07-11",
        last_updated: "2025-09-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.551, output: 2.646 },
        limit: { context: 131000, output: 131000 },
      },
      "qwen3-next-80b-a3b-thinking": {
        id: "qwen3-next-80b-a3b-thinking",
        name: "Qwen3 Next 80B A3B Thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-11",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.164, output: 1.311 },
        limit: { context: 128000, output: 128000 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen3 Coder 480B A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-07-25",
        last_updated: "2025-07-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.441, output: 1.984 },
        limit: { context: 262000, output: 262000 },
      },
      "glm-4.5-air": {
        id: "glm-4.5-air",
        name: "GLM 4.5 Air",
        family: "glm-air",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-01",
        last_updated: "2025-08-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 1.34 },
        limit: { context: 131072, output: 131072 },
      },
      "glm-4.5": {
        id: "glm-4.5",
        name: "GLM 4.5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-29",
        last_updated: "2025-07-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.67, output: 2.46 },
        limit: { context: 131072, output: 131072 },
      },
      "glm-4.7-flash": {
        id: "glm-4.7-flash",
        name: "GLM-4.7-Flash",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-08-08",
        last_updated: "2025-08-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.53 },
        limit: { context: 203000, output: 203000 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-12",
        release_date: "2025-04-29",
        last_updated: "2025-04-29",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.099, output: 0.33 },
        limit: { context: 16384, output: 16384 },
      },
      "minimax-m2.1": {
        id: "minimax-m2.1",
        name: "MiniMax-M2.1",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2025-12-23",
        last_updated: "2025-12-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.34, output: 1.34 },
        limit: { context: 196000, output: 196000 },
      },
      "devstral-small-2512": {
        id: "devstral-small-2512",
        name: "Devstral Small 2 2512",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262000, output: 262000 },
      },
      "intellect-3": {
        id: "intellect-3",
        name: "INTELLECT 3",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-11",
        release_date: "2025-11-26",
        last_updated: "2025-11-26",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.219, output: 1.202 },
        limit: { context: 128000, output: 128000 },
      },
      "nova-pro-v1": {
        id: "nova-pro-v1",
        name: "Nova Pro 1.0",
        family: "nova-pro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-12-03",
        last_updated: "2024-12-03",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.016, output: 4.061 },
        limit: { context: 300000, output: 5000 },
      },
      "gpt-oss-120b": {
        id: "gpt-oss-120b",
        name: "GPT Oss 120b",
        family: "gpt-oss",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-01",
        release_date: "2025-08-05",
        last_updated: "2025-08-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Kimi K2.5",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.55, output: 2.76 },
        limit: { context: 256000, output: 256000 },
      },
      "deepseek-v3-0324": {
        id: "deepseek-v3-0324",
        name: "DeepSeek V3 0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-07",
        release_date: "2025-03-24",
        last_updated: "2025-03-24",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.551, output: 1.654 },
        limit: { context: 128000, output: 128000 },
      },
      "gpt-4.1": {
        id: "gpt-4.1",
        name: "GPT 4.1",
        family: "gpt",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-06",
        release_date: "2025-04-14",
        last_updated: "2025-04-14",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2.354, output: 9.417 },
        limit: { context: 1047576, output: 32768 },
      },
      "llama-3.1-405b-instruct": {
        id: "llama-3.1-405b-instruct",
        name: "Llama 3.1 405B Instruct",
        family: "llama",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2023-12",
        release_date: "2024-07-23",
        last_updated: "2024-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 128000, output: 128000 },
      },
      "devstral-2512": {
        id: "devstral-2512",
        name: "Devstral 2 2512",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-09",
        last_updated: "2025-12-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0, output: 0 },
        limit: { context: 262000, output: 262000 },
      },
      "glm-4.7": {
        id: "glm-4.7",
        name: "GLM 4.7",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-12-22",
        last_updated: "2025-12-22",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.45, output: 2.23 },
        limit: { context: 198000, output: 198000 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Kimi K2 Thinking",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2025-12",
        release_date: "2025-12-08",
        last_updated: "2025-12-08",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.656, output: 2.731 },
        limit: { context: 262000, output: 262000 },
      },
      "minimax-m2": {
        id: "minimax-m2",
        name: "MiniMax-M2",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-10-27",
        last_updated: "2025-10-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.39, output: 1.57 },
        limit: { context: 400000, output: 400000 },
      },
      "claude-sonnet-4": {
        id: "claude-sonnet-4",
        name: "Claude Sonnet 4",
        family: "claude-sonnet",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-03",
        release_date: "2025-05-22",
        last_updated: "2025-05-22",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.307, output: 16.536 },
        limit: { context: 200000, output: 64000 },
      },
      "claude-4-5-sonnet": {
        id: "claude-4-5-sonnet",
        name: "Claude 4.5 Sonnet",
        family: "claude-sonnet",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07-31",
        release_date: "2025-09-29",
        last_updated: "2025-09-29",
        modalities: { input: ["text", "image", "pdf"], output: ["text"] },
        open_weights: false,
        cost: { input: 3.259, output: 16.296 },
        limit: { context: 200000, output: 200000 },
      },
      "gemini-2.5-pro": {
        id: "gemini-2.5-pro",
        name: "Gemini 2.5 Pro",
        family: "gemini-pro",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2025-03-20",
        last_updated: "2025-06-17",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.654, output: 11.024 },
        limit: { context: 1048576, output: 65535 },
      },
    },
  },
  xai: {
    id: "xai",
    env: ["XAI_API_KEY"],
    npm: "@ai-sdk/xai",
    name: "xAI",
    doc: "https://docs.x.ai/docs/models",
    models: {
      "grok-2-1212": {
        id: "grok-2-1212",
        name: "Grok 2 (1212)",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-12-12",
        last_updated: "2024-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-4.20-beta-latest-non-reasoning": {
        id: "grok-4.20-beta-latest-non-reasoning",
        name: "Grok 4.20 Beta (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-09",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.2, context_over_200k: { input: 4, output: 12, cache_read: 0.4 } },
        limit: { context: 2000000, output: 30000 },
        status: "beta",
      },
      "grok-2": {
        id: "grok-2",
        name: "Grok 2",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-3-fast-latest": {
        id: "grok-3-fast-latest",
        name: "Grok 3 Fast Latest",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 1.25 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-2-vision": {
        id: "grok-2-vision",
        name: "Grok 2 Vision",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-08-20",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 8192, output: 4096 },
      },
      "grok-3": {
        id: "grok-3",
        name: "Grok 3",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-code-fast-1": {
        id: "grok-code-fast-1",
        name: "Grok Code Fast 1",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2023-10",
        release_date: "2025-08-28",
        last_updated: "2025-08-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 1.5, cache_read: 0.02 },
        limit: { context: 256000, output: 10000 },
      },
      "grok-2-vision-1212": {
        id: "grok-2-vision-1212",
        name: "Grok 2 Vision (1212)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-12-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 8192, output: 4096 },
      },
      "grok-4-1-fast-non-reasoning": {
        id: "grok-4-1-fast-non-reasoning",
        name: "Grok 4.1 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "grok-beta": {
        id: "grok-beta",
        name: "Grok Beta",
        family: "grok-beta",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 15, cache_read: 5 },
        limit: { context: 131072, output: 4096 },
      },
      "grok-3-mini-fast": {
        id: "grok-3-mini-fast",
        name: "Grok 3 Mini Fast",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 4, reasoning: 4, cache_read: 0.15 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-4-fast": {
        id: "grok-4-fast",
        name: "Grok 4 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "grok-4": {
        id: "grok-4",
        name: "Grok 4",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-07-09",
        last_updated: "2025-07-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, reasoning: 15, cache_read: 0.75 },
        limit: { context: 256000, output: 64000 },
      },
      "grok-4.20-multi-agent-beta-latest": {
        id: "grok-4.20-multi-agent-beta-latest",
        name: "Grok 4.20 Multi-Agent Beta",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-09",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.2, context_over_200k: { input: 4, output: 12, cache_read: 0.4 } },
        limit: { context: 2000000, output: 30000 },
        status: "beta",
      },
      "grok-3-latest": {
        id: "grok-3-latest",
        name: "Grok 3 Latest",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 3, output: 15, cache_read: 0.75 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-4-1-fast": {
        id: "grok-4-1-fast",
        name: "Grok 4.1 Fast",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-11-19",
        last_updated: "2025-11-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "grok-2-vision-latest": {
        id: "grok-2-vision-latest",
        name: "Grok 2 Vision Latest",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-12-12",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 8192, output: 4096 },
      },
      "grok-3-mini-latest": {
        id: "grok-3-mini-latest",
        name: "Grok 3 Mini Latest",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, reasoning: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-3-mini": {
        id: "grok-3-mini",
        name: "Grok 3 Mini",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.3, output: 0.5, reasoning: 0.5, cache_read: 0.075 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-3-mini-fast-latest": {
        id: "grok-3-mini-fast-latest",
        name: "Grok 3 Mini Fast Latest",
        family: "grok",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.6, output: 4, reasoning: 4, cache_read: 0.15 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-2-latest": {
        id: "grok-2-latest",
        name: "Grok 2 Latest",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-08-20",
        last_updated: "2024-12-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 10, cache_read: 2 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-4-fast-non-reasoning": {
        id: "grok-4-fast-non-reasoning",
        name: "Grok 4 Fast (Non-Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-07",
        release_date: "2025-09-19",
        last_updated: "2025-09-19",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.2, output: 0.5, cache_read: 0.05 },
        limit: { context: 2000000, output: 30000 },
      },
      "grok-vision-beta": {
        id: "grok-vision-beta",
        name: "Grok Vision Beta",
        family: "grok-vision",
        attachment: true,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-08",
        release_date: "2024-11-01",
        last_updated: "2024-11-01",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 15, cache_read: 5 },
        limit: { context: 8192, output: 4096 },
      },
      "grok-3-fast": {
        id: "grok-3-fast",
        name: "Grok 3 Fast",
        family: "grok",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-11",
        release_date: "2025-02-17",
        last_updated: "2025-02-17",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 5, output: 25, cache_read: 1.25 },
        limit: { context: 131072, output: 8192 },
      },
      "grok-4.20-beta-latest-reasoning": {
        id: "grok-4.20-beta-latest-reasoning",
        name: "Grok 4.20 Beta (Reasoning)",
        family: "grok",
        attachment: true,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-03-09",
        last_updated: "2026-03-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 2, output: 6, cache_read: 0.2, context_over_200k: { input: 4, output: 12, cache_read: 0.4 } },
        limit: { context: 2000000, output: 30000 },
        status: "beta",
      },
    },
  },
  "alibaba-cn": {
    id: "alibaba-cn",
    env: ["DASHSCOPE_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://dashscope.aliyuncs.com/compatible-mode/v1",
    name: "Alibaba (China)",
    doc: "https://www.alibabacloud.com/help/en/model-studio/models",
    models: {
      "qwen-vl-plus": {
        id: "qwen-vl-plus",
        name: "Qwen-VL Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01-25",
        last_updated: "2025-08-15",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.115, output: 0.287 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-vl-max": {
        id: "qwen-vl-max",
        name: "Qwen-VL Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-08",
        last_updated: "2025-08-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.23, output: 0.574 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-math-plus": {
        id: "qwen-math-plus",
        name: "Qwen Math Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-08-16",
        last_updated: "2024-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.574, output: 1.721 },
        limit: { context: 4096, output: 3072 },
      },
      "deepseek-v3-1": {
        id: "deepseek-v3-1",
        name: "DeepSeek V3.1",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.574, output: 1.721 },
        limit: { context: 131072, output: 65536 },
      },
      "glm-5": {
        id: "glm-5",
        name: "GLM-5",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-11",
        last_updated: "2026-02-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.86, output: 3.15 },
        limit: { context: 202752, output: 16384 },
      },
      "qwen2-5-coder-7b-instruct": {
        id: "qwen2-5-coder-7b-instruct",
        name: "Qwen2.5-Coder 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-11",
        last_updated: "2024-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 0.287 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-next-80b-a3b-thinking": {
        id: "qwen3-next-80b-a3b-thinking",
        name: "Qwen3-Next 80B-A3B (Thinking)",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 1.434 },
        limit: { context: 131072, output: 32768 },
      },
      "deepseek-v3": {
        id: "deepseek-v3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2024-12-01",
        last_updated: "2024-12-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.287, output: 1.147 },
        limit: { context: 65536, output: 8192 },
      },
      "qwen3-coder-480b-a35b-instruct": {
        id: "qwen3-coder-480b-a35b-instruct",
        name: "Qwen3-Coder 480B-A35B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.861, output: 3.441 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen-long": {
        id: "qwen-long",
        name: "Qwen Long",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01-25",
        last_updated: "2025-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.072, output: 0.287 },
        limit: { context: 10000000, output: 8192 },
      },
      "qwen3-14b": {
        id: "qwen3-14b",
        name: "Qwen3 14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 0.574, reasoning: 1.434 },
        limit: { context: 131072, output: 8192 },
      },
      "qwq-32b": {
        id: "qwq-32b",
        name: "QwQ 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-coder-flash": {
        id: "qwen3-coder-flash",
        name: "Qwen3 Coder Flash",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.144, output: 0.574 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-vl-30b-a3b": {
        id: "qwen3-vl-30b-a3b",
        name: "Qwen3-VL 30B-A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.108, output: 0.431, reasoning: 1.076 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen3-asr-flash": {
        id: "qwen3-asr-flash",
        name: "Qwen3-ASR Flash",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: false,
        knowledge: "2024-04",
        release_date: "2025-09-08",
        last_updated: "2025-09-08",
        modalities: { input: ["audio"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.032, output: 0.032 },
        limit: { context: 53248, output: 4096 },
      },
      "qwen-max": {
        id: "qwen-max",
        name: "Qwen Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-04-03",
        last_updated: "2025-01-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.345, output: 1.377 },
        limit: { context: 131072, output: 8192 },
      },
      "deepseek-r1-distill-qwen-14b": {
        id: "deepseek-r1-distill-qwen-14b",
        name: "DeepSeek R1 Distill Qwen 14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.144, output: 0.431 },
        limit: { context: 32768, output: 16384 },
      },
      "moonshot-kimi-k2-instruct": {
        id: "moonshot-kimi-k2-instruct",
        name: "Moonshot Kimi K2 Instruct",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.574, output: 2.294 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-doc-turbo": {
        id: "qwen-doc-turbo",
        name: "Qwen Doc Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.087, output: 0.144 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen-turbo": {
        id: "qwen-turbo",
        name: "Qwen Turbo",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-11-01",
        last_updated: "2025-07-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.044, output: 0.087, reasoning: 0.431 },
        limit: { context: 1000000, output: 16384 },
      },
      "qwen2-5-7b-instruct": {
        id: "qwen2-5-7b-instruct",
        name: "Qwen2.5 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.072, output: 0.144 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen2-5-vl-72b-instruct": {
        id: "qwen2-5-vl-72b-instruct",
        name: "Qwen2.5-VL 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 2.294, output: 6.881 },
        limit: { context: 131072, output: 8192 },
      },
      "tongyi-intent-detect-v3": {
        id: "tongyi-intent-detect-v3",
        name: "Tongyi Intent Detect V3",
        family: "yi",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.058, output: 0.144 },
        limit: { context: 8192, output: 1024 },
      },
      "qwen2-5-14b-instruct": {
        id: "qwen2-5-14b-instruct",
        name: "Qwen2.5 14B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 0.431 },
        limit: { context: 131072, output: 8192 },
      },
      "deepseek-r1-0528": {
        id: "deepseek-r1-0528",
        name: "DeepSeek R1 0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-05-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.574, output: 2.294 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3-8b": {
        id: "qwen3-8b",
        name: "Qwen3 8B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.072, output: 0.287, reasoning: 0.717 },
        limit: { context: 131072, output: 8192 },
      },
      "deepseek-r1": {
        id: "deepseek-r1",
        name: "DeepSeek R1",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.574, output: 2.294 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3-32b": {
        id: "qwen3-32b",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 1.147, reasoning: 2.868 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3.5-397b-a17b": {
        id: "qwen3.5-397b-a17b",
        name: "Qwen3.5 397B-A17B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.43, output: 2.58, reasoning: 2.58 },
        limit: { context: 262144, output: 65536 },
      },
      "qvq-max": {
        id: "qvq-max",
        name: "QVQ Max",
        family: "qvq",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-03-25",
        last_updated: "2025-03-25",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 1.147, output: 4.588 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen2-5-omni-7b": {
        id: "qwen2-5-omni-7b",
        name: "Qwen2.5-Omni 7B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-12",
        last_updated: "2024-12",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: true,
        cost: { input: 0.087, output: 0.345, input_audio: 5.448 },
        limit: { context: 32768, output: 2048 },
      },
      "qwen-plus-character": {
        id: "qwen-plus-character",
        name: "Qwen Plus Character",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.115, output: 0.287 },
        limit: { context: 32768, output: 4096 },
      },
      "deepseek-r1-distill-llama-70b": {
        id: "deepseek-r1-distill-llama-70b",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 32768, output: 16384 },
      },
      "qwen2-5-vl-7b-instruct": {
        id: "qwen2-5-vl-7b-instruct",
        name: "Qwen2.5-VL 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 0.717 },
        limit: { context: 131072, output: 8192 },
      },
      "kimi-k2.5": {
        id: "kimi-k2.5",
        name: "Moonshot Kimi K2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: false,
        temperature: true,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.574, output: 2.411 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen-omni-turbo-realtime": {
        id: "qwen-omni-turbo-realtime",
        name: "Qwen-Omni Turbo Realtime",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-05-08",
        last_updated: "2025-05-08",
        modalities: { input: ["text", "image", "audio"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.23, output: 0.918, input_audio: 3.584, output_audio: 7.168 },
        limit: { context: 32768, output: 2048 },
      },
      "deepseek-v3-2-exp": {
        id: "deepseek-v3-2-exp",
        name: "DeepSeek V3.2 Exp",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.287, output: 0.431 },
        limit: { context: 131072, output: 65536 },
      },
      "deepseek-r1-distill-llama-8b": {
        id: "deepseek-r1-distill-llama-8b",
        name: "DeepSeek R1 Distill Llama 8B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 16384 },
      },
      "qwen3-235b-a22b": {
        id: "qwen3-235b-a22b",
        name: "Qwen3 235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 1.147, reasoning: 2.868 },
        limit: { context: 131072, output: 16384 },
      },
      "qwen3-coder-30b-a3b-instruct": {
        id: "qwen3-coder-30b-a3b-instruct",
        name: "Qwen3-Coder 30B-A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.216, output: 0.861 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen-omni-turbo": {
        id: "qwen-omni-turbo",
        name: "Qwen-Omni Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01-19",
        last_updated: "2025-03-26",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.058, output: 0.23, input_audio: 3.584, output_audio: 7.168 },
        limit: { context: 32768, output: 2048 },
      },
      "qwen-mt-plus": {
        id: "qwen-mt-plus",
        name: "Qwen-MT Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.259, output: 0.775 },
        limit: { context: 16384, output: 8192 },
      },
      "qwen3.5-flash": {
        id: "qwen3.5-flash",
        name: "Qwen3.5 Flash",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-23",
        last_updated: "2026-02-23",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.172, output: 1.72, reasoning: 1.72 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen2-5-math-7b-instruct": {
        id: "qwen2-5-math-7b-instruct",
        name: "Qwen2.5-Math 7B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 0.287 },
        limit: { context: 4096, output: 3072 },
      },
      "deepseek-r1-distill-qwen-1-5b": {
        id: "deepseek-r1-distill-qwen-1-5b",
        name: "DeepSeek R1 Distill Qwen 1.5B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0, output: 0 },
        limit: { context: 32768, output: 16384 },
      },
      "deepseek-r1-distill-qwen-7b": {
        id: "deepseek-r1-distill-qwen-7b",
        name: "DeepSeek R1 Distill Qwen 7B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.072, output: 0.144 },
        limit: { context: 32768, output: 16384 },
      },
      "kimi-k2-thinking": {
        id: "kimi-k2-thinking",
        name: "Moonshot Kimi K2 Thinking",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-11-06",
        last_updated: "2025-11-06",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.574, output: 2.294 },
        limit: { context: 262144, output: 16384 },
      },
      "deepseek-r1-distill-qwen-32b": {
        id: "deepseek-r1-distill-qwen-32b",
        name: "DeepSeek R1 Distill Qwen 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2025-01-01",
        last_updated: "2025-01-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 32768, output: 16384 },
      },
      "qwen-deep-research": {
        id: "qwen-deep-research",
        name: "Qwen Deep Research",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01",
        last_updated: "2024-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 7.742, output: 23.367 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen3-vl-plus": {
        id: "qwen3-vl-plus",
        name: "Qwen3-VL Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.143353, output: 1.433525, reasoning: 4.300576 },
        limit: { context: 262144, output: 32768 },
      },
      "qwen2-5-math-72b-instruct": {
        id: "qwen2-5-math-72b-instruct",
        name: "Qwen2.5-Math 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.574, output: 1.721 },
        limit: { context: 4096, output: 3072 },
      },
      "qwen-plus": {
        id: "qwen-plus",
        name: "Qwen Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-01-25",
        last_updated: "2025-09-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.115, output: 0.287, reasoning: 1.147 },
        limit: { context: 1000000, output: 32768 },
      },
      "minimax-m2.5": {
        id: "minimax-m2.5",
        name: "MiniMax-M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 204800, output: 131072 },
      },
      "qwen2-5-32b-instruct": {
        id: "qwen2-5-32b-instruct",
        name: "Qwen2.5 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-next-80b-a3b-instruct": {
        id: "qwen3-next-80b-a3b-instruct",
        name: "Qwen3-Next 80B-A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09",
        last_updated: "2025-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.144, output: 0.574 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen3.5-plus": {
        id: "qwen3.5-plus",
        name: "Qwen3.5 Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2026-02-16",
        last_updated: "2026-02-16",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.573, output: 3.44, reasoning: 3.44 },
        limit: { context: 1000000, output: 65536 },
      },
      "qwen3-max": {
        id: "qwen3-max",
        name: "Qwen3 Max",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-09-23",
        last_updated: "2025-09-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.861, output: 3.441 },
        limit: { context: 262144, output: 65536 },
      },
      "qwen3-omni-flash": {
        id: "qwen3-omni-flash",
        name: "Qwen3-Omni Flash",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio", "video"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.058, output: 0.23, input_audio: 3.584, output_audio: 7.168 },
        limit: { context: 65536, output: 16384 },
      },
      "qwen-math-turbo": {
        id: "qwen-math-turbo",
        name: "Qwen Math Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09-19",
        last_updated: "2024-09-19",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 4096, output: 3072 },
      },
      "qwen-flash": {
        id: "qwen-flash",
        name: "Qwen Flash",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-07-28",
        last_updated: "2025-07-28",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.022, output: 0.216 },
        limit: { context: 1000000, output: 32768 },
      },
      "qwen2-5-72b-instruct": {
        id: "qwen2-5-72b-instruct",
        name: "Qwen2.5 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-09",
        last_updated: "2024-09",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.574, output: 1.721 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-omni-flash-realtime": {
        id: "qwen3-omni-flash-realtime",
        name: "Qwen3-Omni Flash Realtime",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-09-15",
        last_updated: "2025-09-15",
        modalities: { input: ["text", "image", "audio"], output: ["text", "audio"] },
        open_weights: false,
        cost: { input: 0.23, output: 0.918, input_audio: 3.584, output_audio: 7.168 },
        limit: { context: 65536, output: 16384 },
      },
      "qwen-vl-ocr": {
        id: "qwen-vl-ocr",
        name: "Qwen-VL OCR",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-10-28",
        last_updated: "2025-04-13",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.717, output: 0.717 },
        limit: { context: 34096, output: 4096 },
      },
      "qwq-plus": {
        id: "qwq-plus",
        name: "QwQ Plus",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-03-05",
        last_updated: "2025-03-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.23, output: 0.574 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-vl-235b-a22b": {
        id: "qwen3-vl-235b-a22b",
        name: "Qwen3-VL 235B-A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-04",
        last_updated: "2025-04",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.286705, output: 1.14682, reasoning: 2.867051 },
        limit: { context: 131072, output: 32768 },
      },
      "qwen-mt-turbo": {
        id: "qwen-mt-turbo",
        name: "Qwen-MT Turbo",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2025-01",
        last_updated: "2025-01",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.101, output: 0.28 },
        limit: { context: 16384, output: 8192 },
      },
      "qwen2-5-coder-32b-instruct": {
        id: "qwen2-5-coder-32b-instruct",
        name: "Qwen2.5-Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2024-04",
        release_date: "2024-11",
        last_updated: "2024-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.287, output: 0.861 },
        limit: { context: 131072, output: 8192 },
      },
      "qwen3-coder-plus": {
        id: "qwen3-coder-plus",
        name: "Qwen3 Coder Plus",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        temperature: true,
        knowledge: "2025-04",
        release_date: "2025-07-23",
        last_updated: "2025-07-23",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 1, output: 5 },
        limit: { context: 1048576, output: 65536 },
      },
      "kimi/kimi-k2.5": {
        id: "kimi/kimi-k2.5",
        name: "kimi/kimi-k2.5",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: false,
        knowledge: "2025-01",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3, cache_read: 0.1 },
        limit: { context: 262144, output: 262144 },
      },
      "siliconflow/deepseek-r1-0528": {
        id: "siliconflow/deepseek-r1-0528",
        name: "siliconflow/deepseek-r1-0528",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-05-28",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.5, output: 2.18 },
        limit: { context: 163840, output: 32768 },
      },
      "siliconflow/deepseek-v3-0324": {
        id: "siliconflow/deepseek-v3-0324",
        name: "siliconflow/deepseek-v3-0324",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2024-12-26",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.25, output: 1 },
        limit: { context: 163840, output: 163840 },
      },
      "siliconflow/deepseek-v3.1-terminus": {
        id: "siliconflow/deepseek-v3.1-terminus",
        name: "siliconflow/deepseek-v3.1-terminus",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-09-29",
        last_updated: "2025-11-25",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 1 },
        limit: { context: 163840, output: 65536 },
      },
      "siliconflow/deepseek-v3.2": {
        id: "siliconflow/deepseek-v3.2",
        name: "siliconflow/deepseek-v3.2",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-03",
        last_updated: "2025-12-03",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: false,
        cost: { input: 0.27, output: 0.42 },
        limit: { context: 163840, output: 65536 },
      },
      "MiniMax/MiniMax-M2.5": {
        id: "MiniMax/MiniMax-M2.5",
        name: "MiniMax M2.5",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        temperature: true,
        release_date: "2026-02-12",
        last_updated: "2026-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.301, output: 1.205 },
        limit: { context: 204800, output: 131072 },
      },
    },
  },
  chutes: {
    id: "chutes",
    env: ["CHUTES_API_KEY"],
    npm: "@ai-sdk/openai-compatible",
    api: "https://llm.chutes.ai/v1",
    name: "Chutes",
    doc: "https://llm.chutes.ai/v1/models",
    models: {
      "zai-org/GLM-4.7-FP8": {
        id: "zai-org/GLM-4.7-FP8",
        name: "GLM 4.7 FP8",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 202752, output: 65535 },
      },
      "zai-org/GLM-4.5-Air": {
        id: "zai-org/GLM-4.5-Air",
        name: "GLM 4.5 Air",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22 },
        limit: { context: 131072, output: 131072 },
      },
      "zai-org/GLM-4.7-Flash": {
        id: "zai-org/GLM-4.7-Flash",
        name: "GLM 4.7 Flash",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.35 },
        limit: { context: 202752, output: 65535 },
      },
      "zai-org/GLM-4.7-TEE": {
        id: "zai-org/GLM-4.7-TEE",
        name: "GLM 4.7 TEE",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.5 },
        limit: { context: 202752, output: 65535 },
      },
      "zai-org/GLM-4.6-TEE": {
        id: "zai-org/GLM-4.6-TEE",
        name: "GLM 4.6 TEE",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.5 },
        limit: { context: 202752, output: 65536 },
      },
      "zai-org/GLM-4.5-FP8": {
        id: "zai-org/GLM-4.5-FP8",
        name: "GLM 4.5 FP8",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 131072, output: 65536 },
      },
      "zai-org/GLM-5-TEE": {
        id: "zai-org/GLM-5-TEE",
        name: "GLM 5 TEE",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-14",
        last_updated: "2026-02-14",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.75, output: 2.5 },
        limit: { context: 202752, output: 65535 },
      },
      "zai-org/GLM-4.6V": {
        id: "zai-org/GLM-4.6V",
        name: "GLM 4.6V",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 0.9 },
        limit: { context: 131072, output: 65536 },
      },
      "zai-org/GLM-4.6-FP8": {
        id: "zai-org/GLM-4.6-FP8",
        name: "GLM 4.6 FP8",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 202752, output: 65535 },
      },
      "zai-org/GLM-4.5-TEE": {
        id: "zai-org/GLM-4.5-TEE",
        name: "GLM 4.5 TEE",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.35, output: 1.55 },
        limit: { context: 131072, output: 65536 },
      },
      "zai-org/GLM-5-Turbo": {
        id: "zai-org/GLM-5-Turbo",
        name: "GLM 5 Turbo",
        family: "glm",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-03-11",
        last_updated: "2026-03-11",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.49, output: 1.96, cache_read: 0.245 },
        limit: { context: 202752, output: 65535 },
      },
      "nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16": {
        id: "nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16",
        name: "NVIDIA Nemotron 3 Nano 30B A3B BF16",
        family: "nemotron",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.24 },
        limit: { context: 262144, output: 262144 },
      },
      "NousResearch/Hermes-4.3-36B": {
        id: "NousResearch/Hermes-4.3-36B",
        name: "Hermes 4.3 36B",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.39 },
        limit: { context: 32768, output: 8192 },
      },
      "NousResearch/DeepHermes-3-Mistral-24B-Preview": {
        id: "NousResearch/DeepHermes-3-Mistral-24B-Preview",
        name: "DeepHermes 3 Mistral 24B Preview",
        family: "nousresearch",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.1 },
        limit: { context: 32768, output: 32768 },
      },
      "NousResearch/Hermes-4-14B": {
        id: "NousResearch/Hermes-4-14B",
        name: "Hermes 4 14B",
        family: "nousresearch",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.05 },
        limit: { context: 40960, output: 40960 },
      },
      "NousResearch/Hermes-4-405B-FP8-TEE": {
        id: "NousResearch/Hermes-4-405B-FP8-TEE",
        name: "Hermes 4 405B FP8 TEE",
        family: "nousresearch",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 131072, output: 65536 },
      },
      "NousResearch/Hermes-4-70B": {
        id: "NousResearch/Hermes-4-70B",
        name: "Hermes 4 70B",
        family: "nousresearch",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.38 },
        limit: { context: 131072, output: 131072 },
      },
      "XiaomiMiMo/MiMo-V2-Flash": {
        id: "XiaomiMiMo/MiMo-V2-Flash",
        name: "MiMo V2 Flash",
        family: "mimo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.09, output: 0.29 },
        limit: { context: 262144, output: 32000 },
      },
      "MiniMaxAI/MiniMax-M2.5-TEE": {
        id: "MiniMaxAI/MiniMax-M2.5-TEE",
        name: "MiniMax M2.5 TEE",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-15",
        last_updated: "2026-02-15",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 196608, output: 65536 },
      },
      "MiniMaxAI/MiniMax-M2.1-TEE": {
        id: "MiniMaxAI/MiniMax-M2.1-TEE",
        name: "MiniMax M2.1 TEE",
        family: "minimax",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 1.12 },
        limit: { context: 196608, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.1-Terminus-TEE": {
        id: "deepseek-ai/DeepSeek-V3.1-Terminus-TEE",
        name: "DeepSeek V3.1 Terminus TEE",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.23, output: 0.9 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.2-TEE": {
        id: "deepseek-ai/DeepSeek-V3.2-TEE",
        name: "DeepSeek V3.2 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.38, cache_read: 0.125 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3-0324-TEE": {
        id: "deepseek-ai/DeepSeek-V3-0324-TEE",
        name: "DeepSeek V3 0324 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.19, output: 0.87, cache_read: 0.095 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-V3.2-Speciale-TEE": {
        id: "deepseek-ai/DeepSeek-V3.2-Speciale-TEE",
        name: "DeepSeek V3.2 Speciale TEE",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: false,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.27, output: 0.41 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-R1-TEE": {
        id: "deepseek-ai/DeepSeek-R1-TEE",
        name: "DeepSeek R1 TEE",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: false,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek-ai/DeepSeek-V3": {
        id: "deepseek-ai/DeepSeek-V3",
        name: "DeepSeek V3",
        family: "deepseek",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 163840, output: 163840 },
      },
      "deepseek-ai/DeepSeek-R1-Distill-Llama-70B": {
        id: "deepseek-ai/DeepSeek-R1-Distill-Llama-70B",
        name: "DeepSeek R1 Distill Llama 70B",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.11 },
        limit: { context: 131072, output: 131072 },
      },
      "deepseek-ai/DeepSeek-V3.1-TEE": {
        id: "deepseek-ai/DeepSeek-V3.1-TEE",
        name: "DeepSeek V3.1 TEE",
        family: "deepseek",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.2, output: 0.8 },
        limit: { context: 163840, output: 65536 },
      },
      "deepseek-ai/DeepSeek-R1-0528-TEE": {
        id: "deepseek-ai/DeepSeek-R1-0528-TEE",
        name: "DeepSeek R1 0528 TEE",
        family: "deepseek-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.75 },
        limit: { context: 163840, output: 65536 },
      },
      "rednote-hilab/dots.ocr": {
        id: "rednote-hilab/dots.ocr",
        name: "dots.ocr",
        family: "rednote",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.01, cache_read: 0.005 },
        limit: { context: 131072, output: 131072 },
      },
      "unsloth/Mistral-Nemo-Instruct-2407": {
        id: "unsloth/Mistral-Nemo-Instruct-2407",
        name: "Mistral Nemo Instruct 2407",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.04, cache_read: 0.01 },
        limit: { context: 131072, output: 131072 },
      },
      "unsloth/Mistral-Small-24B-Instruct-2501": {
        id: "unsloth/Mistral-Small-24B-Instruct-2501",
        name: "Mistral Small 24B Instruct 2501",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.11 },
        limit: { context: 32768, output: 32768 },
      },
      "unsloth/gemma-3-12b-it": {
        id: "unsloth/gemma-3-12b-it",
        name: "gemma 3 12b it",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.1 },
        limit: { context: 131072, output: 131072 },
      },
      "unsloth/gemma-3-4b-it": {
        id: "unsloth/gemma-3-4b-it",
        name: "gemma 3 4b it",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.03 },
        limit: { context: 96000, output: 96000 },
      },
      "unsloth/gemma-3-27b-it": {
        id: "unsloth/gemma-3-27b-it",
        name: "gemma 3 27b it",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.15, cache_read: 0.02 },
        limit: { context: 128000, output: 65536 },
      },
      "unsloth/Llama-3.2-1B-Instruct": {
        id: "unsloth/Llama-3.2-1B-Instruct",
        name: "Llama 3.2 1B Instruct",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.01, cache_read: 0.005 },
        limit: { context: 32768, output: 8192 },
      },
      "unsloth/Llama-3.2-3B-Instruct": {
        id: "unsloth/Llama-3.2-3B-Instruct",
        name: "Llama 3.2 3B Instruct",
        family: "unsloth",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-02-12",
        last_updated: "2025-02-12",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.01, cache_read: 0.005 },
        limit: { context: 16384, output: 16384 },
      },
      "moonshotai/Kimi-K2-Instruct-0905": {
        id: "moonshotai/Kimi-K2-Instruct-0905",
        name: "Kimi K2 Instruct 0905",
        family: "kimi",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.39, output: 1.9, cache_read: 0.195 },
        limit: { context: 262144, output: 262144 },
      },
      "moonshotai/Kimi-K2.5-TEE": {
        id: "moonshotai/Kimi-K2.5-TEE",
        name: "Kimi K2.5 TEE",
        family: "kimi",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        knowledge: "2024-10",
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text", "image", "video"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.6, output: 3 },
        limit: { context: 262144, output: 65535 },
      },
      "moonshotai/Kimi-K2-Thinking-TEE": {
        id: "moonshotai/Kimi-K2-Thinking-TEE",
        name: "Kimi K2 Thinking TEE",
        family: "kimi-thinking",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.4, output: 1.75 },
        limit: { context: 262144, output: 65535 },
      },
      "Qwen/Qwen3-30B-A3B": {
        id: "Qwen/Qwen3-30B-A3B",
        name: "Qwen3 30B A3B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.22 },
        limit: { context: 40960, output: 40960 },
      },
      "Qwen/Qwen3-30B-A3B-Instruct-2507": {
        id: "Qwen/Qwen3-30B-A3B-Instruct-2507",
        name: "Qwen3 30B A3B Instruct 2507",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.33 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-VL-235B-A22B-Instruct": {
        id: "Qwen/Qwen3-VL-235B-A22B-Instruct",
        name: "Qwen3 VL 235B A22B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3.5-397B-A17B-TEE": {
        id: "Qwen/Qwen3.5-397B-A17B-TEE",
        name: "Qwen3.5 397B A17B TEE",
        family: "qwen",
        attachment: true,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2026-02-18",
        last_updated: "2026-02-18",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.15 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3-32B": {
        id: "Qwen/Qwen3-32B",
        name: "Qwen3 32B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.24, cache_read: 0.04 },
        limit: { context: 40960, output: 40960 },
      },
      "Qwen/Qwen3-Next-80B-A3B-Instruct": {
        id: "Qwen/Qwen3-Next-80B-A3B-Instruct",
        name: "Qwen3 Next 80B A3B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.8 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-235B-A22B-Thinking-2507": {
        id: "Qwen/Qwen3-235B-A22B-Thinking-2507",
        name: "Qwen3 235B A22B Thinking 2507",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.11, output: 0.6 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen3-Coder-Next": {
        id: "Qwen/Qwen3-Coder-Next",
        name: "Qwen3 Coder Next",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-02-05",
        last_updated: "2026-02-05",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.07, output: 0.3 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen2.5-Coder-32B-Instruct": {
        id: "Qwen/Qwen2.5-Coder-32B-Instruct",
        name: "Qwen2.5 Coder 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.11 },
        limit: { context: 32768, output: 32768 },
      },
      "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8-TEE": {
        id: "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8-TEE",
        name: "Qwen3 Coder 480B A35B Instruct FP8 TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.95, cache_read: 0.11 },
        limit: { context: 262144, output: 262144 },
      },
      "Qwen/Qwen2.5-72B-Instruct": {
        id: "Qwen/Qwen2.5-72B-Instruct",
        name: "Qwen2.5 72B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.13, output: 0.52 },
        limit: { context: 32768, output: 32768 },
      },
      "Qwen/Qwen3-235B-A22B-Instruct-2507-TEE": {
        id: "Qwen/Qwen3-235B-A22B-Instruct-2507-TEE",
        name: "Qwen3 235B A22B Instruct 2507 TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.08, output: 0.55, cache_read: 0.04 },
        limit: { context: 262144, output: 65536 },
      },
      "Qwen/Qwen3-235B-A22B": {
        id: "Qwen/Qwen3-235B-A22B",
        name: "Qwen3 235B A22B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 40960, output: 40960 },
      },
      "Qwen/Qwen2.5-VL-72B-Instruct-TEE": {
        id: "Qwen/Qwen2.5-VL-72B-Instruct-TEE",
        name: "Qwen2.5 VL 72B Instruct TEE",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.15, output: 0.6 },
        limit: { context: 32768, output: 32768 },
      },
      "Qwen/Qwen3Guard-Gen-0.6B": {
        id: "Qwen/Qwen3Guard-Gen-0.6B",
        name: "Qwen3Guard Gen 0.6B",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.01, output: 0.01, cache_read: 0.005 },
        limit: { context: 32768, output: 8192 },
      },
      "Qwen/Qwen3-14B": {
        id: "Qwen/Qwen3-14B",
        name: "Qwen3 14B",
        family: "qwen",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22 },
        limit: { context: 40960, output: 40960 },
      },
      "Qwen/Qwen2.5-VL-32B-Instruct": {
        id: "Qwen/Qwen2.5-VL-32B-Instruct",
        name: "Qwen2.5 VL 32B Instruct",
        family: "qwen",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22 },
        limit: { context: 16384, output: 16384 },
      },
      "tngtech/DeepSeek-R1T-Chimera": {
        id: "tngtech/DeepSeek-R1T-Chimera",
        name: "DeepSeek R1T Chimera",
        family: "tngtech",
        attachment: false,
        reasoning: true,
        tool_call: false,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2 },
        limit: { context: 163840, output: 163840 },
      },
      "tngtech/DeepSeek-TNG-R1T2-Chimera": {
        id: "tngtech/DeepSeek-TNG-R1T2-Chimera",
        name: "DeepSeek TNG R1T2 Chimera",
        family: "tngtech",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.85 },
        limit: { context: 163840, output: 163840 },
      },
      "tngtech/TNG-R1T-Chimera-Turbo": {
        id: "tngtech/TNG-R1T-Chimera-Turbo",
        name: "TNG R1T Chimera Turbo",
        attachment: false,
        reasoning: true,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-27",
        last_updated: "2026-01-27",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.22, output: 0.6 },
        limit: { context: 163840, output: 65536 },
      },
      "tngtech/TNG-R1T-Chimera-TEE": {
        id: "tngtech/TNG-R1T-Chimera-TEE",
        name: "TNG R1T Chimera TEE",
        family: "tngtech",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.25, output: 0.85 },
        limit: { context: 163840, output: 65536 },
      },
      "mistralai/Devstral-2-123B-Instruct-2512-TEE": {
        id: "mistralai/Devstral-2-123B-Instruct-2512-TEE",
        name: "Devstral 2 123B Instruct 2512 TEE",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2026-01-10",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.05, output: 0.22 },
        limit: { context: 262144, output: 65536 },
      },
      "openai/gpt-oss-120b-TEE": {
        id: "openai/gpt-oss-120b-TEE",
        name: "gpt oss 120b TEE",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.04, output: 0.18 },
        limit: { context: 131072, output: 65536 },
      },
      "openai/gpt-oss-20b": {
        id: "openai/gpt-oss-20b",
        name: "gpt oss 20b",
        family: "gpt-oss",
        attachment: false,
        reasoning: true,
        tool_call: true,
        interleaved: { field: "reasoning_content" },
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.02, output: 0.1 },
        limit: { context: 131072, output: 131072 },
      },
      "chutesai/Mistral-Small-3.2-24B-Instruct-2506": {
        id: "chutesai/Mistral-Small-3.2-24B-Instruct-2506",
        name: "Mistral Small 3.2 24B Instruct 2506",
        family: "chutesai",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.06, output: 0.18 },
        limit: { context: 131072, output: 131072 },
      },
      "chutesai/Mistral-Small-3.1-24B-Instruct-2503": {
        id: "chutesai/Mistral-Small-3.1-24B-Instruct-2503",
        name: "Mistral Small 3.1 24B Instruct 2503",
        family: "chutesai",
        attachment: false,
        reasoning: false,
        tool_call: true,
        structured_output: true,
        temperature: true,
        release_date: "2025-12-29",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.03, output: 0.11, cache_read: 0.015 },
        limit: { context: 131072, output: 131072 },
      },
      "miromind-ai/MiroThinker-v1.5-235B": {
        id: "miromind-ai/MiroThinker-v1.5-235B",
        name: "MiroThinker V1.5 235B",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: false,
        temperature: true,
        release_date: "2026-01-10",
        last_updated: "2026-01-10",
        modalities: { input: ["text"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.3, output: 1.2, cache_read: 0.15 },
        limit: { context: 262144, output: 8192 },
      },
      "OpenGVLab/InternVL3-78B-TEE": {
        id: "OpenGVLab/InternVL3-78B-TEE",
        name: "InternVL3 78B TEE",
        family: "opengvlab",
        attachment: false,
        reasoning: false,
        tool_call: false,
        structured_output: true,
        temperature: true,
        release_date: "2025-01-06",
        last_updated: "2026-01-10",
        modalities: { input: ["text", "image"], output: ["text"] },
        open_weights: true,
        cost: { input: 0.1, output: 0.39 },
        limit: { context: 32768, output: 32768 },
      },
    },
  },
} as const
