🚀 Distil-Whisper: 適用於CTranslate2的Distil-Large-v3.5
Distil-Whisper是一個用於自動語音識別的模型,本倉庫包含了 distil-large-v3.5 轉換為 CTranslate2 格式的模型權重。CTranslate2是一個用於Transformer模型的快速推理引擎,也是 Faster-Whisper 包支持的後端。
🚀 快速開始
要在Faster-Whisper中使用該模型,首先需要根據 官方說明 安裝PyPi包。
在這個示例中,我們還將安裝🤗 Datasets,以便從Hugging Face Hub加載一個玩具音頻數據集:
pip install --upgrade pip
pip install --upgrade git+https://github.com/SYSTRAN/faster-whisper datasets[audio]
💻 使用示例
基礎用法
以下代碼片段加載distil-large-v3模型,並對LibriSpeech ASR數據集中的一個示例文件進行推理:
import torch
from faster_whisper import WhisperModel
from datasets import load_dataset
device = "cuda" if torch.cuda.is_available() else "cpu"
compute_type = "float16" if torch.cuda.is_available() else "float32"
model = WhisperModel("distil-whisper/distil-large-v3.5-ct2", device=device, compute_type=compute_type)
dataset = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
sample = dataset[1]["audio"]["path"]
segments, info = model.transcribe(sample, beam_size=5, language="en")
for segment in segments:
print("[%.2fs -> %.2fs] %s" % (segment.start, segment.end, segment.text))
高級用法
要轉錄本地音頻文件,只需將音頻文件的路徑作為 audio
參數傳遞給 transcribe
方法:
segments, info = model.transcribe("audio.mp3", beam_size=5, language="en")
📚 詳細文檔
有關Distil-Large-v3.5模型的更多信息,請參考原始 模型卡片。
📄 許可證
Distil-Whisper繼承了OpenAI的Whisper模型的 MIT許可證。
🔗 引用
如果您使用了這個模型,請考慮引用 Distil-Whisper論文:
@misc{gandhi2023distilwhisper,
title={Distil-Whisper: Robust Knowledge Distillation via Large-Scale Pseudo Labelling},
author={Sanchit Gandhi and Patrick von Platen and Alexander M. Rush},
year={2023},
eprint={2311.00430},
archivePrefix={arXiv},
primaryClass={cs.CL}
}