news 2026/8/26 14:21:48

语音识别总结系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
语音识别总结系统

目录

一、基于whisper的语音识别模块

二、文本摘要模块


一、基于whisper的语音识别模块

import json import whisper import torch #from paddlenlp import Taskflow # 加载模型(自动下载) torch.cuda.empty_cache() # 清理缓存 model = whisper.load_model("small") # 首次运行会自动下载模型 # 转录音频 result = model.transcribe( audio="13-后台任务.mp4", temperature=0.2, # 降低随机性 language="zh", # 中文 fp16=False, # 一定记得设置这个参数,避免Nan问题 beam_size=5, # 束搜索宽度 #word_timestamps=True # 获取词级时间戳 initial_prompt = "以下是普通话的句子,这是一段会议记录。" ) # 输出json格式 with open("output.json", "w") as f: json.dump(result, f, indent=2) #输出txt格式 with open("output.txt", "w", encoding="utf-8") as f: f.write(result["text"]) print(result)

1、一开始运行时出现NaN问题,添加参数

fp16=False

降低精度

2、由于后续使用bert模型进行文本摘要需要文本中有标点符号,small模型转出的文本没有标点(medium和large应该有,我的电脑配置不够),添加参数

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

3、代码运行后(如果视频或音频较长,需要等待好几分钟,参考我1.5小时的视频大概等待7—9分钟)会自动在当前目录下生成json和txt文件。结果如下:

二、文本摘要模块

目前方案:

1、抽取式:

1)用bert获取句子表示,计算每个句子与文档的整体相似度,按顺序选择top句子(test2.py或mybert.py)已实现,效果不好,只能得到最后几个句子

2)使用bert-extractive-summarizer库,代码如下:

from summarizer import Summarizer model = Summarizer(model="bert-base-chinese") text = "这里是需要摘要的中文文本..." # 抽取式摘要 summary = model(text, ratio=0.2) # 按比例提取关键句子 print(summary)

安装有问题,无法安装这个库

pip install bert-extractive-summarizer

报错如下

原因是没有支持spacy依赖包的c++编译环境,安装预编译好的spacy

pip install spacy --prefer-binary -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install transformers scikit-learn numpy # 手动安装核心依赖

2、生成式:

from transformers import BertConfig, EncoderDecoderConfig, EncoderDecoderModel # 首先创建编码器和解码器配置 encoder_config = BertConfig.from_pretrained("bert-base-chinese") decoder_config = BertConfig.from_pretrained("bert-base-chinese") # 修改解码器配置以支持生成任务 decoder_config.is_decoder = True decoder_config.add_cross_attention = True # 创建EncoderDecoder模型 model = EncoderDecoderModel.from_encoder_decoder_pretrained( "bert-base-chinese", "bert-base-chinese", encoder_config=encoder_config, decoder_config=decoder_config ) # 然后需要在摘要任务上微调这个模型才能获得好的效果

需要自己配置模型

jieba分词器安装:jieba · PyPI

进入目录下运行cmd

python环境下测试:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 14:21:17

simpleitk和numpy的转化问题

SimpleITK 读取 NIfTI 后,数组默认是 zhw 顺序((z, y, x))若需 (x, y, z) 顺序,需手动转置(np.transpose(array, (2, 1, 0)))。元数据(如 GetSize())仍遵循 NIfTI 的 (x, y, z) 约定…

作者头像 李华
网站建设 2026/8/26 14:20:37

灰度演化函数 GEF 在 AI 工程落地:消解模型循环与幻觉

1. 引言:两个挥之不去的工程痛点 大模型能力越强,两个问题反而越刺眼: 幻觉:模型强行输出看似精确、实则虚假的确定答案;推理循环震荡:来回反复、自相矛盾、无休止辩论,最终死循环。 灰度演化函…

作者头像 李华
网站建设 2026/8/26 14:00:30

头歌实践教学平台:数据科学与大数据技术导论(七上)

七、大数据第1关:大数据时代任务描述 本关任务:根据相关知识内容完成右边选择题。相关知识 为了完成本关任务,你需要掌握: 1.第三次信息化浪潮; 2.信息科技为大数据时代提供技术支撑; 3.数据产生方式的变革…

作者头像 李华
网站建设 2026/8/26 13:58:58

Linux环境下部署MySQL8数据库

MySQL安装 1、下载软件包:mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar 2、将软件包通过moba上传到linux系统/usr/local/soft/目录下 3、解压软件包 cd /usr/local/soft/ tar -xvf mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar 4、卸载系统自带mariadb rpm -qa | gr…

作者头像 李华
网站建设 2026/8/26 13:53:06

在PHP中,如何实现基于事件的编程模型以提高性能?

在PHP中,基于事件的编程模型主要是用来处理那些需要等待某些外部操作(比如数据库查询、文件读写、网络请求等)完成的情况。通常,这些操作会花费一些时间,如果我们的代码只是傻傻地等在那里,不做其他事情&am…

作者头像 李华