AIGC: 关于ChatGPT中基于Whisper模型实现音频转文本

概述

  • 到目前,GPT只能去接收文本的输入,但是在现实的生活当中,会有语音的需求
  • GPT也有相关的能力接入,我们就需要一个能够将语音内容转换成文本的能力
    • 当然其他第三方的软件或者接口也是支持这个功能
    • 在 Open AI 有一个语音转文本的模型叫做 whisper
  • 在 Open AI 它的官方网站当中,在左侧可以看到有一个 Audio 关于音频的API
  • 可以看到它的参数
    • file 参数,必选,file类型,支持 mp3,mp4,mpeg,mpga,m4a,wav,or webm.
    • model 参数,必选,string 类型,目前仅支持 whisper-1
    • prompt 参数,可选,string 类型
    • response_format 参数,可选,string 类型
    • temperature 参数,可选,number 类型 默认 0
    • language 参数,可选,string 类型
    • ...
  • 与其他的音频转文本的方法或者工具不同的是 Open AI 允许我们去输入 Prompt
    • 这个 Prompt 就是对于我们音频的一个介绍
    • 举个例子,我们的音频是计算机相关的论文,或者法学,医学相关的论文
    • 在这些论文当中,可能会有很多的特有的专业的名词
    • 如果我们按照正常行的音频翻译的话,有可能得到的并不是我们想要的结果
    • 但是 Open AI 不一样,我们在进行 whisper 调用的时候,可以去向它发送 Prompt
    • 这里 Prompt 就是对音频的介绍,我们可以清晰的告诉 GPT,我们的音频是哪个领域,哪个方向
    • 然后研究是的是什么的内容等,这样可辅助GPT对音频的内容进行分析转换成较准确的相关的文本,提升转换的质量
  • response_format 是对于输出进行一个格式化,默认是 Json
  • 这是和音频相关的接口

代码

whisper_example.py

py 复制代码
# -*- coding: utf-8
import os
import openai

openai.api_key = "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"
openai.proxy="http://127.0.0.1:7890"

audio_file = open("test.mp3", "rb")
transcript = openai.Audio.transcribe("whisper-1", audio_file, prompt=r"这是一篇机器学习相关的公开课")

print(transcript['text'])

分析

  • 比如,test.mp3 内容是一段机器学习的英文教学章节
  • 整体的代码看上去非常的简单,只需要两步就可以了
  • 接下来执行一下我们刚刚实现的python代码
  • 可以看到音频已经转换成了文本,但是是英文,有时候我们希望它是中文
  • 这里有几个方案
    • 方案一,通过其他的翻译软件去进行翻译
    • 方案二,可以调用GPT的接口, 通过GBT3.5的模型, 对文章去做一个翻译
      • 把这篇文章作为 Prompt 传递给它,由GPT去做翻译
    • 方案三,利用 whisper 去做一个简单的处理
      • 它的输入参数中,有一个 language的输入参数,这里指音频文件输入的语言
      • 这里并不代表我们设置之后会以对应的形式对我们进行输出
      • 我们想要去输出中文怎么办呢?其实,有一个非常简便的方法
      • 在调用 whisper 模型的时候,可以去传入,Prompt, 告诉它这是一篇机器学习相关的公开课
      • 我们通过中文的描述去构建了一个Prompt告诉whisper
      • 由于我们的 Prompt 是输入的中文的描述, 最终whisper给我们返回的结果也是中文的
  • 以上是通过GPT的 whisper 模型将音频转换成文本的一个简单的示例代码
相关推荐
AlbertZein5 天前
Step-5-Preview 上手实测:3D 游戏、金融分析、网页设计一次跑完
人工智能·aigc
AIGCmagic社区5 天前
文档智能专题:小模型后训练怎么选样本?PaddleOCR-VL-1.6按三类弱点挖掘
人工智能·aigc·文档智能
AIGCmagic社区5 天前
文档智能专题:HunyuanOCR-1.5用DFlash把整页解码压到1.4秒
人工智能·aigc·文档智能
小虎AI生活5 天前
腾讯开源了一个项目,让 AI 直接用你已经登录好的浏览器
aigc·ai编程
plainGeekDev5 天前
Harness 实战:用 Android 登录模块搭一套可靠的 Agent 开发环境
aigc·ai编程·claude
全栈弄潮儿5 天前
周复盘:把 AI 当实习生,还是当工程搭档?
aigc·openai·ai编程
程序员清风5 天前
系统架构设计:模型服务、业务服务与知识库如何拆分
人工智能·ai·架构·aigc
倔强的石头_5 天前
我给 WorkBuddy 设了个闹钟:每天上午十点半,一份 AI 日报自动送进微信
aigc
李白客5 天前
向量数据库怎么选:RAG 项目最该比较的 8 个维度(深度拆解)
数据库·aigc
へ蟲児.5 天前
国内适合设计师的AIGC学习平台哪个好?能贴合商业设计实战
aigc