
作者 : 五一
自ChatGPT3.5大放异彩以来, 他的开发团队OpenAI被众人推上了神坛. 作为AI海洋的明珠, 这个技术力异常高超的团队这次也给我们带来了不一样的礼物Whisper – 一种语音识别模型. 接下来我们就来看一下它的精彩表现吧.

github地址: https://github.com/openai/whisper
模型源地址: 无, 调用库时再下载模型
现地址(转存地址, 现较快): 无, 调用库时再下载
官方简介: Whisper is a general-purpose speech recognition model. It is trained on a large dataset of diverse audio and is also a multitasking model that can perform multilingual speech recognition, speech translation, and language identification.
简介译文: Whisper 是一种通用的语音识别模型。它是在包含各种音频的大型数据集上训练的,也是一个可以执行多语言语音识别、语音翻译和语言识别的多任务模型。
编程语言: python3
所需配置: 我是用的medium模型, 占用内存大小差不多4GB, 具体如下:
模型 | 参数大小 | 模型名称 | 占用显存 |
tiny | 39M | tiny.en | 1GB |
base | 74M | base.en | 1GB |
small | 244M | small.en | 2GB |
medium | 769M | medium.en | 5GB |
large | 1550M | N/A | 10GB |
具体效果:
汉语音识别: 测试了一首歌曲, 源为屠洪刚先生的《你》(源链接为: https://historyl.top/static/song.m4a), 背景音很重, 基本没有错误, 效果很好; 但是翻译出来的是繁体字, 而且诡异的是歌曲里没有李宗盛, 但是却识别出来李宗盛, 原词曲作者也不是李宗盛, 很奇怪的, 知道的朋友可以在评论区发一下

(上图为转换后的输出)
语音翻译: 感觉不大行, 翻译了一大堆重复的东西出来
语言识别: 很准确, 正确输出zh(汉语)

安装配置过程:
# ubuntu环境 python3.10.6 个人感觉这些模型对环境的要求比较苛刻, 尽可能保持一致, 不然可能会出一些意想不到的问题
#安装第三方库
pip install -U openai-whisper
# 安装ffmpeg(如果已经有的不用安装)
sudo apt update && sudo apt install ffmpeg
# 确认安装版本 不报错则是安装成功(没有红色)
ffmpeg -version
# 如果安装失败No module named'setuptools_rust',则需要安装setuptools_rust
pip install setuptools-rust
# 进入Python环境
python
# 语音识别, 进入环境后输入
import whisper
model = whisper.load_model("medium") # base为上面的模型, 这里调用模型后会自动下载, 所以第一次调用的时间会长一些
result = model.transcribe("song.m4a") # 语音所在目录
print(result["text"]) # 输出语音内容
==> '作詞 李宗盛 作曲 李宗盛你從天而降的你 落在我的馬背上如雨的模樣 清水般的目光 一絲塵囂讓我心發燙無頭也不回的你 展開你一雙翅膀就因這方向 方向在前方 一聲嘆息將我一生變了你在那萬人中 要感受那萬丈榮光看不見你的眼睛 是否會藏著淚光我沒有那種力量 嚮往也總不能忘只等到漆黑夜晚 迎一回那曾經心愛的姑娘你從天而降的你 落在我的馬背上如雨的模樣 清水般的目光 一絲塵囂讓我心發燙無頭也不回的你 展開你一雙翅膀就因這方向 方向在前方 一聲嘆息將我一生變了你在那萬人中 要感受那萬丈榮光看不見你的眼睛 是否會藏著淚光我沒有那種力量 嚮往也總不能忘只等到漆黑夜晚 迎一回那曾經心愛的姑娘Zither Harp'
# 语言识别
import whisper
model = whisper.load_model("medium")
audio = whisper.load_audio("song.m4a")
audio = whisper.pad_or_trim(audio)
# 模型
mel = whisper.log_mel_spectrogram(audio).to(model.device)
# 输出语言
_, probs = model.detect_language(mel)
print(f"Detected language: {max(probs, key=probs.get)}")
总结: 整体非常不错, 准确率非常高, 达到了市面上的产品要求. 但是不知道是否电脑配置的问题, 时长4分钟, 大小3MB的音频转换需要25秒.
总体的安装难度不算高, 将来自己接入api做一个语音识别助手或者笔记助手也是非常棒的, 反正我是觉得小米自带的语音翻译不如这个. 各位有兴趣的领导可以去试验一下, 一定不会让各位失望的.
这一次的测评就到这里啦, 有什么模型想要我去看的, 也可以发评论或者私信.
欢迎免费使用GPT对话,感受ChatGPT的魅力!ChatGPT-GPT爱好者论坛 (gptluntan.com)
长按扫描二维码进群领资源
