中文  |  English



# Step-Audio

## 🔥🔥🔥 News!! * 2025年2月17日: 👋 发布推理代码和模型权重,其中包含[Step-Audio-Chat](https://huggingface.co/stepfun-ai/Step-Audio-Chat), [Step-Audio-TTS-3B](https://huggingface.co/stepfun-ai/Step-Audio-TTS-3B) 和 [Step-Audio-Tokenizer](https://huggingface.co/stepfun-ai/Step-Audio-Tokenizer)。 * 2025年2月17日: 👋 发布多轮音频交互基准测试[StepEval-Audio-360](https://huggingface.co/datasets/stepfun-ai/StepEval-Audio-360)。 * 2025年2月17日: 👋 发布了技术报告[Step-Audio-Report](./assets/Step-Audio.pdf)。 ## Table of Contents 1. [介绍](#1-介绍) 2. [模型组成](#2-模型组成) 3. [模型下载](#3-模型下载) 4. [模型使用](#4-模型使用) 5. [基准](#5-基准) 6. [在线引擎](#6-在线引擎) 7. [样例](#7-样例) 8. [引文](#8-引文) ## 1. 介绍 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤),方言(如 粤语,四川话),可控制语速及韵律风格,支持RAP和哼唱等。其核心技术突破体现在以下四大技术亮点: - **1300亿多模态模型**: 单模型能实现理解生成一体化完成语音识别、语义理解、对话、语音克隆、语音生成等功能,开源千亿参数多模态模型 Step-Audio-Chat。 - **高效数据生成链路**: 基于130B 突破传统 TTS 对人工采集数据的依赖,生成高质量的合成音频数据,并同步开源首个基于大规模合成数据训练,支持 RAP 和哼唱的指令加强版语音合成模型 Step-Audio-TTS-3B 。 - **精细语音控制**: 支持多种情绪(如生气,高兴,悲伤)、方言(包括粤语、四川话等)和唱歌(包括 RAP、干声哼唱)的精准调控,满足用户对多样化语音生成的需求。 - **扩展工具调用**: 通过 ToolCall 机制和角色扮演增强,进一步提升其在 Agents 和复杂任务中的表现。 ## 2. 模型组成 在Step-Audio系统中,音频流采用Linguistic tokenizer(码率16.7Hz,码本大小1024)与Semantice tokenizer(码率25Hz,码本大小4096)并行的双码本编码器方案,双码本在排列上使用了2:3时序交错策略。通过音频语境化持续预训练和任务定向微调强化了130B参数量的基础模型(Step-1),最终构建了强大的跨模态语音理解能力。为了实现实时音频生成,系统采用了混合语音解码器,结合流匹配(flow matching)与神经声码技术。 ![Architecture](assets/architecture.png) ### 2.1 Tokenizer 我们通过token级交错方法实现Linguistic token与Semantic token的有效整合。Linguistic tokenizer的码本大小是1024,码率16.7Hz;而Semantic tokenizer则使用4096的大容量码本来捕捉更精细的声学细节,码率25Hz。鉴于两者的码率差异,我们建立了2:3的时间对齐比例——每两个Linguistic token对应三个Linguistic token形成时序配对。 ### 2.2 语言模型 为了提升Step-Audio有效处理语音信息的能力,并实现精准的语音-文本对齐,我们在Step-1(一个拥有1300亿参数的基于文本的大型语言模型LLM)的基础上进行了音频持续预训练。 ### 2.3 语音解码器 Step-Audio语音解码器主要是将包含语义和声学信息的离散标记信息转换成连续的语音信号。该解码器架构结合了一个30亿参数的语言模型、流匹配模型(flow matching model)和梅尔频谱到波形的声码器(mel-to-wave vocoder)。为优化合成语音的清晰度(intelligibility)和自然度(naturalness),语音解码器采用双码交错训练方法(dual-code interleaving),确保生成过程中语义与声学特征的无缝融合。 ### 2.4 实时推理管线 为了实现实时的语音交互,我们对推理管线进行了一系列优化。其中最核心的是控制模块(Controller),该模块负责管理状态转换、协调响应生成,并确保关键子系统间的无缝协同。这些子系统包括: - **语音活动检测(VAD)**:实时检测用户语音起止 - **流式音频分词器(Streaming Audio Tokenizer)**:实时音频流处理 - **Step-Audio语言模型与语音解码器**:多模态回复生成 - **上下文管理器(Context Manager)**:动态维护对话历史与状态 ![Inference Pipeline](assets/pipeline.png) ### 2.5 后训练细节 在后训练阶段,我们针对自动语音识别(ASR)与文本转语音(TTS)任务进行了专项监督微调(Supervised Fine-Tuning, SFT)。对于音频输入-文本输出(Audio Question Text Answer, AQTA)任务,我们采用多样化高质量数据集进行SFT,并采用了基于人类反馈的强化学习(RLHF)以提升响应质量,从而实现对情感表达、语速、方言及韵律的细粒度控制。 ![RLHF](assets/rlhf.png) ## 3. 模型下载 ### 3.1 Huggingface | 模型 | 链接 | |-------|-------| | Step-Audio-Tokenizer | [🤗huggingface](https://huggingface.co/stepfun-ai/Step-Audio-Tokenizer) | | Step-Audio-Chat | [🤗huggingface](https://huggingface.co/stepfun-ai/Step-Audio-Chat) | | Step-Audio-TTS-3B | [🤗huggingface](https://huggingface.co/stepfun-ai/Step-Audio-TTS-3B) | ### 3.2 Modelscope | 模型 | 链接 | |-------|-------| | Step-Audio-Tokenizer | [modelscope](https://modelscope.cn/models/stepfun-ai/Step-Audio-Tokenizer) | | Step-Audio-Chat | [modelscope](https://modelscope.cn/models/stepfun-ai/Step-Audio-Chat) | | Step-Audio-TTS-3B | [modelscope](https://modelscope.cn/models/stepfun-ai/Step-Audio-TTS-3B) | ## 4. 模型使用 ### 📜 4.1 要求 下表列出了运行Step-Audio模型(batch size=1)所需的配置要求: | 模型 | Setting
(采样率) | GPU最低显存 | |------------|--------------------------------|----------------| | Step-Audio-Tokenizer | 41.6Hz | 1.5GB | | Step-Audio-Chat | 41.6Hz | 265GB | | Step-Audio-TTS-3B | 41.6Hz | 8GB | * 需要支持CUDA的NVIDIA显卡. * 模型在4块显存为80GB的A800系列NVIDIA显卡上进行测试. * **推荐**: 为确保最佳生成质量,建议使用4块显存为80GB的A800/H800系列NVIDIA显卡. * 测试采用的操作系统: Linux ### 🔧 4.2 依赖项与安装 - Python >= 3.10.0 (推荐使用 [Anaconda](https://www.anaconda.com/download/#linux) or [Miniconda](https://docs.conda.io/en/latest/miniconda.html)) - [PyTorch >= 2.3-cu121](https://pytorch.org/) - [CUDA Toolkit](https://developer.nvidia.com/cuda-downloads) ```bash git clone https://github.com/stepfun-ai/Step-Audio.git conda create -n stepaudio python=3.10 conda activate stepaudio cd Step-Audio pip install -r requirements.txt git lfs install git clone https://huggingface.co/stepfun-ai/Step-Audio-Tokenizer git clone https://huggingface.co/stepfun-ai/Step-Audio-Chat git clone https://huggingface.co/stepfun-ai/Step-Audio-TTS-3B ``` 下载模型后,where_you_download_dir应包含以下结构: ``` where_you_download_dir ├── Step-Audio-Tokenizer ├── Step-Audio-Chat ├── Step-Audio-TTS-3B ``` ### 🚀 4.3 推理脚本 #### 离线推理 支持端到端音频/文本输入与音频/文本输出的推理流程。 ```bash python offline_inference.py --model-path where_you_download_dir ``` #### 语音合成推理 使用默认音色进行语音合成推理或使用新音色进行克隆 ```bash python tts_inference.py --model-path where_you_download_dir --output-path where_you_save_audio_dir --synthesis-type use_tts_or_clone ``` 克隆模式需要音色信息字典,格式如下: ```bash { "speaker": "speaker id", "prompt_text": "content of prompt wav", "wav_path": "prompt wav path" } ``` #### 启动网页演示 启动本地服务器以进行在线推理。 假设您已配备4块GPU且已完成所有模型的下载。 ```bash python app.py --model-path where_you_download_dir ``` ## 5. 基准 ### 5.1 语音识别
隐层特征建模 离散标记建模
Whisper Large-v3 Qwen2-Audio MinMo LUCY Moshi GLM-4-voice Base GLM-4-voice Chat Step-Audio Pretrain Step-Audio-Chat
Aishell-1 5.14 1.53 - 2.4 - 2.46 226.47 0.87 1.95
Aishell-2 ios 4.76 3.06 2.69 - - - 211.3 2.91 3.57
Wenetspeech test-net 9.68 7.72 6.64 8.78 - - 146.05 7.62 8.75
Wenet test-meeting 18.54 8.4 7.6 10.42 - - 140.82 7.78 9.52
Librispeech test-clean 1.9 1.6 1.6 3.36 5.7 2.82 75.39 2.36 3.11
Librispeech test-other 3.65 3.6 3.82 8.05 - 7.66 80.3 6.32 8.44
AVG 7.28 4.32 - - - - 146.74 4.64 5.89
### 5.2 语音合成 #### 5.2.1 与GLM-4-Voice与MinMo在内容一致性(CER/WER)上的性能对比。
Model test-zh test-en
CER (%) ↓ WER (%) ↓
GLM-4-Voice 2.19 2.91
MinMo 2.48 2.90
Step-Audio 1.53 2.71
#### 5.2.2 语音合成模型在SEED测试集上的性能结果。 * StepAudio-TTS-3B-Single 表示采用双码本主干网络与单码本声码器的组合架构。
Model test-zh test-en
CER (%) ↓ SS ↑ WER (%) ↓ SS ↑
FireRedTTS 1.51 0.630 3.82 0.460
MaskGCT 2.27 0.774 2.62 0.774
CosyVoice 3.63 0.775 4.29 0.699
CosyVoice 2 1.45 0.806 2.57 0.736
CosyVoice 2-S 1.45 0.812 2.38 0.743
Step-Audio-TTS-3B-Single 1.37 0.802 2.52 0.704
Step-Audio-TTS-3B 1.31 0.733 2.31 0.660
Step-Audio-TTS 1.17 0.73 2.0 0.660
#### 5.2.3 双码本重合成与CosyVoice性能对比。
Token test-zh test-en
CER (%) ↓ SS ↑ WER (%) ↓ SS ↑
Groundtruth 0.972 - 2.156 -
CosyVoice 2.857 0.849 4.519 0.807
Step-Audio-TTS-3B 2.192 0.784 3.585 0.742
### 5.3 语音对话 我们发布全新基准测试[StepEval-Audio-360](https://huggingface.co/datasets/stepfun-ai/StepEval-Audio-360),该数据集包含100个源自真实用户的多轮中文提示,旨在系统性评估生成式语音交互系统在以下维度的表现:语音指令遵循、语音理解、逻辑推理、角色扮演、创作能力、唱歌、语言能力、语音情绪控制、游戏。 #### 5.3.1 StepEval-Audio-360 #### 大语言模型评估指标(GPT-4o)
Comparison of fundamental capabilities of voice chat on the StepEval-Audio-360.
Model Factuality (% ↑) Relevance (% ↑) Chat Score ↑
GLM4-Voice 54.7 66.4 3.49
Qwen2-Audio 22.6 26.3 2.27
Moshi* 1.0 0 1.49
Step-Audio-Chat 66.4 75.2 4.11
*注意:带有“\*”标记的内容仅供参考。 #### 雷达图(人工测评) QR code #### 5.3.2 公开测试集
Model Llama Question Web Questions TriviaQA* ComplexBench HSK-6
GLM4-Voice 64.7 32.2 39.1 66.0 74.0
Moshi 62.3 26.6 22.8 - -
Freeze-Omni 72.0 44.7 53.9 - -
LUCY 59.7 29.3 27.0 - -
MinMo 78.9 55.0 48.3 - -
Qwen2-Audio 52.0 27.0 37.3 54.0 -
Step-Audio-Chat 81.0 75.1 58.0 74.0 86.0
* 注意:在 TriviaQA 数据集上,带有“\*”标记的结果仅供参考。 * 在 TriviaQA 数据集中,带有“\*”标记的结果仅用于参考。 #### 5.3.3 语音指令遵循
Category Instruction Following Audio Quality
GLM-4-Voice Step-Audio GLM-4-Voice Step-Audio
Languages 1.9 3.8 2.9 3.3
Role-playing 3.8 4.2 3.2 3.6
Singing / RAP 2.1 2.4 2.4 4
Voice Control 3.6 4.4 3.3 4.1
## 6. 在线引擎 Step-Audio 的在线版本可以通过[跃问](https://yuewen.cn) 的应用程序访问,其中还可以找到一些惊喜的示例。 QR code ## 7. 样例 ### 音频克隆 | role | prompt wav | clone wav | |:-------:|:-------:|:-------:| |于谦| [google drive](https://drive.google.com/file/d/1N9EJypafFwmeL0R152GoL_CVGbYn1_9A/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/prompt_wav_yuqian.wav)|[google drive](https://drive.google.com/file/d/1Zs_1QrCUuoSqtUSdn2ENIor-k5baQdDV/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/clone_wav_yuqian.wav)| |李雪琴| [google drive](https://drive.google.com/file/d/15SkZ29hksELYi1NDOxYOPu-kRTLSyke_/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/prompt_wav_lixueqin.wav)|[google drive](https://drive.google.com/file/d/11Le4qMqL2DmWpf7RFRpKUXERIR9TtKC0/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/clone_wav_lixueqin.wav)| ### 速度控制 | prompt | response | |:-------:|:-------:| |Human: 说一个绕口令
Assistant: 吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮
Human: 哎,你能把这个绕口令说的再快一点吗?|[google drive](https://drive.google.com/file/d/1mAH-NRrOVZo4tv6gdAZkyJg8kRuTNNGC/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/speed_control1.wav)| |Human: 说一个绕口令
Assistant: 吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮
Human: 哎,你能把这个绕口令说的再快一点吗?
Assistant: 吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮
Human: 呃,你再用非常非常慢的速度说一遍的。|[google drive](https://drive.google.com/file/d/1FhRnKo8uGrtO-cWg4qkrg8iDoNRbtqSX/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/speed_control2.wav)| ### 高情商(情感控制 & 语调控制) | prompt | response | |:-------:|:-------:| |Human: 你这语气又不撒娇又不卖萌的,要不你撒个娇卖个萌吧。|[google drive](https://drive.google.com/file/d/19IROE6_6h2UQVNniCmDTnrhxKRMOFHq3/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/tone_control.wav)| |Human: 怎么办?我感觉我的人生很失败。|[google drive](https://drive.google.com/file/d/1JlLbOlzmdrokVdxtwy1S8eeWqsZR2Vmc/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/emotional_control1.wav)| |Human: 小跃。你真的是。特别厉害。|[google drive](https://drive.google.com/file/d/19ga1RpguDP5r0Xfl1r5GY1J-kzbmHvJb/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/emotional_control2.wav)| ### 多语言 (e.g., 中文, 英文, 日语) | prompt | response | |:-------:|:-------:| |Human: What did the speaker mean when they said, it's raining cats and dogs?
Assistant: When they say "It's raining cats and dogs," it just means it's raining really hard. The speaker isn't literally saying cats and dogs are falling from the sky! It's just a fun way to describe heavy rain.|[google drive](https://drive.google.com/file/d/1LEIvdR5ANMzWX8GOTqUPTNrynNS1xx--/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/multilingual2.wav)| |Human: こんにちは。(你好)
Assistant:こんにちは!何か手伝いましょうか?(您好!我可以帮你做点什么吗?)|[google drive](https://drive.google.com/file/d/1MjKUkkzcGzVcNVXRr_Ya5y2H44K_lybH/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/multilingual1.wav)| ### Rap & Vocal | prompt | response | |:-------:|:-------:| |human:唱一段rap|[google drive](https://drive.google.com/file/d/1F8CKmVbGZ7X7d1IkQPlmndSHeG40AXha/preview)
[audio file](https://github.com/stepfun-ai/Step-Audio/tree/main/examples/rap.wav)| ## 8. 引用 [论文](https://github.com/stepfun-ai/Step-Audio/blob/cn-readme/assets/Step-Audio.pdf)已提交至arXiv,目前正在审核中。在审核完成后会提供官方预印本链接和论文引用。 ``` @misc{stepaudiotechnicalreport, title={Step-Audio: Unified Understanding and Generation in Intelligent Speech Interaction}, author={Step-Audio Team}, year={2025}, } ```