whisper之初步使用记录

文章目录

前言

一、whisper是什么?

二、使用步骤

1.安装

2.python调用

3.识别效果评估

4.一点封装

5.参考链接

总结


前言

随着AI大模型的不断发展,语音识别等周边内容也再次引发关注,通过语音转文字再与大模型交互,从而实现语音与大模型交互。

今天我们介绍下语音识别领域的顶级选手whisper。


一、whisper是什么?

whisper是openai开源的语音识别模型,也是使用了Transformer架构。

openai宣称whisper的语音识别能力已经到了人类的水平。

接下来我们参考Github结合其他技术博客内容,实操下whisper的使用。

二、使用步骤

1.安装

1)pip安装whisper

pip install -U openai-whisper

2)安装ffmpeg

下载地址:ffmpeg下载地址https://github.com/BtbN/FFmpeg-Builds/releases

选择对应操作系统的安装包即可

Linux系统也可以直接命令方式安装。

对于Windows系统,下载到本地后解压缩即可,但是需要设置环境变量,路径bin(就是在这个路径下有ffmpeg.exe)

特意说明:whisper内部其实调用了ffmpeg,使用的就是cmd形式,应该是将音频文件转为流式以及按时间段分成小段音频(最终识别结果就是按时间段分开的)

2.python调用

python 复制代码
import whisper

model = whisper.load_model("base")
result = model.transcribe("audio.mp3")
print(result["text"])

第一次运行的时候,首先需要下载模型文件,base属于比较小尺寸的模型,还有small、large等。

另外如果可能报错,可以尝试重启下开发工具再试,可能就好了(我就遇到这种问题,可能没有重启开发工具,找不到ffmpeg)

3.识别效果评估

我使用了一个11分钟的会议录音文件测试。CPU环境。

使用base模型,用时约2分钟,质量还行

使用small模型,用时约4分钟,质量比base模型的好一些,但是有些反而不如base模型的。

整体上,还行吧。

4.一点封装

由于不同大小的模型识别速度上还是差不少,因此还要结合实际情况选择使用哪个模型,基于这个基础对调用做了一点封装

python 复制代码
import whisper
from datetime import datetime

# 模型根路径
model_root="E:\Models\whisper"

class whisper_utils:

    # model_name="base"
    # model_name="small"

    def __init__(self,model_name="base"):
        self.model = whisper.load_model(name=model_name,download_root=model_root)

    def audio_to_txt(self,audio_file: str):

        now = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        print(f"{now} 开始识别...")
        result = self.model.transcribe(audio_file)

        now = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        print(f"{now} 识别完成")

        return result

这里我把模型路径自己设置了下。

和多数模型文件一样,默认情况下,whisper模型也会下载到C盘Users下当前用户文件夹的.cache下,很容易导致C盘塞满。

5.参考链接

openai/whisper: Robust Speech Recognition via Large-Scale Weak Supervision (github.com)https://github.com/openai/whisper


总结

本篇主要介绍了whisper的安装、调用、识别效果评估以及一点调用封装。希望可以帮助正好有需要的小伙伴。

相关推荐
爱看书的小沐3 小时前
【小沐学AI】Python实现语音识别(faster-whisper-webui)
人工智能·python·ai·nlp·whisper·语音识别·fast-whisper
九芯电子1 天前
NRK3301语音识别芯片在垃圾桶上的应用案例解析
人工智能·语音识别
urhero1 天前
语音识别应用Python示例
人工智能·python·语音识别
爱看书的小沐3 天前
【小沐学AI】Python实现语音识别(whisper+HuggingFace)
人工智能·python·ai·nlp·whisper·语音识别·huggingface
月巴月巴白勺合鸟月半4 天前
基于语音识别的智能电子病历(二)苹果端的语音接入
人工智能·语音识别
我就是全世界4 天前
深入了解语音识别:Distil-Whisper
macos·whisper·xcode
小白橘颂4 天前
STM32第九课:DHT11温湿度传感器
stm32·单片机·嵌入式硬件·mcu·物联网·51单片机·语音识别
前端 小吕5 天前
node.js 离线实时语音识别
人工智能·node.js·语音识别
linzhiji5 天前
whisper get_writer srt_writer 参数说明
前端·python·whisper