字节笔记本
2026年2月23日
GLM-4-Voice:智谱 AI 端到端语音对话模型
GLM-4-Voice 是智谱 AI 推出的端到端语音对话模型,能够直接理解和生成中英文语音,进行实时语音对话,并且支持根据用户指令改变语音的情感、语调、语速、方言等属性。该项目在 GitHub 上已获得 3.1k+ stars,是语音 AI 领域的重要开源项目。
项目简介
GLM-4-Voice 由智谱 AI(Zhipu AI)开发,是一个开源的端到端中英语音对话模型。与传统的级联系统(ASR + LLM + TTS)不同,GLM-4-Voice 采用端到端架构,能够直接处理语音输入并生成语音输出,大大降低了对话延迟,提升了交互的自然度。
截至目前,该项目在 GitHub 上已获得 3.1k+ stars,拥有 274 forks,主要使用 Python 编写。
核心特性
- 端到端语音对话:直接理解和生成语音,无需中间的文本转换步骤
- 实时语音交互:支持流式推理,最低只需 10 个语音 token 即可开始生成
- 多语言支持:同时支持中文和英文语音对话
- 情感与风格控制:可按照指令改变语音的情感、语调、语速、方言等属性
- 低延迟:流式思考架构确保快速响应
- 开源可部署:提供完整的代码和预训练模型,支持本地部署
模型架构
GLM-4-Voice 由三个核心组件构成:
1. GLM-4-Voice-Tokenizer
通过在 Whisper 的 Encoder 部分增加 Vector Quantization 并在 ASR 数据上有监督训练,将连续的语音输入转化为离散的 token。每秒音频平均只需要用 12.5 个离散 token 表示。
2. GLM-4-Voice-Decoder
基于 CosyVoice 的 Flow Matching 模型结构训练的支持流式推理的语音解码器,将离散化的语音 token 转化为连续的语音输出。最少只需要 10 个语音 token 即可开始生成,显著降低端到端对话延迟。
3. GLM-4-Voice-9B
在 GLM-4-9B 的基础上进行语音模态的预训练和对齐,从而能够理解和生成离散化的语音 token。模型经过数百万小时音频和数千亿 token 的音频文本交错数据预训练,拥有强大的音频理解和建模能力。
模型列表
| 模型 | 类型 | 下载链接 |
|---|---|---|
| GLM-4-Voice-Tokenizer | Speech Tokenizer | Huggingface / ModelScope |
| GLM-4-Voice-9B | Chat Model | Huggingface / ModelScope |
| GLM-4-Voice-Decoder | Speech Decoder | Huggingface / ModelScope |
安装指南
前置要求
- Python 3.8+
- CUDA 支持的 GPU(推荐)
- 足够的磁盘空间用于下载模型
安装步骤
1. 克隆仓库
git clone --recurse-submodules https://github.com/THUDM/GLM-4-Voice
cd GLM-4-Voice2. 安装依赖
pip install -r requirements.txt提示:也可以使用预构建的镜像
zhipuai/glm-4-voice:0.1跳过依赖安装步骤。
3. 下载 Decoder 模型
由于 Decoder 模型不支持通过 transformers 初始化,需要单独下载:
# 确保已安装 git-lfs
git lfs install
# 下载 decoder 模型
git clone https://huggingface.co/THUDM/glm-4-voice-decoder快速开始
启动 Web Demo
1. 启动模型服务
python model_server.py \
--host localhost \
--model-path THUDM/glm-4-voice-9b \
--port 10000 \
--dtype bfloat16 \
--device cuda:0如果需要使用 Int4 精度启动(节省显存):
python model_server.py \
--host localhost \
--model-path THUDM/glm-4-voice-9b \
--port 10000 \
--dtype int4 \
--device cuda:02. 启动 Web 服务
python web_demo.py \
--tokenizer-path THUDM/glm-4-voice-tokenizer \
--model-path THUDM/glm-4-voice-9b \
--flow-path ./glm-4-voice-decoder访问 http://127.0.0.1:8888 即可使用 Web Demo。
注意:首次运行会自动下载
glm-4-voice-tokenizer和glm-4-voice-9b模型。如果网络条件不好,建议手动下载后通过参数指定本地路径。
使用示例
GLM-4-Voice 支持多种语音控制场景:
情感控制
- "用轻柔的声音引导我放松"
- "用激动的声音解说足球比赛"
- "用哀怨的声音讲一个鬼故事"
方言支持
- "用东北话介绍一下冬天有多冷"
- "用重庆话念'吃葡萄不吐葡萄皮'"
- "用北京话念一句绕口令"
语速控制
- "加快语速"
- "再快一点"
技术亮点
流式思考架构
GLM-4-Voice 设计了一套流式思考架构:根据用户语音,模型可以流式交替输出文本和语音两个模态的内容。语音模态以文本作为参照保证回复内容的高质量,并根据用户的语音指令要求做出相应的声音变化。
预训练策略
为了攻克模型在语音模态下的智商和合成表现力两个难关,项目团队将 Speech2Speech 任务解耦合为两个子任务:
- 根据用户音频做出文本回复
- 根据文本回复和用户语音合成回复语音
基于这两种任务形式,设计了相应的预训练目标,分别利用文本预训练数据和无监督音频数据合成语音-文本交错数据进行训练。
已知问题
- Gradio 的流式音频播放效果不稳定,建议在生成完成后点击对话框中的音频以获得更高质量
相关资源
- 技术报告: arXiv:2412.02612
- Hugging Face 仓库: THUDM/glm-4-voice-9b
- 在线演示: ModelScope Demo
- GitHub 仓库: THUDM/GLM-4-Voice
协议与引用
- 代码协议: Apache 2.0
- 模型权重: 需遵循智谱 AI 的模型协议
引用格式:
@misc{zeng2024glm4,
title={GLM-4-Voice: Towards Intelligent and Human-Like End-to-End Spoken Chatbot},
author={Aohan Zeng and Zhengxiao Du and Mingdao Liu and Kedong Wang and Shengmin Jiang and Lei Zhao and Yuxiao Dong and Jie Tang},
year={2024},
eprint={2412.02612},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2412.02612},
}致谢
本项目部分代码来自: