基于阿里云百炼大模型Sensevoice-1的语音识别与文本保存工具开发
基于阿里云百炼大模型Sensevoice-1的语音识别与文本保存工具开发
摘要
随着人工智能技术的不断发展,语音识别在会议记录、语音笔记等场景中得到了广泛应用。本文介绍了一个基于Python和阿里云百炼大模型的语音识别与文本保存工具的开发过程。该工具能够高效地识别东北方言的会议记录音频文件,并将识别结果保存为文本文件,方便用户使用和管理。
1.引言
语音识别技术是人工智能领域的重要分支,它能够将语音信号转换为文本内容,极大地提高了信息处理的效率。在实际应用中,例如会议记录、语音笔记等场景,语音识别工具能够帮助用户快速生成文本内容,节省时间和精力。本文将详细介绍如何使用Python和阿里云百炼大模型开发一个简单的语音识别与文本保存工具,特别关注对东北方言会议记录音频文件的识别。
2.技术栈介绍
2.1 Python
Python是一种广泛使用的高级编程语言,具有简洁的语法和强大的库支持,适合快速开发各种应用。在本项目中,Python被用于实现图形用户界面和后端逻辑。
2.2 阿里云百炼大模型
阿里云百炼大模型提供了强大的语音识别能力,支持多种语言和方言的识别。其中,sensevoice-v1模型专门针对中文语音识别进行了优化,能够高效地处理东北方言等地方言的语音文件。通过阿里云的API,我们可以轻松地将语音识别功能集成到我们的工具中。
2.3 Tkinter
Tkinter是Python的标准GUI库,用于创建图形用户界面。它提供了丰富的控件,如按钮、文本框等,能够方便地实现用户交互功能。
3.工具功能设计
3.1 东北方言会议记录语音识别
工具的核心功能是识别东北方言的会议记录音频文件。用户可以通过点击“会议记录语音识别”按钮,触发语音识别流程。工具会调用阿里云百炼大模型的语音识别API,将指定的东北方言音频文件转换为文本内容,并显示在文本框中。
3.2 文本保存
识别后的文本内容可以通过点击“保存识别内容到文本”按钮保存到本地文件中。用户可以选择保存路径和文件名,工具会将文本内容写入指定的文本文件中。
4.代码实现
4.1 初始化界面
class AudioTranscriptionApp:def __init__(self, root):self.root = rootself.root.title("语音识别与保存工具")self.root.grid_rowconfigure(0, weight=1)self.root.grid_columnconfigure(0, weight=1)self.root.grid_columnconfigure(1, weight=1)self.text_box = tk.Text(root, height=15, width=60, font=("Arial", 18))self.text_box.grid(row=0, column=0, columnspan=2, sticky="nsew", padx=10, pady=10)self.text_box.insert(tk.END, "识别内容如下:\n")self.recognize_button = tk.Button(root, text="会议记录语音识别", command=self.recognize_audio)self.recognize_button.grid(row=1, column=0, padx=10, pady=10, sticky="ew")self.save_button = tk.Button(root, text="保存识别内容到文本", command=self.save_transcription)self.save_button.grid(row=1, column=1, padx=10, pady=10, sticky="ew")
在初始化界面时,我们创建了一个多行文本框用于显示识别结果,以及两个按钮分别用于触发语音识别和保存文本内容。
4.2 东北方言会议记录语音识别逻辑
def recognize_audio(self):try:task_response = dashscope.audio.asr.Transcription.async_call(model='sensevoice-v1', # 语言模型file_urls=['https://ai-inspection-lxw.oss-cn-hangzhou.aliyuncs.com/output.mp3?Expires=1738208593&OSSAccessKeyId=TMP.3KhisLmHf1f1YvnxwxcRF3FSMJPNaD1RTyww1TAebKcp5Ymhm2R9bt53kzuWFD6vpkCt....'], #上传到OSS的音频文件language_hints=['zh', 'en'], # 使用中文语言提示,适用于东北方言)transcription_response = dashscope.audio.asr.Transcription.wait(task=task_response.output.task_id)if transcription_response.status_code == HTTPStatus.OK:for transcription in transcription_response.output['results']:url = transcription['transcription_url']result = json.loads(request.urlopen(url).read().decode('utf8'))self.transcription_text = result['transcripts'][0]['text']# 正则模式pattern = r"<\|Speech\|>(.*?)<\|\/Speech\|>" self.transcription_text_matches = re.findall(pattern, self.transcription_text)self.transcription_text_final = "\n".join(self.transcription_text_matches)self.text_box.delete(1.0, tk.END)self.text_box.insert(tk.END, "识别内容如下:\n")self.text_box.insert(tk.END, self.transcription_text_final)messagebox.showinfo("提示", "transcription done")else:messagebox.showerror("错误", f"Error: {transcription_response.output.message}")except Exception as e:messagebox.showerror("错误", f"发生错误: {e}")
在语音识别逻辑中,我们调用了阿里云百炼大模型的异步语音识别API,并等待任务完成。识别结果通过正则表达式提取并显示在文本框中。特别地,我们使用了中文语言提示(language_hints=['zh']),以更好地支持东北方言的识别。
4.3 文本保存逻辑
def save_transcription(self):if not self.transcription_text_final:messagebox.showwarning("警告", "没有可保存的识别内容")returnfile_path = filedialog.asksaveasfilename(defaultextension=".txt",filetypes=[("Text files", "*.txt"), ("All files", "*.*")])if file_path:with open(file_path, "w", encoding="utf-8") as file:file.write("识别内容如下:\n")file.write(self.transcription_text_final)messagebox.showinfo("提示", "保存成功")
在文本保存逻辑中,我们通过文件对话框让用户选择保存路径,并将识别结果写入指定的文本文件中。
运行结果:

5.使用说明
5.1 安装依赖
在运行代码之前,需要安装以下Python库:
pip install dashscope
pip install tkinter
5.2 启动工具
运行代码后,工具会启动一个图形用户界面。用户可以通过点击“会议记录语音识别”按钮进行东北方言会议记录音频文件的语音识别,并通过点击“保存识别内容到文本”按钮将识别结果保存到本地文件中。
6.遇到的问题及解决方案
在开发过程中,我们遇到了一些问题,例如网络连接问题导致语音文件无法正确解析。如果用户遇到类似问题,建议检查以下几点:
• 确保语音文件的URL链接是有效的,并且服务器能够正常访问。
• 检查网络连接是否正常,适当重试可能解决问题。
• 如果问题仍然存在,可以尝试更换语音文件或联系技术支持。
7.结论
本文介绍了一个基于Python和阿里云百炼大模型的语音识别与文本保存工具的开发过程。通过Tkinter实现的图形用户界面,用户可以方便地进行东北方言会议记录音频文件的语音识别和文本保存操作。该工具在会议记录、语音笔记等场景中具有较高的实用价值。未来,我们可以进一步优化工具的功能,例如支持更多语音文件格式、提高识别精度等,以满足更多用户的需求。
欢迎点赞、关注、收藏、转发!!!
相关文章:
基于阿里云百炼大模型Sensevoice-1的语音识别与文本保存工具开发
基于阿里云百炼大模型Sensevoice-1的语音识别与文本保存工具开发 摘要 随着人工智能技术的不断发展,语音识别在会议记录、语音笔记等场景中得到了广泛应用。本文介绍了一个基于Python和阿里云百炼大模型的语音识别与文本保存工具的开发过程。该工具能够高效地识别东…...
【go语言】函数
一、什么是函数 函数是入门简单精通难,函数是什么??? 函数就是一段代码的集合go 语言中至少有一个 main 函数函数需要有一个名字,独立定义的情况下,见名知意函数可能需要有一个结果,也可能没有…...
CTF-web: phar反序列化+数据库伪造 [DASCTF2024最后一战 strange_php]
step 1 如何触发反序列化? 漏洞入口在 welcome.php case delete: // 获取删除留言的路径,优先使用 POST 请求中的路径,否则使用会话中的路径 $message $_POST[message_path] ? $_POST[message_path] : $_SESSION[message_path]; $msg $userMes…...
从0开始使用面对对象C语言搭建一个基于OLED的图形显示框架(动态菜单组件实现)
目录 面对对象C的程序设计(范例) 面对对象C的程序设计(应用) 进一步谈论我上面给出的代码——继承 实现一个面对对象的文本编辑器 所以,什么是继承 重申我们对菜单的抽象 抽象菜单项目 抽象菜单动画 实现菜单功…...
EtherCAT主站IGH-- 23 -- IGH之fsm_slave.h/c文件解析
EtherCAT主站IGH-- 23 -- IGH之fsm_slave.h/c文件解析 0 预览一 该文件功能`fsm_slave.c` 文件功能函数预览二 函数功能介绍`fsm_slave.c` 中主要函数的作用1. `ec_fsm_slave_init`2. `ec_fsm_slave_clear`3. `ec_fsm_slave_exec`4. `ec_fsm_slave_set_ready`5. `ec_fsm_slave_…...
windows10 配置使用json server作为图片服务器
步骤1:在vs code中安装json server, npm i -g json-server 注意:需要安装对应版本的json server,不然可能会报错,比如: npm i -g json-server 0.16.3 步骤2:出现如下报错: json-server 不是…...
Linux——网络(tcp)
文章目录 目录 文章目录 前言 一、TCP逻辑 1. 面向连接 三次握手(建立连接) 四次挥手(关闭连接) 2. 可靠性 3. 流量控制 4. 拥塞控制 5. 基于字节流 6. 全双工通信 7. 状态机 8. TCP头部结构 9. TCP的应用场景 二、编写tcp代码函数…...
腾讯云开发提供免费GPU服务
https://ide.cloud.tencent.com/dashboard/web 适用于推理场景,每个月10000分钟免费时长 166 小时 40 分钟 自带学术加速,速度还是不错的 白嫖 Tesla T4 16G 算力 显存:16GB 算力:8 TFlops SP CPU:8 核 内存&#…...
详解python的修饰符
Python 中的修饰符(Decorator)是一种用于修改或扩展函数或类行为的工具。它们本质上是一个函数,接受另一个函数或类作为参数,并返回一个新的函数或类。修饰符通常用于在不修改原函数或类代码的情况下,添加额外的功能。…...
《攻克语言密码:教AI理解隐喻与象征》
在自然语言处理(NLP)领域,让计算机理解人类语言中的隐喻和象征,是迈向更高语言理解水平的关键一步。从“时间就是金钱”这样的概念隐喻,到文学作品里象征着坚韧的“寒梅”,这些非字面意义的表达方式承载着丰…...
如何解除TikTok地区限制:实用方法解析
随着社交媒体的不断发展,TikTok作为一款短视频平台,已经在全球范围内吸引了数以亿计的用户。然而,不同地区对TikTok的使用权限存在一定的限制,这使得一些用户无法享受平台提供的完整内容和功能。 一、了解TikTok地区限制的原因 在…...
神经网络|(七)概率论基础知识-贝叶斯公式
【1】引言 前序我们已经了解了一些基础知识。 古典概型:有限个元素参与抽样,每个元素被抽样的概率相等。 条件概率:在某条件已经达成的前提下,新事件发生的概率。实际计算的时候,应注意区分,如果是计算综…...
《DeepSeek 网页/API 性能异常(DeepSeek Web/API Degraded Performance):网络安全日志》
DeepSeek 网页/API 性能异常(DeepSeek Web/API Degraded Performance)订阅 已识别 - 已识别问题,并且正在实施修复。 1月 29, 2025 - 20:57 CST 更新 - 我们将继续监控任何其他问题。 1月 28, 2025 - 22&am…...
使用Edu邮箱申请一年免费的.me域名
所需材料:公立Edu教育邮箱一枚(P.S:该服务不支持所有的Edu教育邮箱,仅支持比较知名的院校) 说到域名,.me这个后缀可谓是个性十足,适合个人网站、博客等。.me是黑山的国家顶级域名(c…...
【MCU】DFU、IAP、OTA
我发现很多人把几个概念都学混了,只记得一个升级了 DFU DFU (device firmware update)是指的 USB DFU,这个是 USB 的一个机制,可以升级设备的固件,可以去 USB-IF 查看规范文件。 OTA 全称为 Over-the-air update,利…...
2025.1.21——六、BUU XSS COURSE 1 XSS漏洞|XSS平台搭建
题目来源:buuctf BUU XSS COURSE 1 目录 一、打开靶机,整理信息 二、解题思路 step 1:输入框尝试一下 step 2:开始xss注入 step 3:搭建平台 step 4:利用管理员cookie访问地址 三、小结 二编&#…...
跟李沐学AI:视频生成类论文精读(Movie Gen、HunyuanVideo)
Movie Gen:A Cast of Media Foundation Models 简介 Movie Gen是Meta公司提出的一系列内容生成模型,包含了 3.2.1 预训练数据 Movie Gen采用大约 100M 的视频-文本对和 1B 的图片-文本对进行预训练。 图片-文本对的预训练流程与Meta提出的 Emu: Enh…...
7.抽象工厂(Abstract Factory)
抽象工厂与工厂方法极其类似,都是绕开new的,但是有些许不同。 动机 在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作。 假设案例 假设…...
python-leetcode-路径总和
112. 路径总和 - 力扣(LeetCode) # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right class Solution:de…...
WGCLOUD使用介绍 - 如何监控ActiveMQ和RabbitMQ
根据WGCLOUD官网的信息,目前没有针对ActiveMQ和RabbitMQ这两个组件专门做适配 不过可以使用WGCLOUD已经具备的通用监测模块:进程监测、端口监测或者日志监测、接口监测 来对这两个组件进行监控...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
