AI News HubLIVE
站內改寫1 分鐘閱讀

如何使用NVIDIA Canary-1B-v2進行ASR、翻譯和自動SRT字幕導出(Python)

本教程使用NVIDIA Canary-1B-v2構建多語言ASR和語音翻譯流水線,涵蓋環境搭建、音頻預處理、英語ASR、多語言翻譯、時間戳提取、SRT字幕導出、長音頻轉錄、批量處理及性能基準測試。

來源MarkTechPost作者: Sana Hassan

在本教程中,我們將使用NVIDIA Canary-1B-v2構建一個完整的語音識別與翻譯工作流。首先,在GPU運行時中安裝所需的系統包、NeMo ASR工具包、音頻處理庫以及兼容的NumPy和SciPy版本。隨後,加載Canary模型至GPU設備以便高效推理。

我們通過librosa將音頻轉換為16 kHz單聲道格式,然後對英文音頻執行ASR(自動語音識別),並獲得文本轉錄。接着,利用Canary的多語言翻譯能力,將同一段英文語音翻譯為法語、德語、西班牙語和意大利語。模型不僅輸出翻譯文本,還能生成詞級和段級時間戳,我們可以藉此精確對齊文本與音頻。

為了生成字幕,我們將帶時間戳的翻譯結果轉換為SRT格式。使用模型中提取的段級時間戳,以序號 時間戳 文本的格式生成標準字幕文件。教程還演示瞭如何對長音頻(通過拼接樣本生成)進行轉錄,以及如何使用批次大小為2的批量處理加速多個音頻文件。最後,通過比較音頻時長與計算耗時,計算實時因子(RTFx)來評估模型推理速度。

完成以上步驟後,我們就擁有一個完整的、可複用的多語言ASR與語音翻譯流水線。它可以輕鬆適配真實音頻文件、字幕生成和大規模轉錄實驗。如需進一步擴展,可自定義上傳音頻、增加更多語言、調整批次大小或集成到生產級音頻處理流程中。

完整代碼和筆記本可在文中鏈接獲取。歡迎關注我們的Twitter、加入150k+的ML SubReddit或訂閲Newsletter。