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

排解 API 錯誤與延遲問題

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

更新日期:13 days ago

重要連結

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

先使用正確的預設值

當你開啟服務狀態儀表板時,預設會顯示:

  • 所有專案

  • 最近 30 天

  • 每小時解析度

這個檢視只適合用作初步了解。要有效排解問題,必須先進行篩選。


調查前先篩選

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

按模型篩選(一次一個)

請務必只篩選單一模型。

原因:

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

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

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

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

按服務層級篩選

如果你使用多於一個層級(standard、priority、scale),請務必篩選至你正在調查的層級。

原因:

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

  • Priority 和 scale 層級有明確的 SLA

  • 混合不同層級會掩蓋付費層級的效能

這對延遲分析尤其重要。

按專案篩選

服務狀態預設會顯示所有專案。

進行疑難排解時,請篩選至觀察到問題的專案。

原因:

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

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

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


排解錯誤

使用 HTTP Requests 檢視

要調查錯誤:

  1. 按模型及層級篩選

  2. 如要由 Uptime 切換至 HTTP Requests,請按一下 HTTP Requests 分頁

這個檢視會按 HTTP 狀態碼顯示請求總數和錯誤數。放大至分鐘級解析度,以識別細微的尖峰或變化。

解讀錯誤率,而非錯誤數量

任何正式運行的系統都預期會出現部分錯誤。請集中看錯誤百分比,而不是原始總數。

你的總流量愈大,即使錯誤率極低,潛在錯誤數量也會愈多。

當服務狀態中找不到錯誤

如果你看到用戶端錯誤,但服務狀態中沒有相應資料:

  • 請求很可能未有到達 OpenAI

  • 問題通常出在上游(逾時、proxy、網絡)

這在用戶端逾時設定較進取時很常見。


排解延遲問題

延遲分析在 priorityscale 層級上最有意義,因為它們有明確的 SLA。Standard 層級的延遲波動可能較大,而且不提供延遲保證。

關鍵指標

要查看以下各項指標,請按相關分頁:

Token Velocity

  • 每秒產生的 token 數。

  • 不受提示詞大小影響。

Request Time

  • 請求總耗時。

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

Time to First Token (TTFT)

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

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

請務必檢視 P50 / P75 / P95 百分位數。平均值可能會掩蓋對實際用戶的影響。


6. 將延遲與 token 使用量關聯分析

服務狀態顯示行為在何時改變。用量資料則有助說明為甚麼會改變。

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

  • 篩選至相同的專案、模型

  • 如適用,按服務層級分組

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

如需更深入分析,請匯出活動資料,並檢查每次請求隨時間變化的 token 數。


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

如果你聯絡支援團隊,請包括:

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

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

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

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

  • 延遲或錯誤的時間範圍與時區 (這點很重要)

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

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

    • 延遲:如分享慢請求的例子,請分享你那邊所花的時間。最好亦包括送出請求及收到回應時的時間戳記。

    • 錯誤:請分享失敗/報錯請求的大概百分比、回應碼、錯誤訊息,以及收到錯誤回應所花的時間

  • 與請求相關的 Project id

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

  • 你觀察到的趨勢描述

    • 錯誤:失敗/報錯請求的大概百分比

    • 延遲:哪些百分位數受影響(p50 / p90 / p95 / p99),以及相對於客戶基準有多高

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


常見疑難排解情境

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

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

檢查:

  • 用戶端或 proxy 的逾時設定

  • 本地網絡或負載平衡器的變更

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


在沒有部署變更下延遲增加

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

檢查:

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

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


Priority 或 Scale 層級看起來很慢

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

檢查:

  • 篩選器已限制為單一層級和模型

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


5XX 錯誤激增

可能原因:短暫故障影響了小部分流量。

檢查:

  • 錯誤率百分比

  • 流量是否同時發生變化


問題只影響一個專案

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

檢查:

  • 專案層級篩選

  • 與未受影響專案作比較


重點總結

  • 解讀指標前,先按模型、層級及相關專案 篩選

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

  • 少量錯誤率屬正常現象

  • 缺少資料通常表示上游出現問題

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

這篇文章對你有幫助嗎?