社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

爆火开源 AI 数字人 Duix.Avatar:手把手教你 Docker 本地部署

NASBox • 4 天前 • 48 次点击  
如有修改或改动,关注文章底部留言!
教程对你有用,可以 “点赞” 和 “打赏”支持 ~



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Duix.Avatar(原名 HeyGem ):

一款由 Duix.com 开发的免费开源 AI 数字人项目,支持本地部署和 API 调用。仅需提交一段 10 秒左右的视频,即可快速完成数字人形象和声音克隆,输入文案或上传音频即可驱动数字人口型,自动生成口播播报视频。

核心功能:

  • • 精准的形象与声音克隆:仅需提交一段约 10 秒的视频,就能快速完成数字人形象和声音的克隆。
  • • 多驱动方式:输入文案或上传音频即可驱动数字人口型,自动生成口播播报视频。
  • • 全离线操作:无需联网即可使用,有效保护用户隐私。
  • • 高效视频合成:实现数字人视频画面与声音的高度同步,自然流畅的口型匹配。
  • • 多语言支持:脚本支持英语、日语、韩语、中文、法语、德语、阿拉伯语和西班牙语八种语言。

推荐配置:

  • • CPU:第 13 代英特尔酷睿 i5-13400F
  • • 内存:32G 及以上(必要)
  • • 显卡:rtx-4070

TIP:

目前版本客户端不能修改路径和调用的 API,所以建议客户端和服务器部署在同一台设备上。但是因为我的独显在 NAS 上,客户端又是 Windows 所以折腾起来会比较麻烦,有需要的可以简单参考。


服务端

来到项目地址:https://github.com/duixcom/Duix.Avatar

点击打开 deploy 目录

4 个配置模版区别:

Windows 基础完整版 docker-compose.yml
Windows 50系列显卡专用版 docker-compose-5090.yml
Windows 轻量版 docker-compose-lite.yml
Ubuntu 完整版 docker-compose-linux.yml

根据自己的硬件配置和系统进行选择

我是 NAS 上部署,所以选 docker-compose-linux.yml

默认不用修改直接部署即可,但是我是调用方式所以路径需要修改(这里可以先部署,后面再来根据实际情况修改)

服务端部署成功后,资源占用情况

显卡也是没问题,项目启动的时候能看到调用检测

浏览器中输入 http://NAS的IP:18180 能看到 API 界面

客户端

来到项目,点击下载打包好的文件

根据系统,下载对应客户端文件

下载以后,无脑安装即可

打开就是这个界面,点击快速定制

上传一个 8 秒以上的视频,点击提交定制

扩展

理论上如果服务端和客户端都是一台设备,就可以成功运行的了。但如果服务端和客户端是两台设备情况,由于客户端并不能配置路径和端口,就会报错,下面说一下处理方法。

提示路径问题,没有找到 D 盘的 heygem_data 这个目录

因为我只有一个 C 盘,肯定是找不到的

直接通过 SMB 映射驱动盘为 D 盘,确保一定是 D 盘(如果已经有 D 盘,那就改一下原来驱动盘的盘号)

保证 D 盘访问以后,根目录能看到 heygem_data 文件夹(NAS 项目部署的时候灵活映射路径)

当路径没问题以后,就会提示调用本地的 API 不行,因为地址是 NAS 的所以肯定不行

下载 NGINX :https://nginx.org/en/download.html

解压 ZIP 文件,找到 nginx.conf 文件

直接覆盖原来配置,修改目标服务器为你的对应 IP 地址即可

worker_processes  auto;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    tcp_nopush      on;
    keepalive_timeout  65;

    # 通用代理头
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;

    # 服务1
    server {
        listen 18180;
        location / {
            proxy_pass http://192.168.31.100:18180;
            # WebSocket支持
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection"upgrade";
            proxy_read_timeout 3600s;
        }
    }

    # 服务2
    server {
        listen 10095;
        location / {
            proxy_pass http://192.168.31.100:10095;
            # WebSocket支持
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection"upgrade";
            proxy_read_timeout 3600s;
        }
    }

    # 服务3
    server {
        listen 8383;
        location / {
            proxy_pass http://192.168.31.100:8383;
            # WebSocket支持
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection"upgrade";
            proxy_read_timeout 3600s;
        }
    }
}

打开 CMD,来到当前 nginx.exe 的目录,输入:nginx.exe

客户端中,浏览器中输入 http://127.0.0.1:18180 能看到 API 界面(CMD 窗口不要关了)

前面生成的视频没有声音,这里换了另外一个

日志可以看到识别出视频的语音内容

这样数字模特就制作完成了

选择做视频

先来测试一下文本合成,输入内容,点击试听

此时显卡已经在调用了

生成语音,和原来视频声音基本一样的

音频合成,需要上传一个音频

不管是文本,还是音频都行,最后点击合成视频

提交以后,可以去看制作进度

不同性能显卡用时不一样,我用的是 A2000LP 8GB 显卡,

日志可以看到是不断运行的

最后是合成失败了,也不清楚为什么

总结

Duix.Avatar 作为一款开源免费的 AI 数字人工具,整体表现中规中矩。它的核心优势在于,仅需 10 秒视频就能完成形象与声音的克隆,还支持通过多语言文本或音频驱动数字人口型,且全离线操作可保障隐私,视频合成的同步性也较好。

不过,使用体验中存在的问题不少,尤其是当服务端与客户端不在同一设备时,还需借助 SMB 映射磁盘和 NGINX 代理来解决,这对新手而言有一定门槛。总体来说,该工具对于需要用 AI 数字人制作视频的用户有一定实用价值,闲鱼上也有很多关于本地部署的教程在售卖。

综合推荐:⭐⭐⭐(中规中矩,一般人用不上)

使用体验:⭐⭐⭐(客户端不够灵活,跨设备需额外操作)

部署难易:⭐⭐⭐(一般)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 


 

 

 

 

 


 

 

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/186935
 
48 次点击