AI办公自动化-用kimi将音频批量转换为文本

现在已经有很多非常不错的语音转文本的AI应用了,比如通义听悟、飞书妙记等。不过,对于大批量、多个文件夹的语音转文本,手工操作就比较麻烦了,还是有个程序自动化运行更方面。

Whisper 是一个由 OpenAI 开发的开源语音识别库,旨在将音频内容转换为文本。它使用深度学习模型来识别和转录语音,支持多种语言和多种音频格式。借助这个开源免费的Whisper库,可以很方便的实现批量语音转文本。

在kimichat对话框中输入提示词:

你是一个Python编程专家,要完成一个Python脚本的编写任务,具体步骤如下:

打开文件夹:D:\CHATGPT For TikTok TikTok Mastery with CHATGPT

文件夹里面有多个子文件夹,子文件夹中有mp3格式的音频,读取子文件夹中的所有音频文件;

用openai-whisper库将mp3格式音频识别为和音频同名的文本文档,然后保存在和mp3音频的同一个文件夹中;

注意:Whisper语音模型使用medium模型,要识别的音频为英文内容

下面是openai-whisper库的使用示例:

import whisper

model = whisper.load_model("medium")

result = model.transcribe("audio.mp3")

print(result["text"])

这是kimichat给出的Python源代码:

import os

import whisper

定义 Whisper 模型路径

MODEL_PATH = "medium" # 这里我们直接使用 "medium" 字符串,因为根据你的描述,不需要指定具体的模型文件路径

定义音频文件夹路径

AUDIO_FOLDER = 'D:\\CHATGPT For TikTok TikTok Mastery with CHATGPT'

初始化 Whisper 模型

model = whisper.load_model(MODEL_PATH)

遍历文件夹中的所有子文件夹和文件

for root, dirs, files in os.walk(AUDIO_FOLDER):

for file in files:

检查文件是否为 mp3 格式

if file.endswith('.mp3'):

构建 mp3 文件的完整路径

mp3_path = os.path.join(root, file)

构建文本文件的完整路径

text_path = os.path.splitext(mp3_path)[0] + '.txt'

使用 Whisper 模型识别音频并生成文本

try:

result = model.transcribe(mp3_path)

保存文本到文件

with open(text_path, 'w', encoding='utf-8') as f:

f.write(result["text"])

print(f'Transcription saved: {text_path}')

except Exception as e:

print(f'Error transcribing audio from {mp3_path}: {e}')

print('Transcription process completed.')

由于whisper库依赖pyTorch,所以还要安装其他几个库。而这几个库由于版本兼容问题,可能会发生冲突,所以最好使用conda生成虚拟的Python环境,然后安装在这个虚拟环境中。

用conda创建一个3.9版本的Python环境:conda create n myenv python=3.9

在这个虚拟环境中安装whisper库:pip install openai-whisper -i https://pypi.tuna.tsinghua.edu.cn/simple

安装pytorch库:conda install pytorch torchvision torchaudio cpuonly -c pytorch

whisper 在处理音频文件时会用到 ffmpeg,也需要安装,下载地址:https://github.com/BtbN/FFmpeg-builds/releases,安装完成后,然后将ffmpeg.exe所在文件夹路径在系统环境变量设置中添加到变量Path中。

接下来,在vscode里面设置好使用这个虚拟的Python3.9版本环境:

View------command palette------select interpreter------Python3.9.19

这些都设置好之后,就可以在虚拟环境中运行Python程序了:

运行时出现一个警告:d:\anaconda\envs\myenv\lib\site-packages\whisper\transcribe.py:115: UserWarning: FP16 is not supported on CPU; using FP32 instead

warnings.warn("FP16 is not supported on CPU; using FP32 instead")

这个警告信息 UserWarning: FP16 is not supported on CPU; using FP32 instead 是由于尝试在 CPU 上使用半精度(FP16)浮点数进行计算,但 CPU 不支持 FP16 运算,因此回退到使用单精度(FP32)浮点数。

在深度学习中,FP16 可以提供更快的计算速度和减少内存使用,但需要特定的硬件支持,比如支持 FP16 运算的 GPU。如果你在 CPU 上运行代码或者 GPU 不支持 FP16,那么库会自动回退到使用 FP32,这是一个完全兼容但计算速度较慢的选项。

这个警告通常不会影响程序的运行,只是表明性能可能不是最优的。如果你希望消除这个警告,可以采取以下措施之一:

使用支持 FP16 的 GPU:如果你有支持 FP16 的 GPU,确保你的环境已经正确安装并配置了相应的驱动和库(如 CUDA 和 cuDNN)。这样,当你在 GPU 上运行代码时,就可以利用 FP16 提升性能。

忽略警告:如果你不打算使用 FP16 支持的硬件,可以选择忽略这个警告。在 Python 中,你可以使用 warnings 库来忽略特定类型的警告:

import warnings

warnings.filterignore("UserWarning", message="FP16 is not supported on CPU; using FP32 instead")

将上述代码添加到你的脚本中,可以在运行时忽略这个特定的警告信息

直接忽略这个警告就好,程序运行结果良好:

相关推荐
ZHOU_WUYI2 小时前
3.langchain中的prompt模板 (few shot examples in chat models)
人工智能·langchain·prompt
如若1232 小时前
主要用于图像的颜色提取、替换以及区域修改
人工智能·opencv·计算机视觉
老艾的AI世界3 小时前
AI翻唱神器,一键用你喜欢的歌手翻唱他人的曲目(附下载链接)
人工智能·深度学习·神经网络·机器学习·ai·ai翻唱·ai唱歌·ai歌曲
DK221513 小时前
机器学习系列----关联分析
人工智能·机器学习
Robot2513 小时前
Figure 02迎重大升级!!人形机器人独角兽[Figure AI]商业化加速
人工智能·机器人·微信公众平台
浊酒南街4 小时前
Statsmodels之OLS回归
人工智能·数据挖掘·回归
畅联云平台4 小时前
美畅物联丨智能分析,安全管控:视频汇聚平台助力智慧工地建设
人工智能·物联网
加密新世界4 小时前
优化 Solana 程序
人工智能·算法·计算机视觉
hunteritself5 小时前
ChatGPT高级语音模式正在向Web网页端推出!
人工智能·gpt·chatgpt·openai·语音识别
xcLeigh5 小时前
HTML5超酷响应式视频背景动画特效(六种风格,附源码)
前端·音视频·html5