Проблемы с импортом пользовательской библиотеки в Google Colab

Я делаю какой-то проект машинного обучения и хочу запустить проект на Google Colab, так как моя собственная машина слишком слаба для него и зависает, когда я пытаюсь запустить проект на нем. Мой проект имеет структуру, показанную на рисунке. структура проекта. У меня есть несколько файлов.py, каждый из которых импортирует модули друг от друга. Я преобразовал проект в файл.zip на моем компьютере, а затем использовал вкладку загрузки на Google Colab для загрузки проекта. я разархивировал файл и попытался запустить один код из папки "examples", которая импортирует какую-то функцию из функции modAL, например

from modAL.models import ActiveLearner.

этот импорт не выполняется в Google Colab с ошибкой "нет модуля с именем modAL " . Может кто-нибудь сказать, пожалуйста, как обойти эту проблему? Код прекрасно работает на моем ноутбуке.

1 ответ

Я нашел это объяснение: https://zerowithdot.com/colab-workspace/ - очень полезно. После создания места на вашем диске Google

from os.path import join
from google.colab import drive
ROOT = "/content/drive"
drive.mount(ROOT)

получить Git РЕПО

GIT_USERNAME = "xxx"
GIT_TOKEN = "xxx"
GIT_REPOSITORY = "Repo"

!mkdir "{PROJECT_PATH}"
!git clone https://{GIT_TOKEN}@github.com/{GIT_USERNAME}/{GIT_REPOSITORY}.git " 
{PROJECT_PATH}"

Наконец, используйте importlib, чтобы получить доступ к определениям

from importlib.machinery import SourceFileLoader
somemodule = SourceFileLoader('somelib', join(PROJECT_PATH, 
'utils/somelib.py')).load_module()

Если проект общедоступный (вероятно, можно заставить его работать и в противном случае), вы можете создать пакет [1] и установить его с помощью pip:

!pip install git+https://github.com/myuser/myproject

[1] https://packaging.python.org/tutorials/packaging-projects/

Другие вопросы по тегам