您的位置:首页 > 科技 > 能源 > 重庆建筑培训网_苏州制作企业网站的_百度指数数据分析报告_aso关键词优化工具

重庆建筑培训网_苏州制作企业网站的_百度指数数据分析报告_aso关键词优化工具

2024/11/19 12:31:29 来源:https://blog.csdn.net/zhouzongxin94/article/details/143177850  浏览:    关键词:重庆建筑培训网_苏州制作企业网站的_百度指数数据分析报告_aso关键词优化工具
重庆建筑培训网_苏州制作企业网站的_百度指数数据分析报告_aso关键词优化工具

前言

在人工智能的浪潮中,语音识别技术正逐渐成为我们日常生活中不可或缺的一部分。随着 OpenAI 的 Whisper 模型的推出,语音转文本的过程变得前所未有的简单和高效。无论是从 YouTube 视频中提取信息,还是将播客内容转化为文本,Whisper 都能帮助我们轻松实现这一目标。今天,我们将深入探讨 Whisper 的强大功能,并提供详细的使用教程,让你能够快速上手这一技术。🌟

文章目录

    • 前言
    • 一、Whisper 简介
      • Whisper 的优势
    • 二、Whisper 可用的模型和语言
      • 语言支持
    • 三、开源 Whisper 本地转录
      • 3.1、安装 pytube 库
      • 3.2、下载音频 MP4 文件
      • 3.3、安装 Whisper 库
    • 四、在线 Whisper API 转录
      • 4.1、Whisper API 接口调用
      • 4.2、使用 Prompt 参数优化
      • 4.3、其它参数介绍
      • 4.4、转录过程翻译功能
      • 4.5、分割音频处理大文件
    • 五、获取OpenAI-api的方法
    • 六、总结

一、Whisper 简介

Whisper 是 OpenAI 开发的一款先进的语音识别系统,经过 680,000 小时的多语言和多任务监督数据训练,具备了强大的鲁棒性。它不仅支持多种语言的转录,还能将这些语言翻译成英语。与其他 AI 模型不同,Whisper 是一个开源模型,开发者可以自由使用和修改。

Whisper 的优势

  • 开源免费:开发者可以自由使用和修改代码。
  • 多语言支持:包括中文、英文等多种语言。
  • 高准确率:在多种场景下表现优于市面上许多音频转文字工具。
    在这里插入图片描述

二、Whisper 可用的模型和语言

Whisper 提供了五种不同尺寸的模型,适用于不同的应用场景。以下是可用型号及其大致的内存需求和相对速度:

  • tiny:适合快速测试,内存占用小。
  • base:适合一般应用,速度和准确性平衡。
  • small:适合对准确性有一定要求的应用。
  • medium:适合需要较高准确率的场景。
  • large:适合对准确性要求极高的应用,但需要较大的显存。

语言支持

Whisper 支持多种语言的转录,具体性能因语言而异。通过使用 Fleurs 数据集,Whisper 在不同语言上的表现可以通过单词错误率(WER)进行评估,数字越小,性能越好。

三、开源 Whisper 本地转录

3.1、安装 pytube 库

在开始使用 Whisper 进行转录之前,我们需要安装 pytube 库,以便从 YouTube 下载音频。

pip install --upgrade pytube

3.2、下载音频 MP4 文件

以“100 秒学习 Python”视频为例,视频地址为:https://www.youtube.com/watch?v=x7X9w_GIm1s。

import pytubevideo = "https://www.youtube.com/watch?v=x7X9w_GIm1s"
data = pytube.YouTube(video)
audio = data.streams.get_audio_only()
audio.download()

3.3、安装 Whisper 库

接下来,我们需要安装 Whisper 库:

pip install git+https://github.com/openai/whisper.git -q

加载模型并转录音频文件:

import whispermodel = whisper.load_model("base")
text = model.transcribe("Python in 100 Seconds.mp4")
print(text['text'])

四、在线 Whisper API 转录

4.1、Whisper API 接口调用

OpenAI 提供的 Whisper API 使用非常简单,只需调用 transcribe 函数即可将音频文件转录成文字:

import openai, osos.environ['OPENAI_API_KEY'] = "your-openai-api-key"
openai.api_key = os.getenv("OPENAI_API_KEY")audio_file = open("./data/generative_ai_topics_clip.mp3", "rb")
transcript = openai.Audio.transcribe("whisper-1", audio_file)
print(transcript['text'])

4.2、使用 Prompt 参数优化

通过在转录过程中加入 Prompt 参数,可以提高转录的准确性:

audio_file = open("./data/generative_ai_topics_clip.mp3", "rb")
transcript = openai.Audio.transcribe("whisper-1", audio_file, prompt="这是一段中文播客内容。")
print(transcript['text'])

4.3、其它参数介绍

除了模型名称、音频文件和 Prompt,transcribe 接口还支持以下参数:

  • response_format:返回文件格式(JSON、TEXT、SRT、VTT)。
  • temperature:调整采样概率分布(0-1 之间)。
  • language:指定音频语言。

4.4、转录过程翻译功能

Whisper API 还提供了“translation”接口,可以在转录的同时将语音翻译成英文:

audio_file = open("./data/generative_ai_topics_clip.mp3", "rb")
translated_prompt = "This is a podcast discussing ChatGPT and PaLM model."
transcript = openai.Audio.translate("whisper-1", audio_file, prompt=translated_prompt)
print(transcript['text'])

4.5、分割音频处理大文件

对于超过 25MB 的音频文件,可以使用 PyDub 库进行分割:

from pydub import AudioSegmentpodcast = AudioSegment.from_mp3("./data/generative_ai_topics_long.mp3")
ten_minutes = 15 * 60 * 1000
total_length = len(podcast)start = 0
index = 0
while start < total_length:end = start + ten_minutesif end < total_length:chunk = podcast[start:end]else:chunk = podcast[start:]with open(f"./data/generative_ai_topics_{index}.mp3", "wb") as f:chunk.export(f, format="mp3")start = endindex += 1

然后逐个转录音频文件:

prompt = "这是一段Onboard播客,里面会聊到ChatGPT以及PALM这个大语言模型。"
for i in range(index):clip = f"./data/generative_ai_topics_{i}.mp3"audio_file = open(clip, "rb")transcript = openai.Audio.transcribe("whisper-1", audio_file, prompt=prompt)if not os.path.exists("./data/transcripts"):os.makedirs("./data/transcripts")with open(f"./data/transcripts/generative_ai_topics_{i}.txt", "w") as f:f.write(transcript['text'])sentences = transcript['text'].split("。")prompt = sentences[-1]

五、获取OpenAI-api的方法

【OpenAI】第一节(OpenAI API)获取OpenAI API KEY的两种方式,开发者必看全方面教程!

六、总结

OpenAI 的 Whisper 模型为语音识别提供了一个强大而灵活的解决方案。无论是通过 API 还是使用开源模型,用户只需简单几行代码即可实现音频转录。通过传入 Prompt 参数,用户可以显著提高转录的准确性,减少错误和遗漏。

虽然 OpenAI 的 API 接口对单个转录文件的大小有限制,但我们可以通过 Python 包如 PyDub 将音频文件切分成多个小片段来解决这一问题。转录后的结果可以与 ChatGPT 和其他工具结合使用,实现文本总结和信息提取。

这种技术组合不仅提高了我们处理音频内容的效率,还为我们创造了更多从海量信息中获取有价值内容的机会。AI 为我们带来了无限的可能性,期待未来更多创新应用的出现。🌈

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com