语言:
- 阿拉伯语
- 白俄罗斯语
- 保加利亚语
- 孟加拉语
- 捷克语
- 威尔士语
- 丹麦语
- 德语
- 希腊语
- 英语
- 西班牙语
- 爱沙尼亚语
- 波斯语
- 芬兰语
- 法语
- 加利西亚语
- 印地语
- 匈牙利语
- 意大利语
- 日语
- 格鲁吉亚语
- 立陶宛语
- 拉脱维亚语
- 马其顿语
- 马拉地语
- 荷兰语
- 波兰语
- 葡萄牙语
- 罗马尼亚语
- 俄语
- 斯洛伐克语
- 斯洛文尼亚语
- 塞尔维亚语
- 瑞典语
- 斯瓦希里语
- 泰米尔语
- 泰语
- 土耳其语
- 乌克兰语
- 乌尔都语
- 越南语
- 中文
库名称: transformers
许可证: mit
评估指标:
- bleu
管道标签: 音频-文本到文本
Ultravox模型卡
Ultravox是一个基于预训练模型Llama3.2-1B-Instruct和whisper-large-v3-turbo构建的多模态语音大语言模型。
更多信息请访问GitHub仓库:https://ultravox.ai。
模型详情
模型描述
Ultravox是一个多模态模型,能够同时接收语音和文本作为输入(例如,文本系统提示和语音用户消息)。模型的输入是一个包含特殊伪标记<|audio|>
的文本提示,模型处理器会将该标记替换为从输入音频中提取的嵌入向量。使用合并后的嵌入向量作为输入,模型将像往常一样生成输出文本。
在Ultravox的后续版本中,我们计划扩展标记词汇表,以支持生成语义和声学音频标记,这些标记可以输入到声码器中以产生语音输出。当前版本的模型尚未应用偏好调优。
模型来源
使用方法
可以将该模型视为一个既能听又能理解语音的大语言模型。因此,它可以作为语音代理使用,也可以用于语音到语音的翻译、语音分析等任务。
使用模型的方法如下:
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 = "<输入音频路径>"
audio, sr = librosa.load(path, sr=16000)
turns = [
{
"role": "system",
"content": "你是一个友好且乐于助人的角色。你喜欢回答人们的问题。"
},
]
pipe({'audio': audio, 'turns': turns, 'sampling_rate': sr}, max_new_tokens=30)
训练详情
模型使用了预训练的Llama3.2-1B-Instruct主干以及whisper-large-v3-turbo的编码器部分。
多模态适配器经过训练,Whisper编码器进行了微调,而Llama模型保持冻结状态。
我们使用了知识蒸馏损失函数,其中Ultravox试图匹配基于文本的Llama主干的逻辑输出。
训练数据
训练数据集是自动语音识别(ASR)数据集的混合,扩展了由Llama 3.1 8B生成的续写内容,以及语音翻译数据集,这些数据集在翻译评估中带来了适度的改进。
训练过程
通过知识蒸馏进行监督式语音指令微调。更多信息请参见Ultravox仓库中的训练代码。
训练超参数
- 训练机制: BF16混合精度训练
- 使用的硬件: 8块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 |