AI 代理人將生成式 AI 擴展到超越 AI 共同責任模型 所描述的請求/回應模式。 與大型語言模型不同,代理不只是回傳內容供人類據以採取行動。 取而代之的是,代理程式:
- 自主行動。 它能呼叫工具、呼叫 API、撰寫資料並觸發工作流程,且每個步驟都不需要人工核准。
- 計畫與迴圈。 它會分解目標,對中間結果進行推理,並在返回結果前反覆重新提示自己多次。
- 儲存狀態與記憶體。 短期情境加上持續記憶會影響未來行為,並可能跨越會話或使用者的界限。
- 有身份認同。 它透過管理身份、代表代幣或 獨立代理身份來驗證下游系統,並擁有自身的權限。
- 與其他代理程式一起撰寫。 在多代理協調中,一個代理的輸出會變成另一個代理的指令,從而引入新的信任邊界。
這些行為都帶來了請求/回應 AI 模型中不存在的責任。
Note
本文將「責任」一詞指治理層面:誰應該負責配置、操作及監控每項控制。 此為說明性指引,並非旨在傳達法律結論,或修改或抵觸您與 Microsoft 間任何協議條款。
AI 代理與雲端及 AI 工作負載的差異
下表總結了 AI 代理模型與標準雲端模型及生成式 AI(LLM)模型的差異。
| 關注 | 標準雲端模型 | 人工智慧(LLM)模型 | AI 代理人模型 |
|---|---|---|---|
| 主要互動方式 | API 或 GUI | 提示回覆 | 邁向自主多步驟行動的目標 |
| 現實世界的副作用 | 應用程式程式碼,明確 | 人類根據輸出採取行動 | 代理人直接透過工具行動 |
| State | 應用與資料層 | 無狀態提示詞 | 持久代理記憶體與上下文 |
| Identity | 使用者或應用程式身份 | 使用者或應用程式身份 | 獨特的代理程式身分識別加上委託權杖 |
| 信任界限 | 使用者對應用程式 | 使用者對模型 | 使用者對代理程式對工具對其他代理程式 |
| 最高風險 | 設定錯誤、資料外洩 | 提示插入 (內容) | 提示插入以推動行動;過度代理;混淆代理 |
責任劃分
與 雲端 與 人工智慧 的共同責任模型相同,責任分工會依你選擇的部署模式而改變。 對於代理人來說,相關的選項包括:
- SaaS 代理。 現成的代理程式,例如 Microsoft Copilot 代理程式、Microsoft Security Copilot 代理程式,或已發佈的 Microsoft Copilot Studio 代理程式。 Microsoft 負責管理編排器、模型、安全系統及大多數工具連接器。 你擁有設定、資料存取範圍、身份和使用權。
- PaaS 代理程式。 你可以在受管代理平台上建置代理程式,例如 Microsoft Foundry Agent Service、Azure SRE 代理程式、自訂的 Microsoft Copilot Studio 代理程式,或是在 Azure 管理的執行環境上使用 Microsoft Agent Framework。 Microsoft 提供執行環境、模型主機及平台安全控制。 你擁有代理的指令、工具與外掛選擇、工具權限、編排邏輯、記憶體設計,以及代理的身份與授權。
- IaaS 代理。 你自己建置並架設整個代理堆疊:虛擬機或容器上的自訂編排器、自我管理框架,甚至可能還有自架模型。 你幾乎擁有所有東西,除了實體基礎架構(以及如果你以託管 API 形式使用基礎模型)。
責任向 左轉移,意味著你在從 SaaS 到 PaaS 再到 IaaS 代理時,承擔更多責任感。
下圖說明了你與 Microsoft 依代理部署類型所負責的領域。
AI 代理層概述
代理系統會在現有的 AI 平台、應用與使用層之上及周圍新增三層。 執行任務的人會負安全責任,但供應商可能會在設定時向你透露控制權。
AI 平台層(繼承)
AI 平台層承載並保護模型、訓練資料、權重及推論 API,並提供內建的輸入與輸出安全系統。 此層的責任繼承自 AI 共同責任模型。
代理協調層
協調層是「大腦迴路」:規劃、推理、工具選擇、代理系統提示與指令,以及多代理協調。 這一層是 過度主動 性與 迅速注入行動 風險的所在。
安全考量:
- 限制代理人的指令與範圍(最小功能)。
- 驗證並淨化任何進入迴圈的不受信任內容,包括檢索的文件、工具輸出及其他代理訊息。 把所有這些當作不可信的輸入,而不是可信的指令。
- 強制執行規劃防護機制:步驟和迭代限制、迴圈偵測、預算和成本上限,以及允許將工具連結起來的清單。
- 對於多代理系統,將每個代理間訊息視為信任邊界,並重新套用輸入安全。
工具與動作層
工具與動作層包含連接器、外掛、函式、模型情境協定(MCP)伺服器,以及代理可呼叫以在現實世界中 讀取並變更 狀態的API。 這一層是與大型語言模型(LLM)相比最大的不同之處。
安全考量:
- 每個工具的權限最低。 每個工具或連接器都應該只包含所需的權限。 不要授與代理程式廣泛的身分識別。
- 每個動作都要授權,不只是在會話開始時。 請重新檢查這個資源上的這個動作是否被允許。 這項檢查可降低混淆代理人與過於廣泛的委派風險。
- 人機迴圈閘道。 要求對高影響、不可逆或敏感的操作採取此措施,例如寫入、刪除、付款、生產環境變更及對外傳送。
- 行動稽核。 記錄每一次工具調用,包含輸入、輸出、所用身份及決策理由。
- 沙箱功能與輸出控制。 將它們應用到程式碼執行和瀏覽工具上。
代理記憶體與狀態層
代理的記憶層包含短期對話脈絡,以及會影響未來行為的持久記憶、向量儲存庫和草稿區。
安全考量:
- 依使用者和租戶劃分並隔離記憶體。 防止跨使用者或跨會話記憶體流失。
- 防止記憶中毒。 注入的內容可能會持續存在,並在之後重新觸發。
- 分類、保留並刪除儲存的記憶體。 應用資料分類、保留權及刪除權。
- 加密記憶體儲存並執行存取控制。 把記憶體當作敏感資料來處理。
AI 應用層(繼承)
AI 應用層是使用者所使用的應用程式或介面,連同接地、外掛及應用安全系統。
AI 使用層(繼承、擴展)
AI 使用層描述了使用者與應用程式如何使用代理。 有了代理,對自主行動的究責成為核心議題:可接受使用政策、針對代理特有風險的使用者教育,以及對代理代表使用者採取之行動的明確責任歸屬。
責任矩陣
以下矩陣總結了各部署模型的責任。 C = Customer, M = Microsoft, S = Shared. 矩陣是一個通用指引;特定服務的具體職責會依服務條款與配置而異。
繼承的雲端與人工智慧職責
| 責任區域 | IaaS 代理程式 | PaaS 代理程式 | SaaS 代理程式 |
|---|---|---|---|
| 客戶資料 (包括接地與記憶體內容) | C | C | C |
| 身分識別和使用者 | C | C | C |
| 存取管理(RBAC、多重驗證、條件存取) | C | C | C |
| 用戶端裝置與端點 | C | C | S |
| 基礎模型寄存與權重 | C/M1 | 月 | 月 |
| 模型輸入/輸出內容安全 | C/M1 | S | 月 |
| 實體基礎設施(主機、網路、資料中心) | 月 | 月 | 月 |
代理人專屬職責
| 責任區域 | IaaS 代理程式 | PaaS 代理程式 | SaaS 代理程式 |
|---|---|---|---|
| 代理指令、系統提示與範圍 | C | C | S |
| 工具、外掛與連接器選擇 | C | C | S |
| 每個工具權限(最小權限) | C | C | S |
| 代理身份與委派令牌管理 | C | S | S |
| 針對每個動作的授權檢查 | C | S | S |
| 高影響力行動的人機迴圈核准 | C | C | C |
| 協調作業防護機制(迴圈、步驟和成本限制) | C | S | 月 |
| 多代理信任邊界控制 | C | S | S |
| 記憶設計、隔離與中毒防禦 | C | S | 月 |
| 工具與行動沙箱功能與輸出控制 | C | S | 月 |
| 動作稽核記錄與監控 | C | S | S |
| 代理執行時與編排器平台 | C | 月 | 月 |
| 可接受使用政策與行動問責 | C | C | C |
1 客戶,若您在 IaaS 上自行託管模型;Microsoft,若您從託管於 IaaS 的代理程式使用託管模型 API。
這些是你永遠保留的責任
無論部署模式為何,您始終需負責:
- 資料,包括所有寫入代理記憶體並傳遞給工具的資料。
- 身份與最小權限:代理自身的身份,以及其可使用的所有憑證或令牌的範圍。
- 行動授權:代理人被允許做什麼,特別是不可逆或敏感的操作。
- 人為監督:哪些行為需要批准,誰對代理人的行為負責。
- 可接受的使用與治理:自主行為的政策、使用者教育與合規性。
設計時應防範的主要代理人特定風險
這些風險分別對應於 OWASP LLM 應用前十名、代理人工智慧前十名、MITRE ATLAS 以及 Microsoft 安全回應中心(MSRC)AI 系統漏洞嚴重性分類。 他們強調特工獨有的 行動 層面。
| 風險 | Mitigation |
|---|---|
| 提示插入到行動。 不受信任的內容,例如網頁、文件、電子郵件或其他代理,會劫持代理,並使其惡意呼叫工具。 | 將所有工具、檢索和代理輸出視為不可信。 從資料中分離指令。 限制高影響力行動。 |
| 過度的自主性。 代理人擁有比任務所需的更多的工具、權限或自主權。 | 對每個工具套用最小功能與最小權限,並設定範圍說明。 |
| 混淆的代理或過於寬泛的委派。 代理利用其特權身份執行請求者無法做到的事。 | 使用代表權杖和按行動授權。 避免固定的廣泛身份認同。 |
| 記憶中毒。 插入的內容會持續存在,並在稍後或跨工作階段重新觸發。 | 隔離並驗證記憶,追蹤來源,並強制保存。 |
| 無限循環、成本與資源枯竭。 逃跑的計畫。 | 執行步進、迭代和預算限制,並偵測迴圈。 |
| 多代理信任失敗。 受損或產生幻覺的代理程式會污染合作者。 | 在每個代理程式之間的邊界重新套用輸入安全防護。 要驗證,不要相信。 |
| 叛變或冒充的特工。 未經授權的代理人在環境中行動,或代理人的身份被偽造。 | 強化代理人身份、認證,以及偵測與監控。 |
在自訂前先設定好
Microsoft 建議的 AI 原則同樣適用於代理,且對代理更為嚴格,因為自主性會增加錯誤的成本。
- 從 SaaS 代理程式開始(Microsoft Copilot、Microsoft Security Copilot,或已發佈的 Microsoft Copilot Studio 代理程式)。 Microsoft 負責協調流程、安全性,以及大部分工具的安全性。 您可設定資料範圍和身分。
- 只有當現成的代理不合適時,才可切換到 PaaS 代理程式(Microsoft Foundry Agent Service、Azure SRE 代理、自訂的 Microsoft Copilot Studio 代理程式,或管理執行時的 Microsoft Agent Framework)。 你要承擔代理邏輯、工具、權限、記憶體和身份。
- 僅打造具備 AI 安全、身份及自主系統風險深厚專業知識的 IaaS 代理 。 您幾乎掌控了整個技術堆疊。
經驗法則:你賦予代理人的自主權越多、工具和權限越廣泛,責任矩陣就越多地轉移到你身上,不論部署模式為何。 自主權從不會減少問責。
下一步
- 深入了解雲端運算的共同責任。
- 了解 AI 共同責任模型。
- 了解 Azure AI 安全最佳實務。