我怎样才能清除特定的 streamlit 缓存?
how can I clear specific streamlit cache?
我 运行 streamlit
有一些缓存的脚本。
当我使用以下代码时,它会清除所有缓存:
from streamlit import caching
caching.clear_cache()
我只想清除特定缓存。我该怎么做?
这目前(不容易)可行。
这是一个可选的解决方案,可以应用于某些情况:
您可以使用 allow_output_mutation
选项:
import streamlit as st
@st.cache(allow_output_mutation=True)
def mutable_cache():
return some_list
mutable_object = mutable_cache()
if st.button("Clear history cache"):
mutable_object.clear()
我将返回的缓存对象写为列表,但您也可以使用其他对象类型(然后您必须替换特定于列表的 clear
方法)。
我 运行 streamlit
有一些缓存的脚本。
当我使用以下代码时,它会清除所有缓存:
from streamlit import caching
caching.clear_cache()
我只想清除特定缓存。我该怎么做?
这目前(不容易)可行。
这是一个可选的解决方案,可以应用于某些情况:
您可以使用 allow_output_mutation
选项:
import streamlit as st
@st.cache(allow_output_mutation=True)
def mutable_cache():
return some_list
mutable_object = mutable_cache()
if st.button("Clear history cache"):
mutable_object.clear()
我将返回的缓存对象写为列表,但您也可以使用其他对象类型(然后您必须替换特定于列表的 clear
方法)。