OpenAI
此頁面由機器翻譯。查看原始英文文章

API 錯誤與延遲疑難排解

本文說明如何使用服務健康狀態和用量儀表板,在使用 OpenAI API 時疑難排解常見錯誤與延遲問題。

更新日期:14 days ago

重要連結

*服務健康狀態儀表板目前僅供 Enterprise API 客戶使用。

先從正確的預設值開始

開啟服務健康狀態儀表板時,預設為:

  • 所有專案

  • 過去 30 天

  • 每小時解析度

此檢視僅適合用來初步了解情況。若要進行有意義的疑難排解,務必先套用篩選條件。


先篩選,再調查

正確篩選是最重要的一步。多數誤判都來自於混合查看不同模型、層級或專案。

依模型篩選(一次一個)

務必只篩選單一模型。

原因:

  • 低流量模型上的問題可能會被高流量流量掩蓋

  • 高流量模型可能讓局部問題看起來像是全域問題

  • 不同模型有不同的效能目標

注意:選取多個模型會將其彙總,不會在它們之間切換。

依服務層級篩選

如果您使用多個層級(standard、priority、scale),請務必篩選到您要調查的層級。

原因:

  • 各層級具有不同的效能特性

  • Priority 和 Scale 層級具有明確定義的 SLA

  • 混合不同層級會模糊付費層級的效能表現

這對延遲分析尤其重要。

依專案篩選

預設情況下,服務健康狀態會顯示所有專案。

若要疑難排解,請篩選到觀察到問題的專案。

原因:

  • 單一高流量專案可能主導整體指標

  • 受影響但流量較小的專案,可能被無關流量掩蓋

只有在您確信問題確實影響整個組織時,才保留選取「所有專案」。


疑難排解錯誤

使用 HTTP Requests 檢視

若要調查錯誤:

  1. 依模型和層級篩選

  2. 若要從 Uptime 切換到 HTTP Requests,請點選 HTTP Requests 分頁

此檢視會依 HTTP 狀態碼顯示總請求數和錯誤計數。請放大到分鐘層級解析度,以識別細微尖峰或變化。

解讀錯誤率,而非錯誤數

在任何正式上線的系統中,某些錯誤都是可預期的。請關注錯誤百分比,而非原始總數。

總流量越大,即使錯誤率極低,潛在錯誤數量也可能越高。

當服務健康狀態中沒有顯示錯誤時

如果您看到用戶端錯誤,但服務健康狀態中沒有對應資料:

  • 請求很可能未到達 OpenAI

  • 問題通常出在上游(逾時、代理、網路)

這在激進的用戶端逾時設定下很常見。


疑難排解延遲

延遲分析在具有明確 SLA 的priorityscale層級上最具意義。Standard 層級可能會出現較大的延遲變動,且不提供延遲保證。

關鍵指標

若要查看這些指標中的每一項,請點選相關分頁:

Token Velocity

  • 每秒產生的 Token 數。

  • 不受提示詞大小影響。

Request Time

  • 請求總持續時間。

  • 受輸出大小和推理顯著影響。

Time to First Token (TTFT)

  • 直到第一個 Token 產生所需的時間。

  • 受未快取的輸入提示詞大小和推理顯著影響。

請務必查看 P50 / P75 / P95 百分位數。平均值可能掩蓋真實使用者受到的影響。


6. 將延遲與 Token 使用量建立關聯

服務健康狀態會顯示行為在何時發生變化。用量資料則有助於解釋為何發生變化。

在用量儀表板中,請執行以下操作,以確保您查看的是與服務健康狀態儀表板檢視相關的資料:

  • Filter 為相同的專案、模型

  • Group by 服務層級 (若適用)

  • 聚焦於輸出 Token,因為它們對延遲影響最大

若要進行更深入的分析,請匯出 Activity Data,並檢查每個請求的 Token 數隨時間的變化。


7. 與支援團隊分享的內容(如有需要)

如果您確實聯絡支援團隊,請提供:

  • 受影響的 Org ID (這很重要)

  • 受影響的端點(Chat Completions、Responses 等)(這很重要)

  • 受影響的模型 (這很重要)

  • 這是發生在 scale 或 priority 層級嗎?(這很重要)

  • 發生延遲或錯誤的時間範圍及時區 (這很重要)

  • 相關的 x-request-id 或 X-Client-Request-Id(通常很重要;若可以請提供)

    • 所提供請求的時間戳記及時區(或至少提供日期)

    • 延遲 - 若分享慢速請求範例,請提供您那端觀察到耗時多久。理想情況下,也請包含請求送出與收到回應時的時間戳記。

    • 錯誤 - 請分享失敗/出錯請求的大約百分比、回應碼、錯誤訊息,以及收到錯誤回應花了多久時間

  • 與請求相關的 Project id

  • 這是否影響資料駐留請求?若是,影響哪些?

  • 您觀察到的趨勢描述

    • 錯誤:失敗/出錯請求的大約百分比

    • 延遲:哪些百分位數受到影響(p50 / p90 / p95 / p99),以及與客戶基準相比高出多少

    • 兩者皆有:錯誤或延遲資料的螢幕截圖或表格(您如何判定錯誤率或延遲高於預期?)


常見疑難排解情境

發生逾時,但服務健康狀態看起來正常

可能原因:請求在到達 OpenAI 之前就已逾時。

請檢查:

  • 用戶端或代理的逾時設定

  • 本機網路或負載平衡器變更

  • 服務健康狀態儀表板中是否出現 499 錯誤(在您自己的系統中,這些可能顯示為 5xx 錯誤)。


沒有部署變更,延遲卻增加了

可能原因:輸出 Token 大小或推理使用量增加,且\or 流量在不同服務層級之間轉移

請檢查:

  • 用量儀表板中每個請求的平均輸出 Token 數(需要下載資料,並用輸出 Token 除以總請求數)。

  • 服務健康狀態儀表板中的 Request Time 和 TTFT 百分位數。


Priority 或 Scale 層級看起來很慢

可能原因:指標混合了不同層級(也就是 standard 層級流量掩蓋了付費層級的效能)

請檢查:

  • 篩選條件是否限制為單一層級和模型

  • 不同層級之間的 Token velocity 比較


5XX 錯誤激增

可能原因:影響少量流量的暫時性故障。

請檢查:

  • 錯誤率百分比

  • 流量是否也在同一時間發生變化


問題只影響單一專案

可能原因:專案特定的設定或使用模式。

請檢查:

  • 專案層級篩選

  • 與未受影響專案進行比較


最終重點

  • 在解讀指標之前,先依模型、層級,以及相關時的專案 進行篩選

  • 進行延遲分析時,請使用百分位數,不要使用平均值

  • 小幅錯誤率屬於正常現象

  • 缺少資料通常代表上游問題

  • 用量資料有助於解釋延遲為何改變;服務健康狀態則有助於顯示何時改變

這篇文章有幫助嗎?