跳至主要內容

代理程式終止開關

在每個代理程式上儲存一個「停止此代理程式」webhook,當代理程式行為異常時由 LiteLLM 觸發它。

總覽​

終止開關是與代理程式其餘設定一起儲存的可選外送 webhook。它保存執行階段預期用於關閉呼叫的端點、HTTP 方法、標頭、查詢參數、JSON 主體和驗證。代理程式管理員可以透過單一請求或從 Admin UI 中該代理程式頁面的 Danger Zone 觸發它。LiteLLM 只會呼叫這個 webhook;代理程式在 LiteLLM 端仍保持已註冊且啟用,因此您可另外決定是否刪除它。每次觸發都會寫入稽核記錄。

只有代理程式管理員可以設定或觸發終止開關。驗證區塊中的密鑰(bearer token、API 金鑰、basic auth 密碼)在每次讀取時都會被遮罩為 REDACTED_BY_LITELM。非管理員讀者看到代理程式時會顯示 kill_switch: null。

設定終止開關​

  1. 前往 LiteLLM 儀表板中的 Agents。
  2. 建立或編輯代理程式。
  3. 開啟 Kill switch 面板,並填入 URL、方法、標頭、查詢參數、JSON 主體和驗證類型。
  4. 儲存。代理程式詳細資料頁面現在會顯示已設定的端點和方法,並將憑證遮罩。

欄位​

欄位必填說明
urlyes絕對 http 或 https URL。其自身的查詢字串會保留,並與 query_params 合併
methodnoPOST(預設)、PUT、PATCH、DELETE 或 GET
headersno每次觸發都會送出的靜態標頭。驗證標頭在名稱衝突時具有優先權
query_paramsno附加到 URL 的查詢參數
bodyno作為請求主體送出的 JSON 物件
authno下列驗證形式之一

auth 區塊是在 type 上的標記聯集。{"type": "bearer", "token": "..."} 會送出 Authorization: Bearer <token>。{"type": "api_key", "header_name": "X-API-Key", "key": "..."} 會將金鑰放在您命名的標頭下。{"type": "basic", "username": "...", "password": "..."} 會送出 Authorization: Basic 標頭。若為未驗證的端點,請不要填入 auth。

觸發終止開關​

從 Agents 清單開啟該代理程式,並捲動到頁面底部的 Danger Zone。此區塊只會為代理程式管理員顯示,並警告觸發會停止該代理程式的上游執行階段,且可能造成服務中斷。

點擊 Fire Kill Switch,輸入代理程式的完整名稱以啟用 Fire 按鈕,然後確認。接著該區塊會顯示狀態碼以及 webhook 回傳內容的前段。

LiteLLM 會完全依照設定送出,超時時間為 10 秒,且不會跟隨重新導向。webhook 回傳 2xx 時,會回傳 200,其中包含接收端的狀態碼以及其主體前 2000 個字元以內的內容。非 2xx 回應或傳輸失敗會回傳 502,且具有相同的結構,讓您可以看到接收端的回應。觸發沒有終止開關的代理程式會回傳 400,未知的代理程式會回傳 404,而非管理員金鑰在送出任何內容前就會得到 403。

回應主體會顯示給觸發該開關的管理員,因此請將 webhook 指向不會回顯密鑰的端點。

稽核記錄​

每次送達 webhook 的觸發,不論是否回傳 2xx,都會在稽核記錄中對 LiteLLM_AgentsTable 資料表寫入一筆 kill_switch_fired 資料列,並以代理程式 id 作為物件。該資料列會記錄觸發者(使用者與金鑰)、目標 URL、方法、webhook 回傳的狀態碼與截斷後的主體,以及若有傳輸錯誤時的錯誤內容。終止開關設定本身,包括驗證、自訂標頭、主體和查詢參數,都不會寫入該資料列。稽核記錄需要 litellm_settings.store_audit_logs: true,請參閱 Audit Logs。

在 Admin UI 中,開啟 Logs,切換到 Audit Logs 分頁,並將 action 篩選為 Kill switch fired(或將資料表篩選為 Agents)。點擊某一列即可查看完整酬載。

LiteLLM Enterprise
為正式環境打造的 SSO/SAML、稽核記錄、支出追蹤、多團隊管理與防護欄。
深入瞭解 →