Back to blog
    v0 應用程式 AI 功能以固定成本運行——不再按 token 計費
    v0vercelai-featurescost-reductionfine-tuningsegment:vibecoder

    v0 應用程式 AI 功能以固定成本運行——不再按 token 計費

    v0 by Vercel 讓 AI 功能透過 Vercel AI SDK 變得簡單。以下是如何將按 token 的雲端 API 成本替換為固定月費的微調本地模型。

    EErtas Team·

    v0 by Vercel 從自然語言生成生產品質的 React 元件。當你為這些元件添加 AI 功能時,自然的路徑是 Vercel AI SDK——預設情況下,它路由到 OpenAI 或 Anthropic。按 token 計費。每次請求。

    對於原型和早期應用程式,這沒問題。對於有真實用戶的應用程式,成本曲線很快就成為問題,因為 Vercel AI SDK 讓在任何地方添加串流 AI 回應變得容易。

    v0 應用程式通常如何使用 AI

    Vercel AI SDK 是 v0 生成的應用程式中 AI 功能的標準。模式很清晰:

    // app/api/chat/route.ts — 典型的 v0 AI 功能
    import { openai } from "@ai-sdk/openai";
    import { streamText } from "ai";
    
    export async function POST(req: Request) {
      const { messages } = await req.json();
    
      const result = streamText({
        model: openai("gpt-4o-mini"),
        messages,
        system: "You are a helpful assistant for [your domain].",
      });
    
      return result.toDataStreamResponse();
    }

    這是出色的程式碼。它串流回應、處理錯誤,並與 React 的串流模式完美配合。v0 生成的前端元件完美地使用它。

    問題是每個 streamTextgenerateText 呼叫都是一個雲端 API 請求。SDK 抽象掉了成本,這對開發很方便,但當你的帳單儀表板出現時就不那麼方便了。

    Vercel AI SDK 大規模的成本

    串流回應比單次呼叫回應稍貴,因為它們在完整生成持續時間內保持連接,並且通常生成更長的輸出(用戶在串流停止時停止閱讀,所以模型傾向於生成更多 token)。

    假設一個典型的 v0 AI 功能:聊天式互動,每次交換 400 個輸入 token 加 600 個輸出 token,使用 gpt-4o-mini:

    每月活躍用戶每用戶次數每次交換次數月 API 成本
    200459.60 美元
    1,0004548 美元
    5,00045240 美元
    20,00045960 美元
    100,000454,800 美元

    這些是 gpt-4o-mini 的估算。升級到 gpt-4o-2024,乘以約 14 倍。

    v0 部署優勢

    以下是 v0/Vercel 應用程式特有的東西:它們部署到 Vercel 的邊緣網路,無伺服器函數處理 API 路由。這種架構實際上有助於本地模型遷移。

    你的 AI API 路由可以呼叫任何 HTTP 端點。不是呼叫 api.openai.com,而是呼叫你的 Ollama VPS。無伺服器函數不在乎請求去哪裡——它發出一個 HTTP 呼叫並將回應返回給客戶端。

    這意味著遷移完全包含在 API 路由檔案中。你的 React 元件不會改變。你的串流行為不會改變。只有模型供應商改變了。

    用微調的本地模型替換 AI SDK 後端

    Vercel AI SDK 透過 createOpenAI 函數原生支援與 OpenAI 相容的 API:

    // 之前——直接使用 OpenAI:
    import { openai } from "@ai-sdk/openai";
    const model = openai("gpt-4o-mini");
    
    // 之後——使用你的微調 Ollama 模型:
    import { createOpenAI } from "@ai-sdk/openai";
    
    const ollama = createOpenAI({
      baseURL: process.env.OLLAMA_BASE_URL, // http://your-vps:11434/v1
      apiKey: "not-required",
    });
    
    const model = ollama("your-fine-tuned-model-name");
    
    // 路由程式碼的其餘部分保持完全相同:
    const result = streamText({
      model, // 只有這個變數改變
      messages,
      system: "...",
    });

    OLLAMA_BASE_URL 設置為 Vercel 環境變數。你的串流實現保持不變——Ollama 支援與 OpenAI 相同格式的 Server-Sent Events 串流。

    串流:本地運行嗎?

    是的。Ollama 支援 OpenAI SSE 格式的串流。Vercel AI SDK 正確地使用它。你的前端串流元件沒有任何差異——相同的事件格式,相同的資料結構。

    效能考量:CPU VPS 上的本地 Ollama 每秒串流 15-25 個 token。雲端 API 每秒串流 50-100 個以上 token。對於大多數使用場景,每秒 15-25 個 token 對用戶來說是感覺不到的(感覺像快速打字)。對於長篇生成(超過 500 個 token 的輸出),差異變得明顯。

    如果延遲很重要:GPU VPS(每月 60-120 美元)每秒串流 40-80 個 token。仍然是固定成本,速度顯著更快。

    成本比較

    方案5K 用戶的月成本20K 用戶的月成本
    Vercel AI SDK + gpt-4o-mini240 美元960 美元
    Vercel AI SDK + gpt-4o3,360 美元13,440 美元
    Ertas 微調 + Ollama CPU VPS40.50 美元40.50 美元
    Ertas 微調 + Ollama GPU VPS140-190 美元140-190 美元

    微調的本地模型方法在 5K 用戶時比 gpt-4o-mini 便宜,而相比 gpt-4o 則便宜得多。GPU VPS 選項提供了顯著更好的效能,同時在規模上仍然遠比雲端 API 便宜。

    從 v0 應用程式獲取訓練資料

    如果你的 v0 應用程式在真實用戶那裡運行了 2-4 週,你的 API 路由正在記錄請求和回應。提取這些來建立你的訓練資料集:

    // 添加到你的 API 路由以記錄訓練資料:
    const result = streamText({ model, messages });
    
    // 記錄完整互動作為訓練資料
    const fullResponse = await result.text;
    await db.trainingLogs.create({
      input: messages[messages.length - 1].content,
      output: fullResponse,
      timestamp: new Date(),
      accepted: true, // 在用戶發出信號之前假設接受
    });

    2-4 週後,你將有 500-2,000 個記錄的互動。按品質過濾(最短的會話時間,沒有立即重試),匯出為 JSONL,並上傳到 Ertas。


    Ship AI that runs on your users' devices.

    Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    延伸閱讀

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading