SponsioLabs/Sponsio
Deterministic safety solutions for probabilistic AI agents
Sponsio – AI 代理的執行時期防護機制
它是什麼 – Sponsio 是一個輕量級的開源函式庫,位於基於 LLM 的代理程式(例如 LangChain、Claude、OpenAI 或 CrewAI 機器人)與代理程式想要呼叫的工具之間。它會針對每次工具呼叫評估「合約」(基於形式化方法的確定性規則),並可以通過、封鎖、警告或升級該呼叫。這些檢查在微秒內執行,且從不呼叫其他模型,使其比「LLM 作為判斷者」(LLM-as-judge)的方法更便宜且更具可預測性。
核心概念
| 概念 | 解釋 |
|---|---|
| 代理合約 | 一種執行時期規則(以小型 YAML DSL 表示),在每個代理動作上強制執行。合約可以查看當前呼叫以及先前呼叫的歷史記錄,從而實現諸如「僅在使用者經過驗證後才發放退款」之類的策略。 |
| 確定性強制執行 | 合約被編譯為模糊線性時序邏輯 (LTL) 監控器。監控器在 < 0.01 毫秒內決定是否允許呼叫,無需任何 LLM 推論。 |
| 形式化方法支援 | 規則語言設計為可證明是健全的;文件包含關於底層形式化方法的入門介紹。 |
| 可擴充的合約庫 | 22 個現成的套件(例如 destructive、shell、filesystem)涵蓋了常見的風險模式。套件只是 YAML 包含檔,因此新增一個新套件只需一行變更。 |
| 本地優先,可選雲端控制台 | 強制執行完全在主機上執行;託管控制台 (app.sponsio.dev) 可用於檢視執行狀況、審查規則集並發布經過審核的合約。 |
運作方式(高階概覽)
- 入門 – 執行
sponsio init .(或對 Claude/Code 使用一次性提示詞),精靈會建立一個sponsio.yaml,偵測您的框架(LangChain、CrewAI 等)並注入適當的包裝程式碼。 - 包裝代理 – 匯入 SDK 並附加防護:
import sponsio, sponsio.bridge guard = sponsio.Sponsio(config="sponsio.yaml", agent_id="mailer", mode="enforce") run = sponsio.bridge.attach(guard) # 所有後續的工具呼叫都會經過防護機制 - 合約評估 – 對於每個工具呼叫,監控器會檢查相關合約(例如「程式碼凍結期間禁止破壞性 SQL」)。決策會立即傳回(p50 ≈ 0.005 毫秒)。
- 審計與檢視 – 每個決策都會在本地記錄,並可選擇串流傳輸到託管控制台,人類可以在規則集生效前進行批准或編輯。
快速入門(Python 範例)
pip install --pre sponsio # 或使用 npm i -D @sponsio/sdk@alpha 進行 TypeScript 安裝
sponsio init . # 精靈會建立 sponsio.yaml
在 sponsio.yaml 中新增一個套件:
agents:
my_agent:
workspace: "/srv/my-bot"
include:
- sponsio:capability/destructive
- sponsio:capability/filesystem
如上所示執行您的代理。現在,除非合約明確允許,否則代理將被禁止執行任何破壞性 SQL 或不安全的檔案系統操作。
效能與安全數據(來自儲存庫)
| 基準測試 | 指標 | 結果 |
|---|---|---|
| ODCV-Bench (12 個前沿 LLM × 80 個軌跡) | 避免的錯誤對齊 | 95.6 % 平均,100 % 在 24 個高風險場景中 |
| Financial-Audit-Fraud-Finding | 封鎖的詐欺嘗試 | 18/19 封鎖 |
| RedCode-Exec (1,410 個案例) | 綜合通過率 | 98.9 % (本地),~99 % 搭配雲端 LLM-judge |
| 每個合約的延遲 | p50 | 0.0052 毫秒 |
| 最重工作負載(每次呼叫 19 個合約) | p50 | 0.139 毫秒 |
| LLM-as-judge 比較 | 延遲 | 5,000-60,000 倍更快 (無模型呼叫) |
誰應該使用 Sponsio?
- 平台團隊:向終端使用者公開 LLM 代理(例如 SaaS 程式碼助手、自主機器人)並需要確定性安全保證的團隊。
- 企業:必須執行合規性政策(例如無資料外洩、無破壞性資料庫寫入)且不能增加延遲的企業。
- 開發人員:建構自訂工具呼叫迴圈,想要隨插即用防護機制而非編寫臨時提示詞檢查的開發人員。
安裝與生態系統
| 語言 | 套件 | 安裝指令 |
|---|---|---|
| Python | sponsio (預發布版) |
pip install --pre sponsio |
| TypeScript/JavaScript | @sponsio/sdk (alpha) |
npm install -D @sponsio/sdk@alpha |
支援的整合包括 LangChain、Claude Agents、OpenAI Agents、Google ADK、CrewAI、Vercel AI、MCP 以及任何自訂工具呼叫迴圈。
貢獻與社群
- 問題與功能構想 – 開啟 GitHub Issue。
- 合約貢獻 – 新增 YAML 套件或模式;儲存庫鼓勵社群驅動的特定事件合約。
- 討論 – README 中提供了 Discord、X(前身為 Twitter)和 LinkedIn 連結。
授權
Apache 2.0 – 可免費進行商業與非商業用途。
總結: Sponsio 為 LLM 代理提供確定性、亞毫秒級的安全檢查,讓您能執行原本需要緩慢、機率性基於 LLM 的防護機制才能實現的政策。它能與熱門的代理框架開箱即用,並可針對任何領域使用自訂合約進行擴充。
相關
- 專案
- 專案
- 專案
- 專案
- 專案