大模型成本治理:到底該量什麼
用量增長時讓模型開銷保持可預測的那幾個關鍵指標。
依業務任務歸集,不只看 token 單價
一次文件問答可能包含檢索、生成、工具驗證、重試與人工修正。先定義「完成」:答案須通過哪些檢查、由誰處理失敗,以及取消或逾時如何計入。按業務任務歸集費用,才能比較同等可用成果的代價。原廠請求成功不等於業務驗收通過。
單一任務的總成本公式
C_task = Σ C_model_attempt + C_retrieval + C_tools + C_runtime + C_human
C_model_attempt = (U×p_in + R×p_read + O×p_out + W×p_write) / 1,000,000
C_human = minutes / 60 × hourly_rate
C_per_accepted = batch_total_cost / accepted_task_count
U 為未快取輸入、R 為快取讀取、O 為輸出、W 為另行計費的快取寫入,單位皆為 token;p 為各項虛擬單價,單位為 USD/百萬 token。費用須採同一幣別與批次範圍,只加總實際適用類別。若寫入已含於輸入計價,不得再加一次;檢索、工具、執行環境與人工費也不能重複分攤。
失敗嘗試仍納入分子,分母只計通過驗收的任務。回應遺失不代表零用量,先核對原廠紀錄。共用快取或執行費用須有固定且可複核的分攤規則。
說明用假設:一批 100 個任務
下列數字皆為說明用假設,不是真實客戶案例、雲端平台或模型報價,亦非節省承諾。
-
批次共有 100 個任務,每次完整嘗試使用 2,000 輸入與 500 輸出 token。此處失敗指完整輸出後未通過業務驗收,因此失敗請求仍產生同一組 token 費用。
-
主要模型的虛擬輸入/輸出價為每百萬 token 2/8 USD,每次為 0.004 + 0.004 = 0.008 USD。每個任務檢索一次,費用 0.001 USD,重試沿用檢索內容。每次嘗試另有驗證/工具費 0.0005 USD;批次分攤執行費固定 0.080 USD。表中人工費為零。
-
基準有 20 次首輪驗收失敗,各重試一次。為呈現演算,本例假設所有重試皆通過,最終完成 100 個任務;實際評測不能預設此結果。
完整演算:請求較便宜不代表結果較好
快取
每次命中重用 1,000 輸入 token,虛擬讀取價為每百萬 token 0.5 USD,另 1,000 輸入仍用一般價格,因此命中請求為 0.002 + 0.0005 + 0.004 = 0.0065 USD。120 次嘗試中 10 次未命中、110 次命中;10 次各寫入 1,000 token,假設額外寫入價為每百萬 token 1 USD。內容與權限不變,首輪失敗仍為 20 次。
縮短提示詞
首輪輸入減為 1,000,輸出仍為 500,每次 0.006 USD;但假設缺少限制條件使 40 次首輪驗收失敗,均恢復完整 2,000 輸入後重試,每次 0.008 USD。修正請求不能用縮短後的單價計算。
模型分流
40 個簡單任務使用虛擬輸入/輸出價為每百萬 token 0.5/2 USD 的小模型,每次 0.002 USD;其中 16 次驗收失敗,轉用主要模型。其餘 60 個任務直接使用主要模型,其中 12 次重試;主要模型共 60 + 16 + 12 = 88 次。首輪總失敗 28 次,總嘗試 128 次。
Baseline: 120 × 0.008 = 0.960
0.960 + 0.100 + 0.060 + 0.080 = 1.200
Cache: 10 × 0.008 + 110 × 0.0065 = 0.795
writes = 10 × 1,000 × 1 / 1,000,000 = 0.010
0.795 + 0.010 + 0.100 + 0.060 + 0.080 = 1.045
Short: 100 × 0.006 + 40 × 0.008 = 0.920
0.920 + 0.100 + 0.070 + 0.080 = 1.170
Routing: 40 × 0.002 + (60 + 16 + 12) × 0.008 = 0.784
0.784 + 0.100 + 0.064 + 0.080 = 1.028
| 方案 | 首輪失敗/100 | 總嘗試 | 批次總費用 USD |
|---|---|---|---|
| 基準 | 20 | 120 | 1.200 |
| 快取 | 20 | 120 | 1.045 |
| 短提示詞 | 40 | 140 | 1.170 |
| 模型分流 | 28 | 128 | 1.028 |
| 方案 | 每驗收任務 USD |
|---|---|
| 基準 | 0.01200 |
| 快取 | 0.01045 |
| 短提示詞 | 0.01170 |
| 模型分流 | 0.01028 |
另看一種最終失敗情境:基準費用仍為 1.200 USD,卻只有 95 個任務通過,則每成功任務為 1.200 ÷ 95 ≈ 0.01263 USD。若另 5 個各需人工 2 分鐘,虛擬人工成本為每小時 30 USD,新增 5 × 2 ÷ 60 × 30 = 5 USD。假設人工最終皆修復,每完成任務為 (1.200 + 5) ÷ 100 = 0.062 USD。這組額外假設不列入上表。
把品質與失敗路徑納入選擇
本例快取降低總費用且首輪失敗不變,前提是文件版本、權限、有效期限與快取鍵正確。命中率下降、頻繁寫入或舊內容命中會改變結論,不能只看讀取單價。
短提示詞使首輪每次請求的輸入減半,但整批輸入從 120 × 2,000 = 240,000 變為 100 × 1,000 + 40 × 2,000 = 180,000 token,僅減少 25%。重試抵銷部分收益,批次費用只從 1.200 變為 1.170,首輪失敗從 20 增至 40。若延遲或人工修正不可接受,即使 token 減少也應復原。
模型分流降低本例費用,卻讓首輪失敗增至 28。它僅適用於客戶明確核准的多模型應用策略,不代表 Corebyte 替換已採購的指定型號。不得靜默降級;記錄實際模型、路由理由與回退,並以包含邊界任務的同批樣本驗證分類和升級規則。
用量與帳單不一致時如何排查
-
先對齊帳號/專案、精確模型與版本、地區與路由、幣別、帳期與時區。將當期用量估算與已結算帳單分開。
-
以任務編號串起每次嘗試及原廠請求識別碼,檢查 SDK 和應用重試、逾時重送與串流中斷。一次點擊可能產生多次計費,未知結果先標待核對,避免重複或漏記。
-
對齊計量定義與單位,依原廠欄位核對輸入、輸出、快取讀寫及推理/工具類別。總輸入若已含快取,不得再加一次;token、百萬 token、秒和容量小時分別換算。
-
將請求彙總至帳期,再核對延後入帳、套餐抵扣、折扣/退款、稅費與另約服務費。沒有憑據的差異先保留,不以猜測的有效單價抹平。
-
按差額大小追查無法關聯的費用、重複記錄、用量類別及單價條件。保留去識別化的請求碼、計量、時間和帳單列;預設不保存憑證、完整提示詞或客戶文件。
可重複使用的成本核對清單
- 每筆有 task_id、attempt_id、原廠請求碼、模型/版本、路由、起迄時間、技術狀態及業務驗收結果。
- 保留原始計量單位,分列模型、檢索、工具、執行與人工費,附來源及分攤規則。
- 用相同樣本比較費用、驗收率、重試、端到端延遲與人工修正,不只比較單次呼叫。
- 設定輸出、迴圈、重試與並行界線,確定額度不足、逾時與未知結果的處理。成本告警不是實際限流。
- 模型、快取策略或流程變更後重新核對;沒有樣本與帳單證據,不承諾固定節省幅度。
實際價格與類別須核對 Amazon Bedrock 價格說明或所用原廠的當期條款。本文虛擬數字僅說明演算與診斷方法。