🚀 Ultravox模型
Ultravox是一个多模态语音大语言模型,它基于预训练的[Llama3.2 - 1B - Instruct](https://huggingface.co/meta - llama/Llama - 3.2 - 1B)和[whisper - large - v3 - turbo](https://huggingface.co/openai/whisper - large - v3 - turbo)构建。该模型可以同时处理语音和文本输入,具有广泛的应用前景,如语音代理、语音翻译等。
🚀 快速开始
要使用该模型,可尝试以下代码:
import transformers
import numpy as np
import librosa
pipe = transformers.pipeline(model='fixie-ai/ultravox-v0_5-llama-3_2-1b', trust_remote_code=True)
path = "<path-to-input-audio>"
audio, sr = librosa.load(path, sr=16000)
turns = [
{
"role": "system",
"content": "You are a friendly and helpful character. You love to answer questions for people."
},
]
pipe({'audio': audio, 'turns': turns, 'sampling_rate': sr}, max_new_tokens=30)
✨ 主要特性
- 多模态输入:可以同时处理语音和文本输入,例如文本系统提示和语音用户消息。
- 广泛应用:可作为语音代理,还能进行语音到语音的翻译、语音音频分析等。
- 未来扩展:计划在未来版本中扩展词表,支持生成语义和声学音频令牌,从而实现语音输出。
📦 安装指南
运行示例代码前,需要安装相关依赖:
pip install transformers peft librosa
💻 使用示例
基础用法
import transformers
import numpy as np
import librosa
pipe = transformers.pipeline(model='fixie-ai/ultravox-v0_5-llama-3_2-1b', trust_remote_code=True)
path = "<path-to-input-audio>"
audio, sr = librosa.load(path, sr=16000)
turns = [
{
"role": "system",
"content": "You are a friendly and helpful character. You love to answer questions for people."
},
]
pipe({'audio': audio, 'turns': turns, 'sampling_rate': sr}, max_new_tokens=30)
📚 详细文档
模型详情
模型描述
Ultravox是一个多模态模型,能够将语音和文本作为输入(例如,文本系统提示和语音用户消息)。模型的输入是带有特殊 <|audio|>
伪令牌的文本提示,模型处理器会用从输入音频派生的嵌入替换这个魔法令牌。以合并后的嵌入作为输入,模型将像往常一样生成输出文本。
在Ultravox的未来版本中,计划扩展词表,以支持生成语义和声学音频令牌,然后将其输入到声码器中以产生语音输出。此版本的模型未应用偏好调整。
模型来源
- 仓库:https://ultravox.ai
- 演示:见仓库
训练详情
训练数据
训练数据集是自动语音识别(ASR)数据集的混合,扩展了由Llama 3.1 8B生成的延续内容,以及语音翻译数据集,这在翻译评估中带来了适度的改进。
训练过程
通过知识蒸馏进行有监督的语音指令微调。更多信息,请参阅Ultravox仓库中的训练代码。
训练超参数
- 训练模式:BF16混合精度训练
- 使用的硬件:8x H100 GPU
速度、大小、时间
可在TheFastest.ai的音频标签页查看每日基准测试以及与其他现有模型的比较。
评估
|
Ultravox 0.5 1b |
Ultravox 0.5 8B |
Ultravox 0.5 70B |
covost2 en_ar |
1.55 |
12.99 |
20.21 |
covost2 en_ca |
8.06 |
31.54 |
40.01 |
covost2 en_de |
14.21 |
28.70 |
34.53 |
covost2 es_en |
24.97 |
40.19 |
43.29 |
covost2 ru_en |
24.12 |
42.13 |
48.99 |
covost2 zh_en |
4.76 |
17.22 |
21.37 |
big bench audio |
39.14 |
66.54 |
82.70 |
🔧 技术细节
模型使用预训练的[Llama3.2 - 1B - Instruct](https://huggingface.co/meta - llama/Meta - Llama - 3.2 - 1B)主干以及[whisper - large - v3 - turbo](https://huggingface.co/openai/whisper - large - v3 - turbo)的编码器部分。多模态适配器经过训练,Whisper编码器进行了微调,而Llama模型保持冻结。使用知识蒸馏损失,Ultravox试图匹配基于文本的Llama主干的对数概率。
📄 许可证
本项目采用MIT许可证。