轻松搞定!在 Windows 10 上安装 FunASR 并运行离线时间戳模型

2024-03-01 22:04

本文主要是介绍轻松搞定!在 Windows 10 上安装 FunASR 并运行离线时间戳模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 1、FunASR介绍
  • 2、系统环境安装
    • 2.1 环境要求
    • 2.2 环境设置
    • 2.3 软件环境安装
      • 2.3.1 Ubuntu安装
      • 2.3.2 WSL安装
      • 2.3.3 docker部署
  • 3、服务部署
    • 3.1 docker镜像下载与启动
    • 3.2 配置文件调整
    • 3.3 启动funasr服务
  • 4 客户端连接
    • 4.1 html连接
    • 4.2 python连接
      • 4.2.1 客户端文件修改
      • 4.4.3 客户端运行

1、FunASR介绍

FunASR提供可便捷本地或者云端服务器部署的离线文件转写服务,内核为FunASR已开源runtime-SDK。 集成了达摩院语音实验室在Modelscope社区开源的语音端点检测(VAD)、Paraformer-large语音识别(ASR)、标点恢复(PUNC) 等相关能力,拥有完整的语音识别链路,可以将几十个小时的音频或视频识别成带标点的文字,而且支持上百路请求同时进行转写。

2、系统环境安装

2.1 环境要求

以win10专业版计算机环境为例(家庭版本不可使用此方法),可通过命令查询。
在系统“开始”处输入 winver,检查版本信息。(要求os版本不低于19044)
在这里插入图片描述

2.2 环境设置

打开【控制面板】,点击【程序】
在这里插入图片描述

点击【启动或关闭Windows功能】
在这里插入图片描述

开启【Hyper-V】、【虚拟机平台】和【适用于Linux的Windows子系统】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

开启完毕后,【立即重新启动】
在这里插入图片描述

2.3 软件环境安装

2.3.1 Ubuntu安装

将【Ubuntu_1804.2019.522.0_x64.zip】解压至Ubuntu_1804.2019.522.0_x64
在这里插入图片描述

进入【Ubuntu_1804.2019.522.0_x64】文件夹,右键点击【ubuntu1804.exe】文件,选择【以管理员身份运行】
在这里插入图片描述

根据提示输入创建用户名和密码,完成Ubuntu的创建

2.3.2 WSL安装

双击安装【wsl_update_x64 (1).msi】
在这里插入图片描述
点击【Next】
在这里插入图片描述
等待安装完成后点击【Finish】
在这里插入图片描述

2.3.3 docker部署

双击安装【Docker Desktop Installer.exe】
在这里插入图片描述

等待加载完成后,勾选【Install required Windows components for WSL 2
Add shortcut to desktop】,点击【ok】
在这里插入图片描述

等待安装完成
在这里插入图片描述
在这里插入图片描述

在桌面上打开【Docker Desktop】,首次打开需要同意用户协议,勾选用户协议,点击【accept】
在这里插入图片描述

点击【设置】,确保每个选项都处于勾选状态

3、服务部署

将【test】文件解压至磁盘根目录,在该文件夹中使用以下命令加载镜像
【docker load -i funasr.tar】
在这里插入图片描述

3.1 docker镜像下载与启动

通过下述命令拉取并启动FunASR软件包docker镜像:
【docker run -p 10096:10095 -it --privileged=true -v D:\test\damo:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.5】
在这里插入图片描述

3.2 配置文件调整

docker启动之后,进入runtime路径

cd FunASR/runtime

在这里插入图片描述

修改run_server_2pass.sh服务文件(插入 i)(保存 wq)

vim run_server_2pass.sh

原始文件
在这里插入图片描述

修改

model_dir="damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx"

model_dir=" damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx"

修改

certfile="../../../ssl_key/server.crt"
keyfile="../../../ssl_key/server.key"

certfile=0
keyfile=0

3.3 启动funasr服务

bash run_server_2pass.sh

在这里插入图片描述

启动成功,端口号为【10095】

4 客户端连接

funasr_samples文件夹中包含多种客户端连接方式,此处以html和python为例

4.1 html连接

打开funasr_samples\samples\html\static文件夹,使用网页运行index.html
在这里插入图片描述

将asr服务器地址更改为 【ws://127.0.0.1:10095】,点击连接进行测试,如连接失败更改端口为【10096】。

4.2 python连接

4.2.1 客户端文件修改

打开funasr_samples\samples\python文件夹,原始的funasr_wss_client.py需要进行修改:

320行

 async with websockets.connect(uri, subprotocols=["binary"], ping_interval=None, ssl=ssl_context) as websocket:if args.audio_in is not None:task = asyncio.create_task(record_from_scp(i, 1))  /******else:task = asyncio.create_task(record_microphone())  /******task3 = asyncio.create_task(message(str(id)+"_"+str(i))) #processid+fileid   /******await asyncio.gather(task, task3)

上述三处有注释的地方,asyncio.create_task方法在python3.6中无法使用,更改为asyncio.ensure_future 方法

289行

text_print = text_print[-args.words_max_print:]os.system('clear')print("\rpid" + str(id) + ": " + text_print)

在该处修改输出,

print(text)
text_print = text_print[-args.words_max_print:]

4.4.3 客户端运行

输入命令 【python3 funasr_wss_client.py --host “127.0.0.1” --port 10095 --mode 2pass --ssl 0】

这篇关于轻松搞定!在 Windows 10 上安装 FunASR 并运行离线时间戳模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/763972

相关文章

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

Python脚本轻松实现检测麦克风功能

《Python脚本轻松实现检测麦克风功能》在进行音频处理或开发需要使用麦克风的应用程序时,确保麦克风功能正常是非常重要的,本文将介绍一个简单的Python脚本,能够帮助我们检测本地麦克风的功能,需要的... 目录轻松检测麦克风功能脚本介绍一、python环境准备二、代码解析三、使用方法四、知识扩展轻松检测麦

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段