Я пытаюсь использовать ipysheet в ноутбуке Jupyterlab, работающем в TLJH версии 3.6.1, в виртуальной среде conda, отличной от base
, с этими инструкциями.
from ipysheet import sheet
sheet(rows=1,columns=4)
но я получаю ошибку Javascript:
[Open Browser Console for more detailed log - Double click to close this message]
Failed to load model class 'SheetModel' from module 'ipysheet'
Это происходит как при использовании Jupyterlab, так и при использовании классического блокнота Jupyter.
Ожидаемый результат — таблица, представленная следующим образом:
Я попытался запустить тот же код при новой локальной установке Miniconda (без Jupyterhub), и после установки библиотеки ipysheet тот же код дает ожидаемый результат как в Jupyterlab, так и в интерфейсе Classic Notebook.
Я попытался понизить версию библиотек в виртуальной среде conda, которую я использую в TLJH, чтобы они соответствовали библиотекам в установке Miniconda, но проблема не устранена.
Библиотеки, которые я использую на сервере TLJH:
:~$ conda list | grep ipy
ipykernel 6.19.2 pyh210e3f2_0 conda-forge
ipysheet 0.7.0 pyhd8ed1ab_0 conda-forge
ipython 8.10.0 pyh41d4057_0 conda-forge
ipywidgets 8.0.4 pyhd8ed1ab_0 conda-forge
:~$ conda list | grep jupy
jupyter_client 8.1.0 pyhd8ed1ab_0 conda-forge
jupyter_core 5.3.0 py311h38be061_0 conda-forge
jupyterlab_widgets 3.0.5 pyhd8ed1ab_0 conda-forge
Те же версии устанавливаются при локальной установке Miniconda. Оба TLJH работают в контейнере Docker Ubuntu 20.04.5 LTS, а Miniconda работает непосредственно на машине, на которой размещен контейнер, то есть в Ubuntu 22.04.1 LTS. Используемый браузер один и тот же для обоих экземпляров.
Проблема похожа на эту проблему с ipywidgets, но на самом деле в моем экземпляре Jupyterhub ipywidgets работают, за исключением ipysheet, и предлагаемое там решение состоит в том, чтобы обновить ipywidgets до 8.x.x, что не решает проблему для меня (я уже есть ipywidgets 8.0.4).
Любые идеи о том, как решить эту проблему?
Полный текст сообщения об ошибке:
[Open Browser Console for more detailed log - Double click to close this message]
Failed to load model class 'SheetModel' from module 'ipysheet'
loadClass@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/134.40eaa5b8e976096d50b2.js?v=40eaa5b8e976096d50b2:1:74856
loadModelClass@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.b0e841b75317744a7595.js?v=b0e841b75317744a7595:1:10729
_make_model@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.b0e841b75317744a7595.js?v=b0e841b75317744a7595:1:7517
new_model@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.b0e841b75317744a7595.js?v=b0e841b75317744a7595:1:5137
handle_comm_open@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.b0e841b75317744a7595.js?v=b0e841b75317744a7595:1:3894
134/v/this._handleCommOpen@http://0.0.0.0:12000/user/admin/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/134.40eaa5b8e976096d50b2.js?v=40eaa5b8e976096d50b2:1:73393
_handleCommOpen@http://0.0.0.0:12000/user/admin/static/lab/jlab_core.3e11c5239452d671150c.js?v=3e11c5239452d671150c:2:1037310
Я нашел обходной путь для этой проблемы:
виджеты ipysheet
работают, когда я устанавливаю ipysheet
в среду base
перед созданием новых виртуальных сред conda.
Итак, суть в следующем: библиотеки виджетов нужно устанавливать в среде base
, иначе они не будут работать ни в какой другой среде.