From 7f9b440c37906c4bde959acb472618a626f8e710 Mon Sep 17 00:00:00 2001 From: awanawona Date: Tue, 24 Mar 2026 16:05:56 +0800 Subject: [PATCH] fix: use st.rerun() for newer Streamlit versions Replace deprecated experimental_rerun() with rerun() for compatibility with Streamlit 1.35+ Co-Authored-By: Claude --- examples/webui/code.py | 6 +++++- examples/webui/dialogue.py | 16 ++++++++++++++-- examples/webui/document.py | 30 +++++++++++++++++++++++++----- examples/webui/prompt.py | 6 +++++- 4 files changed, 49 insertions(+), 9 deletions(-) diff --git a/examples/webui/code.py b/examples/webui/code.py index c530279..85cec17 100644 --- a/examples/webui/code.py +++ b/examples/webui/code.py @@ -140,7 +140,11 @@ def format_selected_cb(cb_name: str) -> str: ) st.toast(ret.get("msg", " ")) st.session_state["selected_cb_name"] = cb_name - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() elif selected_cb: cb = selected_cb diff --git a/examples/webui/dialogue.py b/examples/webui/dialogue.py index 9042e7f..c74ae98 100644 --- a/examples/webui/dialogue.py +++ b/examples/webui/dialogue.py @@ -270,7 +270,11 @@ def on_cb_change(): upload2sandbox(interpreter_file, api) st.session_state["interpreter_file_key"] += 1 interpreter_file = "" - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() cols[1].download_button(webui_configs["sandbox"]["button_download_name"], file_url, file_name) @@ -520,7 +524,11 @@ def on_cb_change(): # 将上传文件清空 st.session_state["interpreter_file_key"] += 1 - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() now = datetime.now() with st.sidebar: @@ -535,6 +543,10 @@ def on_cb_change(): GLOBAL_EXE_CODE_TEXT = "" if 'history_node_list' in st.session_state: st.session_state['history_node_list'] = [] + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: st.experimental_rerun() export_btn.download_button( diff --git a/examples/webui/document.py b/examples/webui/document.py index 9ae40f4..8856cdd 100644 --- a/examples/webui/document.py +++ b/examples/webui/document.py @@ -156,7 +156,11 @@ def format_selected_kb(kb_name: str) -> str: ) st.toast(ret.get("msg", " ")) st.session_state["selected_kb_name"] = kb_name - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() elif selected_kb: kb = selected_kb @@ -322,7 +326,11 @@ def format_selected_kb(kb_name: str) -> str: # api_key=llm_model_dict[LLM_MODEL]["api_key"], # api_base_url=llm_model_dict[LLM_MODEL]["api_base_url"], ) - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() # 将文件从向量库中删除,但不删除文件本身。 if cols[2].button( @@ -338,7 +346,11 @@ def format_selected_kb(kb_name: str) -> str: # model_device=EMBEDDING_DEVICE, # api_key=llm_model_dict[LLM_MODEL]["api_key"], # api_base_url=llm_model_dict[LLM_MODEL]["api_base_url"],) - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() if cols[3].button( "从知识库中删除", @@ -354,7 +366,11 @@ def format_selected_kb(kb_name: str) -> str: # api_key=llm_model_dict[LLM_MODEL]["api_key"], # api_base_url=llm_model_dict[LLM_MODEL]["api_base_url"],) st.toast(ret.get("msg", " ")) - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() st.divider() @@ -380,7 +396,11 @@ def format_selected_kb(kb_name: str) -> str: st.toast(msg) else: empty.progress(d["finished"] / d["total"], f"正在处理: {d['doc']}") - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() if cols[2].button( "删除知识库", diff --git a/examples/webui/prompt.py b/examples/webui/prompt.py index 28946fb..2ff1138 100644 --- a/examples/webui/prompt.py +++ b/examples/webui/prompt.py @@ -28,7 +28,11 @@ def prompt_page(api: ApiRequest): "清空prompt", use_container_width=True, ): - st.experimental_rerun() + # Use st.rerun() for newer Streamlit versions + if hasattr(st, 'rerun'): + st.rerun() + else: + st.experimental_rerun() export_btn.download_button( "导出记录",