文字完整指南)
15 分鐘上手 faster-whisper4 倍速語音轉(zhuǎn)文字完整指南【免費下載鏈接】faster-whisperFaster Whisper transcription with CTranslate2項目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper如果你要把會議錄音、課程音頻批量轉(zhuǎn)成帶時間戳的文字faster-whisper 值得看一眼它用 CTranslate2 引擎重寫了 OpenAI Whisper在相同準(zhǔn)確率下速度最高快 4 倍還支持 99 種語言自動識別。它憑什么值得你花幾分鐘速度快且快得有數(shù)據(jù)官方基準(zhǔn)里GPU 上 13 分鐘音頻用 large-v2 模型faster-whisper 跑 1 分 03 秒openai/whisper 要 2 分 23 秒再開batch_size8批處理只要 17 秒。CPU 上 int8 量化后small 模型 13 分鐘音頻 51 秒跑完。省內(nèi)存同樣 GPU 場景int8 量化把顯存占用從 4525MB 壓到 2926MB小顯存卡也能跑大模型。免裝 FFmpeg和 openai/whisper 不同它用 PyAV 解碼音頻FFmpeg 的庫直接打包在 pip 依賴里裝好就能讀 mp3、m4a、wav 等各種格式。裝好它一條命令跑通環(huán)境要求Python 3.9 或更高純 CPU 即可運行有 NVIDIA GPU 則需 CUDA 12 cuBLAS cuDNN 9不需要單獨安裝 FFmpeg安裝只需一條命令# 一條命令安裝 faster-whisper會自動帶上 CTranslate2、PyAV 等依賴 pip install faster-whisper首次按模型名如large-v3加載時會自動從 Hugging Face 下載對應(yīng)的 CTranslate2 模型之后就有本地緩存了。挑對參數(shù)使用場景 → 推薦配置使用場景模型 (model_size)設(shè)備 (device)精度 (compute_type)其他建議快速出稿、實時性優(yōu)先tiny / smallcpuint8準(zhǔn)確率換速度適合草稿日常通用轉(zhuǎn)錄small / mediumcudafloat16平衡之選最高精度、長音頻large-v3cudafloat16顯存吃緊時換 int8_float16小顯存 GPU≤8GBlarge-v3cudaint8_float16顯存約為 fp16 的 2/3追求更快的高精度turbo即 large-v3-turbocudafloat16專為該庫優(yōu)化見下文批處理批量處理多個長音頻turbocudafloat16用 BatchedInferencePipeline batch_size另外兩個高頻開關(guān)比換模型見效更快vad_filterTrue啟用內(nèi)置的 Silero VAD自動裁掉超過 2 秒的靜音段長音頻轉(zhuǎn)錄明顯提速還能減少靜默處的幻覺文字。word_timestampsTrue輸出詞級時間戳做字幕、高亮定位時要用。最常用的調(diào)用方式長這樣from faster_whisper import WhisperModel # 在 GPU 上用 FP16 加載 large-v3 模型 model WhisperModel(large-v3, devicecuda, compute_typefloat16) # 轉(zhuǎn)錄音頻開啟 VAD 靜音過濾返回帶時間戳的分段結(jié)果 segments, info model.transcribe(meeting.mp3, beam_size5, vad_filterTrue) print(f檢測到的語言{info.language}概率 {info.language_probability:.2f}) for seg in segments: # 注意segments 是生成器必須遍歷才會真正開始轉(zhuǎn)錄 print(f[{seg.start:.2f}s - {seg.end:.2f}s] {seg.text})注意segments是生成器不調(diào)用for或list()它不會開始干活這是新手最容易卡住的一點。把它用進你的工作流周一上午一場 1 小時的產(chǎn)品評審會。會后錄音直接丟給腳本用 small 模型加vad_filterTrue幾分鐘后拿到帶時間戳的逐段文字語言自動檢測成中文把時間戳去掉標(biāo)點整理一下就是會議紀要的底稿。周三下午處理一整個學(xué)期的課程錄音。十幾門課、每門幾小時單條跑太慢。用BatchedInferencePipeline包一層WhisperModel設(shè)batch_size16GPU 上吞吐量能拉開一個量級跑完把結(jié)果寫成 SRT 或 LRC 字幕文件直接掛到視頻上。周五晚上給播客加雙語字幕。開啟word_timestampsTrue拿到每個詞的起止時間按詞做卡拉 OK 式逐詞高亮字幕遇到專業(yè)術(shù)語識別不準(zhǔn)就在initial_prompt里塞一段含這些詞的文本來引導(dǎo)。踩坑先讀我現(xiàn)象原因解法GPU 上加載報 cuBLAS/cuDNN 相關(guān)錯誤最新版 ctranslate2 只支持 CUDA 12 cuDNN 9老環(huán)境降級CUDA 11 裝ctranslate23.24.0CUDA 12 cuDNN 8 裝ctranslate24.4.0顯存不足 / OOMFP16 大模型顯存占用高換int8_float16或 CPU 的int8或換 small/medium 模型轉(zhuǎn)錄速度上不去CPU 或低配卡單條逐段推理利用率低長音頻用BatchedInferencePipelinebatch_sizeCPU 上可設(shè)OMP_NUM_THREADS控制線程數(shù)靜默段出現(xiàn)重復(fù)、無意義的幻覺文字模型在沒聲音處硬編內(nèi)容開啟vad_filterTrue必要時調(diào)vad_parameters里的min_silence_duration_ms調(diào)用 transcribe 后像沒反應(yīng)返回的 segments 是生成器遍歷或list(segments)才會真正執(zhí)行轉(zhuǎn)錄想對比速度但結(jié)果不一致各家默認 beam_size 不同這里默認是 5對比時固定 beam_size、線程數(shù)、WER 相近的配置再比時間再往前一步參數(shù)不夠用時直接看WhisperModel.transcribe的完整簽名hotwords、temperature、condition_on_previous_text等選項都在里面faster_whisper/transcribe.py 是最全的參考。調(diào)靜音過濾行為可以看 faster_whisper/vad.py想確認支持哪些語言代碼faster_whisper/tokenizer.py 里的語言表是最準(zhǔn)的。此外倉庫還自帶 benchmark/ 下的 WER 與速度基準(zhǔn)腳本以及把自有 Whisper 權(quán)重包括微調(diào)過的轉(zhuǎn)成 CTranslate2 格式的轉(zhuǎn)換入口做領(lǐng)域定制模型時會用到。收尾現(xiàn)在就裝好它拿一段手頭最煩的錄音試跑一次比讀十篇評測都有數(shù)。源碼入口在 faster_whisper/測試用例參考 tests/更多細節(jié)以官方文檔為準(zhǔn)?!久赓M下載鏈接】faster-whisperFaster Whisper transcription with CTranslate2項目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考