你跟着YouTube视频操作,安装了ComfyUI,添加了ReActor节点,点击了“队列提示”,结果没看到换脸,反而看到了这个:fatal error C1083: Python.h: No such file or directory。
在ReActor的仓库里,有用户一针见血地总结了这个问题——当insightface拒绝在Python 3.13上构建时,他说:“ChatGPT和Claude也帮不上忙……我又遇到了另一个错误,掉进了修复的兔子洞”(issue #166,2025年)。
我就在那个兔子洞里待过。所以本指南老老实实地做两件事。首先,真正的ComfyUI换脸教程:确切的节点、确切的设置、所有陷阱,一样不少。然后,逃生通道:同样的换脸,在浏览器标签页里重建,三十秒,无需安装,并且一直做到视频输出。

一个沮丧的男人深夜坐在两台显示器前,一台屏幕上塞满了缠在一起的ComfyUI节点连线,带着红色错误对话框,另一台则是满屏的终端错误
关键要点
- ReActor 是 ComfyUI 默认的换脸节点:免费、开源,在原始仓库被屏蔽后,作为一个仅限 SFW(安全办公)的项目重生(ComfyUI-ReActor,2026年)。
- 它的换脸引擎 inswapper_128 输出的脸只有 128x128 像素。这就是为什么原始换脸看起来模糊,直到你在上面叠加一个人脸修复模型。
- 视频换脸是一帧一帧处理的。有一次回归测试中,81帧在一张RTX 4090上花了22分钟才修复。
- 一个三模型云链可以在大约30秒内完成每张图片的相同换脸,最后还能生成真正的视频和GIF,且无需任何安装。
我们今天要构建的ComfyUI换脸结果
先看图,后看文。左边是原版“屈尊俯就的旺卡”剧照,1971年吉恩·怀尔德的经典帧,后来成为互联网上使用最多的表情包模板之一。右边是同一帧,但融合了一张完全不同的脸。同样的假笑,同样的高顶礼帽,同样的柔和胶片颗粒感,换成了新人。

并排对比:左边是原始的“屈尊俯就的旺卡”表情包剧照,右边是融合了新脸的同一帧
而且,因为这种自鸣得意的假笑值得动起来,这里是将同一帧换脸结果动画化后得到的循环GIF:

换脸后的旺卡帧被动画化为循环GIF,随着镜头缓慢推进,假笑逐渐扩大
上面两张图片可以通过两种方式实现。路径一是经典的带ReActor的ComfyUI换脸工作流,本教程将逐一节点讲解。路径二是我在Atlas Cloud的一个浏览器标签页中运行的云链,每一步大约花了三十秒。你会得到两种方式,然后可以自己决定如何珍视你的夜晚。
为什么ComfyUI换脸无处不在,以及为什么初次尝试往往会失败
ComfyUI赢得了它的地位。这个节点图编辑器在2026年拥有大约12.3万颗GitHub星,“comfyui face swap”成为了一个默认搜索词,因为该工具赋予你完全的控制权:选择换脸模型、选择修复模型、将其链接到你想要的任何管道中。
那个生态系统中换脸的部分自带戏剧性。原始的ReActor仓库被从GitHub上撤下,然后以ComfyUI-ReActor的身份回归,这是一个严格SFW的版本,内置了色情检测,会拒绝不安全的输入。这就是今天每个人安装的版本。
那么,为什么那么多初次尝试都以泪洗面?四个原因反复出现:
- insightface构建障碍。 ReActor依赖insightface,它在安装时会编译C++代码。Python版本不对,你就会得到介绍中提到的
Python.h错误。Python 3.13是已知的罪魁祸首;驱动着互联网一半换脸功能的那套库还没有跟上它的步伐。 - 128像素的脸。 换脸模型叫做inswapper_128,因为128x128字面意义上就是它的输出分辨率。每个原始换脸看起来都有点融化,直到有人脸修复模型重建细节。
- 视频是逐帧的痛苦。 一个换脸视频只是数百个独立图像交换的结果。一次版本回归使得81帧在24GB VRAM的RTX 4090上花费了1341秒,大约22分钟(issue #72,2024年)。后来修复了,但逐帧计算的问题永远不会消失。
- 没有NVIDIA,就无法开派对。 加速栈假设你有CUDA。在Mac或AMD显卡上,换脸步骤大多会回退到CPU,所有上述问题都会以更残酷的倍数出现。
这些都不是让你跳过ComfyUI的意思。而是意味着你要带着正确的设置和诚实的期望开始。下面就是。
经典ComfyUI换脸工作流:ReActor逐步操作
这是大多数“教程”匆匆带过的部分。在这里慢下来,你的第一次换脸就能成功。
为ComfyUI换脸安装ReActor
2026年的干净安装路径:
- 打开 ComfyUI Manager,搜索“ReActor”,安装 ComfyUI-ReActor,然后重启。
- 下载 inswapper_128.onnx 并将其放入
ComfyUI\models\insightface文件夹。 - 人脸修复模型(GPEN-BFR-512、CodeFormer、GFPGAN)存放在
ComfyUI\models\facerestore_models文件夹中。Manager也可以获取这些模型。 - 好消息:从0.7.0版本开始,新的ReActor核心移除了旧的Visual Studio C++ Build Tools依赖,那个依赖曾导致成千上万的Windows安装失败。
- 坏消息:暂时远离Python 3.13。insightface 0.7.3无法针对它编译。坚持使用ComfyUI便携版内置的Python版本。
如果安装完成了但ReActor节点没有出现,请检查启动时的控制台日志。十有八九是insightface构建了一半,解决方法是使用正确的Python重新运行 install.bat,而不是重新安装ComfyUI。
ComfyUI换脸工作流:节点和重要设置
最小的图像工作流包含四个节点:
加载图像(你的目标图片) + 加载图像(你要换进去的脸) → ReActor快速换脸 → 保存图像
如果你是在同一个图中用Stable Diffusion生成目标图像,那么将你的VAE解码输出路由到ReActor的 input_image 输入,而不是使用加载图像节点。下面是实际连接的样子,来自Comflowy的逐节点优秀指南(Comflowy,2024年):

ComfyUI换脸工作流示意图,显示了加载图像节点连接到ReActor快速换脸节点,再输出到保存图像节点
设置面板是换脸从模糊到可用的关键。我的速查表:
| ReActor 设置 | 推荐值 | 原因 |
|---|---|---|
| swap_model | inswapper_128 | 唯一真正的选项;它就是引擎 |
| facedetection | retinaface_resnet50 | 最准确的检测器;较小的检测器更快,但会漏掉角度脸 |
| face_restore_model | GPEN-BFR-512 | 重建128px换脸丢失的细节;CodeFormer是替代方案 |
| face_restore_visibility | 0.7 到 0.8 | 满强度看起来像被喷枪处理过;混合回来 |
| codeformer_weight | 0.5 到 0.75 | 仅在使用CodeFormer时有效;值越低越保留身份,越高越清理 |
| input_faces_index | 0 | 要替换目标中的哪张脸;对于群组照片,从左到右计数 |
在清晰、正面的源照片上运行这些设置,你会得到一个真正可观的comfyui换脸。柔和的光线,没有太阳镜,没有头发遮住脸。源脸的质量比表格中的任何设置都重要。
ComfyUI ReActor视频换脸,诚实的版本
是的,comfyui reactor视频换脸是可能的,但这也正是爱好变成生活方式的地方。标准链:
VHS加载视频(Video Helper Suite将你的剪辑分割成帧) → ReActor快速换脸(在每一帧上运行) → 可选的RIFE插帧(平滑运动) → 视频合并(将帧重新拼接起来)。
教程会跳过的是什么:
- 计算量是残酷的。 一个10秒的24fps视频片段是240次换脸。即使每帧健康地花1到2秒,那也是4到8分钟的GPU时间,而且你很少能一次就成功。
- 脸会“游泳”。 ReActor独立处理每一帧,因此帧之间的细微差异会表现为闪烁。RIFE有帮助,但comfyui视频换脸在慢速播放下很少能保持稳定。
- VRAM尖峰。 加载几百帧,再加上检测和修复模型,会很快触及你的内存上限。
它能工作。人们会发布很棒的结果。但每一个这样的结果背后都是某人整个晚上的时间,这就是接下来内容的背景。
为什么Pica AI和Canva换脸会撞墙
在安装失败后,自然的反应是“好吧,我用个应用”。应用层用不同的墙换掉了你的安装痛苦。
Pica AI 是搜索时最先出现的换脸应用。它确实很简单:上传、点击、完成。但免费版很坑。在我自己的测试中,积分计数器停留在4,Pica到目前为止没有公开定价页面,第三方评论一致报告同样的限制免费账户有水印和受限的分辨率。它的Trustpilot存在感只是一个小规模的评论池,反复出现关于账单混乱和支持的投诉,视频换脸在高峰时段明显排队。在表情包的笑点上加个水印可不是小缺陷。水印本身就是笑点杀手。
Canva换脸 则让人从另一个方向感到意外:它其实不完全是Canva自己的功能。Canva的换脸来自其市场中的第三方应用,而不是原生功能。流行的FaceSwap应用每天提供一次免费积分,并且仅限于照片换脸;没有真正意义上的canva换脸视频。用于一次性幻灯片搞笑还行,但想更进一步就是死路。
所以应用层节省了安装,却向你收取水印、每日配额和缺失视频的费用。这就引出了一个明显的问题:如果你保留ComfyUI的模型混合自由,但放弃其他一切呢?
换脸ComfyUI工作流,在云端重建
这是一个改变了我制作这些内容方式的重新框架。Face swap comfyui设置之所以强大,是因为可组合性:每个任务一个模型,串联起来。这个想法不需要你的GPU。我在一个Atlas Cloud浏览器标签页中从模型游乐场重建了整个链,按次付费,每一步都在我的咖啡还热的时候完成了。
分工如下:
| 任务 | 模型 | 为什么选这个 |
|---|---|---|
| 生成源脸 | GPT Image 2 | 干净的合成肖像,没有真人相似度的麻烦 |
| 将脸融合到表情包或电影剧照中 | Nano Banana 2(编辑) | 保留颗粒感、光线和“它本来就是这样”的效果 |
| 高保真肖像换脸 | Seedream 5.0 Pro(编辑) | 它的精致感对于粗糙的表情包来说是错误的,但对于干净的肖像来说却是完美的 |
| 将结果动画化 | Seedance 2.0 Mini | 图像到视频,5秒的720p片段对于表情包来说已经足够了 |
无需安装,无需insightface,无需VRAM焦虑,而且这里每项花费都不到零钱。你可以在Atlas Cloud模型页面浏览整个目录,并在做出任何承诺之前试用每个游乐场。
在教程开始之前,有一个小提示:Seedream 5.0 Pro目前正在限时促销,如果肖像换脸是你的用例,这一点很重要。
Atlas Cloud Seedream 5.0 Pro限时折扣横幅,两只画出来的仓鼠拿着一个礼盒
云ComfyUI换脸教程:从电影剧照到GIF
现在进入可复现的部分。五个步骤,每一个提示都可以复制粘贴,下面的每个截图都是我真实运行的。我们的目标:将一张新脸放入“屈尊俯就的旺卡”中,并让他动起来。
步骤1:下载原始表情包,永远不要重新创建它
在AI表情包工作中,最大的错误就是让模型画出某著名帧的相似版。AI重制的旺卡不是旺卡。读者在半秒内就会发现是假的,笑话就死了。下载真实的模板:
bash1curl -L -o wonka.jpg https://imgflip.com/s/meme/Creepy-Condescending-Wonka.jpg 2
那就是真实的1971年电影剧照,带有柔和的颗粒感和略微褪色的色彩,让人一看就知道是“那个表情包”,而不是“一张戴帽子的男人的照片”。那些不完美之处就是资产。在接下来的每一步中都要保护好它们。
步骤2:生成源脸(GPT Image 2)
你可以使用自己的自拍:正面、光线均匀、没有遮挡脸部的东西。对于公开博客,我宁愿用一张合成脸来演示,所以我用GPT Image 2游乐场生成了一张。设置:质量 高,宽高比 1:1。
text1一张快乐年轻男性的影棚肖像照片,年龄二十多岁,棕色短发,有淡淡胡茬,直视镜头,背景中性,光线柔和均匀,照片级真实感,半身取景。 2

Atlas Cloud上的GPT Image 2游乐场,填写了肖像提示,输出面板中可见完成后的源脸
这是我们将在本教程剩余部分中使用的脸:

AI生成的影棚肖像,一位二十多岁、棕色短发、有淡淡胡茬的快乐年轻男性
步骤3:使用Nano Banana 2编辑功能融合换脸
这一步将融合与“粘贴贴纸”效果区分开来。打开Nano Banana 2编辑游乐场,将旺卡剧照作为图像一上传,源脸作为图像二上传,分辨率设置为 1k,然后粘贴:
text1用第二张图像中男人的脸替换威利·旺卡的脸,完全融合到剧照中。这张脸必须保持可识别的人类特征,并且看起来与同一个人一致:保留他自己的眼睛、眉毛、鼻子和嘴巴。给他表情包中那种精确的屈尊俯就的假笑,下巴放在手上。严格保留原始照片的构图、紫色夹克、棕褐色高顶礼帽、领结、柔和的1971年电影颗粒感、颜色和光线。新脸必须无缝融入原始帧的纹理中。不要锐化、美化或放大图像的其他部分。 2
一次只处理一张脸。如果一个模板中有两张脸,运行两次,而不是要求同时处理两张脸;编辑模型处理一次身份转移很干净,但处理两个时就会开始即兴发挥。

Atlas Cloud上的Nano Banana 2编辑游乐场,加载了旺卡剧照和源脸,输出面板中显示了融合后的结果
输出,全尺寸。注意哪些东西保留了下来:颗粒感、帽子的阴影、卷曲的毛茸茸头发、自鸣得意的手托下巴姿势。这就是“他一直都是这样”的效果,没有任何粘贴式换脸能给你:

“屈尊俯就的旺卡”表情包,新脸完全融合,颗粒感和光线完好无损
步骤4:你的ComfyUI换脸视频时刻,无需ComfyUI
还记得ReActor部分提到的每片段240帧的计算量吗?在这里它只是一次运行。打开Seedance 2.0 Mini图像到视频游乐场,上传融合后的旺卡帧,设置 720p 和 5秒,然后粘贴:
text11970年代复古电影风格:戴高顶礼帽的男人慢慢将重心更多地移到手上,他屈尊俯就的假笑逐渐扩大,眉毛微微扬起,镜头缓慢轻柔地推近他的脸,柔和的胶片颗粒闪烁,梦幻般的粉彩背景保持失焦,无镜头切换。 2

Atlas Cloud上的Seedance 2.0 Mini游乐场,加载了融合后的旺卡帧,输出面板中显示了完成的5秒视频
完成的剪辑就是你在文章开头看到的那个GIF。这一步的总时间:大约一分钟的排队等待,没有手动管理任何帧,没有脸部游泳,因为视频模型是动画化一个连贯的图像,而不是重新拼接120个独立的交换结果。
步骤5:将MP4转换为GIF
诚实的限制:视频游乐场输出MP4,而不是GIF。解决方法只需要一个提示。将这段代码粘贴到任何LLM中,ChatGPT可以,或者像DeepSeek或Qwen这样的开放模型也可以,在Atlas Cloud LLM页面上:
text1写一个ffmpeg命令,将wonka.mp4转换为高质量循环GIF:宽度480px,12帧每秒,使用palettegen和paletteuse在一个filter_complex通道中处理,无限循环。然后解释每个标志的作用,一行一个。 2
你会得到类似这样的结果,这正是生成上面那个GIF的命令:
bash1ffmpeg -i wonka.mp4 -filter_complex "[0:v]fps=12,scale=480:-1:flags=lanczos,split[a][b];[a]palettegen[p];[b][p]paletteuse" -loop 0 wonka.gif 2
这就是整个链。下载表情包、生成脸、融合、运动、GIF。五个步骤,一个浏览器标签页。
换脸甘道夫:你不能通过
同样的配方,不同的电影。从 https://i.imgflip.com/14xbe.jpg 获取原始剧照,在你的保留清单中保留胡子、帽子和莫瑞亚的幽暗,让融合提示完成它的工作。一张现代面孔从甘道夫的胡子里瞪出来,正好达到了那种“不对劲”的恰当效果:

“你不能通过”的甘道夫场景,新脸融合,胡子、帽子和黑暗的莫瑞亚光线未受影响
换脸泰坦尼克号船头场景
“我在飞翔”的船头场景是罕见的模板,既是电影经典,又是真正的高分辨率(Imgflip上的副本 https://i.imgflip.com/4k0a6c.png 是1440x900)。两张脸可见,所以遵守一次一面的规则:我换了杰克,罗斯保持原样。

泰坦尼克号船头场景,杰克的脸被替换为源脸,夕阳光线和罗斯未变
高保真肖像换脸,Seedream的用武之地
来自A/B测试的一个模型注意事项:对于表情包和电影剧照融合,坚持使用Nano Banana 2,因为它保留了颗粒感和不完美,而“太干净”会被认为假。但将任务切换到干净的肖像、专业头像、婚纱照、高分辨率角色艺术时,同样的精致感就变成了优点。在那里,Seedream 5.0 Pro 编辑模式是更强的选择:它在融合的同时进行美化,这对旺卡来说是bug,但对肖像来说是功能。
一个ComfyUI换脸实际上要花多少钱
没有订阅数学,只有三条路径的真实形状。
本地ComfyUI: 软件免费,这是每个人都在重复的标题。真正的账单是一张12GB显存级别的NVIDIA显卡、一个晚上(或一个周末)的设置时间、电费,以及未来每个依赖更新再次破坏insightface的夜晚。如果你已经拥有GPU并且喜欢折腾,这个账单可能是值得支付的。折腾是一种爱好,爱好允许花费时间。
换脸应用: 高级版需要订阅,免费版有水印和每日积分配额,视频要么缺失要么被限制。你是在租用便利,计价器始终可见。
云链: 按次付费,每张图片几分钱,没有闲置订阅,视频步骤只在真正生成时才收费。上面整个旺卡管道,包括脸,花了我不到一杯咖啡的钱,我宁愿付这个钱,只是为了跳过再看一次insightface堆栈跟踪。
快速说一句规则,因为换脸需要它:交换你自己的脸,或者你获得使用许可的脸。平台会限制对真实人物的深度伪造,融合模型会直接拒绝某些名人输入。用于评论的公开表情包模板,比如本教程中的所有内容,是安全的游戏场。保持有趣,而不是欺诈。
ComfyUI换脸常见问题解答
ComfyUI换脸免费吗?
软件和ReActor节点是免费且开源的。但完整的设置不是:你大约需要一张12GB显存的NVIDIA GPU才能舒适使用,加上设置时间。如果你没有硬件,按次付费的云链比购买硬件更便宜。
为什么我的ComfyUI ReActor换脸看起来模糊?
因为换脸模型inswapper_128字面上以128x128像素输出脸。在ReActor节点中修复:将face_restore_model设置为GPEN-BFR-512(或CodeFormer),将face_restore_visibility设置为0.7或0.8。修复通道会重建交换器无法产生的细节。
ComfyUI ReActor可以做视频换脸吗?
可以。标准的comfyui reactor视频换脸链是VHS加载视频 → ReActor → 视频合并,可选RIFE插帧以平滑。预计会有逐帧处理时间、帧之间的脸部闪烁,以及较长片段上沉重的VRAM使用。短片段要宽容得多。
Canva有真正的换脸功能吗?
不是原生功能。Canva的换脸来自第三方市场应用,流行的那个每天提供一次免费积分,并且仅限于照片。对于视频换脸,你需要一个完全不同的工具。
如何将换脸视频转换为GIF?
向任何LLM询问一个使用palettegen和paletteuse的ffmpeg命令,它们产生的颜色比朴素转换要干净得多。上面步骤5中的一行命令可以将任何MP4转换为480px、12fps的循环GIF,你可以随处发布。
AI换脸合法吗?
交换你自己的脸,或你明确获得许可的脸,在几乎所有地方都没问题。未经同意发布真实人物的换脸可能会违反平台规则,并且在许多地方也会违反法律。用于评论的表情包模板和电影剧照处于长期存在的合理使用范围内,但不要用于商业目的。







