AI Code Interpreter 怎么管工作区:临时文件、依赖安装和会话结束后的清理

Written by

in

代码解释器让 Agent 可以处理表格、运行脚本和生成报告,但它也把文件系统、依赖管理和命令执行带进了产品。测评时只跑一个 print("hello") 没有意义,真正要看的是一个用户的工作区会不会影响另一个用户,文件会保存多久,安装依赖是否可控。

工作区应有明确生命周期

创建时绑定租户、项目、会话和用途;运行时限制 CPU、内存、磁盘、进程数和最长执行时间;结束后删除临时文件、环境变量、缓存和下载产物。对需要断点恢复的任务,应保存受控的结果资产,而不是把整个容器快照长期保留。

文件传入和传出都要验证。上传文件要识别真实类型、限制大小和解压比;生成文件应经过扫描、权限校验和短时下载链接。日志里保留文件 ID、哈希和操作摘要即可,不应把原始数据和命令输出无限期复制到多个系统。

依赖安装是供应链入口

允许任意 pip install 或系统包安装,会让环境变得不可预测,也可能拉入恶意或过大的依赖。更稳妥的方式是预置允许列表、内部镜像或按任务审批的依赖集,并记录锁文件和包哈希。网络访问也要按用途限制,不能把“需要下载一个库”变成任意外联能力。

E2B 等项目提供面向 Agent 的隔离执行环境,说明工作区可以作为独立服务管理。但无论采用托管还是自建方案,业务侧仍需控制谁能创建、谁能读取结果、何时销毁和如何审计。

若模型调用通过 top-api.cc 统一入口,可以关联请求 ID 与工作区 ID,帮助核对模型、工具和费用;真正的文件隔离、命令授权和清理仍应由工作区服务负责。

验收测试

  • 两个租户能否看到彼此临时文件或缓存;
  • 会话结束、取消和异常退出后是否清理;
  • 依赖安装是否受允许列表和哈希控制;
  • 网络、CPU、内存和磁盘是否真正限额;
  • 下载链接是否可撤销且按项目授权;
  • 重试任务会不会重复产生外部副作用。

参考资料:E2B 项目、容器隔离与软件依赖管理文档。代码解释器适合高价值自动化,但不能因“临时容器”就忽略数据边界。

使用 top-api.cc 记录模型调用后,建议把工作区审计数据保持最小化,并把敏感文件留在专用存储服务。

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *