ComfyUI 基于 Python 运行,配置代理服务器加速远程模型下载的最通用方法是在启动前设置系统环境变量 HTTP_PROXY 和 HTTPS_PROXY。适用于网络连接超时或下载中断场景,风险在于代理地址错误会导致无法连接任何外部资源。
先说结论:通过环境变量或启动脚本注入代理配置是兼容性问题最少的方案
- 适合:国内网络环境下载 HuggingFace 或 GitHub 资源受阻
- 先准备:确认本地代理服务的监听地址和端口号
- 验收:观察控制台日志中模型下载进度是否持续走动
命令速用版
在启动 ComfyUI 之前,根据操作系统执行以下命令设置临时环境变量。
# Windows CMD 示例 (假设代理端口 7890)
set HTTP_PROXY=http://127.0.0.1:7890
set HTTPS_PROXY=http://127.0.0.1:7890
python main.py
# Linux / macOS 示例
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
python main.py为什么会这样
ComfyUI 及其插件管理器依赖 Python 的 requests 和 urllib 库发起网络请求,这些库默认读取系统环境变量中的代理配置。直接修改代码或配置文件容易在更新后被覆盖,环境变量方式作用于进程启动阶段,优先级高且持久性可控。
分步处理
按照以下顺序配置,确保代理生效且不影响其他网络服务。
- 确认代理信息:检查本地代理软件设置,记录 HTTP 代理地址(通常是 127.0.0.1)和端口(如 7890、10808 等)。
- 修改启动脚本:找到 ComfyUI 目录下的启动文件,Windows 用户编辑 run_nvidia.bat 或 run_cpu.bat,在 python 命令前加入 set 命令;Linux 用户编辑启动 shell 脚本加入 export 命令。
- 启动程序:保存文件后双击运行脚本,确保环境变量在当前会话中生效。
- 回滚提醒:如果代理服务关闭,需注释掉相关配置行,否则 ComfyUI 将无法联网。
怎么验证是否生效
启动 ComfyUI 后,尝试安装一个自定义节点或下载一个检查点模型。
- 日志检查:观察控制台输出,若出现 Downloading... 且进度条持续增加,说明代理连通。
- 错误排查:若出现 Connection refused 或 Timeout,检查代理端口是否正确,或代理软件是否允许本地连接。
常见坑
- Git 代理未配置:部分自定义节点通过 git clone 安装,需单独配置 git config `--global` http.proxy。
- 协议头缺失:环境变量值必须包含 http:// 前缀,仅写 IP 和端口可能无效。
- 全局影响:使用 setx 命令会永久写入系统环境变量,可能影响其他不需要代理的软件,建议仅在启动脚本中临时设置。
常见问题
ComfyUI Manager 需要单独配置代理吗?
通常不需要,Manager 作为插件运行在 ComfyUI 进程内,继承主程序的环境变量配置。
如何取消代理设置?
将环境变量值设为空字符串或直接删除启动脚本中的 set/export 语句,重启终端即可生效。
参考来源
- ComfyUI 官方仓库:https://github.com/comfyanonymous/ComfyUI
- Python requests 库代理文档:https://docs.python-requests.org/en/latest/user/advanced/#proxies