From 1596f6f414f6f41da66506debb1dff19fffeb3ec Mon Sep 17 00:00:00 2001
From: 游雁 <zhifu.gzf@alibaba-inc.com>
Date: 星期一, 24 六月 2024 11:55:17 +0800
Subject: [PATCH] fixbug hotwords

---
 funasr/utils/dynamic_import.py |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/funasr/utils/dynamic_import.py b/funasr/utils/dynamic_import.py
index 2830cb2..71ad4fe 100644
--- a/funasr/utils/dynamic_import.py
+++ b/funasr/utils/dynamic_import.py
@@ -1,13 +1,39 @@
-import importlib
+import importlib.util
+
+import importlib.util
+import inspect
 
 
-def dynamic_import(import_path):
-    """dynamic import module and class
-
-    :param str import_path: syntax 'module_name:class_name'
-    :return: imported class
+def load_module_from_path(file_path):
     """
+    浠庣粰瀹氱殑鏂囦欢璺緞鍔ㄦ�佸姞杞芥ā鍧椼��
 
-    module_name, objname = import_path.split(":")
-    m = importlib.import_module(module_name)
-    return getattr(m, objname)
+    :param file_path: 妯″潡鏂囦欢鐨勭粷瀵硅矾寰勩��
+    :return: 鍔犺浇鐨勬ā鍧�
+    """
+    module_name = file_path.split("/")[-1].replace(".py", "")
+    spec = importlib.util.spec_from_file_location(module_name, file_path)
+    module = importlib.util.module_from_spec(spec)
+    spec.loader.exec_module(module)
+    return module
+
+
+#
+# def load_module_from_path(module_name, file_path):
+#     """
+#     浠庣粰瀹氱殑鏂囦欢璺緞鍔ㄦ�佸姞杞芥ā鍧椼��
+#
+#     :param module_name: 鍔ㄦ�佸姞杞界殑妯″潡鐨勫悕绉般��
+#     :param file_path: 妯″潡鏂囦欢鐨勭粷瀵硅矾寰勩��
+#     :return: 鍔犺浇鐨勬ā鍧�
+#     """
+#     # 鍒涘缓鍔犺浇妯″潡鐨剆pec锛堣鏍硷級
+#     spec = importlib.util.spec_from_file_location(module_name, file_path)
+#
+#     # 鏍规嵁spec鍒涘缓妯″潡
+#     module = importlib.util.module_from_spec(spec)
+#
+#     # 鎵ц妯″潡鐨勪唬鐮佹潵瀹為檯鍔犺浇瀹�
+#     spec.loader.exec_module(module)
+#
+#     return module

--
Gitblit v1.9.1