ソースを参照

fix: Lookup errors for contextvars used in ToolManager

Yeuoly 7 ヶ月 前
コミット
77a62f33b3
共有1 個のファイルを変更した7 個の追加0 個の削除を含む
  1. 7 0
      api/core/tools/tool_manager.py

+ 7 - 0
api/core/tools/tool_manager.py

@@ -100,6 +100,13 @@ class ToolManager:
         """
         """
         get the plugin provider
         get the plugin provider
         """
         """
+        # check if context is set
+        try:
+            contexts.plugin_tool_providers.get()
+        except LookupError:
+            contexts.plugin_tool_providers.set({})
+            contexts.plugin_tool_providers_lock.set(Lock())
+
         with contexts.plugin_tool_providers_lock.get():
         with contexts.plugin_tool_providers_lock.get():
             plugin_tool_providers = contexts.plugin_tool_providers.get()
             plugin_tool_providers = contexts.plugin_tool_providers.get()
             if provider in plugin_tool_providers:
             if provider in plugin_tool_providers: