ARTICLE · 1139429
5句话我让AI助手部署了FreeVideo镜像,再也不用等靠要别人的啦
核心一句
部署一个 53 GB 的模型,我全程只说了 五句话。真正的加速发生在「换一条路」这个判断上,而那个判断是人给的。
图 01 · 封面:这条流水线的全貌

上周想跑 FreeVideo —— 一个把 MiniMax H3 视频模型接进 ComfyUI 的插件。手里没有显卡,于是去仙宫云租了一台云 GPU:RTX 4090 D、24 GB 显存、112 GB 磁盘。
但从「一台空服务器」到「能出片」,中间隔着三十多个动作:连 SSH、确认 Python 版本、装插件、补依赖、编译 GPU 加速库、下载 53 GB 模型、逐个校验 sha256、跑端到端测试。对没碰过 Linux 的人来说,任何一步都可能卡一晚上。
这次我一步都没自己动手。全程由 AI 助手(ZCode,也可以用其他的哦)通过 SSH 操作那台服务器,我只负责说人话。总耗时 3 小时 13 分钟,其中 2 小时在下载模型。下面把完整对话按时间顺序贴出来,告诉你 哪几句该说、说了之后会发生什么、以及哪三步最容易翻车。
本文看点
01
五句话跑完部署
02
提速 20 倍的换源思路
03
三个必踩的坑
01
WHAT ARE WE DOING
先说清楚:这件事到底在干什么
先把名词对上号,后面就不绕了。
ABOUT THE SCREENSHOTS
下面所有对话截图,是按当时的真实对话逐字还原的界面图,不是屏幕翻拍。服务器地址、端口、密码已做打码处理。
然后是分工。这件事最容易失败的地方,是让零基础的人以为三十多个动作都得自己敲。
02
BEFORE YOU START
开工前:你只需要准备三样东西
你来做 01开一台云 GPU 实例
在仙宫云控制台新建实例,选带 RTX 4090 的机型,系统镜像选预装 ComfyUI 的那类。
仙宫云地址:
www.xiangongyun.com/register/XLVYLW
开机后记下控制台给的 SSH 连接信息:地址、端口、密码。

你来做 02抄下 SSH 连接信息
实例详情页会有「SSH 连接」一栏,通常长这样:
ssh -p 端口 root@xxxxx.ssh.x-gpu.com,另附一个随机密码。
这一栏是三段信息:端口、地址、密码,等下要一次性发给 AI。
你来做 03准备一个能执行命令的 AI 助手
ZCode 这类本地编程助手都可以。关键是它要能在你的电脑上真正执行命令,而不是只能聊天——因为连服务器、传文件、盯日志都靠它。
如果你用的助手还需要额外装 Python 的 SSH 库,让它自己装就行,不用你管。
磁盘配额要 ≥ 100 GB。这套模型解压后峰值会占掉 92.7 GB,低于 100 GB 很容易在下载到一半时炸盘,前功尽弃。
03
PHRASE 01
第一句话:把服务器交给 AI
第一句话最简单:把刚才抄下来的 SSH 连接信息整段发给 AI。
你来做 04把服务器交给 AI
把三段信息拼成一句话发过去即可。地址和端口在控制台复制,密码也一并贴上——但只发给你自己电脑上的这个助手。
照抄这句,发给你的 AI 助手
ssh 连接服务器 ssh -p 【端口】 root@【SSH地址】 密码【密码】
AI 来做拿到这句话之后
发现 Windows 上没有 sshpass,改用 Python 的 paramiko 建立非交互连接,并在你电脑上写了一个 .ssh_helper.py 辅助脚本(里面存着连接信息,注意保管)。
连上后先不急着装东西,而是摸清环境:GPU 型号与显存、CPU 与内存、磁盘余量、已经在跑的服务与端口。
图 02 · 把 SSH 连接信息发给 AI

第一条消息发出去,AI 先解决「怎么非交互登录」,再摸环境。
图 03 · AI 交回的环境汇报

GPU、内存、磁盘、已运行服务一次说清,你能提前判断这台机器够不够用。
密码只发给你自己电脑上的 AI 助手。不要贴进公开的群聊、网页、截图,或任何会被外传的地方。本文所有截图里的地址、端口、密码都做了打码。
04
PHRASE 02
第二句话:让它装 FreeVideo
第二句话是一个 GitHub 地址。剩下的判断它自己做。
你来做 05把项目地址发过去
不需要写任何安装命令。助手会自己去读项目的安装脚本和依赖约束。
照抄这句,发给你的 AI 助手
在服务器上配置这个项目 https://github.com/FlashML-org/FreeVideo.git
AI 来做AI 接下来做的事
把仓库克隆到 /root/FreeVideo,先读项目要求——引擎要求 Python ≥3.12 且小于 3.13。
确认服务器的 conda 环境是 Python 3.12.13 + torch 2.13.0+cu132,与插件锁定的版本完全一致。
把仓库挪进 ComfyUI 的 custom_nodes 目录,跑插件自带的 check_installation.py,只补缺失的 5 个纯 Python 包。
重启 ComfyUI,确认 6 个 FreeVideo 节点全部注册成功。
图 04 · 把项目地址发过去

一句话加一个链接,剩下的交给助手。
图 05 · 版本体检:完全吻合

Python 与 torch 的版本逐项对上,说明这台机器的镜像就是为这个插件准备的。
图 06 · 装成 ComfyUI 节点

自检 40 项通过、补齐依赖、重启后节点注册成功。
为什么强调「只补缺失项」
直接把插件的依赖清单全量装一遍,很可能把 torch 和一堆 CUDA 相关的 nvidia 包降级或覆盖,轻则变慢,重则驱动失联、ComfyUI 直接起不来。先自检、只补缺的,是这类 ComfyUI 插件唯一安全的装法。
05
PHRASE 03 & 04
第三、四句话:换镜像,走平台指令
到了下载环节,速度就成了唯一的问题。这时候第三、第四句话最关键。
你来做 06告诉它换个镜像
插件默认走公共镜像,单连接只有 1-5 MiB/s。云厂商自己的 HuggingFace 镜像通常快一个数量级。
照抄这句,发给你的 AI 助手
hf 镜像换成 hf.x-gpu.com 快很多
AI 来做这句话带来的连锁反应
在插件源码里找到镜像入口:HF_ENDPOINT 环境变量会被注册成「user」自定义源,auto 模式下参与测速排名。
停掉当前下载,带上新镜像的环境变量重新拉起。
你来做 07告诉它重启走平台指令
这句不是给插件说的,是给云平台说的——云平台的「任务」重启和手动敲命令重启,走的不是一条路。
照抄这句,发给你的 AI 助手
服务器 comfyui 的重启用的是 task 指令
AI 来做顺着这句话找到的东西
平台自带的管理脚本在 /scripts/start.d/comfyui.sh,它才是平台侧「任务」重启时真正执行的脚本。以后所有重启都走它,不再手写命令。
图 07 · 首次跑安装器:52.7 GiB 模型

正式启动前,安装器会先把下载量、磁盘峰值、内存峰值算给你看。
图 08 · 换镜像这句话

一句话换来一个数量级的提速,是整篇里最便宜的操作。
图 09 · 找到平台自己的启动脚本

重启不是随便敲命令,要走平台管理的脚本。
换镜像后第一次续传会失败——已经下了一半的分片来自旧镜像,新镜像无法接着传。按安装器自己的提示加 --allow-model-restart,允许丢弃不完整分片、从快镜像重新下载即可。
06
PHRASE 05
第五句话:直接 wget 拉模型
第四句话看起来只是个经验分享,其实是整套流程里性价比最高的一句。
你来做 08建议它直接 wget
你在别的项目里见过:官方下载器限速的时候,直接用 wget 拉镜像链接反而能跑满带宽。
照抄这句,发给你的 AI 助手
我实践发现直接 wget hf 镜像链接很快,要不试试
顺着这句话,助手去读了插件的 provision 模块,发现一个官方留好的口子:只要目标路径的文件已经存在,插件就只做 sha256 校验并标记完成,不会重复下载。也就是说,你可以用任何工具把文件搬到正确的位置,安装器照样认。
AI 来做于是它这样干
用插件自己的代码生成文件清单:总共 1201 个文件,921 个已就位,缺 280 个。
生成直连镜像的 URL 列表,先抽 3 条验证链接可用。
写一个 6 路并行的 wget 脚本(断点续传、失败重试 5 次),丢到后台跑。
下面是那个批量下载脚本,核心就是这个 xargs:
xargs -a /tmp/wget_urls.txt -d '\n' -P 6 -I{} bash -c '
line="$0"; u="${line%%|*}"; p="${line#*|}"
mkdir -p "$(dirname "$p")"
for i in 1 2 3 4 5; do
wget -c -q --tries=3 --timeout=90 -O "$p.part" "$u" \
&& { mv "$p.part" "$p"; echo "OK $p"; exit 0; }
sleep 3
done
echo "FAIL $u"
'
110 MB/s
6 路并行直连镜像,对比内置下载器的 1-5 MiB/s,约 20 倍
图 10 · wget 方案:先算清单

1201 个文件里 921 个已就位,真正缺的只有 280 个。
图 11 · 六路并行,110 MB/s

90 秒拉完 201 个小文件,剩下的是几个大分片。
07
NO ACTION NEEDED
剩下的活全在 AI 手上
NO ACTION NEEDED
本章你没有动作
从「下载完成」到「能出片」还有四道关,这四道关不需要你说话,但值得你知道它们在干什么——出问题时你能听懂是在哪一关出的。
全量校验 —— 274 个 OK,6 个损坏——wget 下载的个别分片被截断了,文件大小短了一截。
重下坏文件 —— 删掉 6 个不完整分片重新拉,再验一遍,280/280 全部通过。
装完引擎 —— setup 15/15 complete,GPU 加速库编译通过,接口报 ready: true。
端到端测试 —— 5 个用例真的在 GPU 上出片:1344×768、243 帧,GPU 峰值 14 GiB。
三个只有踩过才知道的坑
坑 1 · 两条命令都不要写在一起
pkill -f 关键字 的匹配串如果出现在同一条命令行里,它会把自己所在的 shell 一起杀掉。拆成两步执行就好。
坑 2 · 测试失败不是模型的问题
第一次跑端到端测试 5 个用例全挂。原因不是模型,而是子进程环境里没有 HF_ENDPOINT,引擎在生成时要下载一个附件,直接抛错。把环境变量持久化即可。
坑 3 · 环境变量写进去了,进程里却没有
Ubuntu 的 .bashrc 对非交互 shell 有 return 守卫,写在里面等于没写;要放到 /etc/profile.d/ 才生效。另一个细节:查进程时 pgrep 会先匹配到 screen 的包装进程,要看真正的 Python 进程,得按完整命令行匹配。
图 12 · 校验发现 6 个坏文件

下载完成不等于正确,sha256 逐个过一遍才敢用。
图 13 · setup 15/15 完成
引擎装好,接口报 ready,可以出片了。
图 14 · 端到端测试 5/5 通过

失败过一次,定位到是环境变量的问题,修完再跑全通过。
图 15 · 让环境变量真正生效

写对文件、再用完整命令行定位真正的进程,才算收工。
图 16 · 全绿收工

插件、引擎、模型、测试四项全绿,磁盘还剩 37 GB。
08
HOW TO USE
装好之后怎么用
装完之后,用起来只有一步。
你来做 09打开 ComfyUI 界面
浏览器访问服务器的 8188 端口,在模板里找 FreeVideo。
路径:Workflow → Browse Templates → FreeVideo → FreeVideo-All-in-One。
如果你更习惯命令行,也可以直接跑:
cd /root/ComfyUI/custom_nodes/FreeVideo
./freevideo generate --prompt-file prompt.txt --out video.mp4
LICENSE
模型权重使用 MiniMax H3 Community License,安装时随 --accept-model-license 接受,含地域与用途限制条款。商用前请自行确认。
服务器不用的时候记得关机。云 GPU 是按小时计费的电表,模型下载完就一直躺在磁盘上,下次开机还是这套环境。
∞
EPILOGUE
结语
回头看,这套流程里 AI 真正省下的是「知道下一步该敲什么」。而它没省下、也省不了的是「这条路太慢了,换一条」这种判断。换镜像、直连下载、走平台脚本——这三句话把下载从「一晚上」压到 50 分钟,它们不是 AI 想出来的,是在别的项目里踩出来的。
把复杂的事情拆给对的人做,比把自己练成全能的人更快。
下次直接抄这五句
① ssh 连接服务器 ssh -p 【端口】 root@【SSH地址】 密码【密码】 ② 在服务器上配置这个项目 【GitHub 地址】 ③ hf 镜像换成 【你的镜像地址】 快很多 ④ 服务器 comfyui 的重启用的是 task 指令 ⑤ 我实践发现直接 wget 镜像链接很快,要不试试
如果你的服务器也卡在下载,先别急着怪网速。看看能不能换源、能不能绕过限速、能不能把文件从别的路搬进去——这三件事想清楚,剩下的都是体力活。
如果这篇对你有帮助,欢迎点赞、在看、转发三连,我们下篇见。