From 39b6701ba96b6e0b890f1fcdd5f3397a3a6f491f Mon Sep 17 00:00:00 2001
From: 雾聪 <wucong.lyb@alibaba-inc.com>
Date: 星期四, 14 三月 2024 09:59:11 +0800
Subject: [PATCH] add SwitchArg for wss-server

---
 funasr/models/paraformer/model.py |   20 ++++++++------------
 1 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/funasr/models/paraformer/model.py b/funasr/models/paraformer/model.py
index 586d72d..41a1bf7 100644
--- a/funasr/models/paraformer/model.py
+++ b/funasr/models/paraformer/model.py
@@ -21,7 +21,7 @@
 from funasr.models.transformer.utils.add_sos_eos import add_sos_eos
 from funasr.models.transformer.utils.nets_utils import make_pad_mask, pad_list
 from funasr.utils.load_utils import load_audio_text_image_video, extract_fbank
-
+from funasr.train_utils.device_funcs import to_device
 
 @tables.register("model_classes", "Paraformer")
 class Paraformer(torch.nn.Module):
@@ -554,7 +554,7 @@
         max_seq_len=512,
         **kwargs,
     ):
-        
+        self.device = kwargs.get("device")
         is_onnx = kwargs.get("type", "onnx") == "onnx"
         encoder_class = tables.encoder_classes.get(kwargs["encoder"]+"Export")
         self.encoder = encoder_class(self.encoder, onnx=is_onnx)
@@ -566,27 +566,23 @@
         decoder_class = tables.decoder_classes.get(kwargs["decoder"]+"Export")
         self.decoder = decoder_class(self.decoder, onnx=is_onnx)
         
-        from funasr.utils.torch_function import MakePadMask
         from funasr.utils.torch_function import sequence_mask
-        
-        
-        if is_onnx:
-            self.make_pad_mask = MakePadMask(max_seq_len, flip=False)
-        else:
-            self.make_pad_mask = sequence_mask(max_seq_len, flip=False)
 
-        self.forward = self._export_forward
+
+        self.make_pad_mask = sequence_mask(max_seq_len, flip=False)
+        
+        self.forward = self.export_forward
         
         return self
 
-    def _export_forward(
+    def export_forward(
         self,
         speech: torch.Tensor,
         speech_lengths: torch.Tensor,
     ):
         # a. To device
         batch = {"speech": speech, "speech_lengths": speech_lengths}
-        # batch = to_device(batch, device=self.device)
+        batch = to_device(batch, device=self.device)
     
         enc, enc_len = self.encoder(**batch)
         mask = self.make_pad_mask(enc_len)[:, None, :]

--
Gitblit v1.9.1