浏览代码

fix: Add error catching for function pip install issues

James Westbrook 3 月之前
父节点
当前提交
48c2fb0d24
共有 1 个文件被更改,包括 9 次插入4 次删除
  1. 9 4
      backend/open_webui/utils/plugin.py

+ 9 - 4
backend/open_webui/utils/plugin.py

@@ -167,9 +167,14 @@ def load_function_module_by_id(function_id, content=None):
 
 def install_frontmatter_requirements(requirements):
     if requirements:
-        req_list = [req.strip() for req in requirements.split(",")]
-        for req in req_list:
-            log.info(f"Installing requirement: {req}")
-            subprocess.check_call([sys.executable, "-m", "pip", "install", req])
+        try:
+            req_list = [req.strip() for req in requirements.split(",")]
+            for req in req_list:
+                log.info(f"Installing requirement: {req}")
+                subprocess.check_call([sys.executable, "-m", "pip", "install", req])
+        except Exception as e:
+            log.error(f"Error installing package: {req}")
+            raise e
+
     else:
         log.info("No requirements found in frontmatter.")