From f4a0c9f4367dae4697abdd4a699b9c82f2656153 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Fri, 18 Aug 2023 08:52:26 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(manager.py):=20remove=20comm?= =?UTF-8?q?ented=20code=20block=20to=20improve=20code=20readability=20and?= =?UTF-8?q?=20maintainability=20=E2=9C=A8=20feat(manager.py):=20add=20init?= =?UTF-8?q?ialization=20for=20session=20manager=20and=20its=20dependencies?= =?UTF-8?q?=20(cache=20manager=20and=20settings=20manager)=20to=20enable?= =?UTF-8?q?=20session=20management=20functionality?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/services/chat/manager.py | 1 + src/backend/langflow/services/manager.py | 27 +++++++++++++------ 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/src/backend/langflow/services/chat/manager.py b/src/backend/langflow/services/chat/manager.py index 394455b22..3eb43b810 100644 --- a/src/backend/langflow/services/chat/manager.py +++ b/src/backend/langflow/services/chat/manager.py @@ -137,6 +137,7 @@ class ChatManager(Service): chat_inputs=chat_inputs, websocket=self.active_connections[client_id], ) + self.set_cache(client_id, langchain_object) except Exception as e: # Log stack trace logger.exception(e) diff --git a/src/backend/langflow/services/manager.py b/src/backend/langflow/services/manager.py index d02f0fd1c..f40ae1f25 100644 --- a/src/backend/langflow/services/manager.py +++ b/src/backend/langflow/services/manager.py @@ -67,14 +67,6 @@ class ServiceManager: f"No factory registered for the service class '{service_name.name}'" ) - # if ( - # ServiceType.SETTINGS_MANAGER not in self.factories - # and service_name != ServiceType.SETTINGS_MANAGER - # ): - # raise ValueError( - # f"Cannot create service '{service_name.name}' before the settings service" - # ) - def update(self, service_name: ServiceType): """ Update a service by its name. @@ -124,3 +116,22 @@ def initialize_settings_manager(): from langflow.services.settings import factory as settings_factory service_manager.register_factory(settings_factory.SettingsManagerFactory()) + + +def initialize_session_manager(): + """ + Initialize the session manager. + """ + from langflow.services.session import factory as session_manager_factory + from langflow.services.cache import factory as cache_factory + + initialize_settings_manager() + + service_manager.register_factory( + cache_factory.CacheManagerFactory(), dependencies=[ServiceType.SETTINGS_MANAGER] + ) + + service_manager.register_factory( + session_manager_factory.SessionManagerFactory(), + dependencies=[ServiceType.CACHE_MANAGER], + )