Parcourir la source

improve: significantly speed up the server launching time by async preloading tool providers (#9146)

Bowen Liang il y a 5 mois
Parent
commit
0bdae34b5e
1 fichiers modifiés avec 3 ajouts et 2 suppressions
  1. 3 2
      api/core/tools/tool_manager.py

+ 3 - 2
api/core/tools/tool_manager.py

@@ -3,7 +3,7 @@ import logging
 import mimetypes
 from collections.abc import Generator
 from os import listdir, path
-from threading import Lock
+from threading import Lock, Thread
 from typing import Any, Optional, Union
 
 from configs import dify_config
@@ -647,4 +647,5 @@ class ToolManager:
             raise ValueError(f"provider type {provider_type} not found")
 
 
-ToolManager.load_builtin_providers_cache()
+# preload builtin tool providers
+Thread(target=ToolManager.load_builtin_providers_cache, name="pre_load_builtin_providers_cache", daemon=True).start()