Пусть Colab перезагрузит недавно измененный модуль на диск - PullRequest
2 голосов
/ 15 января 2020

Я бы хотел использовать Google Colab в качестве внешнего интерфейса для многократного запуска кода, который я разрабатываю в файле .py на моем Google Диске. В частности, я хочу отредактировать этот файл, например, с помощью vim, и Colab Notebook повторно перезагрузить мои изменения.

Синхронизация файла с моим Диском достаточно проста, как и монтирование этого диска и импорт модуля один раз . Однако перезагрузка модуля не выполняется.

При использовании %autoreload 2 или module = importlib.reload(module)) ноутбук, кажется, в конечном итоге реагирует на измененный файл, но очень медленно и непредсказуемо так. Повторная установка диска, кажется, не имеет никакого эффекта. Выполнение «заводского сброса» ноутбука, кажется, работает, но это недопустимо медленно, потому что я должен каждый раз вводить новый код авторизации в диалоговое окно.

Есть ли способ достичь желаемого поведения ?

1 Ответ

0 голосов
/ 04 апреля 2020

У меня была такая же проблема. Я мог (случайно) решить с помощью

  • Удаление папки __pycache__
  • Завершение текущего сеанса (из строки меню Runtime > Manage Session > TERMINATE)
  • Перезапуск времени выполнения ( из меню Runtime > Restart runtime)

Затем перезагрузите модуль с помощью importlib.reload(module).

Надеюсь, это поможет!


РЕДАКТИРОВАТЬ Похоже, что это работает, просто перезапуская среду выполнения с Runtime > Restart runtime

...