FLUX 3 and Gemini 3.7 Flash are now live on CometAPI →
框架、代理程式與開發者工具

Vercel AI SDK + CometAPI:建置多模型聊天路由

建立一個可串流的聊天端點,能在不更換應用整合的情況下切換 model ID。

連結的程式碼、雲端與訊息模組,構成一個 AI 整合工作流程
CA
CometAPI 研究
AI 模型與 API 工程
2026 年 8 月 6 日 7 分鐘閱讀

重點摘要

將 CometAPI key 保留在伺服器端,並僅向用戶端公開已核准的 model alias。
使用單一 provider 設定,並依工作負載變更 model ID。
以串流回應提升感知延遲表現。
在正式上線前加入請求預算、驗證與 fallback。

安裝並設定 provider

Vercel AI SDK 可以使用相容 OpenAI 的 provider。只需設定一次 CometAPI base URL,並將 API key 保存在伺服器端環境變數中。

import { createOpenAI } from '@ai-sdk/openai';

export const cometapi = createOpenAI({
  apiKey: process.env.COMETAPI_KEY,
  baseURL: 'https://api.cometapi.com/v1',
});

建立串流聊天路由

在伺服器端從 allowlist 中選擇模型。這可防止用戶端選取非預期的高成本模型,同時保留多模型彈性。

import { streamText } from 'ai';
import { cometapi } from '@/lib/cometapi';

const allowedModels = {
  fast: 'your-fast-model-id',
  quality: 'your-quality-model-id',
};

export async function POST(request: Request) {
  const { messages, route = 'fast' } = await request.json();
  const modelId = allowedModels[route as keyof typeof allowedModels];

  const result = streamText({
    model: cometapi(modelId),
    messages,
  });

  return result.toDataStreamResponse();
}

依工作負載切換模型

對於對話回合使用較快的路由,對於複雜分析、長篇程式碼變更或高價值審查則使用高品質路由。請保持路由邏輯可觀測,以便日後比較成本與品質。

  • 在嘗試自動分類之前,先依明確的產品模式進行路由。
  • 記錄所選路由、model ID、token、延遲與請求結果。
  • 套用帳戶層級與請求層級的支出上限。

生產環境檢查清單

在上線前,請加入結構驗證、逾時處理、對暫時性失敗的重試,以及相容的 fallback 路由。切勿在瀏覽器程式碼中暴露上游 API key。

常見問題

Vercel AI SDK 可以使用相容 OpenAI 的 API 嗎?

可以。請以替代的 base URL 與 API key 設定相容的 provider,然後在建立請求時提供 model ID。

使用者應該能從瀏覽器選擇任何 model ID 嗎?

不應該。生產環境應用程式應將面向用戶的路由名稱對應到伺服器端 allowlist,以維持成本、能力與安全性的可控性。

繼續閱讀 整合與工作流程
返回本區塊總覽與後續文章。
查看區塊