Skip to content

Commit cd3e58e

Browse files
authored
Fix when last VS is dropped and VS should be disabled (#292)
1 parent 7d95511 commit cd3e58e

File tree

1 file changed

+14
-9
lines changed

1 file changed

+14
-9
lines changed

src/client/utils/st_common.py

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ def ll_sidebar() -> None:
253253
def tools_sidebar() -> None:
254254
"""SelectAI Sidebar Settings, conditional if all sorts of bs setup"""
255255

256-
def update_set_tool():
256+
def _update_set_tool():
257257
"""Update user settings as to which tool is being used"""
258258
state.client_settings["vector_search"]["enabled"] = state.selected_tool == "Vector Search"
259259
state.client_settings["selectai"]["enabled"] = state.selected_tool == "SelectAI"
@@ -298,14 +298,19 @@ def update_set_tool():
298298

299299
# Vector Search Requirements
300300
embed_models_enabled = enabled_models_lookup("embed")
301+
302+
def _disable_vector_search(reason):
303+
"""Disable Vector Store, and make sure prompt is reset"""
304+
state.client_settings["vector_search"]["enabled"] = False
305+
logger.debug("Vector Search Disabled (%s)", reason)
306+
st.warning(f"{reason}. Disabling Vector Search.", icon="⚠️")
307+
tools[:] = [t for t in tools if t[0] != "Vector Search"]
308+
switch_prompt("sys", "Basic Example")
309+
301310
if not embed_models_enabled:
302-
logger.debug("Vector Search Disabled (no Embedding Models)")
303-
st.warning("No embedding models are configured and/or enabled. Disabling Vector Search.", icon="⚠️")
304-
tools = [t for t in tools if t[0] != "Vector Search"]
311+
_disable_vector_search("No embedding models are configured and/or enabled.")
305312
elif not database_lookup[db_alias].get("vector_stores"):
306-
logger.debug("Vector Search Disabled (Database has no vector stores.)")
307-
st.warning("Database has no Vector Stores. Disabling Vector Search.", icon="⚠️")
308-
tools = [t for t in tools if t[0] != "Vector Search"]
313+
_disable_vector_search("Database has no vector stores")
309314

310315
tool_box = [name for name, _, disabled in tools if not disabled]
311316
if len(tool_box) > 1:
@@ -324,10 +329,10 @@ def update_set_tool():
324329
tool_box,
325330
index=tool_index,
326331
label_visibility="collapsed",
327-
on_change=update_set_tool,
332+
on_change=_update_set_tool,
328333
key="selected_tool",
329334
)
330-
if state.selected_tool == "None":
335+
if state.selected_tool is None:
331336
switch_prompt("sys", "Basic Example")
332337

333338

0 commit comments

Comments
 (0)