将音频转录为文本
本教程系列将涵盖txtai的主要用例,这是一个 AI 驱动的语义搜索平台。该系列的每章都有相关代码,可也可以在colab 中使用。
colab 地址
本文介绍了使用 Hugging Face 提供的模型将音频文件转录为文本的过程。
安装依赖
安装txtai
和所有依赖项。由于本文使用的是可选管道,因此我们需要安装管道 extras 包。
pip install txtai[pipeline]
# Get test data
wget -N https://github.com/neuml/txtai/releases/download/v2.0.0/tests.tar.gz
tar -xvzf tests.tar.gz
创建转录实例
Transcription 实例是将音频转录为文本的主要入口点。管道将转录音频抽象为一行调用!
管道执行逻辑将音频文件读入内存,通过机器学习模型运行数据并将结果输出到文本。
from txtai.pipeline import Transcription
# Create transcription model
transcribe = Transcription("facebook/wav2vec2-large-960h")
将音频转录为文本
下面的示例显示了如何将音频文件列表转录为文本。让我们将音频转录为文本并查看每个结果。
from IPython.display import Audio, display
files = ["Beijing_mobilises.wav", "Canadas_last_fully.wav", "Maine_man_wins_1_mil.wav", "Make_huge_profits.wav", "The_National_Park.wav", "US_tops_5_million.wav"]
files = ["txtai/%s" % x for x in files]
for x, text in enumerate(transcribe(files)):
display(Audio(files[x]))
print(text)
print()
Baging mobilizes invasion craft along coast as tiwan tensions escalates
Canada's last fully intact ice shelf has suddenly collapsed forming a manhatten sized ice berg
Main man wins from lottery ticket
Make huge profits without working make up to one hundred thousand dollars a day
National park service warns against sacrificing slower friends in a bare attack
U s virus cases top a million
总的来说,结果是可靠的。每个结果在语音上听起来都像音频。Hugging Face 模型有一个开放任务,即使用语言模型解码模型输出并进一步提高结果准确性。
留意那些更新的模型!
参考
https://dev.to/neuml/tutorial-series-on-txtai-ibg