OpenAI API 錯(cuò)誤代碼

2023-03-20 11:13 更新
本指南概述了您可能會(huì)從 API 和我們的官方 Python 庫(kù)中看到的錯(cuò)誤代碼。概述中提到的每個(gè)錯(cuò)誤代碼都有專門(mén)的部分提供進(jìn)一步的指導(dǎo)。

API 錯(cuò)誤

狀態(tài)碼 概述
401 - Invalid Authentication Cause: 無(wú)效認(rèn)證
Solution: 確保使用正確的 API 密鑰和請(qǐng)求組織。
401 - Incorrect API key provided Cause: 請(qǐng)求的 API 密鑰不正確。
Solution: 確保使用的 API 密鑰正確,清除瀏覽器緩存,或生成一個(gè)新的。
401 - You must be a member of an organization to use the API Cause: 您的帳戶不屬于組織。
Solution: 聯(lián)系我們以加入新組織或請(qǐng)您的組織經(jīng)理邀請(qǐng)您加入組織。
429 - Rate limit reached for requests Cause: 您發(fā)送請(qǐng)求的速度太快了。
Solution: 調(diào)整你的要求。閱讀速率限制指南。
429 - You exceeded your current quota, please check your plan and billing details Cause: 您已達(dá)到每月最高支出(硬性限制),您可以在賬戶賬單部分查看。
Solution: 申請(qǐng)?jiān)黾优漕~。
429 - The engine is currently overloaded, please try again later Cause: 我們的服務(wù)器正在經(jīng)歷高流量。
Solution: 請(qǐng)稍等片刻后重試您的請(qǐng)求。
500 - The server had an error while processing your request Cause: 我們服務(wù)器上的問(wèn)題。
Solution: 稍等片刻后重試您的請(qǐng)求,如果問(wèn)題仍然存在,請(qǐng)聯(lián)系我們。檢查狀態(tài)頁(yè)面。
  • 401 - Invalid Authentication
  • 此錯(cuò)誤消息表明您的身份驗(yàn)證憑據(jù)無(wú)效。發(fā)生這種情況的原因可能有多種,例如:

    • 您使用的是已撤銷的 API 密鑰。

    • 您使用的 API 密鑰與分配給請(qǐng)求組織的 API 密鑰不同。

    • 您使用的 API 密鑰沒(méi)有您所調(diào)用端點(diǎn)所需的權(quán)限。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 檢查您是否在請(qǐng)求標(biāo)頭中使用了正確的 API 密鑰和組織 ID。您可以在您的帳戶設(shè)置中找到您的 API 密鑰和組織 ID。

    • 如果您不確定您的 API 密鑰是否有效,您可以生成一個(gè)新密鑰。確保在請(qǐng)求中用新的 API 密鑰替換舊的 API 密鑰,并遵循我們的最佳實(shí)踐指南。

  • 401 - Incorrect API key provided
  • 此錯(cuò)誤消息表示您在請(qǐng)求中使用的 API 密鑰不正確。發(fā)生這種情況的原因可能有多種,例如:

    • 您的 API 密鑰中有拼寫(xiě)錯(cuò)誤或多余的空格。

    • 您正在使用屬于不同組織的 API 密鑰。

    • 您正在使用已被刪除或停用的 API 密鑰。

    • 舊的、已撤銷的 API 密鑰可能會(huì)緩存在本地。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 嘗試清除瀏覽器的緩存和 cookie,然后重試。

    • 檢查您是否在請(qǐng)求標(biāo)頭中使用了正確的 API 密鑰。

    • 如果您不確定您的 API 密鑰是否正確,您可以生成一個(gè)新的。確保替換代碼庫(kù)中的舊 API 密鑰并遵循我們的最佳實(shí)踐指南

  • 401 - You must be a member of an organization to use the API
  • 此錯(cuò)誤消息表明您的帳戶不屬于某個(gè)組織。發(fā)生這種情況的原因可能有多種,例如:

    • 您已經(jīng)離開(kāi)或被從以前的組織中移除。

    • 您的組織已被刪除。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 如果您已經(jīng)離開(kāi)或被從以前的組織中移除,您可以申請(qǐng)一個(gè)新組織或受邀加入現(xiàn)有組織。

    • 要申請(qǐng)新組織,請(qǐng)通過(guò) help.openai.com 聯(lián)系我們

    • 現(xiàn)有組織所有者可以通過(guò)成員面板邀請(qǐng)您加入他們的組織。

  • 429 - Rate limit reached for requests
  • 此錯(cuò)誤消息表示您已達(dá)到為 API 分配的速率限制。這意味著您在短時(shí)間內(nèi)提交了過(guò)多的令牌或請(qǐng)求,并且超出了允許的請(qǐng)求數(shù)量。發(fā)生這種情況的原因可能有多種,例如:

    • 您正在使用發(fā)出頻繁或并發(fā)請(qǐng)求的循環(huán)或腳本。

    • 您正在與其他用戶或應(yīng)用程序共享您的 API 密鑰。

    • 您正在使用具有低速率限制的免費(fèi)計(jì)劃。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 調(diào)整您的請(qǐng)求,避免進(jìn)行不必要或多余的呼叫。

    • 如果您使用的是循環(huán)或腳本,請(qǐng)確保實(shí)施退避機(jī)制或尊重速率限制和響應(yīng)標(biāo)頭的重試邏輯。您可以在我們的速率限制指南中詳細(xì)了解我們的速率限制政策和最佳實(shí)踐。

    • 如果您與其他用戶共享您的組織,請(qǐng)注意限制是按組織而不是按用戶應(yīng)用的。值得檢查您團(tuán)隊(duì)其他成員的使用情況,因?yàn)檫@會(huì)影響限制。

    • 如果您使用的是免費(fèi)或低級(jí)別計(jì)劃,請(qǐng)考慮升級(jí)到提供更高速率限制的現(xiàn)收現(xiàn)付計(jì)劃。您可以在我們的速率限制指南中比較每個(gè)計(jì)劃的限制。

  • 429 - You exceeded your current quota, please check your plan and billing details
  • 此錯(cuò)誤消息表示您已達(dá)到 API 的每月最大支出。您可以在 [account billing settings](/account/billing/limits) 的“hard limit”下查看每月最高限額。這意味著您已經(jīng)消耗了分配給您的計(jì)劃的所有積分,并且已經(jīng)達(dá)到了當(dāng)前賬單周期的限制。發(fā)生這種情況的原因可能有多種,例如:

    • 您正在使用消耗大量信用或代幣的大容量或復(fù)雜服務(wù)。

    • 對(duì)于您的組織的使用,您的限制設(shè)置得太低。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 在您的帳戶設(shè)置中檢查您當(dāng)前的配額。您可以在帳戶的使用部分查看您的請(qǐng)求消耗了多少令牌。

    • 如果您使用的是免費(fèi)計(jì)劃,請(qǐng)考慮升級(jí)到提供更高配額的現(xiàn)收現(xiàn)付計(jì)劃。

    • 如果您需要增加配額,您可以申請(qǐng)一個(gè)并提供有關(guān)預(yù)期使用情況的相關(guān)詳細(xì)信息。我們將審核您的請(qǐng)求并在大約 7-10 個(gè)工作日內(nèi)回復(fù)您。
  • 429 - The engine is currently overloaded, please try again later
  • 此錯(cuò)誤消息表明我們的服務(wù)器流量過(guò)大,目前無(wú)法處理您的請(qǐng)求。發(fā)生這種情況的原因可能有多種,例如:

    • 對(duì)我們服務(wù)的需求突然激增。

    • 我們的服務(wù)器有計(jì)劃或計(jì)劃外的維護(hù)或更新。

    • 我們的服務(wù)器發(fā)生意外或不可避免的中斷或事件。

    要解決此錯(cuò)誤,請(qǐng)執(zhí)行以下步驟:

    • 稍等片刻后重試您的請(qǐng)求。我們建議使用指數(shù)退避策略或尊重響應(yīng)標(biāo)頭和速率限制的重試邏輯。您可以閱讀更多關(guān)于我們的速率限制最佳實(shí)踐的信息。
    • 查看我們的狀態(tài)頁(yè)面,了解有關(guān)我們的服務(wù)和服務(wù)器的任何更新或公告。
    • 如果在合理的時(shí)間后您仍然收到此錯(cuò)誤,請(qǐng)聯(lián)系我們以獲得進(jìn)一步的幫助。對(duì)于給您帶來(lái)的不便,我們深表歉意,感謝您的耐心等待和理解。

Python 庫(kù)錯(cuò)誤類型

類型 概述
APIError Cause: 我們這邊的問(wèn)題。
Solution: 稍等片刻后重試您的請(qǐng)求,如果問(wèn)題仍然存在,請(qǐng)聯(lián)系我們。
Timeout Cause: 請(qǐng)求超時(shí)。
Solution: 稍等片刻后重試您的請(qǐng)求,如果問(wèn)題仍然存在,請(qǐng)聯(lián)系我們。
RateLimitError Cause: 您已達(dá)到指定的速率限制。
Solution: 調(diào)整你的要求。在我們的速率限制指南中閱讀更多信息。
APIConnectionError Cause: 連接到我們的服務(wù)的問(wèn)題。
Solution: 檢查您的網(wǎng)絡(luò)設(shè)置、代理配置、SSL 證書(shū)或防火墻規(guī)則。
InvalidRequestError Cause: 您的請(qǐng)求格式不正確或缺少一些必需的參數(shù),例如令牌或輸入。
Solution: 錯(cuò)誤消息應(yīng)告知您所犯的具體錯(cuò)誤。檢查您正在調(diào)用的特定 API 方法的文檔,并確保您發(fā)送的參數(shù)有效且完整。您可能還需要檢查請(qǐng)求數(shù)據(jù)的編碼、格式或大小。
AuthenticationError Cause: 您的 API 密鑰或令牌無(wú)效、過(guò)期或已撤銷。
Solution: 檢查您的 API 密鑰或令牌并確保其正確且有效。您可能需要從您的帳戶信息中心生成一個(gè)新的。
ServiceUnavailableError Cause: 我們服務(wù)器上的問(wèn)題。
Solution: 稍等片刻后重試您的請(qǐng)求,如果問(wèn)題仍然存在,請(qǐng)聯(lián)系我們。檢查狀態(tài)頁(yè)面。
  • APIError
  • `APIError` 表示我們?cè)谔幚砟恼?qǐng)求時(shí)出了點(diǎn)問(wèn)題。這可能是由于臨時(shí)錯(cuò)誤、錯(cuò)誤或系統(tǒng)中斷造成的。

    對(duì)于給您帶來(lái)的任何不便,我們深表歉意,我們正在努力盡快解決任何問(wèn)題。您可以查看我們的系統(tǒng)狀態(tài)頁(yè)面以獲取更多信息。

    如果遇到 APIError,請(qǐng)嘗試以下步驟:

    • 等待幾秒鐘,然后重試您的請(qǐng)求。有時(shí),問(wèn)題可能會(huì)很快得到解決,您的請(qǐng)求可能會(huì)在第二次嘗試時(shí)成功。

    • 查看我們的狀態(tài)頁(yè)面,了解任何可能影響我們服務(wù)的持續(xù)事件或維護(hù)。如果有活動(dòng)事件,請(qǐng)關(guān)注更新并等到問(wèn)題解決后再重試您的請(qǐng)求。

    • 如果問(wèn)題仍然存在,請(qǐng)查看我們的持續(xù)性錯(cuò)誤后續(xù)步驟部分。

    我們的支持團(tuán)隊(duì)將調(diào)查此問(wèn)題并盡快回復(fù)您。請(qǐng)注意,由于需求量大,我們的支持排隊(duì)時(shí)間可能會(huì)很長(zhǎng)。您也可以在我們的社區(qū)論壇中發(fā)帖,但請(qǐng)務(wù)必省略任何敏感信息。

  • Timeout
  • “超時(shí)”錯(cuò)誤表示您的請(qǐng)求完成時(shí)間過(guò)長(zhǎng),我們的服務(wù)器關(guān)閉了連接。這可能是由于網(wǎng)絡(luò)問(wèn)題、我們的服務(wù)負(fù)載過(guò)重或需要更多處理時(shí)間的復(fù)雜請(qǐng)求。

    如果遇到超時(shí)錯(cuò)誤,請(qǐng)嘗試以下步驟:

    • 等待幾秒鐘,然后重試您的請(qǐng)求。有時(shí),網(wǎng)絡(luò)擁塞或我們服務(wù)的負(fù)載可能會(huì)減少,您的請(qǐng)求可能會(huì)在第二次嘗試時(shí)成功。

    • 檢查您的網(wǎng)絡(luò)設(shè)置并確保您擁有穩(wěn)定快速的互聯(lián)網(wǎng)連接。您可能需要切換到不同的網(wǎng)絡(luò)、使用有線連接或減少使用帶寬的設(shè)備或應(yīng)用程序的數(shù)量。

    • 如果問(wèn)題仍然存在,請(qǐng)查看我們的持續(xù)錯(cuò)誤后續(xù)步驟部分。

  • RateLimitError
  • `RateLimitError` 表示您已達(dá)到指定的速率限制。這意味著您在給定時(shí)間段內(nèi)發(fā)送了過(guò)多的令牌或請(qǐng)求,我們的服務(wù)已暫時(shí)阻止您發(fā)送更多。

    我們施加速率限制以確保公平有效地使用我們的資源并防止濫用或超載我們的服務(wù)。

    如果遇到 RateLimitError,請(qǐng)嘗試以下步驟:

    • 發(fā)送更少的令牌或請(qǐng)求或放慢速度。您可能需要減少請(qǐng)求的頻率或數(shù)量、批處理令牌或?qū)嵤┲笖?shù)退避。您可以閱讀我們的速率限制指南了解更多詳情。
    • 等到您的速率限制重置(一分鐘)并重試您的請(qǐng)求。錯(cuò)誤消息應(yīng)該讓您了解您的使用率和允許的使用情況。

    • 您還可以從您的帳戶信息中心查看您的 API 使用統(tǒng)計(jì)信息。

  • APIConnectionError
  • `APIConnectionError` 表示您的請(qǐng)求無(wú)法到達(dá)我們的服務(wù)器或無(wú)法建立安全連接。這可能是由于網(wǎng)絡(luò)問(wèn)題、代理配置、SSL 證書(shū)或防火墻規(guī)則造成的。

    如果遇到 APIConnectionError,請(qǐng)嘗試以下步驟:

    • 檢查您的網(wǎng)絡(luò)設(shè)置并確保您擁有穩(wěn)定快速的互聯(lián)網(wǎng)連接。您可能需要切換到不同的網(wǎng)絡(luò)、使用有線連接或減少使用帶寬的設(shè)備或應(yīng)用程序的數(shù)量。

    • 檢查您的代理配置并確保它與我們的服務(wù)兼容。您可能需要更新代理設(shè)置、使用不同的代理或完全繞過(guò)代理。

    • 檢查您的 SSL 證書(shū)并確保它們有效且是最新的。您可能需要安裝或更新證書(shū)、使用不同的證書(shū)頒發(fā)機(jī)構(gòu)或禁用 SSL 驗(yàn)證。

    • 檢查您的防火墻規(guī)則并確保它們沒(méi)有阻止或過(guò)濾我們的服務(wù)。您可能需要修改防火墻設(shè)置。

    • 如果合適,請(qǐng)檢查您的容器是否具有發(fā)送和接收流量的正確權(quán)限。

    • 如果問(wèn)題仍然存在,請(qǐng)查看我們的持續(xù)錯(cuò)誤后續(xù)步驟部分。

  • InvalidRequestError
  • InvalidRequestError 表示您的請(qǐng)求格式錯(cuò)誤或缺少一些必需的參數(shù),例如令牌或輸入。這可能是由于代碼中的拼寫(xiě)錯(cuò)誤、格式錯(cuò)誤或邏輯錯(cuò)誤。

    如果遇到 InvalidRequestError,請(qǐng)嘗試以下步驟:

    • 仔細(xì)閱讀錯(cuò)誤消息并確定具體的錯(cuò)誤。錯(cuò)誤消息應(yīng)告知您哪些參數(shù)無(wú)效或丟失,以及預(yù)期的值或格式。

    • 查看 API 參考以了解您正在調(diào)用的特定 API 方法,并確保您發(fā)送的參數(shù)有效且完整。您可能需要查看參數(shù)名稱、類型、值和格式,并確保它們與文檔相符。

    • 檢查您請(qǐng)求數(shù)據(jù)的編碼、格式或大小,并確保它們與我們的服務(wù)兼容。您可能需要以 UTF-8 編碼您的數(shù)據(jù),以 JSON 格式化您的數(shù)據(jù),或者如果數(shù)據(jù)太大則壓縮您的數(shù)據(jù)。

    • 使用 Postman 或 curl 等工具測(cè)試您的請(qǐng)求,并確保它按預(yù)期工作。您可能需要調(diào)試代碼并修復(fù)請(qǐng)求邏輯中的任何錯(cuò)誤或不一致。

    • 如果問(wèn)題仍然存在,請(qǐng)查看我們的持續(xù)錯(cuò)誤后續(xù)步驟部分。

  • AuthenticationError
  • `AuthenticationError` 表示您的 API 密鑰或令牌無(wú)效、過(guò)期或已撤銷。這可能是由于拼寫(xiě)錯(cuò)誤、格式錯(cuò)誤或安全漏洞造成的。

    如果遇到 AuthenticationError,請(qǐng)嘗試以下步驟:

    • 檢查您的 API 密鑰或令牌并確保其正確且有效。您可能需要從 API 密鑰儀表板生成一個(gè)新密鑰,確保沒(méi)有多余的空格或字符,或者如果您有多個(gè)密鑰或令牌,則使用不同的密鑰或令牌。

    • 確保您遵循了正確的格式。

  • ServiceUnavailableError
  • `ServiceUnavailableError` 表示我們的服務(wù)器暫時(shí)無(wú)法處理您的請(qǐng)求。這可能是由于計(jì)劃內(nèi)或計(jì)劃外維護(hù)、系統(tǒng)升級(jí)或服務(wù)器故障所致。這些錯(cuò)誤也可以在高流量期間返回。

    對(duì)于給您帶來(lái)的不便,我們深表歉意,我們正在努力盡快恢復(fù)我們的服務(wù)。

    如果遇到 ServiceUnavailableError,請(qǐng)嘗試以下步驟:

    • 等待幾分鐘,然后重試您的請(qǐng)求。有時(shí),問(wèn)題可能會(huì)很快得到解決,您的請(qǐng)求可能會(huì)在下一次嘗試時(shí)成功。

    • 查看我們的狀態(tài)頁(yè)面,了解任何可能影響我們服務(wù)的持續(xù)事件或維護(hù)。如果有活動(dòng)事件,請(qǐng)關(guān)注更新并等到問(wèn)題解決后再重試您的請(qǐng)求。
    • 如果問(wèn)題仍然存在,請(qǐng)查看我們的持續(xù)錯(cuò)誤后續(xù)步驟部分。

持續(xù)性錯(cuò)誤

如果問(wèn)題仍然存在,請(qǐng)通過(guò)聊天聯(lián)系我們的支持團(tuán)隊(duì)并向他們提供以下信息:

  • 您使用的型號(hào)

  • 您收到的錯(cuò)誤消息和代碼

  • 您發(fā)送的請(qǐng)求數(shù)據(jù)和標(biāo)頭

  • 您請(qǐng)求的時(shí)間戳和時(shí)區(qū)

  • 任何其他可能有助于我們?cè)\斷問(wèn)題的相關(guān)詳細(xì)信息

我們的支持團(tuán)隊(duì)將調(diào)查此問(wèn)題并盡快回復(fù)您。請(qǐng)注意,由于需求量大,我們的支持排隊(duì)時(shí)間可能會(huì)很長(zhǎng)。您也可以在我們的社區(qū)論壇中發(fā)帖,但請(qǐng)務(wù)必省略任何敏感信息。

處理錯(cuò)誤

我們建議您以編程方式處理 API 返回的錯(cuò)誤。為此,您可能需要使用如下代碼片段:

try:
  #Make your OpenAI API request here
  response = openai.Completion.create(prompt="Hello world",
                                      model="text-davinci-003")
except openai.error.APIError as e:
  #Handle API error here, e.g. retry or log
  print(f"OpenAI API returned an API Error: {e}")
  pass
except openai.error.APIConnectionError as e:
  #Handle connection error here
  print(f"Failed to connect to OpenAI API: {e}")
  pass
except openai.error.RateLimitError as e:
  #Handle rate limit error (we recommend using exponential backoff)
  print(f"OpenAI API request exceeded rate limit: {e}")
  pass


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)