跳到內容

計費與限流

本頁說明一次請求從發出到結算的扣費過程,以及出錯、取消與限流等情況下是否計費。各類模型的單價與計價方式見模型定價。

每次請求都會經過「預扣 → 結算」兩步:

  1. 預扣:請求轉發給上游前,先從金鑰額度與帳戶餘額中預扣一筆預估費用。任一不足,請求直接被拒絕,不會發往上游。
  2. 結算:請求完成後,按上游返回的真實用量計算實際費用。多扣的部分退回,少扣的部分補扣。

預估費用的計算方式:

模型類型預估方式
按 token 計費輸入 token 數加上請求中的 max_tokens,按模型單價估算
階梯價模型按最高一檔價格估算,結算時再按實際檔位計費
按次或按張計費直接預扣單次價格
非同步任務(影片、音樂等)提交時預扣預估金額,任務結束後結算

原則是:沒有產生可計費用就不計費,預扣金額全額退回。

場景是否計費
金鑰無效、過期,或餘額、金鑰額度不足不計費,請求不會發往上游
請求參數錯誤、模型不可用、無可用渠道不計費
被限流(429)不計費
上游返回錯誤(4xx / 5xx)不計費,預扣金額全額退回
上游返回成功,但用量為 0不計費
串流輸出過程中上游中斷或逾時按已生成的內容計費
非同步任務失敗或逾時(24 小時未完成)不計費,預扣金額全額退回

RouteAPI 在上游出錯時會自動重試或切換到其他渠道。整個過程只預扣一次、結算一次,失敗的嘗試不計費,你只為最後成功的那一次付費。如果最終由回退模型完成請求,按實際服務該請求的模型價格計費。

串流請求一旦開始向你輸出內容,就不會再重試。此時上游中斷,按已生成的部分計費。

場景是否計費
非串流請求,在收到回應前斷開連線不計費,預扣金額全額退回
串流請求,中途斷開連線計費,見下方說明
非同步任務(影片、音樂、Midjourney)提交後不支援取消

串流請求中途斷開時,上游通常已經在生成,並會繼續生成到結束。RouteAPI 會繼續讀取上游的輸出直到生成結束,並按上游實際生成的用量計費,而不只是你已經收到的部分。想控制這部分費用,請用 max_tokens 限制輸出長度。

為保護平台與上游的穩定性,平台可能對每個帳戶的模型請求頻率做限制。限制按帳戶統計,同一帳戶下的所有 API 金鑰共享額度。

觸發限流時返回 429 Too Many Requests,回應主體與其他錯誤格式一致:

{
"error": {
"message": "... (request id: ...)",
"type": "error",
"code": ""
}
}
  • 被限流的請求在預扣之前就被拒絕,不計費。
  • 上游返回 429 時,RouteAPI 會自動切換到其他渠道重試。重試後仍被限流,才會把 429 返回給你。
  • 回應不帶 Retry-After 標頭。建議用戶端採用指數退避重試,例如 1 秒、2 秒、4 秒,並加上隨機抖動。
  • 拆分多個 API 金鑰不能提高限流額度。如需更高的請求頻率,請與我們聯絡。

開放平台 API(/api/open/v1)有單獨的限流規則,見開放平台 API 錯誤與限制。

在使用日誌中可以查看每次扣費請求的明細:

欄位說明
時間請求時間
金鑰發起請求的 API 金鑰名稱
模型實際計費的模型
用時 / 首字總耗時;串流請求同時顯示首字延遲
輸入輸入 token 數,命中快取時分開顯示快取讀取與寫入
輸出輸出 token 數
花費本次實際扣費金額
明細單價、倍率與計費過程

介面回應的 usage 欄位也會返回本次的 token 用量:

欄位說明
prompt_tokens輸入 token
completion_tokens輸出 token,推理模型的推理 token 也計入這裡
total_tokens輸入與輸出合計
prompt_tokens_details.cached_tokens命中快取的輸入 token

如果帳戶享有專屬折扣,日誌中的花費已經是折扣後的金額。