GLM-4-Voice:智谱AI的端到端中英语音对话模型
在人工智能领域,自然语言处理和语音识别技术的结合一直是研究的热点。今天,我要向大家介绍智谱AI推出的一款革命性产品——GLM-4-Voice,这是一款能够直接理解和生成中英文语音的智能对话系统,它支持实时对话,并能根据用户的指令改变语音的情感、语调、语速、方言等属性,让机器交流更加自然。
模型架构
GLM-4-Voice 的架构由三个核心部分组成:
-
GLM-4-Voice-Tokenizer:这是一个语音分词器,它在 Whisper 的 Encoder 部分增加了 Vector Quantization 并在 ASR 数据上进行了有监督训练。它能够将连续的语音输入转化为离散的 token,平均每秒音频只需要用 12.5 个离散 token 表示。
-
GLM-4-Voice-Decoder:这是一个基于 CosyVoice 的 Flow Matching 模型结构训练的语音解码器,支持流式推理。它将离散化的语音 token 转化为连续的语音输出,最少只需要 10 个语音 token 即可开始生成,有效降低了端到端对话的延迟。
-
GLM-4-Voice-9B:在 GLM-4-9B 的基础上进行了语音模态的预训练和对齐,使其能够理解和生成离散化的语音 token。
在预训练方面,为了提升模型在语音模态下的智商和合成表现力,智谱AI将 Speech2Speech 任务解耦为两个子任务:“根据用户音频做出文本回复”和“根据文本回复和用户语音合成回复语音”,并设计了两种预训练目标。GLM-4-Voice-9B 在 GLM-4-9B 的基础上,经过了数百万小时音频和数千亿 token 的音频文本交错数据预训练,展现出强大的音频理解和建模能力。
对齐方面,为了支持高质量的语音对话,智谱AI设计了一套流式思考架构。GLM-4-Voice 可以根据用户语音流式交替输出文本和语音两个模态的内容,语音模态以文本作为参照保证回复内容的高质量,并能根据用户的语音指令要求做出相应的声音变化。
使用方法
智谱AI 提供了一个可以直接启动的 Web Demo,用户可以输入语音或文本,模型会同时给出语音和文字回复。
准备工作
首先,你需要下载仓库:
bash
git clone --recurse-submodules https://github.com/THUDM/GLM-4-Voice
cd GLM-4-Voice
然后安装依赖:
bash
pip install -r requirements.txt
由于 Decoder 模型不支持通过 transformers 初始化,因此 checkpoint 需要单独下载:
bash
git clone https://huggingface.co/THUDM/glm-4-voice-decoder
启动 Web Demo
首先启动模型服务:
bash
python model_server.py --model-path glm-4-voice-9b
此命令会自动下载 glm-4-voice-9b。如果网络条件不好,也可以手动下载之后通过 --model-path 指定本地的路径。
然后启动 web 服务:
bash
python web_demo.py
即可在 http://127.0.0.1:8888
访问 web demo。此命令会自动下载 glm-4-voice-tokenizer 和 glm-4-voice-9b。如果网络条件不好,也可以手动下载之后通过 --tokenizer-path 和 --model-path 指定本地的路径。
已知问题
Gradio 的流式音频播放效果不稳定。在生成完成后点击对话框中的音频质量会更高。
GLM-4-Voice 的出现,标志着语音对话技术的又一大进步。它不仅能够提高语音识别的准确性,还能让机器的语音输出更加自然和富有表现力。如果你对这款模型感兴趣,不妨去尝试一下,体验一下人工智能带来的便利和乐趣。🎉