這名開發者指出,現有的 AI 代理框架,如 LangChain(美國 LLM 應用開發框架)、CrewAI(開源人工智慧代理框架)和 OpenAI's Agents SDK,雖然提供了任務編排、工具呼叫與記憶體功能,但並未內建輸入驗證、輸出過濾或成本控制等安全機制。這意味著,開發者必須自行建構這些「防護措施」(guardrails),以確保 AI 代理運作的穩定與安全。
為解決上述問題,該開發者花了兩週時間建構了一套包含四個層面的防護措施:
輸入防護(Input Guardrails) :主要功能是攔截「提示注入攻擊」(prompt injection attacks,指惡意使用者透過輸入來操控 AI 行為的攻擊),並在大型語言模型(LLM)處理輸入前,清理敏感資料(如 PII)。這項機制若及早部署,將可避免電子郵件外洩。
輸出防護(Output Guardrails) :在 AI 代理的回應呈現給使用者之前進行驗證,以防止模型「產生幻覺的事實」(hallucinated facts,指 AI 編造不實資訊的現象)或洩漏敏感內容。開發者利用 Pydantic 模型來確保輸出符合預設的 JSON 格式與內容檢查,並進行 PII 遮蔽處理。若驗證失敗,代理會重試,多次失敗後則會返回預設回應並記錄事件。
成本斷路器(Cost Circuit Breakers) :旨在避免 API 費用因程式碼缺陷或意外的長時間對話而失控。此斷路器可設定單次請求、單次會話、每分鐘呼叫次數以及每日總花費上限。該開發者設定了每日 50 美元的上限,超過後系統便會停止呼叫 API,並回傳「服務暫時無法使用」的訊息。
工具呼叫驗證器(Tool Call Validators) :當 AI 代理有權存取資料庫、檔案系統或外部 API 時,這項驗證機制至關重要。它確保代理僅呼叫經授權的工具,並使用符合規範的參數。該開發者採用「預設拒絕」(default-deny)策略,任何未明確列入允許清單的工具或參數都將被拒絕,有效防範潛在的破壞性操作或模型「產生幻覺」的工具呼叫。
這些防護措施的總延遲僅增加不到 40 毫秒(不包括基於機器學習的分類器),對於 AI 代理的效能影響極小。開發者建議,應在編寫代理邏輯之前就考慮部署這些防護措施,因為事後建構花費了較長時間。
這名開發者預測,未來 12 個月內,主要的 AI 代理框架將會把防護措施納入其核心功能。他強調,防護措施雖然不能提升 AI 代理的準確性,卻能在模型出錯時,有效限制其可能造成的損害。