教程官方文档3 分钟阅读教程/部署

讲解FastGPT Agent V2虚拟机沙箱的配置与使用方法

FastGPT Agent V2的虚拟机是为每个对话会话动态分配的物理隔离轻量Linux沙箱,可为Agent提供真实的代码执行、文件读写能力,支持运行Python、Node.js、Shell脚本,处理CSV/Excel文件或生成图表。

虚拟机核心概述

FastGPT Agent V2的虚拟机是为每个对话会话动态分配的物理隔离轻量Linux沙箱,可为Agent提供真实的代码执行、文件读写能力,支持运行Python、Node.js、Shell脚本,处理CSV/Excel文件或生成图表。虚拟机与对话会话强绑定,不同用户、会话的运行环境完全物理隔离,未来版本将改为用户级隔离以减少资源消耗。系统通过心跳机制维持活动容器存活,会话闲置时会自动回收销毁实例以释放资源。同一会话周期内虚拟机持续存活,可保留此前的依赖、临时文件与环境变量,支持多轮交互连续性。沙箱内置严格的资源配额、网络防火墙策略,所有执行命令通过base64编码解码运行,规避Shell拼接导致的命令注入风险。

快速配置与使用步骤

  1. 启用虚拟机:在Agent配置面板的对应选项中开启虚拟机功能,调试窗口将自动激活沙箱专属调试能力。
  2. 配置启动脚本:在虚拟机配置页的启动脚本编辑器编写Shell脚本,脚本最大支持16384个字符,超出会被自动截断。脚本将在虚拟机工作目录/workspace下执行,可用于安装Python依赖、更换软件源或配置环境变量。
  3. 上传测试文件:对话输入框上传的所有测试文件,会在对话开始前自动同步注入到虚拟机的user_files/目录,AI可通过本地路径直接读取处理。
  4. 调试与重置:点击“重开对话”可彻底销毁当前沙箱并重建纯净容器,避免历史测试文件污染新一轮调试;调试窗口可通过“虚拟机文件管理器”入口,实时浏览、编辑、上传或下载容器内文件。

运行机制与限制

启动脚本执行遵循固定顺序:先执行自定义的应用启动脚本,再执行关联技能包的入口脚本。系统通过状态文件~/.fastgpt/agent-skill-entrypoints/state.json实现状态去重:自定义应用启动脚本通过SHA256哈希比对内容,未修改则跳过执行以加快启动速度;技能入口脚本基于技能版本ID去重,仅在沙箱首次冷启动时执行一次。当虚拟机重建或闲置回收时,所有脚本将在下次冷启动时重新执行。脚本执行受超时保护约束,且存在字符长度限制。对话调试过程中,虚拟机的创建与启动状态会在气泡上方流式展示,方便感知沙箱所处阶段与启动耗时。

来源:https://doc.fastgpt.cn/zh-CN/guide/build/agentv2/vm