ai智能语音聊天系统 OpenAI的人工智能语音识别模型Whisper详解及使用

默认分类1年前 (2023)发布 admin
4,085 0
ChatGPT国内版

1 介绍

拥有语言模型的公司,开源了 自动语音识别系统, 强调 的语音识别能力已达到人类水准。

是一个通用的语音识别模型,它使用了大量的多语言和多任务的监督数据来训练,能够在英语语音识别上达到接近人类水平的鲁棒性和准确性。还可以进行多语言语音识别、语音翻译和语言识别等任务。的架构是一个简单的端到端方法,采用了编码器-解码器的模型,将输入的音频转换为对应的文本序列,并根据特殊的标记来指定不同的任务。

是一个自动语音识别(ASR, )系统, 通过从网络上收集了 68 万小时的多语言(98 种语言)和多任务()监督数据对 进行了训练。 认为使用这样一个庞大而多样的数据集,可以提高对口音、背景噪音和技术术语的识别能力。除了可以用于语音识别, 还能实现多种语言的转录,以及将这些语言翻译成英语。 开放模型和推理代码,希望开发者可以将 作为建立有用的应用程序和进一步研究语音处理技术的基础。

代码地址:代码地址

2 模型

执行操作的过程:

输入的音频被分割成 30 秒的小段、转换为 log-Mel 频谱图,然后传递到编码器。解码器经过训练以预测相应的文字说明,并与特殊的标记进行混合,这些标记指导单一模型执行诸如语言识别、短语级别的时间戳、多语言语音转录和语音翻译等任务。

相比目前市面上的其他现有方法,它们通常使用较小的、更紧密配对的「音频 – 文本」训练数据集,或使用广泛但无监督的音频预训练集。因为 是在一个大型和多样化的数据集上训练的,而没有针对任何特定的数据集进行微调,虽然它没有击败专攻 性能的模型(著名的语音识别基准测试),然而在许多不同的数据集上测量 的 Zero-shot(不需要对新数据集重新训练,就能得到很好的结果)性能时,研究人员发现它比那些模型要稳健得多,犯的错误要少 50%。

ai智能语音聊天系统 OpenAI的人工智能语音识别模型Whisper详解及使用

3 的多种模型

有五种模型尺寸,提供速度和准确性的平衡,其中-only模型提供了四种选择。下面是可用模型的名称、大致内存需求和相对速度。

模型的官方下载地址:

"tiny.en": "https://openaipublic.azureedge.net/main/whisper/models/d3dd57d32accea0b295c96e26691aa14d8822fac7d9d27d5dc00b4ca2826dd03/tiny.en.pt",
"tiny": "https://openaipublic.azureedge.net/main/whisper/models/65147644a518d12f04e32d6f3b26facc3f8dd46e5390956a9424a650c0ce22b9/tiny.pt",
"base.en": "https://openaipublic.azureedge.net/main/whisper/models/25a8566e1d0c1e2231d1c762132cd20e0f96a85d16145c3a00adf5d1ac670ead/base.en.pt",
"base": "https://openaipublic.azureedge.net/main/whisper/models/ed3a0b6b1c0edf879ad9b11b1af5a0e6ab5db9205f891f668f8b0e6c6326e34e/base.pt",
"small.en": "https://openaipublic.azureedge.net/main/whisper/models/f953ad0fd29cacd07d5a9eda5624af0f6bcf2258be67c92b79389873d91e0872/small.en.pt",
"small": "https://openaipublic.azureedge.net/main/whisper/models/9ecf779972d90ba49c06d968637d720dd632c55bbf19d441fb42bf17a411e794/small.pt",
"medium.en": "https://openaipublic.azureedge.net/main/whisper/models/d7440d1dc186f76616474e0ff0b3b6b879abc9d1a4926b7adfa41db2d497ab4f/medium.en.pt",
"medium": "https://openaipublic.azureedge.net/main/whisper/models/345ae4da62f9b3d59415adc60127b97c714f32e89e936602e85993674d08dcb1/medium.pt",
"large-v1": "https://openaipublic.azureedge.net/main/whisper/models/e4b87e7e0bf463eb8e6956e646f1e277e901512310def2c24bf0e11bd3c28e9a/large-v1.pt",
"large-v2": "https://openaipublic.azureedge.net/main/whisper/models/81f7c96c852ee8fc832187b0132e569d6c3065a3252ed18e56effd0b6a73e524/large-v2.pt",
"large": "https://openaipublic.azureedge.net/main/whisper/models/81f7c96c852ee8fc832187b0132e569d6c3065a3252ed18e56effd0b6a73e524/large-v2.pt",

4 环境构建及运行 4.1 conda环境安装

参见:安装

4.2 环境构建

conda create -n whisper python==3.9
conda activate whisper
pip install openai-whisper
conda install ffmpeg
pip install setuptools-rust

4.3 命令行使用

ai智能语音聊天系统 OpenAI的人工智能语音识别模型Whisper详解及使用

whisper /opt/000001.wav --model base

输出内容如下:

[00:00.000 --> 00:02.560] 人工智能识别系统。

执行命令时,会自动进行模型下载,自动下载模型存储的路径如下:

~/.cache/whisper

也可以通过命令行制定本地模型运行:

Whisper /opt/000001.wav --model base --model_dir /opt/models --language Chinese

支持的文件格式:m4a、mp3、mp4、mpeg、mpga、wav、webm

4.4 在代码中使用

import whisper
model = whisper.load_model("base")
result = model.transcribe("/opt/000001.wav")
print(result["text"])

© 版权声明
广告也精彩

相关文章

暂无评论

暂无评论...