🚀 Ultravox モデルカード
Ultravoxは、事前学習された[Llama3.3 - 70B - Instruct](https://huggingface.co/meta - llama/Llama - 3.3 - 70B - Instruct)と[whisper - large - v3 - turbo](https://huggingface.co/openai/whisper - large - v3 - turbo)をバックボーンとするマルチモーダル音声大規模言語モデル(LLM)です。
GitHubリポジトリと詳細情報については、https://ultravox.ai を参照してください。
🚀 クイックスタート
このモデルは、音声を聞き、理解することができるLLMと考えることができます。したがって、ボイスエージェントとして使用したり、音声翻訳や音声分析などにも利用できます。
モデルを使用するには、以下のコードを試してみてください。
import transformers
import numpy as np
import librosa
pipe = transformers.pipeline(model='fixie-ai/ultravox-v0_5-llama-3_3-70b', 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|>
疑似トークンを含むテキストプロンプトとして与えられ、モデルプロセッサはこのマジックトークンを入力音声から導出された埋め込みに置き換えます。マージされた埋め込みを入力として、モデルは通常通り出力テキストを生成します。
将来的なバージョンでは、トークン語彙を拡張して、意味的および音響的な音声トークンの生成をサポートし、それをボコーダーに供給して音声出力を生成する予定です。
📦 インストール
pip install transformers peft librosa
📚 ドキュメント
モデルの詳細
モデルの説明
Ultravoxは、音声とテキストの両方を入力として受け取ることができるマルチモーダルモデルです(例えば、テキストのシステムプロンプトと音声のユーザーメッセージ)。モデルへの入力は、特殊な<|audio|>
疑似トークンを含むテキストプロンプトとして与えられ、モデルプロセッサはこのマジックトークンを入力音声から導出された埋め込みに置き換えます。マージされた埋め込みを入力として、モデルは通常通り出力テキストを生成します。
将来的なバージョンのUltravoxでは、トークン語彙を拡張して、意味的および音響的な音声トークンの生成をサポートする予定です。これらのトークンは、ボコーダーに供給されて音声出力を生成することができます。このバージョンのモデルには、嗜好調整は適用されていません。
モデルのソース
- リポジトリ: https://ultravox.ai
- デモ: リポジトリを参照
トレーニングの詳細
トレーニングデータ
トレーニングデータセットは、自動音声認識(ASR)データセットと、Llama 3.1 8Bによって生成された続きで拡張された音声翻訳データセットの混合です。これにより、翻訳評価で適度な改善が見られます。
トレーニング手順
知識蒸留を通じた教師付き音声命令微調整です。詳細については、Ultravoxリポジトリのトレーニングコードを参照してください。
トレーニングハイパーパラメータ
- トレーニング方式: BF16混合精度トレーニング
- 使用ハードウェア: 8台のH100 GPU
速度、サイズ、時間
現在のバージョンのUltravoxは、音声コンテンツを使用して呼び出された場合、A100 - 40GB GPUを使用し、すべてLlama 3.3 70Bバックボーンを使用すると、最初のトークンまでの時間(TTFT)は約150ms、1秒あたりのトークン生成速度は約50 - 100トークンです。
TheFastest.aiの音声タブで、毎日のベンチマークと他の既存モデルとの比較を確認できます。
評価
|
Ultravox 0.4 70B |
Ultravox 0.4.1 70B |
Ultravox 0.5 70B |
covost2 en_ar |
14.97 |
19.64 |
20.21 |
covost2 en_ca |
35.02 |
37.58 |
40.01 |
covost2 en_de |
30.30 |
32.47 |
34.53 |
covost2 es_en |
39.55 |
40.76 |
43.29 |
covost2 ru_en |
44.16 |
45.07 |
48.99 |
covost2 zh_en |
12.16 |
17.98 |
21.37 |
big bench audio |
-- |
76.20 |
82.70 |
🔧 技術詳細
モデルは、事前学習された[Llama3.3 - 70B - Instruct](https://huggingface.co/meta - llama/Llama - 3.3 - 70B - Instruct)バックボーンと、[whisper - large - v3 - turbo](https://huggingface.co/openai/whisper - large - v3 - turbo)のエンコーダー部分を使用しています。マルチモーダルアダプターがトレーニングされ、Whisperエンコーダーが微調整され、Llamaモデルは凍結されています。
知識蒸留損失を使用しており、UltravoxはテキストベースのLlamaバックボーンのロジットに一致するようにトレーニングされています。
📄 ライセンス
このモデルはMITライセンスの下で提供されています。
📦 モデル情報
属性 |
详情 |
モデルタイプ |
マルチモーダル音声LLM |
トレーニングデータ |
ASRデータセットと音声翻訳データセットの混合 |
サポート言語 |
ar, be, bg, bn, cs, cy, da, de, el, en, es, et, fa, fi, fr, gl, hi, hu, it, ja, ka, lt, lv, mk, mr, nl, pl, pt, ro, ru, sk, sl, sr, sv, sw, ta, th, tr, uk, ur, vi, zh |
パイプラインタグ |
audio - text - to - text |
評価指標 |
BLEU |