From 94e76083862eb263c376ff41311a77bd31c2678d Mon Sep 17 00:00:00 2001 From: Cole Medin Date: Wed, 19 Mar 2025 09:33:29 -0500 Subject: [PATCH] Fixing provider update issue when switching profiles --- streamlit_pages/environment.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/streamlit_pages/environment.py b/streamlit_pages/environment.py index 60dd54f5..37204ba8 100644 --- a/streamlit_pages/environment.py +++ b/streamlit_pages/environment.py @@ -31,6 +31,12 @@ def environment_tab(): if selected_profile != current_profile: if set_current_profile(selected_profile): + # Clear provider session state variables to force them to reload from the new profile + if "llm_provider" in st.session_state: + del st.session_state.llm_provider + if "embedding_provider" in st.session_state: + del st.session_state.embedding_provider + st.success(f"Switched to profile: {selected_profile}, reloading...") reload_archon_graph(show_reload_success=False) st.rerun() @@ -56,6 +62,12 @@ def environment_tab(): st.error(f"Profile '{new_profile_name}' already exists.") else: if create_profile(new_profile_name): + # Clear provider session state variables for the new profile + if "llm_provider" in st.session_state: + del st.session_state.llm_provider + if "embedding_provider" in st.session_state: + del st.session_state.embedding_provider + st.success(f"Created profile: {new_profile_name}") st.rerun() else: @@ -65,6 +77,12 @@ def environment_tab(): if selected_profile != "default" and selected_profile == current_profile: if st.button("Delete Current Profile", key="delete_profile"): if delete_profile(selected_profile): + # Clear provider session state variables to force them to reload from the default profile + if "llm_provider" in st.session_state: + del st.session_state.llm_provider + if "embedding_provider" in st.session_state: + del st.session_state.embedding_provider + st.success(f"Deleted profile: {selected_profile}, reloading...") reload_archon_graph(show_reload_success=False) st.rerun()