it编程 > 软件设计 > 算法

语音识别神器 Whisper 的几个小技巧

178人参与 2024-08-06 算法

1、前言

openai开源的免费离线语音识别神器whisper,我在安装使用后发现一些问题,于是搜了半天最终汇总了这几个主要的小技巧,希望对大家有帮助,不用满世界再搜了。

我主要用于中文的识别,所以就只说中文相关的了,我的环境是:

具体怎么正常使用或者怎么安装,官方md很详细了,不行再搜搜也就有了,我就没记录。

官方github:github - openai/whisper: robust speech recognition via large-scale weak supervision

2、模型选哪个

        whisper提供了5个模型,见下表:

        每个模型具体要求都在表里了,我试过前4个,对于中文识别,我的体会是,必须得medium,前3个中文识别有点差。medium足够用,虽然也会有错误的情况,但不多了。我推测large肯定会更上一层楼,然而large有点大且显存占得大就没下载。

        所以,medium性价比最高。

3、whisper 加标点符号的问题

        我使用时,发现输出的文件里中文完全没有标点符号哎,这可咋整 ,找了半天程序里也没这参数啊。不断大海捞针地搜了搜,发现有篇文章写了个方法说要通过prompt,告诉程序个例子。于是通过测试,总结了一个成功的方法是这样的:

        运行时加这个参数 initial_prompt,它的值要写上对当前识别音频的内容总结(自己提前知道),最后还要加上句号,效果最佳。比如我要识别一段会议的录音,所以这个参数就这么写:

        initial_prompt = "这是一段会议记录。"

        哦对了,我是在程序里调接口用,如果用命令号,就直接加 --initial_prompt "这是一段会议记录。" (应该是这么写,不对的话再调整调整格式)

        于是标点符号的问题解决了。

4、whisper  中文简体繁体字的问题

        标点符号问题解决了,结果有时候识别出来的内容突然有一段变成了繁体字,于是又开始一顿搜寻,最终解决方法还是要在initial_prompt里给出例子。

        就是要在prompt里加上这句:“以下是普通话的句子。”,注意,这里要全部用简体中文写,程序就造了。

        所以如果想输出繁体字,那这句话就用繁体写:“以下是普通話的句子。

 5、总结

        综述所述,最后就固定一个prompt的写法,就能解决这俩问题。

        initial_prompt = "以下是普通话的句子,这是一段会议记录。"

        祝大家成功!

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

【语音识别】声学建模中基于树的状态绑定

08-06

OpenCV 4基础篇| OpenCV图像的拆分和合并

08-06

视频号官方建议的直播间设备与参数

08-06

图像边缘检测:技术原理与算法解析

08-06

关于-RTSP推流方案, ffmpeg 视频转 m3u8

08-06

【CV】opencv特征匹配算法

08-06

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论