From 0321d94d61d41795fefdb43ea0a471993d84a205 Mon Sep 17 00:00:00 2001 From: RainCongeals <2024901817@qq.com> Date: Sun, 19 Jul 2026 16:44:06 +0800 Subject: [PATCH 1/2] fix: safely disable mem0 for non-OpenAI models - Use getattr to safely check for model_name attribute, resolving Pylance type warnings. - Automatically disable vector memory for non-OpenAI LLMs to prevent API key errors. - Add assertion to ensure main_llm is initialized before agent creation. --- src/webui/components/browser_use_agent_tab.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/webui/components/browser_use_agent_tab.py b/src/webui/components/browser_use_agent_tab.py index b51a16632..0de105105 100644 --- a/src/webui/components/browser_use_agent_tab.py +++ b/src/webui/components/browser_use_agent_tab.py @@ -526,6 +526,15 @@ def done_callback_wrapper(history: AgentHistoryList): raise ValueError( "Browser or Context not initialized, cannot create agent." ) + assert main_llm is not None, "LLM instance (main_llm) must be initialized before creating the agent." + enable_memory = True + model_name = getattr(main_llm, 'model_name', '') + if 'openai' not in model_name.lower(): + logger.warning( + f"⚠️ Detected non-OpenAI model: {model_name}. " + f"Disabling mem0 vector memory to avoid OpenAI API Key dependency." + ) + enable_memory = False webui_manager.bu_agent = BrowserUseAgent( task=task, llm=main_llm, @@ -543,6 +552,7 @@ def done_callback_wrapper(history: AgentHistoryList): planner_llm=planner_llm, use_vision_for_planner=planner_use_vision if planner_llm else False, source="webui", + enable_memory=enable_memory, ) webui_manager.bu_agent.state.agent_id = webui_manager.bu_agent_task_id webui_manager.bu_agent.settings.generate_gif = gif_path From 8460bd2dbcf23a063bd1f0fb93a5272e46f507a2 Mon Sep 17 00:00:00 2001 From: RainCongeals <2024901817@qq.com> Date: Sun, 19 Jul 2026 19:11:47 +0800 Subject: [PATCH 2/2] fix: use llm_provider_name for memory check to prevent false negatives --- src/webui/components/browser_use_agent_tab.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/webui/components/browser_use_agent_tab.py b/src/webui/components/browser_use_agent_tab.py index 0de105105..6274a2696 100644 --- a/src/webui/components/browser_use_agent_tab.py +++ b/src/webui/components/browser_use_agent_tab.py @@ -528,10 +528,10 @@ def done_callback_wrapper(history: AgentHistoryList): ) assert main_llm is not None, "LLM instance (main_llm) must be initialized before creating the agent." enable_memory = True - model_name = getattr(main_llm, 'model_name', '') - if 'openai' not in model_name.lower(): + current_provider = locals().get('llm_provider_name') or type(main_llm).__name__.lower() + if 'openai' not in current_provider.lower(): logger.warning( - f"⚠️ Detected non-OpenAI model: {model_name}. " + f"⚠️ Detected non-OpenAI model: {current_provider}. " f"Disabling mem0 vector memory to avoid OpenAI API Key dependency." ) enable_memory = False