实时交互数字人,可自定义形象与音色,支持音色克隆,对话延迟低至3s。Real-time voice interactive digital human, customizable appearance and voice, supporting voice cloning, with initial package delay as low as 3s.
1,306
stars
40
commits
Python
primary language
Dec 18, 2025
updated
实时语音交互数字人,支持端到端(MLLM - THG)和级联(ASR-LLM-TTS-THG)。可自定义形象与音色,支持音色克隆,首包延迟低至3s。
技术介绍:量子位推文
中文简体 | English
级联方案(ASR-LLM-TTS-THG):约8G,首包约3s(单张A100)。
端到端语音方案(MLLM-THG):约20G,首包约7s(单张A100)。
如果不需要使用端到端 MLLM,请选择仅包含级联方案的cascade_only分支。
$ git checkout cascade_only
$ git lfs install
$ git clone https://www.modelscope.cn/studios/AI-ModelScope/video_chat.git
$ conda create -n metahuman python=3.10
$ conda activate metahuman
$ cd video_chat
$ pip install -r requirements.txt
requirements中的版本仅供参考,最新依赖请查看对应模块的Repo说明
创空间仓库已设置git lfs追踪权重文件,如果是通过git clone https://www.modelscope.cn/studios/AI-ModelScope/video_chat.git克隆,则无需额外配置
参考这个链接
目录如下:
./weights/
├── dwpose
│ └── dw-ll_ucoco_384.pth
├── face-parse-bisent
│ ├── 79999_iter.pth
│ └── resnet18-5c106cde.pth
├── musetalk
│ ├── musetalk.json
│ └── pytorch_model.bin
├── sd-vae-ft-mse
│ ├── config.json
│ └── diffusion_pytorch_model.bin
└── whisper
└── tiny.pt
参考这个链接
在app.py中添加如下代码即可完成下载。
from modelscope import snapshot_download
snapshot_download('ZhipuAI/glm-4-voice-tokenizer',cache_dir='./weights')
snapshot_download('ZhipuAI/glm-4-voice-decoder',cache_dir='./weights')
snapshot_download('ZhipuAI/glm-4-voice-9b',cache_dir='./weights')
LLM模块和TTS模块提供了多种方式,可自行选择推理方式
对于LLM模块和TTS模块,如果本地机器性能有限,可使用阿里云大模型服务平台百炼提供的Qwen API和CosyVoice API,请在app.py(line 14)中配置API-KEY。
参考这个链接完成API-KEY的获取与配置。
os.environ["DASHSCOPE_API_KEY"] = "INPUT YOUR API-KEY HERE"
如果不使用API-KEY,请参考以下说明修改相关代码。
src/llm.py中提供了Qwen和Qwen_API两个类分别处理本地推理和调用API。若不使用API-KEY,有以下两种方式进行本地推理:
Qwen完成本地推理。Qwen_API默认调用API完成推理,若不使用API-KEY,还可以使用vLLM加速LLM推理。可参考如下方式安装vLLM:
$ git clone https://github.com/vllm-project/vllm.git
$ cd vllm
$ python use_existing_torch.py
$ pip install -r requirements-build.txt
$ pip install -e . --no-build-isolation
安装完成后,参考这个链接进行部署,使用Qwen_API(api_key="EMPTY",base_url="http://localhost:8000/v1")初始化实例调用本地推理服务。src/tts.py中提供了GPT_SoVits_TTS和CosyVoice_API分别处理本地推理和调用API。若不使用API-KEY,可直接删除CosyVoice_API相关的内容,使用Edge_TTS调用Edge浏览器的免费TTS服务进行推理。
$ python app.py
/data/video/中添加录制好的数字人形象视频/src/thg.py中Muse_Talk类的avatar_list,加入(形象名, bbox_shfit),关于bbox_shift的说明参考这个链接/app.py中Gradio的avatar_name中加入数字人形象名后重新启动服务,等待完成初始化即可。GPT-SoVits支持自定义音色。demo中可使用音色克隆功能,上传任意语音内容的参考音频后开始对话,或将音色永久添加到demo中:
/data/audio中添加音色参考音频,音频长度3-10s,命名格式为x.wav/app.py中Gradio的avatar_voice中加入音色名(命名格式为x (GPT-SoVits))后重新启动服务。GPT-SoVits,开始对话报错无法找到某资源:按照报错提示下载对应的资源即可

右侧视频流播放卡顿:需等待Gradio优化Video Streaming效果
与模型加载相关:检查权重是否下载完整
40 commits
Python
100.0%
实时交互数字人,可自定义形象与音色,支持音色克隆,对话延迟低至3s。Real-time voice interactive digital human, customizable appearance and voice, supporting voice cloning, with initial package delay as low as 3s.
1,306
stars
40
commits
Python
primary language
Dec 18, 2025
updated
实时语音交互数字人,支持端到端(MLLM - THG)和级联(ASR-LLM-TTS-THG)。可自定义形象与音色,支持音色克隆,首包延迟低至3s。
技术介绍:量子位推文
中文简体 | English
级联方案(ASR-LLM-TTS-THG):约8G,首包约3s(单张A100)。
端到端语音方案(MLLM-THG):约20G,首包约7s(单张A100)。
如果不需要使用端到端 MLLM,请选择仅包含级联方案的cascade_only分支。
$ git checkout cascade_only
$ git lfs install
$ git clone https://www.modelscope.cn/studios/AI-ModelScope/video_chat.git
$ conda create -n metahuman python=3.10
$ conda activate metahuman
$ cd video_chat
$ pip install -r requirements.txt
requirements中的版本仅供参考,最新依赖请查看对应模块的Repo说明
创空间仓库已设置git lfs追踪权重文件,如果是通过git clone https://www.modelscope.cn/studios/AI-ModelScope/video_chat.git克隆,则无需额外配置
参考这个链接
目录如下:
./weights/
├── dwpose
│ └── dw-ll_ucoco_384.pth
├── face-parse-bisent
│ ├── 79999_iter.pth
│ └── resnet18-5c106cde.pth
├── musetalk
│ ├── musetalk.json
│ └── pytorch_model.bin
├── sd-vae-ft-mse
│ ├── config.json
│ └── diffusion_pytorch_model.bin
└── whisper
└── tiny.pt
参考这个链接
在app.py中添加如下代码即可完成下载。
from modelscope import snapshot_download
snapshot_download('ZhipuAI/glm-4-voice-tokenizer',cache_dir='./weights')
snapshot_download('ZhipuAI/glm-4-voice-decoder',cache_dir='./weights')
snapshot_download('ZhipuAI/glm-4-voice-9b',cache_dir='./weights')
LLM模块和TTS模块提供了多种方式,可自行选择推理方式
对于LLM模块和TTS模块,如果本地机器性能有限,可使用阿里云大模型服务平台百炼提供的Qwen API和CosyVoice API,请在app.py(line 14)中配置API-KEY。
参考这个链接完成API-KEY的获取与配置。
os.environ["DASHSCOPE_API_KEY"] = "INPUT YOUR API-KEY HERE"
如果不使用API-KEY,请参考以下说明修改相关代码。
src/llm.py中提供了Qwen和Qwen_API两个类分别处理本地推理和调用API。若不使用API-KEY,有以下两种方式进行本地推理:
Qwen完成本地推理。Qwen_API默认调用API完成推理,若不使用API-KEY,还可以使用vLLM加速LLM推理。可参考如下方式安装vLLM:
$ git clone https://github.com/vllm-project/vllm.git
$ cd vllm
$ python use_existing_torch.py
$ pip install -r requirements-build.txt
$ pip install -e . --no-build-isolation
安装完成后,参考这个链接进行部署,使用Qwen_API(api_key="EMPTY",base_url="http://localhost:8000/v1")初始化实例调用本地推理服务。src/tts.py中提供了GPT_SoVits_TTS和CosyVoice_API分别处理本地推理和调用API。若不使用API-KEY,可直接删除CosyVoice_API相关的内容,使用Edge_TTS调用Edge浏览器的免费TTS服务进行推理。
$ python app.py
/data/video/中添加录制好的数字人形象视频/src/thg.py中Muse_Talk类的avatar_list,加入(形象名, bbox_shfit),关于bbox_shift的说明参考这个链接/app.py中Gradio的avatar_name中加入数字人形象名后重新启动服务,等待完成初始化即可。GPT-SoVits支持自定义音色。demo中可使用音色克隆功能,上传任意语音内容的参考音频后开始对话,或将音色永久添加到demo中:
/data/audio中添加音色参考音频,音频长度3-10s,命名格式为x.wav/app.py中Gradio的avatar_voice中加入音色名(命名格式为x (GPT-SoVits))后重新启动服务。GPT-SoVits,开始对话报错无法找到某资源:按照报错提示下载对应的资源即可

右侧视频流播放卡顿:需等待Gradio优化Video Streaming效果
与模型加载相关:检查权重是否下载完整
40 commits
Python
100.0%