阿里新開源GPU版本的FunASR安裝避坑

#當前安裝過程沒有cpu版本順利

1.個人在自己的電腦上安裝ubantu系統,以便使用本身的顯卡功能(本人顯卡NVIDIA GeForce RTX 4060)(這里需要注意,更新里面有附加驅動安裝驅動會導致黑屏,小伙伴不要心急重裝系統,可以ctrl+alt+f2用自己的賬戶登陸,刪除驅動(自行百度)然后reboot,這情況例外,我之前有個電腦安裝就沒事),因此當前驅動是在官網下載安裝的。

funasr安裝教程參考

https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_offline_gpu_zh.md

2.這里注意端口10095:10095,官方給的是10098:10095,后面調用引擎的代碼端口是10095.

sudo docker pull \registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-gpu-0.1.1
mkdir -p ./funasr-runtime-resources/models
sudo docker run --gpus=all -p 10095:10095 -it --privileged=true \-v $PWD/funasr-runtime-resources/models:/workspace/models \registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-gpu-0.1.1

這里拉取鏡像大約20多G,建議磁盤空間大點60G以上,不然白白浪費時間。

啟動鏡像的時候失敗,報錯如下:

docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].
ERRO[0000] error waiting for container: context canceled 

這里就需要安裝NVIDIA Container Toolkit,具體教程參考https://blog.csdn.net/weixin_44212848/article/details/137013980

3.安裝好NVIDIA Container Toolkit,啟動鏡像就可以了,開始運行funasr引擎,下載模型

cd /workspace/FunASR/runtime
nohup bash run_server.sh \--download-model-dir /workspace/models \--model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch \--vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx \--punc-dir damo/punc_ct-transformer_cn-en-common-vocab471067-large-onnx \--lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst \--itn-dir thuduj12/fst_itn_zh \--certfile  ../../../ssl_key/server.crt \--keyfile ../../../ssl_key/server.key \--hotword ../../hotwords.txt  > log.txt 2>&1 &

(我這里模型下載成功,但是沒有啟動,因為有個libtorch_global_deps.so文件不存在)比如:

cd /workspace/FunASR/runtime/websocket/build/bin
#1.執行
ldd funasr-wss-server
#2.會顯示so文件,
libtorch_global_deps.so => not found
#3.這個時候可以輸入下面命令查看so文件路徑:
find / -name libtorch_global_deps.so
#結果:/usr/local/lib/python3.8/dist-packages/torch/lib/libtorch_global_deps.so
#4.將該so文件路徑導入環境變量
export LD_LIBRARY_PATH=/usr/local/lib/python3.8/dist-packages/torch/lib#5.再次執行ldd funasr-wss-server ,就會發現libtorch_global_deps.so可以找到了

4.模型下載好了,so文件也解決了,接下來啟動引擎

run_server.sh命令參數介紹--download-model-dir 模型下載地址,通過設置model ID從Modelscope下載模型
--model-dir  modelscope model ID 或者 本地模型路徑
--vad-dir  modelscope model ID 或者 本地模型路徑
--punc-dir  modelscope model ID 或者 本地模型路徑
--lm-dir modelscope model ID 或者 本地模型路徑
--itn-dir modelscope model ID 或者 本地模型路徑
--port  服務端監聽的端口號,默認為 10095
--decoder-thread-num  服務端線程池個數(支持的最大并發路數),**建議每路分配1G顯存,即20G顯存可配置20路并發**
--io-thread-num  服務端啟動的IO線程數
--model-thread-num  每路識別的內部線程數(控制ONNX模型的并行),默認為 1,其中建議 decoder-thread-num*model-thread-num 等于總線程數
--certfile  ssl的證書文件,默認為:../../../ssl_key/server.crt,如果需要關閉ssl,參數設置為0
--keyfile   ssl的密鑰文件,默認為:../../../ssl_key/server.key
--hotword   熱詞文件路徑,每行一個熱詞,格式:熱詞 權重(例如:阿里巴巴 20),如果客戶端提供熱詞,則與客戶端提供的熱詞合并一起使用,服務端熱詞全局生效,客戶端熱詞只針對對應客戶端生效。

?本人喜歡直接運行,方便看有沒有報錯(這里啟動的時候,報錯,有個python庫=onnxruntime不存在需要pip install onnxruntime,cpu版本安裝的時候這個庫是在的,警告可以不用理會)

cd /workspace/FunASR/runtime/websocket/build/bin#這里參數可以參考原文檔來設定,因為我模型下載好了,所以路徑就是/workspace/models/damo
./funasr-wss-server --model-dir /workspace/models/damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --punc-dir /workspace/models/damo/punc_ct-transformer_cn-en-common-vocab471067-large-onnx --lm-dir /workspace/models/damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh 

5.引擎啟動成功就可以使用python(3.7以上)調用測試了(工具下載:wget https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/sample/funasr_samples.tar.gz)

python3 funasr_wss_client.py --host "127.0.0.1" --port 10095 --mode offline \--audio_in "../audio/asr_example.wav" --output_dir "./results"

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/45149.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/45149.shtml
英文地址,請注明出處:http://en.pswp.cn/web/45149.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ES索引模板

在Elasticsearch中,索引模板(Index Templates)是用來預定義新創建索引的設置和映射的一種機制。當你創建了一個索引模板,它會包含一系列的默認設置和映射規則,這些規則會在滿足一定條件的新索引被創建時自動應用。 索…

UOS查看系統信息命令行

UOS查看系統信息命令行 *** Rz整理 僅供參考 *** dmidecode查看System Boot信息 midecode -t 32 dmidecode查看System Reset信息 midecode -t 23 dmidecode查看機箱信息 midecode -t chassis dmidecode查看BIOS信息 midecode -t bios dmidecode查看CPU信息 dmidecode …

leetcode 404. 左葉子之和

給定二叉樹的根節點 root ,返回所有左葉子之和。 示例 1: 輸入: root [3,9,20,null,null,15,7] 輸出: 24 解釋: 在這個二叉樹中,有兩個左葉子,分別是 9 和 15,所以返回 24示例 2: 輸入: root [1] 輸出: 0提示: 節點…

Linux 下使用Docker安裝redis

redis: 是一個高性能的,鍵值對的,將數據存儲到內存中的非關系型數據庫(nosql數據庫 not only sql) 高性能:數據存在內存中,直接訪問內存 鍵值對:新聞id(鍵&#xff09…

c++數據結構--構造無向圖(算法6.1),深度和廣度遍歷

實驗內容: 實現教材算法6.2利用鄰接矩陣構造無向圖的算法,提供從鄰接矩陣獲得鄰接表的功能,在此基礎上進行深度優先遍歷和廣度優先遍歷。 實驗步驟: (1)按照實驗要求編寫代碼,構造無向圖。 ?…

淺談數學模型在UGC/AIGC游戲數值調參中的應用(AI智能體)

淺談數學模型在UGC/AIGC游戲數值調參中的應用 ygluu 盧益貴 關鍵詞:UGC、AIGC、AI智能體、大模型、數學模型、游戲數值調參、游戲策劃 一、前言 在策劃大大群提出《游戲工廠:AI(AIGC/ChatGPT)與流程式游戲開發》討論之后就已完…

Hi3861 OpenHarmony嵌入式應用入門--HTTPD

httpd 是 Apache HTTP Server 的守護進程名稱,Apache HTTP Server 是一種廣泛使用的開源網頁服務器軟件。 本項目是從LwIP中抽取的HTTP服務器代碼; Hi3861 SDK中已經包含了一份預編譯的lwip,但沒有開啟HTTP服務器功能(靜態庫無法…

NiFi1.25版本HTTPS模式下RestAPI使用入門

Apache NiFi 是一個強大的數據流處理工具,通過其 REST API,用戶可以遠程管理和控制數據流處理器。本文將介紹如何使用 NiFi 1.25 版本HTTPS 模式下Rest API,包括獲取 token、獲取組件信息、啟動和停止組件、以及更改組件的調度頻率等操作。 …

Linux vim文本編輯器

Vim(Vi IMproved)是一個高度可配置的文本編輯器,它是Vi編輯器的增強版本,廣泛用于程序開發和系統管理。Vim不僅保留了Vi的所有功能,還增加了許多新特性,使其更加強大和靈活。 Vim操作模式 普通模式&#xf…

科普文:微服務之Apollo配置中心

1. 基本概念 由于Apollo 概念比較多,剛開始使用比較復雜,最好先過一遍概念再動手實踐嘗試使用。 1.1、背景 隨著程序功能的日益復雜,程序的配置日益增多,各種功能的開關、參數的配置、服務器的地址……對程序配置的期望值也越來…

在 C++中,如何使用智能指針來有效地管理動態分配的內存,并避免內存泄漏的問題?

在C中,可以使用智能指針來有效地管理動態分配的內存,避免內存泄漏的問題。下面是一些常用的智能指針類型和操作: std::unique_ptr: std::unique_ptr是C11引入的一種獨占式智能指針,它擁有對分配的內存的唯一所有權。當…

026-GeoGebra中級篇-曲線(2)_極坐標曲線、參數化曲面、分段函數曲線、分形曲線、復數平面上的曲線、隨機曲線、非線性動力系統的軌跡

除了參數曲線、隱式曲線和顯式曲線之外,還有其他類型的曲線表示方法。本篇主要概述一下極坐標曲線、參數化曲面、分段函數曲線、分形曲線、復數平面上的曲線、隨機曲線、和非線性動力系統的軌跡,可能沒有那么深,可以先了解下。 目錄 1. 極坐…

「網絡通信」HTTP 協議

HTTP 🍉簡介🍉抓包工具🍉報文結構🍌請求🍌響應🍌URL🥝URL encode 🍌方法🍌報文字段🥝Host🥝Content-Length & Content-Type🥝User…

運動控制問題

第一類運動控制問題是指被控制對象的空間位置或軌跡運動發生改變的運動控制系統的控制問題。這類運動控制問題在理論上完全遵循牛頓力學定律和運動學原則。 1、運動控制問題 第1類運動控制的核心是研究被控對象的運動軌跡 、分析運動路徑、運動速度、加速度與時間的關系,常用…

深入解析PHP框架:Symfony框架詳解與應用

文章目錄 深入解析PHP框架:Symfony框架詳解與應用一、什么是Symfony?Symfony的優勢 二、Symfony的核心概念1. 控制器2. 路由3. 模板4. 服務容器5. 事件調度器 三、Symfony的主要功能1. 表單處理2. 數據庫集成3. 安全性4. 國際化5. 調試與日志 四、開發流…

記一次docker容器安裝MySQL,navicat無法連接報錯(10060錯誤)

今天在云服務器上使用docker部署mysql 8.0.11時,遇到了一個詭異的問題,在云服務器的docker容器內可以連接上mysql,然而在自己電腦上連接mysql時報錯:Can‘t connect to MySQL server on localhost (10060) 下面是網上搜尋的幾種可…

SpringMVC框架--個人筆記步驟總結

一、步驟 1.創建工程 2.加入springmvc依賴--pom.xml <!--springmvc依賴--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.10.RELEASE</version> </depend…

Camunda如何通過外部任務與其他系統自動交互

文章目錄 簡介流程圖外部系統pom.xmllogback.xml監聽類 啟動流程實例常見問題Public Key Retrieval is not allowed的解決方法java.lang.reflect.InaccessibleObjectException 流程圖xml 簡介 前面我們已經介紹了Camunda的基本操作、任務、表&#xff1a; Camunda組件與服務與…

Linux命令更新-Vim 編輯器

簡介 Vim 是 Linux 系統中常用的文本編輯器&#xff0c;功能強大、可擴展性強&#xff0c;支持多種編輯模式和操作命令&#xff0c;被廣泛應用于程序開發、系統管理等領域。 1. Vim 命令模式 Vim 啟動后默認進入命令模式&#xff0c;此時鍵盤輸入的命令將用于控制編輯器本身&…

Android ImageDecoder把瘦高/扁平大圖相當于fitCenter模式decode成目標小尺寸Bitmap,Kotlin

Android ImageDecoder把瘦高/扁平大圖相當于fitCenter模式decode成目標小尺寸Bitmap&#xff0c;Kotlin val sz Size(MainActivity.SIZE, MainActivity.SIZE)val src ImageDecoder.createSource(mContext?.contentResolver!!, uri)val bitmap ImageDecoder.decodeBitmap(sr…