Omnigent中的上下文策略:利用会话状态更好地治理AI代理
Databricks推出的开源元框架Omnigent引入了上下文策略,允许AI代理根据会话历史动态调整权限,从而实现更安全、更灵活的治理,包括预算控制、文档访问限制和风险评分等。
Databricks近日发布了Omnigent,这是一个开源的元框架,旨在为AI代理提供统一的策略管理层。与传统的代理工具不同,Omnigent引入了“上下文策略”的概念,允许策略根据代理会话的完整历史来评估和决策,而非仅仅检查单个操作。
传统代理框架通常只提供简单的允许/拒绝规则,例如是否允许Git推送或网页搜索。这种静态控制难以平衡安全性和便利性,尤其在面对提示注入攻击时。Omnigent的上下文策略通过维护会话状态(如已读文档、累计花费或风险分数),实现了动态的、更精细的权限控制。
例如,内置的成本策略可以跟踪会话中的模型调用费用:当支出超过软阈值时,策略会暂停并询问用户是否继续;达到硬上限后,则强制切换到更便宜的模型。Google Drive策略则允许代理编辑自身创建的文档,但一旦读取了标记为机密的文件,写入权限就会自动限制在该文件集中,防止数据泄露。风险评分策略为每个操作分配风险值,当累计风险超过阈值时,敏感操作(如发送邮件)需要人工批准。
Omnigent还支持基于意图的授权(IBA),根据用户最初提出的任务来限定代理的权限。例如,如果用户要求更新幻灯片,代理将无法访问GitHub或执行Shell命令,即使受到提示注入攻击也无法滥用工具。
作为元框架,Omnigent可以包装多种流行的代理工具和框架,包括Claude Code、Codex、OpenAI Agents SDK等。用户无需更改现有代理配置,即可通过Omnigent应用统一的上下文策略。该项目目前处于alpha阶段,已开源在GitHub上,并提供了详细的快速入门指南。上下文策略的核心在于它能够记住会话中发生的事件,比如代理读取了哪些文档、累计花费了多少,然后基于这些状态来决定下一步操作是否安全。这种设计借鉴了传统安全中的上下文安全概念,使得代理的控制更加灵活和强大。例如,同一个Git推送操作,如果代理之前只处理了普通代码,则允许;但如果它曾经读取过不信任的网页,则可能被阻止。这种动态调整能力对于防范提示注入攻击特别重要。此外,Omnigent的架构允许平台团队叠加策略,比如在会话级预算之上再设置用户级每日预算,从而全面控制成本。总之,Omnigent通过上下文策略为AI代理的治理提供了一种更智能、更灵活的解决方案。