GoEx(Gorilla Execution Engine)是面向自主 LLM 应用的运行时系统,通过"事后验证"策略解决自动化操作的安全问题。
论文:GOEX: Perspectives and Designs Towards a Runtime for Autonomous LLM Applications
核心问题
LLM 从信息提供者演变为主动执行任务的代理,面临三大挑战:
| 挑战 | 说明 |
|---|---|
| 不可靠性 | 幻觉问题、输出不可预测 |
| 信号延迟 | 缺乏及时反馈,错误难以快速纠正 |
| 安全性 | 敏感数据泄露、恶意代码执行 |
核心设计:事后验证
在操作执行后验证结果可靠性,引入"撤销"和"损害控制"抽象减轻风险。
三大操作模块
RESTful API 调用
| 组件 | 功能 |
|---|---|
| 验证授权 | OAuth2 令牌或 API 密钥 |
| 机密存储 | Secret Intelligent Vault(SIV)本地存储密钥 |
| 撤销操作 | 为每个 API 调用生成撤销操作 |
| 损害控制 | 粗粒度访问控制 + 字符串匹配 |
| 执行隔离 | Docker 容器隔离执行 |
数据库操作
| 策略 | 说明 |
|---|---|
| 撤销模式 | LLM 生成逆向数据库操作 |
| 版本控制 | ACID 事务保证,用户显式提交/回滚 |
| 可逆性测试 | 容器化环境验证逆向操作有效性 |
文件系统操作
| 策略 | 说明 |
|---|---|
| 撤销模式 | 逆向文件系统操作 |
| 版本控制 | Git 版本控制,限制执行范围在仓库内 |
架构亮点
| 设计 | 说明 |
|---|---|
| SIV | 本地机密智能保险库,按需提取密钥 |
| DBManager | 抽象层防止 LLM 直接接触敏感数据 |
| FSManager | 跟踪目录树结构 |
| 容器隔离 | 所有操作在 Docker 容器中执行 |
创新性
- 填补现有系统在安全性和可逆性方面的空白
- 利用现成组件构建完整生态系统
- 为 LLM 广泛集成提供实践方案
局限性
- 事后验证不适用于需要立即反馈的场景
- 依赖现有技术,需更多实证研究验证
GitHub:https://github.com/ShishirPatil/gorilla
张芷铭的个人博客
Comments