ModuleNotFoundError: No module named ‘dash.long_callback‘报错解决

错误信息

C:\Users\zhubayi>python -m merlion.dashboard Traceback (most recent call last): File "runpy.py", line 197, in _run_module_as_main File "runpy.py", line 87, in _run_code File "D:\environment\python\python-3.9.13\lib\site-packages\merlion\dashboard\__main__.py", line 7, in <module> from merlion.dashboard.server import app File "D:\environment\python\python-3.9.13\lib\site-packages\merlion\dashboard\server.py", line 19, in <module> from merlion.dashboard.callbacks import data File "D:\environment\python\python-3.9.13\lib\site-packages\merlion\dashboard\callbacks\data.py", line 16, in <module> from merlion.dashboard.utils.file_manager import FileManager File "D:\environment\python\python-3.9.13\lib\site-packages\merlion\dashboard\utils\file_manager.py", line 12, in <module> from dash.long_callback import DiskcacheLongCallbackManager ModuleNotFoundError: No module named 'dash.long_callback'

错误原因

当前环境里的 Dash 版本太新(Dash 3.x),它已经把 dash.long_callback 这套接口迁移/移除了;而 Merlion 的 dashboard 代码还在 from dash.long_callback import DiskcacheLongCallbackManager,所以直接 ModuleNotFoundError。(Dash)

解决办法:把 Dash 降级到 2.x

在 Windows 命令行里执行(建议在 venv 里做):

pip uninstall -y dash dash-bootstrap-components

pip install "dash_bootstrap_components<=1.7.1" --force-reinstall
pip install "dash<=2.18.0" --force-reinstall
pip install diskcache

这个降级组合是社区在遇到同样问题时给出的可用 workaround(Merlion #179 相关)。(GitHub)

然后验证版本:

python -c "import dash; import dash_bootstrap_components as dbc; print('dash', dash.__version__, 'dbc', dbc.__version__)"

在这里插入图片描述

再启动:

python -m merlion.dashboard
posted @ 2026-01-14 16:46  zhubayi  阅读(2)  评论(0)    收藏  举报