🚀 SpeechLLM
SpeechLLMは、会話における話者の発話のメタデータを予測するように訓練されたマルチモーダル大規模言語モデル(LLM)です。speechllm - 2Bモデルは、HubertXオーディオエンコーダとTinyLlama LLMに基づいています。このモデルは以下の情報を予測します。
- SpeechActivity : 音声信号に音声が含まれているかどうか (True/False)
- Transcript : 音声の自動音声認識(ASR)の文字起こし
- Gender : 話者の性別 (Female/Male)
- Age : 話者の年齢 (Young/Middle - Age/Senior)
- Accent : 話者のアクセント (Africa/America/Celtic/Europe/Oceania/South - Asia/South - East - Asia)
- Emotion : 話者の感情 (Happy/Sad/Anger/Neutral/Frustrated)
🚀 クイックスタート
SpeechLLMは会話における話者の発話のメタデータを予測するマルチモーダル大規模言語モデルです。このモデルは、音声信号の解析や話者の属性予測など、多様なタスクに役立ちます。
✨ 主な機能
- 音声信号に音声が含まれているかどうかを判定します。
- 音声の文字起こしを行います。
- 話者の性別、年齢、アクセント、感情を予測します。
📦 インストール
このセクションでは、モデルを直接Hugging Faceからロードする方法を示します。
from transformers import AutoModel
model = AutoModel.from_pretrained("skit-ai/speechllm-2B", trust_remote_code=True)
💻 使用例
基本的な使用法
from transformers import AutoModel
model = AutoModel.from_pretrained("skit-ai/speechllm-2B", trust_remote_code=True)
model.generate_meta(
audio_path="path-to-audio.wav",
audio_tensor=torchaudio.load("path-to-audio.wav")[1],
instruction="Give me the following information about the audio [SpeechActivity, Transcript, Gender, Emotion, Age, Accent]",
max_new_tokens=500,
return_special_tokens=False
)
'''
{
"SpeechActivity" : "True",
"Transcript": "Yes, I got it. I'll make the payment now.",
"Gender": "Female",
"Emotion": "Neutral",
"Age": "Young",
"Accent" : "America",
}
'''
このコードでは、モデルをHugging Faceからロードし、音声ファイルのメタデータを生成しています。
高度な使用法
モデルをGoogle Colabで試すことができます。また、SpeechLLMに関するブログ記事も参照してください。
📚 ドキュメント
モデルの詳細
チェックポイントの結果
データセット |
タイプ |
単語誤り率 |
性別の正解率 |
年齢の正解率 |
アクセントの正解率 |
librispeech - test - clean |
読み上げ音声 |
6.73 |
0.9496 |
|
|
librispeech - test - other |
読み上げ音声 |
9.13 |
0.9217 |
|
|
CommonVoice test |
多様なアクセント、年齢 |
25.66 |
0.8680 |
0.6041 |
0.6959 |
📄 ライセンス
このプロジェクトはApache 2.0ライセンスの下でライセンスされています。 ライセンスの詳細
引用
@misc{Rajaa_SpeechLLM_Multi-Modal_LLM,
author = {Rajaa, Shangeth and Tushar, Abhinav},
title = {{SpeechLLM: Multi-Modal LLM for Speech Understanding}},
url = {https://github.com/skit-ai/SpeechLLM}
}