利用具身分識別能力的分析機制,捕捉異常 AI 行為

Ming Lu、Kenny Johnson和Ayush Kumar

閱讀時間:10 分鐘

這篇文章亦提供 English、Deutsch、Español、Español (Latinoamérica)、Français、Italiano、日本語、한국어、简体中文和Nederlands.

當您檢視 AI 帳單時,往往很難察覺是否有異狀。您需要先建立一條基準線,才能看出哪裡出現變化——究竟是某個智慧體失控,還是某位員工的使用量暴增十倍。唯有能夠辨識這些轉折點,才能展開調查;而截至目前,要察覺這些變化仍相當困難。

瞭解誰在用 AI 做什麼,是現今組織面臨的關鍵挑戰之一。史丹佛大學的一份報告指出,59% 的組織表示,知識缺口是他們在負責任的 AI 治理上最大的障礙。 

這既是安全問題,也是財務問題。要解決這些問題,需要兩個要素:每個請求上都帶有經過驗證的身分(這樣暴增的量才會有對應的名字),以及該身分「正常行為」的樣貌。今天我們宣布這兩項功能都已經到位。

Identity-Aware AI Gateway(具身分識別能力的 AI Gateway)(搭配 Cloudflare Access)現已進入開放測試階段,而 User Insights 則已正式提供給所有 AI Gateway 客戶,且不收取額外費用。這兩項功能會將已經流經 AI Gateway 的流量,轉換成每位使用者與每個智慧體的行為基準線,並識別出偏離基準線的對象。

AI Gateway 是什麼?

AI Gateway 是所有 AI 使用量的中央控制平台。它不讓每個應用程式和團隊直接呼叫 OpenAI、Anthropic、Google 或 Workers AI 上的模型,而是讓請求先經由 AI Gateway 路由,讓您擁有一個集中觀察、保護和管理所有 AI 使用情形的平台。

它適用於您自行打造的應用程式,也適用於您的開發人員已經在使用的編碼工具。像是 Claude Code、Codex 和 GitHub Copilot 這類智慧體框架,只要透過 AI Gateway 路由,就會獲得和其他工具一樣的可見性與管控。

Identity-Aware AI Gateway(具身分識別能力的 AI Gateway)

透過 AI Gateway 與 Cloudflare Access 的整合,您可以在 Gateway 前方加上​自訂網域,並像保護其他應用程式一樣,用 Access 來保護它。這代表您可以:

  • 使用任何支援 SAML 的身分提供者(如 Okta 或 Entra)進行驗證,不再需要產生並傳遞 Cloudflare API 金鑰。
  • 針對誰可以存取您的 Gateway 設定精確的政策。
  • 向乾淨的主機名稱(例如 ai.example.com)傳送請求,URL 中無須包含帳戶 ID 或閘道 ID。

現在,每個通過驗證的請求都會帶有來自 Access 的使用者身分。AI Gateway 會將經過驗證的 Access 使用者 ID 加入請求的中繼資料中(以 cf.user_id 表示),讓您可以依實際發出請求的人來篩選記錄、分析資料和花費。

結合​消費限制後,這個身分就能成為預算管理工具。由於每個請求現在都帶有真實使用者,您可以為每位使用者設定個人的消費上限:給每個使用者各自的預算額度,當他們達到上限時,就能封鎖後續請求,或改為使用較便宜的模型。這樣既避免了意外帳單,也杜絕了因使用共用 API 金鑰而無法追蹤具體使用者與使用情況的難題。

我們的早期採用者之一 Flexport 就曾遇到這個問題。

「共用 API 金鑰幾乎讓我們無法分辨是誰在使用 AI 服務,也難以套用既有的員工存取規則,」Flexport 資安工程師 Max Baumgarten 表示,「而把 Cloudflare Access 部署在 AI Gateway 前方,就能為每項請求加上經驗證的身分,並在閘道端直接套用現有的身分政策。如此一來,團隊就能導入 AI 工具,而不需要為每一個用戶端另外建立一套驗證系統。」

在不久的將來,您將能夠使用使用者身分識別提供者中的群組,來設定消費上限,或控制某個群組可以存取哪些模型。例如,讓您的機器學習團隊有權使用最先進的模型、限制客服團隊的消費額度,或為某個專案的所有參與者設定預算範圍——這些都能對應到您已經在身分識別提供者中管理的群組。

全新的 User Insights 分頁

現在您會在 AI Gateway 中看到一個名為 User Insights 的分頁。User Insights 會讀取流經您 Gateway 的流量,並將其轉換成每個帳戶的行為樣貌。它會學習每個帳戶平常的行為模式,識別出偏離該模式的行為,並提供足夠的背景資訊,讓您區分失控的智慧體與忙碌的工程師。這項功能直接套用於已經流經您 Gateway 的流量,因此無需任何額外設定。

User Insights 會追蹤成本,包括浪費成本的地方,例如低快取命中率和過大的上下文視窗。很多工具已經能做到這點。但它們做不到的是告訴您某個帳戶的行為是否正常——而這正是我們選擇在成本控制之外,重點著墨的地方。 

為每個帳戶建立基準線:人員與智慧體

隨著時間推移,無論是真人還是智慧體,每個帳戶都會留下獨特的「行為指紋」(即行為特徵)。一個每隔三小時就會總結工單的智慧體,行為模式非常緊湊且一致。而真人的行為則較為雜亂:提示詞多樣、時間不規律,且在處理複雜問題時會有長時間的工作階段。兩者皆屬合法行為,因此同樣的偏差值,對一方可能是雜訊,對另一方卻可能是真正的警訊。

在 User Insights 中,我們從為工作階段評分開始,而不是針對單一請求。絕對閾值在這裡行不通:一位重度使用者花費暴增 500 美元可能很正常,但一個向來只花 5 美元的智慧體某次工作階段花了 50 美元,就是 10 倍的變化,而這種情況很可能被忽略。因此,我們會將每個工作階段與該帳戶自身的歷程記錄進行比較,採用過去 30 天內該帳戶工作階段成本的 95 百分位數 (p95) 作為基準。這樣我們就能掌握該帳戶平常的運作模式,而任何超過其 p95 兩倍的工作階段,都是異常行為的高嫌疑對象。

以下分析概述了我們如何得出這些數值。

圖 1:工作階段成本異常偵測

BLOG-3381 2.png

如何解讀上方的圖表 

這張圖表繪製了來自我們內部流量的真實工作階段。每個點代表一個獨立的工作階段(以對數尺度繪製):

  • X 軸(工作階段成本):以美元計價的總成本。
  • Y 軸(相對於使用者 p95 的倍數):該工作階段超出該使用者個人基準線的倍數。

兩條虛線閾值將工作階段分為四個類別:

  • 右上角(★ 星號):同時超過 2 倍使用者 p95 基準線與帳戶層級 p99 上限。這些是相對較高的大幅飆升,代表顯著的異常支出,會觸發警示。 
  • 左上角:相對飆升幅度高(使用者 p95 的 2 倍),但低於帳戶 p99 下限。我們會忽略此區域,以避免對小額變動發出警示。
  • 右下角:絕對支出金額高,但與該使用者典型的高使用量一致。這也會被視為常規行為而忽略。
  • 左下角:正常活動,完全落在兩個基準線之內。

圖 2:帳戶層級的工作階段成本分布

BLOG-3381 3.png

這個直方圖(圖 2)繪製了組織內每個工作階段的成本,以建立帳戶整體的上限:

  • 典型使用情況:絕大多數工作階段成本遠低於 10 美元,第 95 百分位數落在 20 美元。
  • 帳戶 p99(200 美元):在整個公司所有工作階段中,只有 1% 達到或超過 200 美元。

那麼我們為什麼選擇 p99?將絕對金額上限設定在帳戶 p99 建立了一個有意義的標準。這確保了所謂的異常,不僅是針對特定使用者的突發變化,同時也在全組織最昂貴的前 1% 工作階段之列。

圖 3:單一使用者的工作階段歷程記錄

BLOG-3381 4.png

基準線並非靜態不變。隨著帳戶使用習慣的改變,其滾動的 p95(綠線)和 2 倍閾值(橘線)也會隨之移動,因此警示始終反映的是近期的行為,而不是某個一次性的固定數值。我們同時也設定了金額下限,確保只有既在統計上異常、又值得管理員投入時間調查的激增情況才會觸發警示。正是這一金額下線,防止了輕度使用者因幾美分費用的 500 倍波動而觸發警示。

偵測失控行為的正確視角 

綜合上述分析,管理員所看到的是一份剔除了所有正常活動、僅展示那些偏離了自身常規行為模式的帳戶檢視畫面。這經過篩選的檢視,即是一份異常行為動態清單。

顯示異常行為的公司概觀
顯示異常行為的公司概觀

這種行為之所以難以察覺,是因為訊號從來不是一個新工具或一個被封鎖的動作,而是一個受信任的帳戶做了更多它本來就被允許做的事情。它可能是一個服務帳戶突然開始執行更昂貴的工作階段,或者某個人的使用量遠超其自身正常水準,並且持續了數天之久。

依工作階段分類的異常行為
依工作階段分類的異常行為

這些情況都不會觸發任何政策,但它們全都打破了行為基準線。某個帳戶突然偏離自身的使用模式,往往是認證遭盜用或智慧體失控的第一個可觀察到的跡象。

使用者層級的更精細細節
使用者層級的更精細細節

User Insights 不會判斷意圖,也不會封鎖任何人;相反地,它會將那少數開始出現異常行為的帳戶呈現在管理員面前,讓相關人員能夠提出下一步的問題。有時這會導向真正的調查;有時則只是代表某人需要被指點一下(例如某個開發人員明明只要用一段程式碼片段就能解決,卻把整個程式碼庫都塞進每次的提示詞裡)。 

下一步計畫 

我們將協助你從成本控制邁向成本最佳化

設定預算後,自然會引出下一個問題:如何在降低成本的同時保持同等的輸出品質?並非每個請求都需要用到最先進的模型。摘要任務或簡單的程式碼補全,可以在較便宜的模型上執行,而不會有明顯的品質損失。

我們正在建構基於任務的智慧路由,讓 AI Gateway 分析進來的請求,並將其路由到能以最低成本提供最佳結果的模型。在組織層級,您將能夠看到透過將請求路由到更有效率的模型,可以在哪些地方實現最大的成本節省。基於任務的智慧路由正在積極開發中,我們會在功能更成熟時分享更多資訊。

我們將幫助您瞭解 AI 的使用情況

異常偵測會告訴您某個帳戶打破了它的行為模式,但不會告訴您原因。管理員仍然需要深入檢視記錄,拼湊出到底發生了什麼事。填補這一缺口是我們接下來的重心,而第一步就是對流量本身進行分類。

我們正在建置提示詞分類功能,將請求歸入「編碼」、「寫作」等類別。這些類別提供了其他大多數訊號所缺少的上下文資訊。如果某位工程師在「編碼」類任務上的使用量激增,這或許在情理之中;但同樣的飆升若出現在該帳戶從未觸及過的類別中,就不是正常情況。透過分類,企業不僅能瞭解 AI 的使用量,還能掌握 AI 的具體用途。 

它也回答了這些討論背後最根本的問題:AI 是否被用於它原本被預期的工作上?一旦業務流量與其他流量分離開來,個人使用就會變得清晰可見。從外部來看,某個人在上班時間經營副業,和某個人悄悄透過模型將資料外移,兩者看起來是一樣的。區分這兩者,正是捕捉內部人員威脅的核心。 

一旦您的 AI 流量透過 AI Gateway 傳輸,管理員無需額外設定,即可獲得關於各類風險或效率指標的深入解析。

開始使用

User Insights 即日起全面開放給所有 AI Gateway 客戶使用,且不收取額外費用。它已經存在於儀表板中,任何正在透過 Gateway 傳送流量的使用者都能看到。因此,如果您已經在使用 AI Gateway 路由流量,現在就能使用這個檢視畫面。 

如果您還沒開始使用,可以​建立一個 Gateway,並開始向我們目錄中的任何模型發出請求。 

我們建議你將 AI Gateway 置於 Cloudflare Access 之後,該功能現已進入開放測試階段。花費和異常檢視畫面即使沒有 Access 也能運作,但綁定身分才能將匿名的帳戶 ID 轉化為您可以實際採取行動的真實姓名。建議您先在監控模式下執行,以瞭解基準使用情況,然後再實施具體的管控措施。

我們期待瞭解您目前的 AI 管理方式。歡迎加入 Discord 參與討論,或直接聯絡您的客戶團隊。