成文字)
如何用Transformers把多人會議錄音轉(zhuǎn)成文字【免費下載鏈接】transformers Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.項目地址: https://gitcode.com/GitHub_Trending/tra/transformersTransformers 的自動語音識別功能能把一段多人混在一條音軌上的會議錄音轉(zhuǎn)成文字并用時間戳標出每句話在錄音中的位置。想象一下一場三個人開的會錄音里你一句我一句你想快速找到“預算”那段討論從頭聽完不現(xiàn)實轉(zhuǎn)成文字并帶上時間戳后可以直接定位到那幾秒。讀完本文你可以在自己的錄音上跑通這條轉(zhuǎn)寫流程并知道兩個最影響效果的參數(shù)怎么調(diào)。 先看效果輸入是一段多人同時說話的 WAV 會議錄音得到的東西是兩部分一段完整文字轉(zhuǎn)寫外加一個“時間點 句子”的列表可以順著列表找到某句話出現(xiàn)在錄音的哪一秒。下圖里兩個人并排干活、聲音混在一起的場景就是模型要處理的狀態(tài)多路人聲同處一條音軌。安裝與環(huán)境準備環(huán)境假設(shè)Python 3.10Linux 或 macOS。CPU 也能跑有 GPU 會明顯快一些。最短路徑是兩條命令git clone https://gitcode.com/GitHub_Trending/tra/transformers pip install transformers soundfilesoundfile用來讀寫 WAV 文件transformers提供識別管道本身。如果你只想看官方怎么調(diào) ASR 訓練參數(shù)語音識別示例目錄 里有現(xiàn)成腳本可參考。最小可運行示例下面是全文唯一的核心代碼塊保存為transcribe.py即可直接運行from transformers import pipeline import soundfile as sf asr pipeline(automatic-speech-recognition, modelopenai/whisper-large-v3) audio, sr sf.read(meeting_3people.wav) out asr(audio, sampling_ratesr, chunk_length_s30, batch_size8, return_timestampsTrue) print(out[text]) for seg in out.get(chunks, []): print(seg[timestamp], seg[text])逐行看它在做什么pipeline(automatic-speech-recognition)把識別模型和音頻特征提取器拼成一條即用管道首次運行會自動下載模型權(quán)重sf.read讀出音頻數(shù)據(jù)audio和它的真實采樣率sr兩者一起傳給管道采樣信息才不會丟chunk_length_s30讓長錄音按 30 秒一段切著喂給模型避免整段一次加載導致顯存爆掉return_timestampsTrue給每句附加時間段這是你之后“定位原錄音位置”的關(guān)鍵最后循環(huán)打印每個分句的時間戳和文字meeting_3people.wav換成你自己的文件即可兩個最關(guān)鍵的參數(shù)怎么選參數(shù)作用建議值chunk_length_s長錄音切段長度太短句子容易被攔腰截斷太長顯存占用高從 15 到 30 之間試普通會議錄音取 30 通常穩(wěn)妥sampling_rate告訴管道“這段音頻的真實采樣率”傳錯會導致語速、音調(diào)判斷異常永遠傳sf.read返回的sr不要手寫其余參數(shù)保持默認即可。如果錄音明顯偏長且機器配置高可以調(diào)大batch_size提高吞吐反之就調(diào)小。放進真實項目把轉(zhuǎn)寫接進你已有的整理流程思路是先拿到帶時間戳的句子列表再按關(guān)鍵詞掃描命中就打印所在位置。比如for seg in out[chunks]: if 預算 in seg[text]: print(原錄音位置(秒):, seg[timestamp][0])驗收標準很簡單把打印出的時間戳代回原錄音播放對應(yīng)的發(fā)言內(nèi)容和說話順序應(yīng)與轉(zhuǎn)寫一致能對上說明流程已經(jīng)可用下一步再把結(jié)果導出成帶章節(jié)的會議紀要。踩坑速查現(xiàn)象轉(zhuǎn)寫整句亂碼、漏詞多。原因兩人聲音重疊。解法重疊說話是識別里最難的部分預期會差一些盡量用不重疊的片段做驗收?,F(xiàn)象長錄音一跑就顯存不足。原因一次性處理整段。解法調(diào)小chunk_length_s和batch_size分段喂入?,F(xiàn)象聽感像變了調(diào)時間對不上。原因采樣率信息傳錯。解法把sf.read返回的sr原樣傳進管道或先把音頻重采樣到 16kHz 再讀。現(xiàn)象第一次運行特別慢。原因在下載模型。解法換個帶寬好的機器先跑一次把權(quán)重下完之后就走本地緩存。接下來可以做什么如果轉(zhuǎn)寫在你的目標語言上不夠準可以按 語音識別示例文檔 里的流程用自己的標注數(shù)據(jù)繼續(xù)微調(diào) Whisper 模型。若在示例腳本里發(fā)現(xiàn) bug按 貢獻指南 提交 PR 即可倉庫維護者會跟進?!久赓M下載鏈接】transformers Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.項目地址: https://gitcode.com/GitHub_Trending/tra/transformers創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考