Я пытаюсь импортировать xarray в свой блокнот Jupyter, и когда я запускаю ячейку
import xarray
появляется следующая ошибка: «Ядро дало сбой при выполнении кода в текущей или предыдущей ячейке. Просмотрите код в ячейках, чтобы определить возможную причину сбоя. Нажмите здесь для дополнительной информации. Для получения более подробной информации просмотрите журнал Jupyter».
Я несколько раз пытался перезапустить ядро, удалить и переустановить xarray и даже увеличить память, добавив ячейку
import os
os.environ["KMP_DUPLICATE_LIB_OK"] = "TRUE"
перед импортом, но ничего из этого не сработало. Я обнаружил в Интернете, что другие зависимые пакеты также могут привести к падению пакета, и они предлагают запустить новую среду. Есть ли способ решить эту проблему без запуска новой среды?
@chickitychinachinesechicken В журналах Jupyter указано: 19:53:28.248 [ошибка] Удаление сеанса, поскольку процесс ядра завершился. Код выхода: не определено, Причина: 19:53:28.276 [информация] Ячейка 1 завершена за -1718844806.403 с (начало: 1718844806403, конец: не определено). ). Память не заполнена, она на 25%.
Как вы устанавливаете пакет xarray? Вы пишете код напрямую в блокноте или используете IDE? Ваш Jupyter работает локально в вашей системе или в облаке? как запустить свой ноутбук из командной строки терминала?
@chickitychinachinesechicken Я пробовал установить xarray с терминала, используя pip install xarray, python3 -m pip install xarray, python3 -m pip install "xarray[complete]", все они выдали одну и ту же ошибку. Я пишу код в блокноте в VScode. Я не знаю, работает ли VScode локально или в облаке, но я бы сказал, что он работает локально. Блокнот запускается в VScode.
В некоторых онлайн-исследованиях я, возможно, нахожу некоторые из тех же ресурсов, которые вы упомянули, что может указывать на то, что проблема может быть связана с использованием памяти.
Пытаясь воспроизвести вашу проблему, используя pip для установки xarray на моем компьютере с Windows 11, xarray извлекает 9 зависимостей, включая numpy и pandas, всего 160 MB. Я бы предложил создать виртуальную среду (virtualenv), чтобы изолировать общесистемную конфигурацию pip от вашего jupyter notebook проекта, чтобы предотвратить запуск слишком большого количества зависимостей при запуске блокнота Jupyter. Сначала просто установите xarray для успешной установки, а затем переместите его в Jupyter. блокнот. При запуске сценария только с import xarray он потребляет 70 MB ОЗУ на моей машине...
@chickitychinachinesechicken Я создал виртуальную среду, и она не работает. Я думаю, мне нужно увеличить доступную память, но то, что я пробовал, не сработало. Я попробовал добавить sys.setrecursionlimit(100000), но ядро все равно вылетает. Есть ли другой способ увеличить память? (Я работаю на Mac).
хм, не уверен, можно попробовать Ядро Jupyter Notebook продолжает умирать - мало памяти?
@chickitychinachinesechicken Перепробовав все, что нашел в Интернете, я решил эту проблему. Судя по всему, работает, если я устанавливаю его с кондой, т. е. conda install "xarray[complete]" работает (не спрашивайте почему). До того, как я устанавливал его с помощью pip install "xarray[complete]"
Отличное обновление @samuel-jaramillo, спасибо, что поделились подробностями, которые вы использовали для решения проблемы. Рассмотрите возможность опубликовать его в качестве ответа ниже и принять его, поскольку другие пользователи, столкнувшиеся с той же проблемой, могут ссылаться на него, и было бы полезно закрыть этот вопрос из очереди.






Перепробовав все, что нашел в Интернете, я решил эту проблему. Ни один из способов увеличения ограничений оперативной памяти для Jupyter Notebook не работал. Однако я установил xarray с conda, т. е. conda install "xarray[complete]" он работает. Судя по всему, это связано с некоторыми предпосылками модуля xarray. Раньше я устанавливал его с помощью pip install "xarray[complete]".
Anaconda/conda способна вносить более мощные изменения в вашу систему и на более высоких уровнях, чем это разрешено pip. Это может быть как-то связано с этим.
Я не могу воспроизвести ошибку. Есть ли в журналах Jupyter какие-либо подробности во время сбоя ядра? и проверьте, не заполнена ли ваша память