第 127 期AI 数字人本地离线社区许可(非标准 OSI)
做口播内容的人大概都卡在同一个地方:脚本能写,配音能生成,唯独人不上镜。请人拍要排期,用 SaaS 数字人平台要按分钟付费,素材和声音还要上传到别人的服务器——内容还没发出去,你的脸和嗓子先躺在别人的对象存储里了。Duix.Avatar 打的就是这个点:把整条链路搬到本地,形象和声音都不出你的硬盘。
一、它到底做什么
Duix.Avatar 是 duix.com 开源的一套本地数字人工具包,定位很明确:离线视频生成 + 数字人克隆。它不是聊天机器人,也不会陪你实时对话,它干的是一件很具体的事——把一个人的形象和声音复刻下来,然后用文本或音频驱动这个形象,合成一段嘴型对得上的视频。
README 里列出的核心能力有四项:
- 形象与声音克隆:用真人视频数据训练,捕捉面部特征与轮廓,同时复刻声音的细节,支持调多种语音参数。
- 文本和语音双驱动:文本先转成语音再驱动形象;也可以直接喂音频,让形象跟着语调节奏做表情。
- 唇形同步合成:音画对齐,官方的说法是让口型和声音自然贴合。
- 多语言:脚本支持英、日、韩、中、法、德、阿拉伯、西班牙八种语言。
底层三个能力分别挂在三个 Docker 服务上:ASR 用的是 fun-asr,TTS 用的是 fish-speech-ziming,形象与视频合成是 duix.avatar。README 的致谢部分写得很清楚,这两个底座都不是自研。
二、怎么用:先过硬件这一关
这一节得先讲条件,因为条件比步骤更能决定你能不能跑起来。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 -dLinux 客户端是 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,就必须向官方申请商业许可,未获明确授权前不得行使协议下的权利。
- 你用它做出来的案例,官方获得永久、全球、免费、不可撤销的使用许可,可以用于市场宣传,且不必给你署名或付费。
- 协议不带任何质保,还附带起诉即终止授权的条款。
第二件:开源的是壳子,模型在镜像里。仓库主体是一个 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),素材得符合它的要求。
最后说合规。形象克隆和声音克隆天然带风险,请只克隆你自己、或者已经拿到明确书面授权的人的形象与声音,不要用来伪造他人发言、不要做 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 的价值在于它把一次性的硬件投入换成了长期的可控性——代价是你要自己扛部署、扛排错、扛那张显卡的电费。这笔账划不划算,取决于你一个月到底要出多少条片子。
资料来源:github.com/duixcom/Duix-Avatar 仓库主页、README(main 分支)、LICENSE(DUIX.COM COMMUNITY LICENSE AGREEMENT)与公开 issue 列表,逐字核对;本期未实际安装部署,所有体验类描述均来自官方文档与用户反馈,非实机实测。协议:社区许可(GitHub 识别为 Other,非标准 OSI 许可)。抓取时间:2026-09-16。