如何搞定 FaceFusion 模型下载失败:三条路径的离线部署完整指南
【免费下载链接】facefusionIndustry leading face manipulation platform项目地址: https://gitcode.com/GitHub_Trending/fa/facefusion
FaceFusion 是一个 AI 人脸操作平台,提供人脸交换、人脸增强、唇形同步等能力。这篇指南围绕 FaceFusion 模型下载展开:网络顺畅时,一条 force-download 命令即可搞定;纯离线环境则走三步——联网机预下载、打包传输、放到目标机对应目录,全程无需外网。
🧭 先判断你属于哪种网络环境
| 环境 | 判断特征 | 推荐路径 |
|---|---|---|
| 标准联网 | 能正常打开国外资源站,下载速度稳定 | 路径 A:标准联网 |
| 弱网 | 能连上但频繁中断、速度忽快忽慢 | 路径 B:弱网救场 |
| 纯离线 | 内网、隔离环境,完全无法访问外网 | 路径 C:纯离线部署 |
🌐 路径 A:标准联网
前提确认:项目已拉取并安装好 Python 依赖,facefusion.py能正常启动。
核心命令(在项目根目录执行):
python facefusion.py force-download这条命令会依次下载每个处理器需要的.onnx模型和同名.hash校验文件,默认走 github 和 huggingface 两个源,并自动完成校验。
验收标准(满足以下两条算成功):
- 终端无报错退出,日志里逐个打印校验成功的模型文件名
ls .assets/models/能看到成对的xxx.onnx和xxx.onnx.hash文件
模型统一存放在项目根目录下的.assets/models/中,记住这个位置,后面离线部署全靠它。
🛠 路径 B:弱网救场
FaceFusion 内部用 curl 下载,自带--continue-at断点续传、5 次重试和 5 秒超时,所以下载中断后直接重跑同一条命令即可,它会从断点继续,不用手动处理:
python facefusion.py force-download如果重试后速度依然不理想,说明你所在网络对 github 源不友好,切换到 huggingface 源(代码里会自动回落到 hf-mirror 镜像站):
python facefusion.py force-download --download-providers huggingface验证方式:跑完后同样检查.assets/models/里.onnx与.hash是否成对齐全;缺哪个,就重跑一次命令,程序只会补下缺失的文件,已校验通过的会跳过。
📦 路径 C:纯离线部署
内网环境按"联网机准备 → 传输 → 目标机部署 → 验证"四步走。
第一步:联网机准备
拉取项目并下载全量模型:
git clone https://gitcode.com/GitHub_Trending/fa/facefusionpython facefusion.py force-download --download-scope full--download-scope只有两个取值:lite下载精简模型集(也是默认值),full下载全部模型。离线部署建议直接选full,避免以后又缺模型。
成功标志:.assets/models/下模型文件齐全且全部通过校验。
第二步:打包传输
把整个.assets目录打成压缩包(注意 hash 文件必须跟着模型一起走):
tar -czf facefusion-assets.tar.gz .assets用 U 盘、内网文件服务器等方式传到目标机。
第三步:目标机部署
在目标机上解压,关键是让.assets/models/与facefusion.py处于同一层目录,代码是按相对路径定位模型的,放错位置等于没部署:
tar -xzf facefusion-assets.tar.gz -C /path/to/facefusion第四步:验证
对任一模型文件做哈希校验,返回True即完整可用:
python -c "from facefusion.hash_helper import validate_hash; print(validate_hash('.assets/models/inswapper_128.onnx'))"主要模型文件清单
下表列出.assets/models/里常见的核心文件,均出自仓库源码中的静态模型配置(文件大小以实际下载日志为准):
| 文件名 | 用途 | 所属模块 |
|---|---|---|
inswapper_128.onnx、inswapper_128_fp16.onnx | 默认人脸交换模型 | face_swapper |
blendswap_256.onnx、simswap_256.onnx、uniface_256.onnx | 备选人脸交换模型 | face_swapper |
gfpgan_1.4.onnx、codeformer.onnx、restoreformer_plus_plus.onnx | 人脸增强 | face_enhancer |
retinaface_10g.onnx、scrfd_2.5g.onnx、yoloface_8n.onnx | 人脸检测 | face_detector |
2dfan4.onnx、fan_68_5.onnx | 人脸关键点定位 | face_landmarker |
arcface_w600k_r50.onnx | 人脸识别 | face_recognizer |
xseg_1.onnx、bisenet_resnet_18.onnx | 人脸遮罩 | face_masker |
ben_2.onnx、ormbg.onnx、rmbg_1.4.onnx | 背景移除 | background_remover |
🚧 卡住时:4 个常见坑
| 现象 | 可能原因 | 一行修复 |
|---|---|---|
| 进度条反复中断 | 弱网导致连接断开 | 直接重跑force-download,curl 自带断点续传 |
| 下载极慢或超时 | github 源不可达 | 换源:--download-providers huggingface |
| 日志提示哈希校验失败,文件被自动删除 | 下载中断导致文件损坏 | 删掉该目录下的.onnx和.hash,重跑force-download |
| 目标机运行却提示找不到模型 | .assets没放在项目根目录,或.hash缺失 | 把.assets移到与facefusion.py同级,确认.onnx/.hash成对同目录 |
🚀 进阶选项(可选)
- 走代理下载:有代理时先导出环境变量再跑命令,curl 会自动生效:
export https_proxy=http://127.0.0.1:7890 - 按需选范围省空间:磁盘紧张时保持默认的
--download-scope lite,只下载精简模型集;确认要跑全部功能再升full - 固化默认下载源:在
facefusion.ini的download段写download_providers = huggingface,以后不用每次带参数 - 单文件快速验伤:怀疑某个模型损坏时,用上面的
validate_hash单点验证,返回False就删掉重下
✅ 收尾自检清单
.assets/models/与facefusion.py位于同一目录- 每个
.onnx旁都有同名.hash文件 force-download退出时无报错输出validate_hash对抽查的模型文件返回True- 实际跑一次人脸交换等功能,不再提示缺少模型文件
一条命令管联网,三步搬运管离线——这就是 FaceFusion 模型下载与离线部署的全部要点。下一步建议:部署完成后定期重跑一次force-download,内置校验会自动识别并重新拉取损坏或缺失的文件,省得手动排查。
【免费下载链接】facefusionIndustry leading face manipulation platform项目地址: https://gitcode.com/GitHub_Trending/fa/facefusion
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考