功能概述
Agent沙箱用于隔离FastGPT中Agent的运行环境,支持sealosdevbox、opensandbox两种提供方。未配置AGENTSANDBOXPROVIDER时,沙箱功能不会启用。配置提供方后,需同时填写对应提供方的必填环境变量,其中fastgpt-app部署需额外配置三项Proxy相关变量,fastgpt-pro部署仅需配置沙箱文件预览的代理地址。
配置步骤
- 确定沙箱提供方,将AGENTSANDBOXPROVIDER设置为sealosdevbox或opensandbox。
- 若选择sealosdevbox,需填写AGENTSANDBOXSEALOSBASEURL(服务地址)、AGENTSANDBOXSEALOSTOKEN(访问Token)、AGENTSANDBOXSEALOSIMAGE(运行态镜像),这三项为必填。默认沙箱内工作目录为/home/devbox/workspace,可按需修改AGENTSANDBOXSEALOSWORK_DIRECTORY。
- 若选择opensandbox,需填写AGENTSANDBOXOPENSANDBOXBASEURL(服务地址)、AGENTSANDBOXOPENSANDBOXAPIKEY(与服务端一致的API Key)、AGENTSANDBOXOPENSANDBOXIMAGE(完整运行态镜像)、AGENTSANDBOXOPENSANDBOXVOLUMEMANAGERURL、AGENTSANDBOXOPENSANDBOXVOLUMEMANAGERTOKEN,这五项为必填。默认运行时为docker,可通过AGENTSANDBOXOPENSANDBOX_RUNTIME切换为kubernetes。
- 两类部署均需配置AGENTSANDBOXPREVIEWPROXYURL,建议使用与FastGPT主站不同的origin。fastgpt-app部署还需配置AGENTSANDBOXPROXYSECRET(至少32字节的HMAC密钥)和AGENTSANDBOXPROXYURL(以ws://或wss://开头的WebSocket地址),这两项为fastgpt-app的必填项。
可选配置参数
可根据需求调整以下环境变量:AGENTSANDBOXSTORAGESIZEGI用于设置沙箱存储容量,默认值为1Gi;AGENTSANDBOXSUSPENDMINUTES设置未活跃沙箱的自动暂停时长,默认60分钟;AGENTSANDBOXARCHIVEINACTIVEDAYS设置已暂停沙箱的自动归档天数,默认7天。还可配置AGENTSANDBOXNPMREGISTRY指定沙箱内npm等包管理器的源,以及AGENTSANDBOXPYPIINDEXURL指定pip等工具的PyPI源。另外,可通过AGENTSANDBOXFREETIP控制是否展示前端免费提示,默认不展示;AGENTSANDBOXMAXEDITDEBUG限制编辑/调试沙箱的数量,默认值为100。对于opensandbox部署,可通过AGENTSANDBOXOPENSANDBOXUSESERVERPROXY设置是否通过服务端代理访问,默认值为true,还可通过AGENTSANDBOXOPENSANDBOXVOLUMENAME_PREFIX设置持久卷前缀,默认值为fastgpt-session,升级时需沿用旧值。
来源:FastGPT 官方文档