Gemini API 429 錯誤怎麼解決:RESOURCE_EXHAUSTED 的原因與 400 / 403 / 503 排查表

Gemini API 報 429 RESOURCE_EXHAUSTED 是某項限額超了。本文按官方文檔教你分清是每分鐘還是每天的限額、去哪看用量、怎麼寫退避重試,並附 400、402、403、503 等錯誤的排查表。

NNathaniel bigo··原創首發·AI 輔助撰寫
13 分鐘讀完
資料核對於 2026-10-10 · 依據官方文檔與公開資料整理 其他 帳號
本文根據 Gemini API 官方文檔(API errors 的 Interactions 版與 generateContent 版、Troubleshooting guide、Rate limits、Billing)整理,資料核對於 2026-10-10。

適用於誰

  • 調用 Gemini API 時遇到 429、RESOURCE_EXHAUSTED、rate_limit_exceeded、quota_exceeded 的人;
  • 剛開始用、請求沒發幾個就被拒的人;
  • 批量跑任務,想寫一個靠譜重試邏輯的開發者;
  • 遇到 400、403、503 等其他錯誤,想快速對照官方說明的人。

結論先說

  1. 429 的意思是超過了某一項限額,官方列的有每分鐘請求數(RPM)、每分鐘 token 數(TPM)、每天請求數(RPD),付費層還有按 10 分鐘計的支出速率上限。
  2. 先分清是「每分鐘」還是「每天」:每分鐘類的等一會兒、降速重試就能恢復;每天的配額用完了,重試沒用,只能等重置(太平洋時間午夜)或升檔。
  3. 限額按項目計算,不按密鑰。換一把同項目的密鑰解決不了問題。
  4. 重試用指數退避加隨機抖動,並限制次數。官方 Python SDK 預設已經會自動重試。
  5. 402 不是 429:402 表示預付費餘額用完,官方明確說不要重試,先充值。

一、先看清返回的是哪種 429

Gemini API 現在有兩套接口,錯誤的寫法不一樣:

新版 Interactions API:響應體裏是 error.code(小寫加下劃線的字符串)和 error.message。

json
{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "……"
  }
}

官方錯誤表裏,429 對應三個錯誤碼:

error.code官方說明官方建議
rate_limit_exceeded超過了每分鐘或每秒的請求數 / token 數限制等待後用指數退避重試
quota_exceeded超過了每日配額等配額重置,或申請提高配額
too_many_requests短時間內請求過多等待後用指數退避重試

流式請求(stream: true)出錯時不走 HTTP 狀態碼,而是在事件流裏發一個 event_type 為 error 的事件,裏面同樣有 code 和 message。

舊版 generateContent API:響應體是 gRPC 風格,code 是數字狀態碼,status 是大寫的狀態名。

json
{
  "error": {
    "code": 429,
    "message": "……",
    "status": "RESOURCE_EXHAUSTED"
  }
}

官方對這一條的解釋是:你超過了 API 的某一項速率限制(RPM、TPM、RPD、支出等)——請求發得太多、用的 token 太多,或者超過了帳號檔位對應的支出類限制。

二、按原因逐項排查

  1. 看自己的限額和用量。打開 AI Studio 的 Rate Limit 頁面(aistudio.google.com/rate-limit),每個模型的 RPM、TPM、RPD 上限和近期峰值都在上面。三項是分別檢查的,官方舉例:RPM 上限 20 時,一分鐘內第 21 個請求就會報錯,即使 TPM 還很富餘。
  2. 確認是不是每天的配額用完了。RPD 在太平洋時間午夜重置,在那之前重試沒有意義。
  3. 檢查是不是別的程序在用同一個項目。限額是項目級的,同項目下所有密鑰、所有程序共用。
  4. 看用的是不是預覽版或實驗版模型。官方說明這類模型的限額更嚴。
  5. 免費層撞限額很正常。免費層的限額本來就低,各模型具體數字以 Rate Limit 頁面為準。開通結算進入 Tier 1 後限額會提高,見本站《Gemini API 免費額度是多少:免費層級、RPM / TPM / RPD 速率限制與限額查詢》。
  6. 付費層突然 429,想想是不是花得太快。官方對付費檔位設有「支出速率上限」,在滾動的 10 分鐘窗口內計算,超了同樣返回 429 RESOURCE_EXHAUSTED。官方給的辦法是:稍等再試;降低高成本請求的頻率,比如縮小上下文、縮短輸出;正常使用也經常撞到的話,申請提高限額。
  7. 減少 token 用量。TPM 按輸入 token 計。刪掉重複的上下文,長對話只保留必要的歷史。
  8. 失敗的請求也佔配額。官方帳單頁寫明,返回 400 或 500 的請求不收費,但仍計入配額。無間隔地連續重發只會更糟。
  9. 不急的任務改用 Batch API。官方說明批量請求有獨立的速率限制,和普通調用分開計算(目前只有舊版 generateContent 支持 Batch)。
  10. 還是不夠就申請提額。官方 Rate limits 頁面底部有付費層的提額申請表單,不保證批准。

三、怎麼重試才對

官方排錯頁的重試建議:

  • 指數退避:第一次重試前等一小段時間(例如 1 秒),之後按 2 秒、4 秒、8 秒遞增;
  • 加抖動(jitter):在等待時間上加一點隨機量,避免所有客戶端同時重試;
  • 只重試暫時性錯誤:429、408 和 5xx 可以重試;400、402、403 這類客戶端錯誤不要重試,它們說明密鑰無效、預付餘額耗盡或請求寫錯了;
  • 設最大重試次數,防止死循環。

官方 SDK 已經內置了這套邏輯:排錯頁說明 Python SDK 預設會對超時、網絡問題、429 和 5xx 自動重試最多 4 次,初始等待約 1 秒,最長 60 秒。所以用 SDK 時通常不用自己再包一層;如果自己再寫重試,注意總請求次數會相乘。

直接調 REST 接口時,可以參考下面的寫法(示例用 httpx,安裝 google-genai 時會一併裝上):

python
import os
import random
import time

import httpx

URL = "https://generativelanguage.googleapis.com/v1beta/interactions"
HEADERS = {
    "x-goog-api-key": os.environ["GEMINI_API_KEY"],
    "Content-Type": "application/json",
}
RETRYABLE = {408, 429, 500, 502, 503, 504}   # 官方:只重試暫時性錯誤


def create_with_backoff(payload, max_attempts=5, base_delay=1.0, max_delay=60.0):
    for attempt in range(1, max_attempts + 1):
        resp = httpx.post(URL, headers=HEADERS, json=payload, timeout=120)
        if resp.status_code == 200:
            return resp.json()

        try:
            err = resp.json().get("error", {})
        except ValueError:
            err = {}
        code = err.get("code")

        give_up = (
            resp.status_code not in RETRYABLE   # 400 / 402 / 403 等:重試沒用
            or code == "quota_exceeded"          # 每日配額用完:等重置或提額
            or attempt == max_attempts
        )
        if give_up:
            raise RuntimeError(f"{resp.status_code} {code}: {err.get('message')}")

        delay = min(max_delay, base_delay * 2 ** (attempt - 1))
        time.sleep(delay + random.uniform(0, 1))   # 加隨機抖動


result = create_with_backoff({
    "model": "gemini-3.8-flash",
    "input": "用一句話介紹你自己",
})
print(result["steps"][-1]["content"][0]["text"])

四、其他常見錯誤碼對照表

下表合併了官方兩版錯誤表。左邊是舊版 generateContent 的狀態名,右邊是新版 Interactions API 的錯誤碼。

HTTPgenerateContent 狀態Interactions 錯誤碼含義官方建議
400INVALID_ARGUMENTinvalid_request、parameter_unknown請求體格式錯誤、參數無效或有不認識的參數對照 API 參考檢查拼寫和必填字段;別在舊版本端點上用新功能
400FAILED_PRECONDITIONfailed_precondition前置條件不滿足。典型的是「你所在的國家或地區不提供免費層,請開通結算」檢查項目的結算狀態
401—authentication密鑰缺失、無效或已過期檢查 API 密鑰
402RESOURCE_EXHAUSTEDpayment_required預付費餘額用完,該結算帳號下所有密鑰都停用充值或開啟自動充值;不要重試
403PERMISSION_DENIEDpermission_denied密鑰沒有所需權限確認用對了密鑰、密鑰有訪問權限
404NOT_FOUNDnot_found、model_not_found資源不存在,或模型名不存在核對模型 ID;檢查請求裏引用的文件是否還在
429RESOURCE_EXHAUSTED見第一節超過速率限制或配額見第二、三節
499CANCELLEDcancelled客戶端在完成前取消或斷開檢查客戶端超時設定和網絡
500INTERNALapi_error伺服器內部錯誤。舊版表格舉的例子是輸入上下文過長重試;縮短上下文或臨時換一個模型;看狀態頁
503UNAVAILABLEservice_unavailable服務暫時過載或不可用等待後退避重試;臨時換模型;看狀態頁
504DEADLINE_EXCEEDEDdeadline_exceeded沒能在期限內處理完,常見於提示或上下文太大調大客戶端的超時時間,或去掉客戶端超時改用伺服器預設值

幾條補充:

  • 狀態頁:官方的 Gemini API 狀態頁在 aistudio.google.com/status。500、503 持續出現時先看這裏有沒有故障公告;仍無法解決,官方建議用 AI Studio 裏的「發送反饋(Send feedback)」按鈕上報。
  • 400 的兩個新原因:從 Gemini 3.6 Flash、3.5 Flash-Lite 起,請求以模型角色的內容結尾(即「預填回覆開頭」)會返回 400;temperature、top_p、top_k 目前被忽略,官方預告未來的模型代際裏再傳也會返回 400。
  • 密鑰無效的狀態碼兩套接口不同:新版錯誤表裏是 401 authentication;舊版 generateContent 的官方示例裏,無效密鑰返回的是 400 INVALID_ARGUMENT,提示「API key not valid. Please pass a valid API key.」。
  • 密鑰被封:報「Your API key was reported as leaked. Please use another API key.」說明這把密鑰被檢測到泄露並封禁,需要新建密鑰,見本站《Gemini API Key 怎麼獲取:在 AI Studio 創建密鑰、設定環境變量與安全限制》。
  • 403 Access Restricted(AI Studio 網頁裏):官方排錯頁說明這表示使用方式不符合服務條款,常見原因之一是所在地區不在可用地區列表內。請遵守所在地法律和服務條款。
  • 內容被攔截不是 HTTP 錯誤:因安全、引用(recitation)等原因被攔時,Interactions API 會給出 safety、recitation、prohibited_content 這類「生成被阻止」代碼,需要修改輸入後再試。

常見問題

Q:我才發了幾個請求就 429?

先確認是哪一項超了。免費層的限額本來就低(具體數字看 Rate Limit 頁面),循環裏連發請求很容易觸發每分鐘的限制;另外看項目下是否還有別的程序在跑,以及用的是不是限額更嚴的預覽版模型。

Q:餘額充足為什麼還是 429?

速率限制和餘額是兩回事。付費層還有按 10 分鐘計的支出速率上限,以及檔位對應的每月帳單上限,詳見本站《Gemini API 怎麼收費:按 token 計費、預付費充值(Prepay)與支出上限設定》。

Q:換一把密鑰行不行?

同一個項目下的密鑰共用限額,換了也沒用。

Q:開通付費後多久生效?

官方說明從免費層到 Tier 1 通常立即生效,之後的升檔一般在 10 分鐘內。

Q:延遲很高、token 用得特別多,是出錯了嗎?

通常不是。官方排錯頁解釋,Gemini 3 系列預設開啟思考,會產生額外的推理 token 並拉長響應時間。對速度或成本敏感時,把思考等級調低。

參考資料

  • API errors(Interactions API 版,官方):https://ai.google.dev/gemini-api/docs/api-errors
  • API errors(generateContent 版,官方):https://ai.google.dev/gemini-api/docs/generate-content/api-errors
  • Troubleshooting guide(官方):https://ai.google.dev/gemini-api/docs/troubleshooting
  • Rate limits(官方):https://ai.google.dev/gemini-api/docs/rate-limits
  • Billing(官方):https://ai.google.dev/gemini-api/docs/billing
  • Troubleshoot Google AI Studio(官方):https://ai.google.dev/gemini-api/docs/troubleshoot-ai-studio
  • Available regions for Google AI Studio and Gemini API(官方):https://ai.google.dev/gemini-api/docs/available-regions
  • What's new in Gemini 3.6 Flash and 3.5 Flash-Lite(官方):https://ai.google.dev/gemini-api/docs/whats-new-gemini-3.6
需要開通或續費?谷歌帳號 →

Nathaniel 的更多內容

  1. 01

    AI 學習路線:零基礎從哪開始,6 個階段、每階段該讀哪幾篇教學(2026)

    AI 學習路線怎麼走?給零基礎的人一條循序漸進的路徑:先選一個助手用順,再學提問,再用進日常工作,按需學做圖做影片,守住私隱與版權,最後進階自動化和編程。每個階段都配了本站對應的教學。

    其他 AI 工具0
  2. 02

    AI 瀏覽器有哪些:Perplexity Comet、Opera Neon、Dia、Brave Leo 與 Edge Copilot 的官方說法對照

    AI 瀏覽器有哪些?按官方頁面整理 Perplexity Comet、Opera Neon、Dia、Brave Leo 和 Edge 裏的 Copilot:官方自述的定位、支持的平台、免費還是訂閱,以及 Gemini、Claude 的 Chrome 方案和已停用的 ChatGPT Atlas。

    其他 AI 工具0
  3. 03

    即夢國際版 Dreamina 是什麼:官方站入口、能生成什麼、免費積分和模型(2026)

    即夢國際版 Dreamina 是什麼?官方站是 dreamina.capcut.com,是一個圖片、影片和數字人一體的 AI 創作平台。按官方首頁和 FAQ 講:能生成什麼、免費用戶每天 120 積分、列出的 Seedance 與 Seedream 模型,以及和國內即夢怎麼區分。

    其他 AI 工具0
  4. 04

    Kimi K3 Coding Plan 是什麼、怎麼用:Kimi Code 會員、模型 ID、套餐價格和額度規則

    Kimi K3 Coding Plan 是什麼?按 Kimi 官方文檔核對:官方現在叫 Kimi Code,是 Kimi 會員權益裏的編程服務,Plus 及以上才有;講 K3 等模型 ID、國內新套餐價格、三種客戶端、第三方工具接入和額度規則。

    Kimi0
  5. 05

    DeepSeek V4 Pro 和 Flash 的區別與 API 價格:官方價格頁逐項對照(高峰與空閒時段)

    DeepSeek V4 Pro 和 Flash 有什麼區別、API 怎麼收費?按 DeepSeek 官方價格頁(2026-10-19 查詢)列出兩個模型的版本、上下文、圖像理解、並發和每百萬 token 價格,說明高峰與空閒時段的計費差別和舊模型名怎麼處理。

    其他 AI 工具0
  6. 06

    GPT-6 Pro(Astra)怎麼用、哪些套餐有:怎麼選到 Pro 檔、用量限制和 Pro 三檔價格

    GPT-6 Pro(Astra)怎麼用、哪些套餐有?按 OpenAI 幫助中心核對:聊天裏 Pro 檔給 Pro 100、Pro 200、Business 和 Enterprise;Plus 在 Work 和 Codex 裏含 Astra。講怎麼選到、用量上限和官方 Pro 價格。

    ChatGPT0

同模型

  1. 01

    Nano Banana 官網入口在哪、免費能用嗎:Google 官方入口、Nano Banana 2 與 2.1 的免費和付費區別

    Nano Banana 官網地址是什麼、免費能用多少?Nano Banana 是 Google Gemini 的圖像模型,官方入口是 gemini.google.com 和官方介紹頁。按官方頁面核對:免費版用 Nano Banana 2,2.1 需要 Google AI 套餐,API 沒有免費層。

    Gemini0
  2. 02

    Gemini 3.5 Pro 是什麼、發佈了嗎、怎麼用:官方說法梳理,以及現在 Gemini 裏該選哪個模型

    Gemini 3.5 Pro 發佈了嗎?按 Google 官方網誌、Gemini 更新記錄和 API 模型列表核對:截至 2026-10-19 官方沒有宣佈 3.5 Pro 已發佈,最新的是 Gemini 4 Argon。講清官方說過什麼,以及 Gemini 應用裏各套餐現在能選哪些模型。

    Gemini0
  3. 03

    Gemini 打不開、無法登入、無法使用怎麼辦:帳號類型、年齡、瀏覽器和官方兩條登入提示

    Gemini 怎麼打不開?無法登入、無法使用怎麼辦?按官方「Sign in to Gemini Apps」頁排查:帳號類型、年齡、支持的瀏覽器、國家和語言名單,以及「Can't access this service」「Something went wrong」兩條提示的官方解釋。

    Gemini0
  4. 04

    Gemini 無法生成圖片怎麼辦:入口、年齡與地區、提示詞、模型和額度逐項排查

    Gemini 無法生成圖片怎麼辦?按官方幫助中心逐項排查:有沒有登入、年齡和地區是否滿足、生圖入口在哪、提示詞怎麼寫才會出圖、Flash-Lite 的 Nano Banana 2 Lite 有什麼限制、圖片被移除和額度用完時怎麼辦。

    Gemini0
  5. 05

    Gemini 分享對話怎麼操作:生成公開連結、對方能看到什麼、怎麼刪除分享連結

    Gemini 的「分享對話」會生成一個任何人都能打開的公開連結。本文按官方幫助中心講清:分享步驟、連結裏包含哪些內容(整段對話、上載的圖片、Canvas 作品)、別人能做什麼、連結什麼時候會自動失效、怎麼查看和刪除自己所有的公開連結。

    Gemini0
  6. 06

    Gemini API Python 調用教學:安裝 google-genai SDK、流式輸出、多輪對話與傳圖片

    用官方 google-genai SDK 調 Gemini API:安裝配置、第一個請求、系統指令與思考等級、流式輸出、多輪對話、傳圖片和查看 token 用量,按 2026 年 10 月官方預設的 Interactions API 寫法。

    Gemini0

同產品的其他教學

  1. 01

    AI圖片放大與高清修復:Midjourney、ChatGPT、Gemini 怎麼出高解像度圖

    AI 生成的圖不夠清晰,想打印或做大圖怎麼辦?本文按官方文檔講清 Midjourney 的 Subtle / Creative 放大和 HD 直出、Gemini 與 ChatGPT 的解像度選項、Flow 的影片放大,以及「AI 放大會編造細節」的注意事項。

    Gemini其他 AI 工具0
  2. 02

    AI影片運鏡提示詞大全:推拉搖移跟升降、環繞、甩鏡怎麼寫(中英對照)

    AI 影片的運鏡提示詞怎麼寫?本文按 Google 官方影片提示指南整理鏡頭運動、機位角度、鏡頭光學效果三張中英對照表,每個術語配效果說明和例句,並給出組合運鏡的寫法和常見翻車原因,適用於 Veo、即夢、可靈等工具。

    Gemini其他 AI 工具0
  3. 03

    Gemini API Key 怎麼獲取:在 AI Studio 創建密鑰、設定環境變量與安全限制

    調用 Gemini API 先要在 Google AI Studio 創建 API Key。本文講清創建入口、密鑰與項目的關係、2026 年新的授權密鑰規則、環境變量怎麼設、怎麼測試,以及密鑰被封或泄露後的處理。

    Gemini0
  4. 04

    NotebookLM 學習卡是什麼:抽認卡(閃卡)與測驗的生成、複習和下載

    NotebookLM(現名 Gemini Notebook)的學習卡是什麼、怎麼用?本文按官方幫助講清抽認卡和測驗的生成步驟、難度與數量設定、「答對了 / 沒答對」進度記錄、只練錯題、下載 CSV,以及手機上怎麼刷卡。

    Gemini0
  5. 05

    ChatGPT 和 Gemini 哪個好用:按官方頁面對比套餐、額度、上下文和功能,怎麼選

    ChatGPT 和 Gemini 哪個好用?本文只整理兩家官方頁面能查到的差異:套餐名稱、免費版額度、付費檔用量倍數、額度多久刷新、上下文窗口數字,以及各自的特色功能入口。不給「誰更強」的結論,文末附一份用自己任務測試的清單。

    ChatGPTGemini0
  6. 06

    Gemini 臨時對話怎麼用:能儲存嗎、關掉後能找回嗎、數據保留多久

    Gemini 的臨時對話不進聊天記錄、不用於訓練模型,但離開後就再也打不開。本文按官方幫助中心講:怎麼開啟、誰能用、臨時對話裏不能做什麼、想儲存內容該怎麼辦、Google 實際保留 72 小時是怎麼回事,以及它和關閉活動記錄的區別。

    Gemini0

0 條評論

登入 後參與評論

還沒有評論,來搶沙發~