news 2026/9/11 9:39:17

Duix.Avatar:30分钟免费部署本地AI数字人

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Duix.Avatar:30分钟免费部署本地AI数字人

Duix.Avatar:30分钟免费部署本地AI数字人

【免费下载链接】Duix-Avatar🚀 Truly open-source AI avatar(digital human) toolkit for offline video generation and digital human cloning.项目地址: https://gitcode.com/GitHub_Trending/he/Duix-Avatar

Duix.Avatar 是一款免费开源的 AI 数字人工具:本地部署后,提交一段 10 秒左右的自拍视频,就能克隆你的形象和声音,输入文案或上传音频自动生成口播视频。全程离线、不限次数,环境搭好约 30 分钟。

🎬 一段 10 秒自拍,换一条不用出镜的口播视频

上周一个朋友把 12 秒的自拍丢进客户端的「Create Avatar」,没再露脸,就拿回一条自己出镜念稿的口播视频——形象、声音、口型都是他的,拍摄只花了一次。这就是 Duix.Avatar 的用法:本地部署一次,素材和成片都不出门。

它免费且开源,代码可以查看、可以改;所有处理都在本机完成,隐私数据不上云;界面只有几个按钮,不写代码也能出片。

背后跑的是三个本地服务

Docker(打包好运行环境的集装箱,一条命令起服务)会拉三个容器:fun-asr 做语音识别,把视频里的话转成文字;fish-speech 做语音合成,用克隆出来的声音读你的文案;duix.avatar 做视频合成,让嘴型跟着音频动。素材进来先被拆成无声视频和音频,声音克隆、文字合成、画面合成全部在 127.0.0.1 上完成,断网也能跑。

能力讲完了,下面按一条时间线把它跑起来:确认硬件、装 Docker、起服务、装客户端。

⚙️ 部署时间线:从确认硬件到三个服务跑通

硬件和磁盘先对个齐

  • 系统:Windows 10 19042.1526 以上,或 Ubuntu 22.04 Desktop
  • 显卡:NVIDIA 显卡并装好最新驱动(推荐配置为 RTX 4070 级别),这是硬性要求
  • 内存:32G 及以上;16G 的机器语音识别服务可能起不来
  • 磁盘:C 盘留 100G 以上放 Docker 镜像,D 盘留 30G 以上存素材和作品

C 盘不够 100G 时,装完 Docker 后在设置里把 Disk image location 挪到空间更大的盘,再 Apply & restart。

Docker 装好,把三个服务拉起来

先检查 WSL(Windows 里跑 Linux 的虚拟壳):

wsl --list --verbose

没装过就装上,装完顺手更新:

wsl --install wsl --update

然后从 Docker 官网装 Docker Desktop(按 CPU 架构选安装包),装完验证显卡驱动是否就位:

nvidia-smi

能显示显卡信息才算通过。接着拿项目代码:

git clone https://gitcode.com/GitHub_Trending/he/Duix-Avatar

进入 deploy/ 目录,后台拉取并启动三个服务:

cd Duix-Avatar/deploy docker-compose up -d

compose 文件按机器换:

docker-compose -f docker-compose-linux.yml up -d docker-compose -f docker-compose-5090.yml up -d docker-compose -f docker-compose-lite.yml up -d

第一行给 Ubuntu,第二行给 NVIDIA 50 系显卡(5090 已验证),第三行是 lite 精简版(只起一个视频合成服务)。等约 30 分钟,下载约 70G 流量,建议连 WiFi;Docker 里出现三个 Running 的服务即成功。

最后从项目发布页下载对应系统的客户端安装包:Windows 双击Duix.Avatar-x.x.x-setup.exe安装;Ubuntu 直接运行.AppImage,root 用户跑不起来时在终端加参数:

./Duix.Avatar-x.x.x.AppImage --no-sandbox

服务都绿了,先别急着建数字人——下面三条坑,前人替你踩过。

🕳️ 部署前先看这 3 个最容易踩的坑

  1. 拉镜像超时,三个服务起不来。Docker Hub 连接不稳定,在 Docker Desktop 的 Docker Engine 配置里加 registry-mirrors(镜像源,镜像下载的国内中转站),保存后 Apply & restart,再重跑docker-compose up -d

    在 daemon.json 里加一段镜像源配置:

    { "registry-mirrors": [ "https://hub.littlediary.cn", "https://docker.1panelproxy.com" ] }

  2. 创建模特报 Connection refused。语音识别服务启动慢,服务端拉起来后等几分钟再开始克隆;内存小于 32G 时也可能起不来。另外记住:克隆用的素材必须有人声,程序要拿这段声音做声音克隆,无声视频必然报错。

  3. 视频生成卡在 20%。多半是音频处理环节出错。点右上角设置里的「Open Log」,打开 main.log 按报错定位;服务端的问题则去对应 Docker 服务的日志里找。

环境没坑了,开始真正用。先拍素材。

🎥 素材怎么拍:10~20 秒,必须带人声

时长 10~20 秒:太短特征不够,太长处理变慢。画面要求不高,但四条尽量做到:脸部光线均匀、正面拍摄、背景简洁、说话清晰。声音是硬指标,克隆的音色完全来自素材里的人声。

克隆形象与生成视频:客户端三步

  1. 点「Create Avatar」上传素材,系统自动提取面部和声音特征,克隆出一个数字人模型。
  2. 在「My Avatars」选中模型,输入文案或上传音频。
  3. 点生成,耗时几分钟到十几分钟(取决于显卡,以实际为准),成片自动归档到「My Works」。

文案支持中、英、日、韩、法、德、阿拉伯、西语 8 种语言,同一个模型可以换语言反复出片。

界面够用的到此为止;要把生成接进自己的流程,看这段。

🔌 想绕过界面,直接调本地 API

Docker 启动后会在本机暴露两个端口,用 HTTP 请求代替点击(API,用接口指令驱动服务的通道)。模特训练和音频合成走127.0.0.1:18180,视频合成与进度查询走127.0.0.1:8383

调接口前先确认三个服务都 Running,点开容器就能看到运行日志:

具体字段和请求示例,直接对照 src/main/service/video.js 的调用代码抄,service 目录下三个文件分别对应模型、视频、音频。

跑通之后,剩下的事很简单。

📌 接下来你可以做的事

照时间线完成本地部署,用一段 10 秒自拍克隆第一个数字人,生成第一条口播视频,剩下的就是换文案批量出片。还有报错的话,翻一下 doc/常见问题.md,拉镜像、Connection refused、卡进度这些都有现成解法。

【免费下载链接】Duix-Avatar🚀 Truly open-source AI avatar(digital human) toolkit for offline video generation and digital human cloning.项目地址: https://gitcode.com/GitHub_Trending/he/Duix-Avatar

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/11 9:38:44

Vircs美国家宽IP倒闭后,Nexip提供真正稳定的住宅IP

加州公寓家宽集体掉队之后,真正能扛风控的住宅 IP 长什么样NexIP住宅ip为你提供解决方案 https://nexip.net/ 去年到今年上半年,中文圈选美西家宽几乎只有一条路径:找一家「自有公寓 AT&T 拉线」的商家,月付三十多刀&#xf…

作者头像 李华
网站建设 2026/9/11 9:37:52

类和对象-下

1.构造函数还有初始化另一种方式,初始化列表初始化列表和构造函数体内 {} 赋值的区别:初始化列表,是对象成员初始化的地方,当函数栈帧创建时,为对象分配内存空间,编译器会先执行初始化列表,直接…

作者头像 李华
网站建设 2026/9/11 9:37:13

AI工程落地:模型选择、数据清洗与LoRA微调实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/11 9:36:21

Kimi LeetCode 64. 最小路径和 Golang实现

LeetCode 64「最小路径和」的 Go 实现&#xff0c;同样提供原地修改和一维滚动数组两个版本。 原地修改版&#xff08;O(1) 额外空间&#xff09; func minPathSum(grid [][]int) int {m, n : len(grid), len(grid[0])// 第一行&#xff1a;只能从左向右累加for j : 1; j < …

作者头像 李华
网站建设 2026/9/11 9:35:59

NPC三电平逆变器双闭环控制与载波层叠调制技术解析

1. 项目概述&#xff1a;电压电流双闭环NPC三电平逆变器的载波层叠调制仿真 作为一名电力电子工程师&#xff0c;我最近完成了一个关于NPC三电平逆变器的仿真项目&#xff0c;重点研究了电压电流双闭环控制与载波层叠调制技术的结合应用。这个项目源于工业应用中对于高效率、低…

作者头像 李华
网站建设 2026/9/11 9:30:56

AI Agent 内嵌终端:JC Shell 重塑 SSH 运维工作流实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华