快速开始
- 登录:用管理员发给你的账号在 登录页 登录。
- 进入网页版:https://fs.hawkmind.ai/app。页面会先为你分配一台 GPU(顶栏状态从「正在分配 GPU…」变成「GPU 已就绪」)。没有空闲 GPU 时会明确提示原因。
- 允许摄像头:首次浏览器会询问摄像头权限,点「允许」。顶栏下拉可选具体摄像头(虚拟摄像头会标注出来,别选它)。
- 选人设与背景:右侧「人设」页签点头像即切换,上传正脸照可新增;带「模型」角标的是专属训练模型,整张脸都换成该人物。「背景」页签同理。
- 点「开始」:几秒后主画面出现换脸后的结果,右下小窗是原始摄像头。
网页版
网页版把摄像头画面通过 WebRTC 发到 GPU 节点处理后回传,适合看效果、调参数、手机/平板使用。要求:Chrome / Edge / Safari 较新版本,HTTPS(本站已提供)。
- 画质档位:顶栏「流畅 640 / 标准 720 / 高清 1080」。网络不稳定时先降档。
- 预设:右侧「高级 → 参数存档」把全部参数 + 当前人设 + 背景存成有名字的预设,顶栏下拉一键还原;预设存在你的账号下,换设备、换 GPU 都在。
- AI 匹配背景:选中背景后,侧栏底部「生成光照变体 / AI 匹配候选」:把你的摄像头画面交给 AI,生成 3 个「像同一台摄像头在你房间拍的」背景(约 1–2 分钟)。需要先点「开始」让摄像头画面进来。
- 测试摄像头:只打开本机摄像头看画面、不连 GPU,用来排查摄像头本身。
- 离开页面会自动释放 GPU 给别人;45 秒无心跳即释放。
人设与专属模型
「人设」页签里有两类人设,网格里混排,点哪个就换成哪个:
| 照片人设 | 专属训练模型(带「模型」角标) | |
|---|---|---|
| 怎么来 | 上传一张正脸照片即可 | DeepFaceLive / DeepFaceLab 训练出的 .dfm 模型文件(0.5–2 GB) |
| 换的范围 | 只换五官纹理;脸型、发际线、眉形、胡子仍是你自己的 | 整张脸连同脸型、眉形、胡子都换成该人物 |
| 表情、嘴型 | 较弱(张嘴幅度约为真人 6 成) | 更完整(好的模型能到 8–10 成) |
| 清晰度 | 偏软,靠人脸修复补 | 取决于模型训练质量,同样可叠加人脸修复 |
| 速度 | 基准 | 与照片人设相当(RTX 5090 上模型本身 5–12 ms/帧) |
| 适合谁 | 任意人脸、随时新增 | 固定几个人物、要「像」和要表情的场景 |
内置模型
系统预置了 5 个欧美男性模型,是从 10 个公开候选里按同一段测试视频实测挑出来的(看三样:说话时嘴张开的幅度能保留多少、嘴部区域清晰度、有没有色块伪影)。GPU 端首次选中时会自动下载,之后常驻。
| 模型 | 架构 / 分辨率 | 特点 |
|---|---|---|
| Chris Hemsworth | SAEHD 320 | 表情最活(张嘴幅度与真人持平)、最快,推荐先试它 |
| Cillian Murphy | SAEHD 320 | 表情好、清晰、快 |
| Hugh Jackman | SAEHD 384 | 清晰,表情略收敛 |
| Mads Mikkelsen | SAEHD 384 | 清晰,表情略收敛 |
| Harrison Ford | AMP 384 | 最清晰,表情好;AMP 架构计算量约为 320 模型的两倍多 |
去哪里下载更多模型
模型文件是 DeepFaceLive 的 .dfm 格式,一个人物一个文件。公开来源:
- FaceFusion 托管库(Hugging Face,不用登录,直链可用):六个训练者的仓库共 150 多个模型,地址形如
https://huggingface.co/facefusion/deepfacelive-models-作者/resolve/main/模型名.dfm,作者分别是druuzil(77 个,多为 320/384 高分辨率)、iperov(DeepFaceLive 官方 24 个)、rumateus、mats、jen、edel。 打开https://huggingface.co/facefusion/deepfacelive-models-druuzil/tree/main这样的目录页就能看到全部文件名。 - 社区合集:Hugging Face 数据集
dimanchkek/Deepfacelive-DFM-Models(150 多个,含不少华人明星);deepfakevfx.com 的 DeepFaceLive Models 页(可按名字搜索,需注册)。 - 自己训练:用 DeepFaceLab 训练后导出
.dfm,见下文。
/resolve/main/ 的地址,不是 /blob/ 的网页地址)。文件由 GPU 端自行下载,速度取决于 GPU 端的网络,1 GB 通常 1–3 分钟。怎么挑选
- 别只看分辨率。我们实测里 448 分辨率的模型表情保留反而最差(张嘴只剩真人的 57%),320 的模型却能持平。分辨率只决定纹理上限,表情和自然度取决于训练质量。
- 先看嘴:找一段说话的视频试,看张嘴幅度是否跟得上、牙齿是否成形。表情僵的模型再清晰也假。
- 看有没有色块和边界:有的模型在脸颊、胡子处出现红蓝色块或明显的方形边界,这类直接淘汰。
- 架构:文件名里带
AMP的支持「morph」调节(像本人的程度),画质通常更好但计算量约为 SAEHD 的两倍多;SAEHD 更轻,实时最稳。 - 脸型接近你自己的人物效果最自然:模型换脸型的能力有限,头型、耳朵、发型仍是你的。
- 体积与显存:单个模型 0.5–2 GB,加载到显存约占同等大小;同一时间只加载一个,切换约 1–4 秒。
怎么使用
- 「人设」页签 → 网格最后的「添加人设」→ 选「训练模型 · 粘贴 .dfm 下载地址」,粘贴直链,点「下一步」。系统会登记并自动选中它。
- 首次选中时卡片上显示「下载中 xx%」,随后「加载模型到 GPU」,一般 1–3 分钟;期间画面继续用当前人设,不会中断。
- 就绪后卡片出现预览图和「模型」角标,以后切换只需 1–4 秒。
- 模型人设同样可以叠加「人脸修复」「遮挡感知」「换背景」,也能存进预设;肤色会自动匹配到你当前的光线。
- 不想要了:卡片左上角「×」删除,模型文件一并清除;内置模型不能删。
浏览器直接连接 GPU 节点时,「添加人设」里还会多一个「上传本机 .dfm 文件」;经本站或桌面版使用时没有这一项(文件太大不适合经隧道上传),请用下载地址方式。
自己训练一个人物
专属模型要用 DeepFaceLab 训练:准备目标人物 5000 张以上不同角度、表情、光照的正脸图(通常从视频抽帧),对手方用官方的 RTM 通用人脸集,训练 100–200 万次迭代(RTX 3090/4090 约 1–3 天),再导出为 .dfm。注意 DeepFaceLab 已停止维护,其 Windows 版依赖旧版 CUDA,RTX 50 系列显卡训不了,需要 30/40 系或租用云 GPU;训练完成的模型在 RTX 50 上正常使用。教程可参考 deepfakevfx.com 的 DeepFaceLab 2.0 Guide 与 DeepFaceLive 仓库的训练说明。
桌面版 & 会议软件
桌面版(下载)与网页版是同一套界面,区别在两端:本机摄像头由程序采集,处理后的画面同时输出到系统虚拟摄像头「AI 换脸摄像头」。
- 安装后打开桌面图标,首次要登录账号(登录状态保留 30 天)。
- 「设备」页签选物理摄像头(虚拟摄像头已自动排除,避免画面套娃),选画质档位(默认 720p 自动升降)。
- 点「开始」,等待状态变成「运行中」。
- 在会议软件里选摄像头:Zoom 设置 → 视频 → 摄像头;腾讯会议 设置 → 视频 → 摄像头;飞书 设置 → 音视频 → 摄像头;Teams 设置 → 设备;Google Meet 更多 → 设置 → 视频。都选「AI 换脸摄像头」。
桌面版排错
- 界面白屏:缺少 WebView2 运行时。重新下载安装包(新版会自动安装),或到微软官网装「WebView2 常青版引导程序」。
- 会议软件里没有「AI 换脸摄像头」:开始菜单「修复虚拟摄像头」,或程序内「设备 → 检测 / 修复」(会弹一次系统授权)。卸载 OBS 后出现此问题也这样修。
- 日志:开始菜单「查看日志」;或 Win+R 输入
%APPDATA%\RealtimeFaceSwap。 - 画面糊 / 卡:画面标签会显示「发送尺寸 / 编码 ms / 本机丢帧 / 目标码率」。编码 > 40ms 说明本机 CPU 跟不上,自动档会降到 540p/360p;目标码率 < 1000 kbps 说明网络承载不了。
GPU 端安装
GPU 端是真正做换脸/抠像的程序,装在带 NVIDIA 显卡的机器上。它主动连接本站(出站 WebSocket)并出现在管理后台的 GPU 列表里,之后由系统自动分配给客户端——机器不需要公网 IP、不用开端口、不用证书。客户端默认按「本机 → 局域网 → 远程 → 租用」的顺序自动选 GPU,也可以在网页版/桌面版顶部的 GPU 下拉框手动指定一台对比效果(被其他用户占用的会标出来、不能选)。
| 项 | 要求 |
|---|---|
| 显卡 | NVIDIA RTX 30/40/50 系列,显存 ≥ 12 GB;实测 RTX 5090 720p 约 20fps |
| 系统 | Windows 10/11 64 位,或 Ubuntu 22.04+(Linux 容器亦可) |
| 驱动 | 支持 CUDA 13 的 NVIDIA 驱动(≥ 580) |
| 网络 | 能访问本站与 HuggingFace(下载模型约 2 GB);上行 ≥ 10 Mbps |
| 磁盘 | ≥ 15 GB(Python 依赖 + 模型) |
不需要令牌:装完自动注册
GPU 端启动后会用这台机器的指纹向本站自动注册,出现在管理后台「GPU 节点」页并默认启用,随即可被分配。管理员按主机名、显卡、来源 IP 核对,不认识的机器点拉黑——按机器指纹拒绝,它重装、换目录也连不上;误拉黑可随时解除。只有管理员想预先指定某个节点时,才需要在后台「手动添加」生成令牌并在安装时填入。
Windows
- 下载 GPU 端 Windows 安装包,双击安装(需要管理员权限:注册开机自启的计划任务)。安装包自带独立的 Python 运行环境,装在自己的目录里,不会碰这台机器上已有的 Python。
- 安装向导里本站地址已默认填好
https://fs.hawkmind.ai;节点令牌留空(自动注册)。 - 安装结束会自动开始首次初始化:安装 PyTorch(CUDA 13)、ONNX Runtime 等依赖并下载模型,5–15 分钟;窗口里能看到进度,结束后自动启动并注册。
- 之后开机自启、断线自动重连;日志在安装目录的
logs\。无人值守安装:FaceSwapGPUNode-Setup.exe /SILENT /PORTAL=https://fs.hawkmind.ai [/TOKEN=令牌] [/PORT=8080] [/DIR=C:\FaceSwapNode]。
Linux(含 Docker / 云主机)
mkdir -p /workspace && cd /workspace
curl -fsSL https://fs.hawkmind.ai/dl/node-linux.tar.gz | tar xz
cd webrtc_node
bash install_linux.sh # 装依赖 + CUDA 门禁(镜像建议 pytorch/pytorch:2.13.0-cuda13.0-cudnn9-runtime)
export PORTAL_URL=https://fs.hawkmind.ai
# export PORTAL_NODE_TOKEN=… # 可选:只有要对上后台手动生成的节点时才填,留空即自动注册
export NODE_TOKEN=$(head -c 12 /dev/urandom | xxd -p) # 本机 server 的内部口令,随机即可
export MANAGE_SERVER=1 # 由 agent 拉起并看护处理进程
python agent.py
常驻建议用 systemd 或容器的启动脚本循环拉起 python agent.py(退出即重启)。
云端自动租用(Vast.ai)
- 管理后台 → 设置 → 填入 Vast.ai API Key,点「测试」看到余额即可;按需调整型号优先级、最高价、地区、空闲超时、最长存活。
- 管理后台 → 用户 → 给需要的账号勾选 允许租用,并可设置该账号的最长存活 / 空闲超时。
- 用户打开网页版或桌面版时:若没有空闲的已安装节点,系统自动租一台(页面显示进度:寻找挂单 → 启动 → 安装依赖 → 下载模型 → 就绪,通常 5–10 分钟),就绪后自动分配。
- 关机:空闲超过设定分钟数自动关;达到最长存活自动关;管理员在「GPU 节点」或「租赁」页可随时手动关。
管理后台
地址 https://fs.hawkmind.ai/admin,仅管理员账号可进。
- 总览:在线节点、活跃会话、Vast 余额、安装包版本。
- 用户:新建/编辑/停用/删除账号;每个账号可设「可用已安装 GPU」「允许租用」「租用最长存活」「租用空闲超时」;查看该用户的素材与预设。
- GPU 节点:自动注册的机器默认启用;拉黑 / 解除拉黑、重命名、停用、删除、手动添加(生成令牌);看在线状态、来源 IP、显卡、当前会话与用户、帧率;「结束会话」「关机(租赁)」。
- 会话:历史会话与结束原因。
- 租赁:每次租用的实例、价格、日志;手动立即租一台 / 立即关。
- 设置:站点名、公告、是否开放注册、各 API Key、租赁参数、TURN 开关。
- 日志:登录、会话、节点、租赁、设置变更等事件。
账号与权限
| 字段 | 含义 |
|---|---|
| 角色 | admin 可进后台;user 只能用网页版/桌面版 |
| 可用已安装 GPU | 是否允许分配自有 GPU 节点 |
| 允许租用 | 没有空闲节点时是否为该账号自动租云端 GPU(也决定能否复用他人租的空闲节点) |
| 租用最长存活 / 空闲超时 | 该账号触发的租赁的关机规则(分钟);空闲超时 0 = 只手动关 |
设置与 API Key
| Key | 用途 |
|---|---|
| Vast.ai API Key | 自动租用 GPU(搜挂单、开机、查日志、销毁、看余额) |
| OpenRouter API Key | AI 文本/多模态调用(下发给 GPU 节点,供后续 AI 功能使用) |
| OpenAI API Key | AI 背景匹配主通道(gpt-image-2 出图) |
| Venice API Key | AI 背景匹配兜底通道 |
| fal.ai Key | 可选的图像通道 |
Key 只存在本站数据库,页面只回显尾 4 位;保存后在线节点立即收到更新。
参数说明
界面里每个参数旁的「?」都有详细说明(作用 / 原理 / 范围 / 推荐值 / 症状对应)。最常用的几个:
| 参数 | 调它解决什么 |
|---|---|
| 换背景 | 关掉 = 只换脸、保留真实背景,零边缘伪影、延迟最低 |
| 人脸修复 / 修复模型 | 脸偏软→开;gpen_bfr_256 快、codeformer 最真实 |
| 局部光照匹配 | 换出来的脸像一块平光的面具、和脖子接不上 → 开(把你脸上的明暗分布搬到换脸结果上,专属模型必开) |
| 表情迁移 / 表情强度 / 迁移区域 | 换脸后表情、嘴型比真人弱 → 开(用你的原始表情重新驱动换脸后的脸;首次开启下载约 340MB;每帧约 +30ms,帧率会降)。嘴张得过头→降强度;眼睛异常→区域改「只下半脸」 |
| 遮挡感知 | 手挡脸时手不被换掉;常有手部动作时必开 |
| 边缘平滑 / 边缘削除 / 边缘去污 | 肩膀边界抖、毛边、白边 |
| 背景调色 / 人物调色 | AI 背景与房间亮度对不上、换脸后人偏暗 |
| 环境光校正 | 让人物带上背景光线的色调(按当前背景生成一次,约 1–2 分钟) |
网络与安全
- 视频走点对点:客户端与 GPU 节点先尝试直连(同局域网 / 同 Meshnet / 公网可打洞),打不通才经本站的 TURN 中继(会多几十毫秒)。
- 控制面走本站:网页、账号、信令、参数全部经 HTTPS;GPU 节点只有一条出站 WebSocket。
- 端口:客户端与节点无需开放任何入站端口;本站开放 443(HTTPS)、3478(STUN/TURN)与 50000–50999/UDP(中继)。
- 素材隔离:每个账号的人设、背景、AI 候选、预设存在本站,会话开始时同步到分配的节点,结束时从节点清除;不同账号互不可见。
- 密码:argon2id 哈希存储;登录失败限速;管理员可随时停用账号或重置密码。
常见问题
「没有可用 GPU」
没有在线的 GPU 节点,或都在使用中。让管理员启动 GPU 端(后台「GPU 节点」页能看到在线状态),或为你的账号开通「允许租用」。
摄像头打不开
浏览器地址栏左侧锁图标 → 摄像头 → 允许;别选「AI 换脸摄像头(虚拟摄像头)」;关掉占用摄像头的其他程序(桌面版、另一个标签页、Zoom、微信)。
信令通了但没有画面
状态卡在「WebRTC: connecting/failed」:客户端与节点之间既不能直连、中继也没通。检查本站 3478/UDP 与 50000–50999/UDP 是否被公司防火墙拦截;或换用手机热点验证。
安装包被浏览器/SmartScreen 拦截
安装包未购买代码签名证书,属于信誉机制的正常提示,按下载页图解点「保留」「仍要运行」;可对照 SHA-256 校验文件未被篡改。
GPU 端装好了但后台看不到
查看 GPU 端日志(Windows 在安装目录 logs\,Linux 看 agent.log):正常会先出现「已自动注册到门户」,再等「server.py 就绪」(首次要下载模型)后连上;「门户拒绝注册」= 这台机器被管理员拉黑;连接被拒 4403 = 节点被停用;确认机器能访问 https://fs.hawkmind.ai。
租用失败
后台「租赁」页有每次的日志:余额不足、没有符合价格/地区的挂单、坏机(会自动换机并拉黑)。