🚀 音声認識モデル「whisper-large-v3-russian-ties-podlodka」
このモデルは、TIESマージ手法を用いて、2つのWhisperモデルをマージしたもので、ロシア語の音声認識に特化しています。
🚀 クイックスタート
このモデルは、TIESマージ手法を用いてマージされました。以下にマージの設定を示します。
method: ties
parameters:
ties_density: 0.9
encoder_weights:
- 0.8
- 0.2
decoder_weights:
- 0.2
- 0.8
models:
model_a: "/mnt/cloud/llm/whisper/whisper-large-v3-russian"
model_b: "/mnt/cloud/llm/whisper/whisper-large-v3-ru-podlodka"
output_dir: "/mnt/cloud/llm/whisper/whisper-large-v3-russian-ties-podlodka"
✨ 主な機能
- ロシア語の音声認識に特化したモデルです。
- TIESマージ手法を用いて、2つのモデルを最適にマージしています。
📦 インストール
このモデルはtransformers
ライブラリを使用しています。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
電話通話の音声を処理する場合、ASRを実行する前にレコードを前処理し、音量を調整することを強くおすすめします。例えば、以下のようにします。
sox record.wav -r 8000 record-normalized.wav norm -0.5 compand 0.3,1 -90,-90,-70,-50,-40,-15,0,0 -7 0 0.15
その後、以下のようなASRコードを実行します。
import torch
from transformers import WhisperForConditionalGeneration, WhisperProcessor, pipeline
torch_dtype = torch.bfloat16
device = 'cpu'
if torch.cuda.is_available():
device = 'cuda'
elif torch.backends.mps.is_available():
device = 'mps'
setattr(torch.distributed, "is_initialized", lambda : False)
device = torch.device(device)
whisper = WhisperForConditionalGeneration.from_pretrained(
"antony66/whisper-large-v3-russian", torch_dtype=torch_dtype, low_cpu_mem_usage=True, use_safetensors=True,
)
processor = WhisperProcessor.from_pretrained("antony66/whisper-large-v3-russian")
asr_pipeline = pipeline(
"automatic-speech-recognition",
model=whisper,
tokenizer=processor.tokenizer,
feature_extractor=processor.feature_extractor,
max_new_tokens=256,
chunk_length_s=30,
batch_size=16,
return_timestamps=True,
torch_dtype=torch_dtype,
device=device,
)
from io import BytesIO
wav = BytesIO()
with open('record-normalized.wav', 'rb') as f:
wav.write(f.read())
wav.seek(0)
asr = asr_pipeline(wav, generate_kwargs={"language": "russian", "max_new_tokens": 256}, return_timestamps=False)
print(asr['text'])
📚 ドキュメント
シンプルなAPIサーバー
このモデルは、シンプルなOpenAI互換APIサーバーと共に使用できます。詳細はこちらを参照してください: https://github.com/kreolsky/whisper-api-server/
開発中
このモデルは現在開発中です。目標は、電話通話の音声認識にできる限り最適化することです。もし貢献したい場合や、良いデータセットを持っている場合は、ぜひご連絡ください。ご協力をいただけると大変助かります。
📄 ライセンス
このREADMEにはライセンス情報が記載されていません。
📦 モデル情報
属性 |
詳情 |
ベースモデル |
antony66/whisper-large-v3-russian、bond005/whisper-large-v3-ru-podlodka |
言語 |
ru |
ライブラリ名 |
transformers |
タグ |
asr、whisper、russian、mergekit、merge |
データセット |
mozilla-foundation/common_voice_17_0、bond005/taiga_speech_v2、bond005/podlodka_speech、bond005/rulibrispeech |
評価指標 |
wer |