Duix.Avatar:把数字人搬回本地,代价是一张 N 卡

第 127 期AI 数字人本地离线社区许可(非标准 OSI)

先给判断:Duix.Avatar 是目前少见的、能完整跑在自己机器上的开源数字人方案——录一段本人视频,就能克隆出形象和声音,之后喂文本或音频直接出口播视频,全程不联网。但它的门槛和它的卖点一样硬:必须有 NVIDIA 显卡、Windows 或 Ubuntu 二选一、首次部署要吃掉约 70GB 流量;更需要注意的是,它用的是自家的社区许可协议,不是 MIT / Apache 那种标准开源协议,商用前必须自己把条款读完。

做口播内容的人大概都卡在同一个地方:脚本能写,配音能生成,唯独人不上镜。请人拍要排期,用 SaaS 数字人平台要按分钟付费,素材和声音还要上传到别人的服务器——内容还没发出去,你的脸和嗓子先躺在别人的对象存储里了。Duix.Avatar 打的就是这个点:把整条链路搬到本地,形象和声音都不出你的硬盘。


一、它到底做什么

Duix.Avatar 是 duix.com 开源的一套本地数字人工具包,定位很明确:离线视频生成 + 数字人克隆。它不是聊天机器人,也不会陪你实时对话,它干的是一件很具体的事——把一个人的形象和声音复刻下来,然后用文本或音频驱动这个形象,合成一段嘴型对得上的视频。

README 里列出的核心能力有四项:

  • 形象与声音克隆:用真人视频数据训练,捕捉面部特征与轮廓,同时复刻声音的细节,支持调多种语音参数。
  • 文本和语音双驱动:文本先转成语音再驱动形象;也可以直接喂音频,让形象跟着语调节奏做表情。
  • 唇形同步合成:音画对齐,官方的说法是让口型和声音自然贴合。
  • 多语言:脚本支持英、日、韩、中、法、德、阿拉伯、西班牙八种语言。

底层三个能力分别挂在三个 Docker 服务上:ASR 用的是 fun-asr,TTS 用的是 fish-speech-ziming,形象与视频合成是 duix.avatar。README 的致谢部分写得很清楚,这两个底座都不是自研。

一句话概括:它把声音克隆、语音合成、口型驱动这三段原本要自己拼的流水线,打包成一个带图形界面的本地应用,还额外开放了 HTTP 接口,可以接进你自己的批处理脚本。

二、怎么用:先过硬件这一关

这一节得先讲条件,因为条件比步骤更能决定你能不能跑起来。README 给的推荐配置是 13 代 i5-13400F、32GB 内存、RTX 4070,并且明确要求必须有 NVIDIA 显卡且驱动装好——没有 N 卡,三个服务根本起不来。

Windows 路线(要求 Windows 10 19042.1526 及以上):

# 1. 检查并更新 WSL
wsl --list --verbose
wsl --update

# 2. 安装 Docker Desktop(首次运行接受协议、跳过登录)

# 3. 拉取三个服务镜像
docker pull guiji2025/fun-asr
docker pull guiji2025/fish-speech-ziming
docker pull guiji2025/duix.avatar

# 4. 进入 deploy 目录启动(完整版)
docker-compose up -d

# 轻量版只起一个服务
docker-compose -f docker-compose-lite.yml up -d

磁盘这块有个容易被忽略的硬要求:Windows 下必须存在 D 盘且剩余 30GB 以上,用来放数字人和项目数据;C 盘还要再留 100GB 以上放服务镜像。README 也直说了首次拉取大约要半小时、消耗约 70GB 流量,建议挂 WiFi 慢慢下。服务端起来后,客户端去 Releases 下载 Duix.Avatar-x.x.x-setup.exe 双击安装即可。

Ubuntu 22.04 路线(官方完整测试过的版本):

sudo apt update
sudo apt install docker.io
sudo apt install docker-compose

# 装 NVIDIA Container Toolkit,让 Docker 能用到 GPU
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
  && curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey | sudo apt-key add - \
  && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list \
     | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

cd /deploy
docker-compose -f docker-compose-linux.yml up -d

Linux 客户端是 AppImage,双击启动;但如果以 root 身份进入桌面,需要自己在终端里加参数启动(README 原文给的是 --no-sandbox)。装完驱动记得用 nvidia-smi 确认显卡信息能正常显示,这是后面一切的前提。

想接进自己的流水线,官方开放了三个本地接口:

# 模型训练:把视频拆成静音视频 + 音频,音频放到约定目录
#   D:\duix_avatar_data\voice\data      (与 fish-speech-ziming 服务约定,可在 compose 里改)

# 音频合成
POST http://127.0.0.1:18180/v1/invoke
{ "speaker": "{uuid}", "text": "要合成的文本", "format": "wav",
  "topP": 0.7, "max_new_tokens": 1024, "chunk_length": 100,
  "repetition_penalty": 1.2, "temperature": 0.7, "need_asr": false,
  "streaming": false, "is_fixed_seed": 0, "is_norm": 0,
  "reference_audio": "{上一步返回的音频地址}",
  "reference_text": "{上一步返回的参考文本}" }

# 视频合成
POST http://127.0.0.1:8383/easy/submit
{ "audio_url": "{音频路径}", "video_url": "{视频路径}",
  "code": "{uuid}", "chaofen": 0, "watermark_switch": 0, "pn": 1 }

# 查进度
GET  http://127.0.0.1:8383/easy/query?code=${taskCode}

这意味着批量出片是可行的:一次训练形象,之后循环调接口生成口播视频,不必一直点图形界面。具体字段可以参考仓库里的 src/main/service 下 model.js、video.js、voice.js 三个文件。

三、优点:离线这件事,是真值钱的

  • 数据完全不出本机。README 反复强调无需联网,形象素材、声音样本、成片全在本地,对要做人像/声纹相关内容的团队来说,这一条比效果更重要。
  • 图形界面友好。不用写代码,训练形象、合成视频都在界面里点,非技术同事也能上手。
  • 接口开放。训练和合成都能走 HTTP,方便接到自己的内容生产流水线里。
  • 多模型可切换。支持导入多个形象模型,用一键启动包管理,能按场景换人。
  • 八种语言。同一套形象换语言出片,做多语种版本内容是现成的。
  • 新显卡适配过。README 单列了 NVIDIA 50 系的部署方案,5090 上验证通过,30/40 系配合 CUDA 12.8 也可用。

四、缺点和坑:三件必须知道的事

第一件:许可证不是标准开源协议,商用条款还有口径冲突。仓库根目录的 LICENSE 全文是 DUIX.COM COMMUNITY LICENSE AGREEMENT,GitHub 侧识别为 Other(无对应 SPDX 标识),不是 MIT、Apache 或 GPL 中的任何一个。里面有几条很实在:

  • 再分发或提供服务时,要在网站、界面或文档里显著标注 Built with DUIX.COM;用它训练出来的模型对外发布,模型名前也要以 DUIX.COM 开头。
  • 第 2 条写明:如果产品月活超过 1000,就必须向官方申请商业许可,未获明确授权前不得行使协议下的权利。
  • 你用它做出来的案例,官方获得永久、全球、免费、不可撤销的使用许可,可以用于市场宣传,且不必给你署名或付费。
  • 协议不带任何质保,还附带起诉即终止授权的条款。
要特别提醒一句:README 那张开源版与 API 版的对比表里,商业授权一栏写的是用户超 10 万或年收入超 1000 万美元才需签署商业授权协议,而 LICENSE 正文第 2 条写的是月活超过 1000 就要申请。两个数字差了几个数量级,且至今没有统一。真要商用,别拿 README 当依据,以 LICENSE 原文为准并找法务确认,或者直接问官方邮箱。

第二件:开源的是壳子,模型在镜像里。仓库主体是一个 Electron 客户端加一份 docker-compose,真正干活的三个服务是从 guiji2025 这个账号拉取的 Docker 镜像。这一点社区早就提出来了:issue #2 直接问看不到训练相关代码、权重也没有,是不是套壳开源;issue #29 说这只是一个前端项目,SDK 并没有开源;issue #295 标题就叫不明白这开源的意义在哪;issue #382 则质疑模型结构看起来接近 DINet。这些质疑至今都还是开放状态,官方没有正面回应。你可以自由使用和改造外围,但想改模型本身,基本没有入口

官方自己也把话说得很直白,对比表里明写:开源本地部署的口型效果是 usable effect(能用),API 服务的效果是 stunning and higher definition(更惊艳、更清晰);开源版的迭代速度是 slow updates,bug 修复依赖社区。换句话说,这是一条开源引流、商业版收口的产品线,用之前先把预期摆正。

第三件:硬件与平台门槛,卡掉了大多数人。必须 NVIDIA 显卡这一条,直接把 Mac 用户和只有核显的机器挡在门外——issue #193 问 Mac 版什么时候出、issue #212 问 does it work on MAC,至今都是开放状态,没有结论。issue #453 请求 Web 客户端同样悬着,issue #300 提出的多卡并行推理也还没支持。

就算显卡过关,部署过程也谈不上顺滑。翻一遍高关注的 issue 就能看到真实的翻车现场:#231 是 RTX 5090 D 上 CUDA 报错导致服务崩溃,#158 是反复重启报找不到 NVIDIA 驱动,#28 是 Docker 报 unknown or invalid runtime name: nvidia,#226 是任务卡在 20% 不动、CPU 占用只有 2%,#11 是 model/addModel 调用时 socket hang up,#61 是 Windows 下创建符号链接失败。这些问题大多指向同一类原因:驱动、CUDA、NVIDIA Container Toolkit 三者的版本没有对齐。

还有两个功能边界要提前知道:一是它不做实时交互,README 第七节明确说这是克隆加非实时视频合成,想跟数字人实时对话得去官网体验;二是形象定制不支持静默视频(issue #327),素材得符合它的要求。

维护节奏也值得留意。仓库最后一次代码提交停在 2026-04-21,提交信息还只是 update readme,之后到今天接近五个月没有新提交;而 issue 编号已经排到 600 以上,新问题仍在进来。官方在对比表里也承认开源版修复依赖社区。指望它持续跟进新显卡、新系统,可能要失望。

最后说合规。形象克隆和声音克隆天然带风险,请只克隆你自己、或者已经拿到明确书面授权的人的形象与声音,不要用来伪造他人发言、不要做 misleading 的内容。国内对深度合成内容也有标识要求,发布时按规定标注。技术本身无罪,用法决定后果。


五、最终能达到什么效果

跑通之后的产出很明确:一段嘴型对得上、声音像本人的口播视频。一次形象训练之后,出片就变成喂文本、等合成、拿 mp4 的重复劳动,边际成本主要就是显卡时间。对以下场景是实打实的效率提升:

  • 固定人设的口播账号:课程讲解、产品说明、日常更新,脚本一改就能重出一条。
  • 多语种内容:同一个形象换八种语言,省掉重新找人配音的环节。
  • 对数据出境敏感的行业:法律、医疗、政企培训,素材不出内网。
  • 已有本地算力、想把数字人接进自己流水线的团队:三个 HTTP 接口足够串起来。

适合谁,不适合谁,一句话分清:

判断
适合有闲置 NVIDIA 显卡的 Windows / Ubuntu 机器;愿意为数据不出本机接受部署成本;出片量大、人设固定
不适合Mac 用户(无 macOS 版本);无独显或只有核显;想做实时对话数字人;指望开箱即用零排错;月活规模可能触及商用授权阈值的产品

如果要动手,这三件事按顺序做完能省掉大部分麻烦:

  • 先把 nvidia-smi 跑通、NVIDIA Container Toolkit 配好,再碰 docker-compose;驱动和运行时不对齐是后面所有诡异报错的根源。
  • Windows 用户提前确认 D 盘存在且够 30GB、C 盘留够 100GB,首次拉取挂 WiFi,别用手机热点。
  • 商用之前把 LICENSE 全文读完,尤其是第 2 条的月活门槛和第 1 条的署名要求,别只信 README 那张表。

数字人这条赛道,过去几年的关键词是租:按分钟付费、素材上云、效果越好越贵。Duix.Avatar 的价值在于它把一次性的硬件投入换成了长期的可控性——代价是你要自己扛部署、扛排错、扛那张显卡的电费。这笔账划不划算,取决于你一个月到底要出多少条片子。

下期预告:数字人不只是嘴要对上。下一期聊聊开源网格修复、减面与导出工具——让 AI 建出来的模型真能进引擎、真能上 3D 打印机。

资料来源:github.com/duixcom/Duix-Avatar 仓库主页、README(main 分支)、LICENSE(DUIX.COM COMMUNITY LICENSE AGREEMENT)与公开 issue 列表,逐字核对;本期未实际安装部署,所有体验类描述均来自官方文档与用户反馈,非实机实测。协议:社区许可(GitHub 识别为 Other,非标准 OSI 许可)。抓取时间:2026-09-16。