summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/functions.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/utils/functions.py b/utils/functions.py
new file mode 100644
index 0000000..b123636
--- /dev/null
+++ b/utils/functions.py
@@ -0,0 +1,19 @@
+import importlib
+import inspect
+
+
+def load_model_class(identifier: str, prefix: str = "models."):
+ module_path, class_name = identifier.split('@')
+
+ # Import the module
+ module = importlib.import_module(prefix + module_path)
+ cls = getattr(module, class_name)
+
+ return cls
+
+
+def get_model_source_path(identifier: str, prefix: str = "models."):
+ module_path, class_name = identifier.split('@')
+
+ module = importlib.import_module(prefix + module_path)
+ return inspect.getsourcefile(module)