From 94de39dde2e616a01683c518023d0fab72b4e103 Mon Sep 17 00:00:00 2001
From: 游雁 <zhifu.gzf@alibaba-inc.com>
Date: 星期一, 19 二月 2024 22:21:50 +0800
Subject: [PATCH] aishell example

---
 runtime/websocket/bin/funasr-wss-server.cpp |   45 +++++++++++++++++++++++++--------------------
 1 files changed, 25 insertions(+), 20 deletions(-)

diff --git a/runtime/websocket/bin/funasr-wss-server.cpp b/runtime/websocket/bin/funasr-wss-server.cpp
index 9c3af70..bff4f66 100644
--- a/runtime/websocket/bin/funasr-wss-server.cpp
+++ b/runtime/websocket/bin/funasr-wss-server.cpp
@@ -26,6 +26,10 @@
 }
 
 int main(int argc, char* argv[]) {
+#ifdef _WIN32
+    #include <windows.h>
+    SetConsoleOutputCP(65001);
+#endif
   try {
 
     google::InitGoogleLogging(argv[0]);
@@ -91,7 +95,7 @@
                                            "0.0.0.0", "string");
     TCLAP::ValueArg<int> port("", "port", "port", false, 10095, "int");
     TCLAP::ValueArg<int> io_thread_num("", "io-thread-num", "io thread num",
-                                       false, 8, "int");
+                                       false, 2, "int");
     TCLAP::ValueArg<int> decoder_thread_num(
         "", "decoder-thread-num", "decoder thread num", false, 8, "int");
     TCLAP::ValueArg<int> model_thread_num("", "model-thread-num",
@@ -111,7 +115,7 @@
     TCLAP::ValueArg<std::string> lm_dir("", LM_DIR,
         "the LM model path, which contains compiled models: TLG.fst, config.yaml ", false, "damo/speech_ngram_lm_zh-cn-ai-wesp-fst", "string");
     TCLAP::ValueArg<std::string> lm_revision(
-        "", "lm-revision", "LM model revision", false, "v1.0.1", "string");
+        "", "lm-revision", "LM model revision", false, "v1.0.2", "string");
     TCLAP::ValueArg<std::string> hotword("", HOTWORD,
         "the hotword file, one hotword perline, Format: Hotword Weight (could be: 闃块噷宸村反 20)", 
         false, "/workspace/resources/hotwords.txt", "string");
@@ -183,7 +187,7 @@
         std::string s_itn_path = model_path[ITN_DIR];
         std::string s_lm_path = model_path[LM_DIR];
 
-        std::string python_cmd = "python -m funasr.utils.runtime_sdk_download_tool --type onnx --quantize True ";
+        std::string python_cmd = "python -m funasr.download.runtime_sdk_download_tool --type onnx --quantize True ";
 
         if(vad_dir.isSet() && !s_vad_path.empty()){
             std::string python_cmd_vad;
@@ -226,28 +230,29 @@
             std::string down_asr_path;
             std::string down_asr_model;
 
+            // modify model-revision by model name
+            size_t found = s_asr_path.find("speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404");
+            if (found != std::string::npos) {
+                model_path["model-revision"]="v1.2.4";
+            }
+
+            found = s_asr_path.find("speech_paraformer-large-contextual_asr_nat-zh-cn-16k-common-vocab8404");
+            if (found != std::string::npos) {
+                model_path["model-revision"]="v1.0.5";
+            }
+
+            found = s_asr_path.find("speech_paraformer-large_asr_nat-en-16k-common-vocab10020");
+            if (found != std::string::npos) {
+                model_path["model-revision"]="v1.0.0";
+                s_itn_path="";
+                s_lm_path="";
+            }
+
             if (access(s_asr_path.c_str(), F_OK) == 0){
                 // local
                 python_cmd_asr = python_cmd + " --model-name " + s_asr_path + " --export-dir ./ " + " --model_revision " + model_path["model-revision"];
                 down_asr_path  = s_asr_path;
             }else{
-                size_t found = s_asr_path.find("speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404");
-                if (found != std::string::npos) {
-                    model_path["model-revision"]="v1.2.4";
-                }
-
-                found = s_asr_path.find("speech_paraformer-large-contextual_asr_nat-zh-cn-16k-common-vocab8404");
-                if (found != std::string::npos) {
-                    model_path["model-revision"]="v1.0.5";
-                }
-
-                found = s_asr_path.find("speech_paraformer-large_asr_nat-en-16k-common-vocab10020");
-                if (found != std::string::npos) {
-                    model_path["model-revision"]="v1.0.0";
-                    s_itn_path="";
-                    s_lm_path="";
-                }
-
                 // modelscope
                 LOG(INFO) << "Download model: " <<  s_asr_path << " from modelscope: ";
                 python_cmd_asr = python_cmd + " --model-name " + s_asr_path + " --export-dir " + s_download_model_dir + " --model_revision " + model_path["model-revision"];

--
Gitblit v1.9.1