duixcom/Duix-Avatar
GitHub: duixcom/Duix-Avatar
一款支持离线部署的开源 AI 数字人视频生成工具,可在本地完成外貌声音克隆并驱动数字人生成多语言视频内容。
Stars: 12411 | Forks: 2044
# 🚀🚀🚀 Duix Avatar — 真正开源的 AI 数字人工具套件,支持离线视频生成和数字人克隆
🔗 **官方网站:** [www.duix.com](http://www.duix.com)
# 目录
1. [什么是 Duix.Avatar](#1-whats-Duix.Avatar)
2. [简介](#2-introduction)
3. [如何在本地运行](#3-how-to-run-locally)
4. [开放 API](#4-open-apis)
5. [更新日志](#5-whats-new)
6. [常见问题](#6-faq)
7. [如何实时交互](#7-how-to-interact-in-real-time)
8. [联系我们](#8-contact)
9. [许可证](#9-license)
10. [致谢](#10-acknowledgments)
11. [Star 历史](#11-star-history)
## 1. 什么是 Duix.Avatar
**Duix.Avatar** 是由 **Duix.com** 开发的一个免费开源的 AI 数字人项目。
七年前,一群年轻的开拓者选择了一条非传统的技术路径,开发了一种使用真人视频数据训练数字人模型的方法。与传统的成本高昂的 3D 数字人方法不同,我们利用 AI 生成技术创造了超逼真的数字人,将制作成本从数十万美元降至仅 1000 美元。这项创新已赋能超过 10,000 家企业,并为教育工作者、内容创作者、法律专家、医疗从业者和企业家等各领域的专业人士生成了超过 500,000 个个性化数字人,极大地提高了他们的视频制作效率。然而,我们的愿景超越了商业应用。我们相信这项变革性的技术应该让每个人都能使用。为了普及数字人创建,我们开源了我们的克隆技术和视频制作框架。我们的承诺依然不变:打破技术壁垒,让所有人都能使用前沿工具。现在,任何拥有计算机的人都可以免费制作自己的 AI Avatar 并以零成本生成视频——这就是 **Duix.Avatar** 的本质。
## 2. 简介

Duix.Avatar 是一款专为 Windows 系统设计的全离线视频合成工具,能够精确克隆您的外貌和声音,将您的形象数字化。您可以通过文本和语音驱动虚拟数字人生成视频。无需网络连接,在保护您隐私的同时,享受便捷高效的数字体验。
- 核心功能
- 精准的外貌和声音克隆:利用先进的 AI 算法高精度捕捉人脸特征,包括五官、轮廓等,构建逼真的虚拟模型。还能精准克隆声音,捕捉并再现人声的细微特征,支持多种语音参数设置,打造高度相似的克隆效果。
- 文本和语音驱动的虚拟数字人:通过自然语言处理技术理解文本内容,将文本转换为自然流畅的语音来驱动虚拟数字人。也可以直接使用语音输入,让虚拟数字人根据语音的节奏和语调做出相应的动作和面部表情,使数字人的表演更加自然生动。
- 高效的视频合成:高度同步数字人视频画面与声音,实现自然流畅的唇形同步(lip-syncing),智能优化音视频同步效果。
- 多语言支持:脚本支持八种语言——英语、日语、韩语、中文、法语、德语、阿拉伯语和西班牙语。
- 核心优势
- 全离线操作:无需网络连接,有效保护用户隐私,允许用户在安全、独立的环境中创作,避免网络传输过程中潜在的数据泄露。
- 用户友好:界面简洁直观,即使是没有技术背景的初学者也能轻松上手,快速掌握软件用法,开启数字人创作之旅。
- 多模型支持:支持导入多种模型,并通过一键启动包进行管理,方便用户根据不同的创作需求和应用场景选择合适的模型。
- 技术支持
- 语音克隆技术:利用人工智能等先进技术,根据给定的语音样本生成相似或相同的声音,涵盖语音的语境、语调、语速等方面。
- 自动语音识别:将人类语音词汇内容转换为计算机可读的输入(文本格式)的技术,使计算机能够“理解”人类语音。
- 计算机视觉技术:用于视频合成的视觉处理,包括人脸识别和唇部运动分析,确保虚拟数字人的唇部动作与语音和文本内容匹配。
## 3. 如何在本地运行
Duix.Avatar 支持基于 Docker 的快速部署。在部署之前,请确保您的硬件和软件环境符合指定要求。
Duix.Avatar 支持两种部署模式:Windows / Ubuntu 22.04 安装
### **依赖项**
1. Nodejs 18
2. Docker 镜像
- docker pull guiji2025/fun-asr
- docker pull guiji2025/fish-speech-ziming
- docker pull guiji2025/duix.avatar
### 模式一:Windows 安装
**系统要求:**
- 目前支持 Windows 10 19042.1526 或更高版本
**硬件要求:**
- 必须有 D 盘:主要用于存储数字人和项目数据
- 可用空间要求:30GB 以上
- C 盘:用于存储服务镜像文件
- 可用空间要求:100GB 以上
- 如果可用空间不足 100GB,安装 Docker 后,可以在下图所示的位置选择剩余空间超过 100GB 的其他磁盘文件夹。

- 推荐配置:
- CPU: 13th Gen Intel Core i5-13400F
- 内存: 32GB
- 显卡: RTX 4070
- 确保您拥有 NVIDIA 显卡并已正确安装驱动程序

#### **安装 Windows Docker**
1. 使用命令 `wsl --list --verbose` 检查是否安装了 WSL。如果显示如下,则已安装,无需再次安装。

2. 使用 `wsl --update` 更新 WSL。

3. [下载 Docker for Windows](https://www.docker.com/),根据您的 CPU 架构选择合适的安装包。
4. 当您看到此界面时,表示安装成功。

5. 运行 Docker

6. 首次运行时接受协议并跳过登录



#### **安装服务端**
使用 Docker, docker-compose 安装步骤如下:
1. `docker-compose.yml` 文件位于 `/deploy` 目录中。
2. 在 `/deploy` 目录中执行 `docker-compose up -d`,如果您想使用 lite 版本,请执行 `docker-compose -f docker-compose-lite.yml up -d`
3. 请耐心等待(约半小时,速度取决于网络),下载将消耗约 70GB 流量,请确保使用 WiFi
4. 当您在 Docker 中看到三个服务时,表示成功(lite 版本只有一个服务 `Duix.Avatar-gen-video`)

#### **针对 NVIDIA 50 系显卡的服务器部署方案**
适用于 50 系列显卡(已测试,在 CUDA 12.8 下也适用于 30/40 系列)使用 PyTorch 官方预览版
#### **客户端**
1. 直接下载 [官方构建的安装包](https://github.com/duixcom/Duix.Avatar/releases)
2. 双击 `Duix.Avatar-x.x.x-setup.exe` 进行安装
### 模式二:Ubuntu 22.04 安装
**系统要求:**
我们已在 **Ubuntu 22.04** 上进行了完整测试。不过,理论上它支持桌面版 Linux 发行版。
**硬件要求:**
- 推荐配置
- CPU: 13th Generation Intel Core i5 - 13400F
- 内存: 32G 或以上(必要)
- 显卡: RTX - 4070(确保您有 NVIDIA 显卡且显卡驱动已正确安装)
- 硬盘: 可用空间大于 100G
**安装 Docker:**
首先,使用 `docker --version` 检查是否安装了 Docker。如果已安装,请跳过以下步骤。
```
sudo apt update
sudo apt install docker.io
sudo apt install docker-compose
```
**安装显卡驱动:**
1. 参考官方文档 安装显卡驱动。
安装完成后,执行 `nvidia-smi` 命令。如果显示显卡信息,则安装成功。
2. 安装 NVIDIA Container Toolkit
NVIDIA Container Toolkit 是 Docker 使用 NVIDIA GPU 的必备工具。安装步骤如下:
- 添加 NVIDIA 软件包仓库:
```
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
```
- 配置 Docker 使用 NVIDIA 运行时:
```
sudo nvidia-ctk runtime configure --runtime=docker
```
- 重启 Docker 服务:
```
sudo systemctl restart docker
```
#### **安装服务端**
```
cd /deploy
docker-compose -f docker-compose-linux.yml up -d
```
#### **安装客户端**
1. 直接下载 Linux 版本的 [官方构建安装包](https://github.com/duixcom/Duix.Avatar/releases)。
2. 双击 `Duix.Avatar-x.x.x.AppImage` 启动。无需安装。
提醒:在 Ubuntu 系统中,如果您以 `root` 用户进入桌面,直接双击 `Duix.Avatar - x.x.x.AppImage` 可能无法运行。您需要在命令行终端中执行 `./Duix.Avatar - x.x.x.AppImage --no - sandbox`。添加 `--no - sandbox` 参数即可解决。
## 4. 开放 API
我们已经开放了模型训练和视频合成的 API。Docker 启动后,本地会暴露几个端口,可以通过 `http://127.0.0.1` 访问。
具体代码请参考:
- src/main/service/model.js
- src/main/service/video.js
- src/main/service/voice.js
### **模型训练**
1. 将视频分离为无声视频 + 音频
2. 将音频放入
`D:\duix_avatar_data\voice\data`,这是与 `guiji2025/fish-speech-ziming` 服务约定的路径,可在 docker-compose 中修改
3. 调用
参数示例:响应示例:**记录响应结果,后续音频合成时需要用到**
### **音频合成**
接口:`http://127.0.0.1:18180/v1/invoke`
```
// Request parameters
{
"speaker": "{uuid}", // A unique UUID
"text": "xxxxxxxxxx", // Text content to synthesize
"format": "wav", // Fixed parameter
"topP": 0.7, // Fixed parameter
"max_new_tokens": 1024, // Fixed parameter
"chunk_length": 100, // Fixed parameter
"repetition_penalty": 1.2, // Fixed parameter
"temperature": 0.7, // Fixed parameter
"need_asr": false, // Fixed parameter
"streaming": false, // Fixed parameter
"is_fixed_seed": 0, // Fixed parameter
"is_norm": 0, // Fixed parameter
"reference_audio": "{voice.asr_format_audio_url}", // Return value from previous "Model Training" step
"reference_text": "{voice.reference_audio_text}" // Return value from previous "Model Training" step
}
```
### **视频合成**
- 合成接口:`http://127.0.0.1:8383/easy/submit`
// 请求参数
{
"audio_url": "{audioPath}", // 音频路径
"video_url": "{videoPath}", // 视频路径
"code": "{uuid}", // 唯一标识
"chaofen": 0, // 固定值
"watermark_switch": 0, // 固定值
"pn": 1 // 固定值
}
- 进度查询:`http://127.0.0.1:8383/easy/query?code=${taskCode}`
GET 请求,参数 `taskCode` 为上面合成接口输入的 `code`
### **致开发者伙伴的重要通知**
我们现在宣布两项并行的服务方案:
| **项目** | **Duix.Avatar 开源本地部署** | **数字人/克隆声音 API 服务** |
| ------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 用途 | 开源本地部署 | 快速克隆 API 服务 |
| 推荐人群 | 技术用户 | 商业用户 |
| 技术门槛 | 具有深度学习框架经验/追求深度定制/希望参与社区共建的开发者 | 快速商业集成/专注上层应用开发/商业场景需要企业级 SLA 保障 |
| 硬件要求 | 需要购买 GPU 服务器 | 无需购买 GPU 服务器 |
| 定制化 | 可根据需要修改和扩展代码,完全控制软件的功能和行为 | 不能直接修改源代码,只能通过 API 提供的接口扩展功能,灵活性不如开源项目 |
| 技术支持 | 社区支持 | 动态扩容支持 + 专业技术响应团队 |
| 维护成本 | 高维护成本 | 维护简单 |
| 唇形同步效果 | 效果可用 | 惊艳且更高清晰度的效果 |
| 商业授权 | 支持全球免费商业使用(用户超过 100,000 或年收入超过 1000 万美元的企业需签订商业许可协议) | 允许商业使用 |
| 迭代速度 | 更新较慢,Bug 修复依赖社区 | 优先使用最新模型/算法,问题解决快 |
我们始终坚持开源精神,推出 API 服务旨在为有不同需求的开发者提供更完善的解决方案矩阵。无论您选择哪种方式,都可以随时通过 [https://duix.com](https://duix.com/) 获取技术支持文档。
我们期待与您携手,共同推动数字人技术的普惠发展!
您可以在官方网站与 Duix.Avatar 数字人聊天:https://duix.com/
我们还在 DUIX 平台提供 API:https://docs.duix.com/api-reference/api/Introduction
## 5. 更新日志
### **[Nvidia 50 系列 GPU 版本公告]**
1. 已在 5090 GPU 上测试验证
2. 安装说明请参阅 [NVIDIA 50 系列显卡服务器部署方案](#Server-Deployment-Solution-for-NVIDIA-50-Series-Graphics-Cards)
### **[新版 Ubuntu 公告]**
**Ubuntu 版本正式发布**
1. 已完成 Ubuntu 22.04 桌面版(内核 6.8.0--generic)的适配和验证工作。尚未对其他 Linux 版本进行兼容性测试。
2. 增加了客户端程序界面的国际化(英文)支持。
3. 修复了一些已知问题
- \#304
- \#292
4. [Ubuntu22.04 安装文档](https://github.com/duixcom/Duix.Avatar?tab=readme-ov-file#ubuntu-2204-installation)
## 6. 常见问题
### **提问前的自检步骤**
1. 检查三个服务是否都处于 Running 状态

2. 确认您的机器有 NVIDIA 显卡且驱动已正确安装。
本项目的所有算力都在本地。如果没有 NVIDIA 显卡或驱动不正确,这三个服务将无法启动。
3. 确保服务端和客户端都已更新到最新版本。该项目刚开源,社区非常活跃,更新频繁。您的问题可能在新版本中已经解决。
- 服务端:进入 `/deploy` 目录,重新执行 `docker-compose up -d`
- 客户端:`pull` 代码并重新 `build`
4. [GitHub Issues](https://github.com/duixcom/Duix.Avatar/issues) 持续更新,问题正在每天被解决和关闭。请经常查看,您的问题可能已经被解决。
### **问题模板**
1. 问题描述
详细描述复现步骤,最好附上截图。
2. 提供错误日志
- 如何获取客户端日志:

- 服务端日志:
找到关键位置,或者点击我们的三个 Docker 服务,如下图所示进行“复制”。

## 7. 如何实时交互
Duix.Avatar 的数字人实现了数字人克隆和非实时视频合成。
如果您希望数字人支持交互,可以访问 [duix.com](www.duix.com) 体验免费测试。
## 8. 联系我们
如有任何疑问,请提出 issue 或联系 james@duix.com
## 9. 许可证
https://github.com/duixcom/Duix.Avatar/blob/main/LICENSE
## 10. 致谢
- ASR 基于 fun-asr
- TTS 基于 fish-speech-ziming
## 11. Star 历史
[GitHub Star 历史](https://www.star-history.com/#duixcom/Duix.Avatar&Date)
标签:AI Avatar, AIGC, AI数字人, Deepfake, IPv6支持, MITM代理, 低成本数字人, 内容创作, 图像处理, 多模态AI, 客户端加密, 客户端加密, 开源数字人, 数字人克隆, 数字人建模, 数字人驱动, 数字孪生, 深度伪造, 生成式AI, 神经网络, 离线视频生成, 索引, 虚拟主播, 虚拟人, 视频制作, 视频合成, 视频自动化, 请求拦截, 逆向工具