🚀 心流知镜(Flow Mirror)
本项目聚焦于端到端语音模型的预训练,致力于学习能捕捉语音中语义和声学信息的表征。在教学、医疗咨询等场景中,纯语音交流具有丰富的表达信息,比单纯的ASR转换文本更具价值。项目受OpenAI的GPT - 4能力及教育用例启发,旨在为教育等领域提供更智能的语音交互解决方案。
(简体中文|English)

[更新日志]
8.29: 创建仓库,发布README和路线图
8.31: 发布演示网站 (https://voice-playground.91jzx.cn)
9.02: 发布推理代码
9.12: 发布FlowMirror - s - v0.2 - checkpoint - 20240828
✨ 主要特性
- 基于文本的大语言模型初始化,学习统一的文本和音频表征,降低工程复杂度。
- 支持ASR、TTS、语音续写和语音对话等任务。
- 采用两阶段训练过程,随着训练数据增加,模型性能有望进一步提升。
🚀 快速开始
本项目暂未提供详细的快速开始步骤,你可以参考以下链接获取相关信息:
📚 详细文档
项目动机
虽然文本在互联网上仍是主要的语言形式,但在教学、医疗咨询等许多场景中,仍依赖直接的口头交流。此外,幼儿和不具备读写能力的人可以通过听和说进行广泛的交流和表达,这表明纯语音交流可以为交互提供足够的智能。口语(无文本)交流本身包含丰富的表达信息,在教育和培训等场景中,比单纯通过ASR转换的文本更有价值。
另外,本项目受到OpenAI的GPT - 4所展示的能力及其在演示视频中展示的教育用例的启发。
团队介绍
浙江精准学是一家由阿里巴巴投资的公司,专注于提供与教育相关的硬件和软件产品(AI辅助学习设备)。精准学的AI团队致力于利用AI技术实现与人类教育相当或超越人类教育的主动学习体验,同时努力降低技术成本,使这些解决方案能够让每个人都负担得起。
研究背景
据我们所知,最早的端到端语音模型源自Meta的Speechbot GLSM系列。以下几篇相关研究论文为我们的工作提供了有价值的参考和实验经验:
- SpiritLM: Nguyen等人(2024)探索了口语和书面语言模型的交织。更多信息
- GLSM: Lakhotia等人(2021)开发了一种从原始音频生成的口语语言模型。更多信息
- AudioLM: Borsos等人(2023)提出了一种用于音频生成的语言建模方法。更多信息
- SpeechGPT: Zhang等人(2023)增强了大语言模型的跨模态对话能力。更多信息
- SpeechFlow: Liu等人(2024)介绍了一种使用流匹配的语音生成预训练方法。更多信息
技术方法
总体而言,我们将端到端语音模型的预训练视为一个学习能捕捉语音中语义和声学信息表征的过程。使用基于文本的大语言模型进行初始化,带来了学习统一的文本和音频表征的可能性,并显著降低了工程复杂度。因此,我们将整体训练过程设计为以下两个阶段。
由于缺乏支持中文、特别是针对教育词汇的自监督预训练语音编码器,我们基于Meta的HuBERT论文开发了一个专注于语义信息的自监督语音编码器。受RVQVAE的启发,我们使用大量中文语音数据从零开始训练了一个专注于声学信息的音频编解码器(9层码本)。

基于这些自监督预训练的编解码器,我们使用Qwen2系列大语言模型作为初始化参数。如图所示,我们采用了一种非对称结构,其中输入主要是语义单元,输出包括声学单元和文本。

FlowMirror - s v0.1和v0.2分别使用20,000小时和50,000小时的语音数据进行预训练,支持ASR、TTS、语音续写和语音对话等任务。这些实验结果初步验证了端到端语音模型的可行性,并展示了网络设计的可扩展性,表明该模型在未来版本中将实现更强的能力。
模型评估
定性音频示例
可以通过以下对话参考定性音频示例:
example_1 = "人在没有目标的时候才应该有压力"
example_2 = "这个阶段需要学习什么知识?"
example_3 = "怎么把事情做对要花时间去培养"
example_4 = "这里的药材长势不错"
对话语音示例
示例1: "People should only feel pressure when they lack a goal."
输入
输出
示例2: "The growth of the herbs here looks promising."
输入
输出
演示网站
演示部署在https://voice-playground.91jzx.cn,由于资源有限,最多支持10个并发用户。当前部署的检查点是心流知镜 - s v0.2 - 240822 - checkpoint。未来版本将更新到最新的v0.2和v0.3检查点。
多任务评估
在本项目中,ASR子任务被视为对预训练过程中语音中可学习语义信息捕捉程度的评估。当前检查点在预训练的第一阶段实现了与Whisper - small大致相当的ASR性能。评估数据包括未在训练期间使用的公开在线语音数据和未参与端到端训练的Wenet数据。从这两个数据集中随机抽取1,024个句子进行评估。
数据集来源 |
数量 |
中文字符错误率/词错误率 |
公开数据集 - 测试 |
1,024 |
12.55% |
WenetSpeech - 测试 |
1,024 |
24.23% |
由于这个检查点来自早期阶段,预计随着训练数据和时间的增加,即使不增加模型大小,语音语义和文本之间的对齐也将显著改善。
[待办事项]
将添加来自AudioBench的评估数据。
注意:迫切需要构建一个中文版本的AudioBench以进行更全面的评估。
局限性和不足
- 在三阶段训练过程中,我们没有使用传统的文本大语言模型预训练数据。与原始的Qwen2模型相比,这可能导致在MMLU评估中性能下降。未来版本将致力于缓解这一问题。
- 当前版本仅控制说话者的语音音色。其他语音特征,如情感、韵律、语速、停顿、非语言声音和音高尚未进行微调。
- 有时,对话响应可能无关或回答错误的话题(例如,语音中的同音词导致的误解)。在这个阶段,由于参数规模有限(1.5B)和预训练语音数据的特殊分布(在对话主题上分布不均匀),以及数据预处理的瓶颈,我们预计随着更多有针对性的数据的增加,这方面将有显著改善。
- 当前版本尚不支持多轮对话。
- 推理速度有很大的提升空间。当前在L20 GPU上的首次字节时间(TTFB)约为670ms。我们预计,即使不进行量化,通过TensorRT优化和应用其他流行技术,整体吞吐量也可以提高一个数量级。
许可证
由于v0.1 - v0.3的自监督编码器中使用了WenetSpeech数据,自监督预训练语音编码器和端到端检查点权重文件仅限于学术使用。代码遵循Apache 2.0许可证。
为了进一步促进对中文和亚洲语言语音模型的探索,我们计划发布一个基于公开收集数据(不包括Wenet)训练的新版本,提供一个更自由可用的自监督编码器和解码器。
路线图
项目计划如下:
2024年8月
心流知镜 - s v0.1 & 0.2 (500M - 1.5B参数)
- [x] 中文自监督音频编解码器
- [x] 心流知镜 - s v0.1 & 0.2 (500M - 1.5B参数)
- [x] 基于WebRTC的体验网站
- [x] 双输出:语音和文本
2024年9月
心流知镜 - s v0.2
- [x] 开源检查点和推理代码
- [ ] 加速推理版本
- [ ] 支持设备端部署
- [ ] 发布用于学术使用的自监督语音编码器和音频编解码器权重
2024年10月
心流知镜 - s v0.3
- [ ] 针对中小学学科教学进行优化
- [ ] 支持在对话中选择说话者语音
- [ ] 富有表现力的语音(情感、音量、音高、语速等)
- [ ] 构建专注于中文的AudioBench评估数据集
2024年11月
心流知镜 - s v0.3 - 多语言版本
- [ ] 支持东亚和全球主要语言
- [ ] 支持多语言交互式对话
2024年12月
心流知镜 - s v0.4
- [ ] 支持教育场景中的高质量全双工对话
- [ ] 更大的模型规模
2025年1月
心流知镜 - s v0.5
2025年3月
心流知镜 - s1
- [ ] 发布更大模型规模的版本
- [ ] 扩展到视觉能力
招聘信息
我们正在以下领域招聘,包括团队领导职位。欢迎感兴趣的候选人申请:
- 语音ASR/TTS/对话SLLM
- 角色扮演大语言模型
- 多模态模型推理加速
- 视觉理解和文档智能
- 角色视频生成通用框架
社区交流
钉钉群: 90720015617
