HeyGem.ai本地部署快速上手:4个任务把文字和语音变成数字人视频
【免费下载链接】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
HeyGem.ai 是一款可本地部署的 AI 数字人视频平台,部署完成后,它能把你的文本和语音,全离线地变成一段会说话的数字人视频。下面用 4 个任务带你走完:自检、起服务、造数字人、出视频。
部署前三查:先把这三样东西核对好
📌 动手之前,先花 2 分钟核对硬件、网络、环境三件事。任何一项不达标,后面命令跑得再快也会卡住。
| 检查项 | 要求 | 怎么查 |
|---|---|---|
| 显卡 | 英伟达 N 卡 + 已装驱动(30/40/50 系列) | 终端跑nvidia-smi,能看到显卡信息才算过。本项目全部算力在本地 GPU,没卡、没驱动,服务根本起不来 |
| 内存 | 32G 及以上(推荐) | 系统设置里看。16G 可能带不动 ASR 服务 |
| 磁盘 | Windows:C 盘 100G+(放镜像)、D 盘 30G+(放数据);Linux:空闲 100G+ | 磁盘管理或df -h |
| 网络 | 稳定,首次拉镜像约 70G 流量 | 建议有线或稳定 WiFi,耐心等约半小时 |
| 系统 | Windows 10 19042+ / Ubuntu 22.04 | Windows 需 WSL + Docker Desktop,wsl --list检查 |
| 运行时 | Node.js 18(仅客户端需要) | node -v |
两个补充点:
- 权限:Linux 下用管理员终端(带
sudo)执行命令即可;Windows 装好 Docker Desktop 后正常操作就行,无需额外提权。 - 驱动先于一切:
nvidia-smi都跑不起来的话,先去装显卡驱动,这一步不跳过。
最短路径启动本地服务:几条命令跑通全部
整个系统分两部分:AI 服务(Docker 三个容器)+ 客户端(Electron 桌面端)。
1. 拿到代码
git clone https://gitcode.com/GitHub_Trending/he/HeyGem.ai cd HeyGem.ai2. 拉起 AI 服务
cd deploy docker-compose up -d就这一条。它会拉取语音识别(ASR)、语音合成(TTS)、视频生成三个镜像,首次约 70G 流量,等半小时左右。
两种特殊情况才需要换文件:
# 50系显卡(如 RTX 5090) docker-compose -f docker-compose-5090.yml up -d # Linux(Ubuntu 22.04) docker-compose -f docker-compose-linux.yml up -d3. 启动客户端
npm install npm run dev✅ 怎么算跑通了:Docker 里duix-avatar-asr、duix-avatar-tts、duix-avatar-gen-video三个服务全部Running;客户端窗口弹出并看到首页。
首页就两个入口:左边"Create Video"用来生成视频,右边"Create Avatar"用来造数字人。接下来两个任务都用它们。
从零造一个数字人:一条 10 秒视频就够
很多人以为要准备一堆照片、再单独录音。实际上,一条 10 秒左右的视频就够了,形象和声音都从它里来。
- 准备素材:人物正面、在说话的 10 秒左右视频。 ⚠️ 视频必须有声音,且说话的就是画面里的人——形象克隆取视频,声音克隆取音频,静音视频会直接失败。
- 在客户端首页点"快速定制 / Create Avatar"。
- 上传视频,等克隆完成。"My Avatars / 我的数字模特"列表里会出现这个数字人,供下一步直接调用。
需要多个角色就重复同样操作,每个数字人都拥有独立的形象和声音。
把文字和声音变成一段视频:两种输入方式
有了数字人,就可以出片了。输入方式只有两种,按需选:
- 纯文本:直接填文案。TTS 服务用刚克隆的声音把它念出来,数字人跟着对口型。
- 音频文件:上传现成语音,数字人跟着你的音频说话,节奏和情绪都保留原样。
操作很简单:
- 首页点"Create Video / 短视频制作";
- 选中你要用的数字人;
- 二选一填入文本或上传音频,确认生成;
- 成片落在"My Works / 我的作品",点开即可预览、导出。
脚本支持中、英、日、韩、法、德、阿拉伯、西八种语言,跨语种口播也能做。生成环节由视频合成服务完成口型对齐,全程本地,素材不经过外网。
让它跑得更稳:GPU 与资源分配
跑通之后,盯住三件事就能长期稳定运行。
CUDA 加速:把算力全交给显卡
compose 文件里三个服务都带runtime: nvidia,这就是 CUDA 加速开关:
- Linux 用户还要装 NVIDIA Container Toolkit,否则 Docker 用不了 GPU;
- 50 系显卡(5090 已验证)用前面的
docker-compose-5090.yml,对应更新版本的 torch; - 视频生成服务里的
PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512是抑制显存碎片用的,别删。
内存:32G 是安全线
- 内存低于 16G 时,ASR 服务可能起不来或反复重启;
- 视频生成服务已预置
shm_size: 8g共享内存,不要调小。
存储:数据和镜像分开放
- 数据目录:Windows 是
d:/duix_avatar_data(voice 与 face2face 两个子目录),Linux 是~/duix_avatar_data,数字人和成片都存在这里,留 30G 以上; - Docker 镜像默认吃系统盘,C 盘不足 100G 时,去 Docker Desktop → Settings → Resources → Advanced,把 Disk image location 挪到别的盘。
避坑速查:高频报错对照表
| 报错 / 现象 | 可能原因 | 排查动作 |
|---|---|---|
docker-compose up -d报request canceled/context canceled | Docker Hub 官方源连接不稳 | 在 Docker Engine 配置registry-mirrors国内镜像源后重新拉取 |
| 服务起不来 / 反复 Restarting | 没有英伟达显卡或没装驱动 | nvidia-smi检查,不显示就先装显卡驱动 |
| 新增模特上传视频失败 | 视频没声音,或不是人在说话 | 重传一段 10 秒左右的人声视频 |
定制模特报Connection refused | ASR 服务启动慢,或内存不足 | 服务起来后等几分钟再操作;确认内存 32G 以上 |
| 镜像拉取中断 / 磁盘写满 | 磁盘空间不足、网络不稳 | 镜像目录换盘、配镜像源后重拉 |
第一类问题的设置位置如下图,把国内镜像源写进registry-mirrors,点 Apply & restart:
还不明就里时,先抓两组日志
- 客户端日志:客户端右上角菜单选"打开日志 / Open Log",文件是
main.log(Windows 下位于%APPDATA%\heygem.ai\logs\)。 - 服务端日志:Docker 里点开对应服务的 Logs 页,用复制按钮把报错段落带出来。
完整问题清单可以看仓库里的常见问题;想深入原理,直接读 src/main/service/ 下的model.js、video.js、voice.js,分别是模特训练、视频合成、语音合成的调用源码。
跑通之后
自检、起服务、造数字人、出视频——四个任务走完,你的第一条数字人视频已经在"我的作品"里躺着了。
想再往深走一步的话:服务端本地暴露了 18180、10095、8383 三个 API 端口,把这几个接口串起来,就能把数字人视频生成接进你自己的系统或站点。
【免费下载链接】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),仅供参考