最完整HeyGem.ai部署指南:Windows/Ubuntu双系统教程
2026-02-04 05:03:52作者:殷蕙予
引言:告别数字人部署困境,本地构建AI分身矩阵
你是否还在为数字人部署时的复杂环境配置而头疼?面对Docker容器启动失败、GPU驱动不兼容、服务端口冲突等问题束手无策?本文将提供一套全流程解决方案,从硬件选型到服务监控,从Windows到Ubuntu系统,让你零基础也能在30分钟内完成HeyGem.ai(原Duix.Avatar)的本地化部署。
读完本文你将获得:
- 两套系统部署方案(Windows 10/11 & Ubuntu 22.04)
- NVIDIA 30/40/50系列显卡适配指南
- 国内镜像加速配置(解决Docker镜像访问难题)
- 服务健康检查与故障排查方法论
- 8个高频问题的根因分析与解决方案
一、部署前准备:硬件选型与环境检查
1.1 最低配置 vs 推荐配置
| 组件 | 最低配置 | 推荐配置 | 极端性能配置 |
|---|---|---|---|
| CPU | Intel i5-10400 / AMD Ryzen 5 3600 | Intel i7-13700F / AMD Ryzen 7 7800X3D | Intel i9-14900K / AMD Ryzen 9 7950X |
| 内存 | 16GB DDR4 | 32GB DDR5 5600MHz | 64GB DDR5 6400MHz |
| 显卡 | NVIDIA RTX 3060 6GB | NVIDIA RTX 4070 12GB | NVIDIA RTX 5090 24GB |
| 存储 | 256GB SSD(系统)+ 1TB HDD(数据) | 1TB NVMe SSD(系统)+ 2TB NVMe SSD(数据) | 2TB NVMe SSD x2(RAID 0) |
| 操作系统 | Windows 10 19042+ / Ubuntu 22.04 | Windows 11 23H2 / Ubuntu 22.04.4 LTS | 同推荐配置 |
⚠️ 关键提示:所有算力需求均在本地处理,必须配备NVIDIA独立显卡(不支持AMD/Intel核显),且需安装470.xx以上版本驱动
1.2 环境依赖检查清单
# Windows系统检查命令(PowerShell管理员模式)
systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
wsl --list --verbose
nvidia-smi | findstr "Driver Version"
# Ubuntu系统检查命令(终端)
lsb_release -a
uname -r
nvidia-smi | grep "Driver Version"
预期输出示例:
- Windows:OS版本 ≥ 10.0.19042,WSL 2已安装,NVIDIA驱动 ≥ 535.xx
- Ubuntu:22.04 LTS,内核 ≥ 5.15.0,NVIDIA驱动 ≥ 535.xx
二、Windows系统部署全流程(以Win11为例)
2.1 WSL 2与Docker环境搭建
flowchart TD
A[启用WSL功能] -->|管理员PowerShell| B("wsl --install")
B --> C[重启电脑]
C --> D["wsl --update"]
D --> E[下载Docker Desktop]
E --> F[安装Docker并启用WSL 2后端]
F --> G[启动Docker并验证]
G --> H{"docker --version<br>docker-compose --version"}
H -->|输出版本号| I[配置国内镜像源]
关键命令与配置:
# 启用WSL 2和虚拟机平台
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 设置WSL默认版本
wsl --set-default-version 2
# Docker国内镜像配置(设置->Docker Engine)
{
"registry-mirrors": [
"https://docker.zhai.cm",
"https://hub.littlediary.cn",
"https://docker.1ms.run"
]
}
2.2 项目部署与服务启动
2.2.1 代码获取与目录结构
# 克隆仓库(国内加速地址)
git clone https://gitcode.com/GitHub_Trending/he/HeyGem.ai.git
cd HeyGem.ai
# 目录结构关键节点
tree /F /A | findstr /i "deploy src doc package.json"
核心目录说明:
deploy/:Docker Compose配置文件集合src/:源代码(前后端实现)doc/:官方文档与常见问题
2.2.2 多版本部署选择
pie
title 部署方案选择占比
"标准完整版" : 65
"轻量版(Lite)" : 20
"50系列显卡专用版" : 15
标准完整版部署(推荐大多数用户):
cd deploy
docker-compose up -d
轻量版部署(低配电脑,仅保留核心功能):
cd deploy
docker-compose -f docker-compose-lite.yml up -d
NVIDIA 50系列显卡部署(RTX 5090/5080):
cd deploy
docker-compose -f docker-compose-5090.yml up -d
2.2.3 服务状态验证
# 检查容器运行状态
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
# 预期输出(完整版)
NAMES STATUS PORTS
heygem-tts Up 5 minutes 0.0.0.0:18180->8080/tcp
heygem-asr Up 5 minutes 0.0.0.0:10095->10095/tcp
heygem-gen-video Up 5 minutes 0.0.0.0:8383->8383/tcp
2.3 客户端安装与连接测试
- 从GitHub Releases下载Windows客户端
- 安装后首次启动会自动连接本地服务(
http://127.0.0.1:8383) - 验证连接状态:设置 → 关于 → 服务检测 → 全部绿灯
⚠️ 常见陷阱:若客户端提示"服务未连接",检查Windows防火墙是否放行Docker相关进程
三、Ubuntu系统部署优化方案(22.04 LTS)
3.1 系统初始化与驱动安装
# 1. 更新系统并安装依赖
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential git wget curl
# 2. 安装NVIDIA驱动(推荐使用runfile方式)
wget https://us.download.nvidia.com/XFree86/Linux-x86_64/550.54.14/NVIDIA-Linux-x86_64-550.54.14.run
chmod +x NVIDIA-Linux-x86_64-550.54.14.run
sudo ./NVIDIA-Linux-x86_64-550.54.14.run --no-x-check --no-nouveau-check
# 3. 安装Docker与NVIDIA Container Toolkit
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt update && sudo apt install -y nvidia-docker2
sudo systemctl restart docker
3.2 国内镜像源配置
# 创建Docker配置文件
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://hub.fast360.xyz",
"https://docker.kejilion.pro",
"https://docker.1panelproxy.com"
],
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
EOF
# 重启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
3.3 服务部署与资源监控
# 克隆代码仓库
git clone https://gitcode.com/GitHub_Trending/he/HeyGem.ai.git
cd HeyGem.ai/deploy
# 启动服务(Ubuntu专用配置)
docker-compose -f docker-compose-linux.yml up -d
# 安装系统监控工具
sudo apt install -y htop nvtop
# 启动监控面板
nvtop # 监控GPU使用情况
htop # 监控CPU和内存使用
服务启动成功标志:
- 三个服务容器状态均为
Up (healthy) nvtop显示GPU显存占用约3-5GB(初始状态)- 访问
http://localhost:8383返回JSON格式的API信息
3.4 客户端运行与权限处理
# 下载Linux客户端
wget https://github.com/duixcom/Duix.Avatar/releases/download/v1.0.3/Duix.Avatar-1.0.3.AppImage
chmod +x Duix.Avatar-1.0.3.AppImage
# 普通用户运行
./Duix.Avatar-1.0.3.AppImage
# Root用户运行(不推荐,仅应急使用)
./Duix.Avatar-1.0.3.AppImage --no-sandbox
四、50系列显卡专项配置指南
4.1 硬件兼容性说明
NVIDIA 50系列显卡(RTX 5090/5080)由于CUDA架构升级,需要使用专用Docker镜像和PyTorch预览版。通过对比测试,我们发现:
| 镜像版本 | 30系列支持 | 40系列支持 | 50系列支持 | 镜像大小 |
|---|---|---|---|---|
| guiji2025/heygem.ai | ✅ 支持 | ✅ 支持 | ❌ 不支持 | ~25GB |
| guiji2025/heygem.ai-5090 | ✅ 支持 | ✅ 支持 | ✅ 支持 | ~28GB |
4.2 部署步骤调整
# 1. 确保NVIDIA驱动版本 ≥ 550.54.14
nvidia-smi | grep "Driver Version"
# 2. 使用50系列专用配置文件
cd HeyGem.ai/deploy
docker-compose -f docker-compose-5090.yml up -d
# 3. 验证TTS服务是否正常
curl http://127.0.0.1:18180/v1/health
# 预期返回:{"status":"healthy","version":"1.0.0"}
4.3 性能优化参数
在docker-compose-5090.yml中添加以下环境变量优化50系列显卡性能:
environment:
- PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512
- TORCH_USE_CUDA_DSA=1
- CUDA_DEVICE_ORDER=PCI_BUS_ID
五、常见故障诊断与解决方案
5.1 服务启动失败案例库
| 错误现象 | 可能原因 | 诊断命令 | 解决方案 |
|---|---|---|---|
| heygem-asr反复重启 | 内存不足16GB | `docker logs heygem-asr | grep "Out Of Memory"` |
| 5090显卡容器启动失败 | 驱动版本过低 | `nvidia-smi | grep "Driver Version"` |
| Docker镜像拉取超时 | 网络问题 | `docker info | grep "Registry Mirrors"` |
| 服务端口冲突 | 8383/18180端口被占用 | `netstat -ano | findstr ":8383"` |
| 客户端无法连接服务 | WSL网络模式问题 | wsl --shutdown && docker restart |
重启WSL和Docker服务 |
5.2 深度故障排查流程
flowchart TD
A[服务异常] --> B{检查容器状态}
B -->|状态Exited| C[查看容器日志<br>docker logs --tail 50 容器名]
B -->|状态Restarting| D[检查资源使用<br>docker stats]
C --> E{错误关键词}
E -->|Out Of Memory| F[增加内存或使用lite版]
E -->|CUDA error| G[检查显卡驱动和CUDA版本]
E -->|File not found| H[重新拉取代码仓库]
D --> I{资源占用}
I -->|CPU > 90%| J[优化启动参数]
I -->|GPU Mem > 95%| K[关闭其他GPU应用]
典型日志分析示例:
# heygem-tts启动失败日志
Traceback (most recent call last):
File "tools/api_server.py", line 12, in <module>
import torch
File "/opt/conda/envs/python310/lib/python3.10/sage-packages/torch/__init__.py", line 139, in <module>
raise RuntimeError(E)
RuntimeError: CUDA initialization: The NVIDIA driver on your system is too old (found version 11070). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver.
解决方案:升级NVIDIA驱动至535.xx以上版本
六、部署后优化与最佳实践
6.1 存储路径自定义
默认配置下,所有数据存储在系统盘,建议修改为大容量硬盘路径:
# Windows系统(docker-compose.yml)
volumes:
- E:/heygem_data/voice/data:/code/data # 修改为实际数据盘路径
# Ubuntu系统(docker-compose-linux.yml)
volumes:
- /mnt/data/heygem_data/voice/data:/code/data # 修改为实际数据盘路径
6.2 服务自启动配置
# Ubuntu系统设置Docker服务自启动
sudo systemctl enable docker
sudo systemctl enable containerd
# 创建服务启动脚本
cat > ~/start-heygem.sh <<EOF
#!/bin/bash
cd /path/to/HeyGem.ai/deploy
docker-compose -f docker-compose-linux.yml up -d
EOF
chmod +x ~/start-heygem.sh
# 添加到开机启动
echo "@reboot /home/$USER/start-heygem.sh" | crontab -
6.3 性能监控面板搭建
# 安装Prometheus和Grafana(可选高级配置)
docker run -d -p 9090:9090 --name prometheus prom/prometheus
docker run -d -p 3000:3000 --name grafana --link prometheus grafana/grafana
在Grafana中添加NVIDIA Data Source插件,创建GPU使用率、显存占用、服务响应时间等监控面板。
七、总结与后续展望
通过本文档,你已掌握HeyGem.ai在Windows和Ubuntu系统的完整部署流程,包括:
- 环境检查与依赖安装
- 多版本部署方案选择
- 50系列显卡专项配置
- 故障诊断与性能优化
项目发展路线图:
- 未来版本将支持AMD显卡(基于ROCm)
- WebUI界面正在开发中,无需客户端即可操作
- 模型轻量化计划:将基础模型体积从25GB压缩至10GB以内
社区资源:
- 技术交流群:扫码加入README_zh.md中的官方群
- 问题反馈:项目GitHub Issues
- 贡献代码:提交PR至https://gitcode.com/GitHub_Trending/he/HeyGem.ai
如果你在部署过程中遇到本文未覆盖的问题,欢迎在评论区留言,我们将持续更新这份指南。点赞+收藏+关注,不错过数字人技术的最新进展!
附录:关键API接口参考
模特训练接口
POST http://127.0.0.1:18180/v1/preprocess_and_tran
Content-Type: application/json
{
"format": ".wav",
"reference_audio": "path/to/audio.wav",
"lang": "zh"
}
视频合成接口
POST http://127.0.0.1:8383/easy/submit
Content-Type: application/json
{
"audio_url": "path/to/audio.wav",
"video_url": "path/to/video.mp4",
"code": "unique-task-id",
"chaofen": 0,
"watermark_switch": 0,
"pn": 1
}
登录后查看全文
热门项目推荐
相关项目推荐
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00
最新内容推荐
终极Emoji表情配置指南:从config.yaml到一键部署全流程如何用Aider AI助手快速开发游戏:从Pong到2048的完整指南从崩溃到重生:Anki参数重置功能深度优化方案 RuoYi-Cloud-Plus 微服务通用权限管理系统技术文档 GoldenLayout 布局配置完全指南 Tencent Cloud IM Server SDK Java 技术文档 解决JumpServer v4.10.1版本Windows发布机部署失败问题 最完整2025版!SeedVR2模型家族(3B/7B)选型与性能优化指南2025微信机器人新范式:从消息自动回复到智能助理的进化之路3分钟搞定!团子翻译器接入Gemini模型超详细指南
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
525
3.72 K
Ascend Extension for PyTorch
Python
329
391
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
877
578
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
335
162
暂无简介
Dart
764
189
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
12
1
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.33 K
746
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
67
20
React Native鸿蒙化仓库
JavaScript
302
350