GCP AI Notebook% pip, установленный вне PATH +, не может изменить путь - PullRequest
1 голос
/ 14 января 2020

Я пытаюсь использовать ноутбуки AI GCP . Однако, когда вы %pip install пакет, он устанавливается вне системного пути, вы не можете вызвать его из оболочки. Пытался изменить путь по умолчанию, но я делаю что-то не так. Буду признателен за предложения.

Вот пример:

[1] %pip install kaggle --user
 ... Installing collected packages: kaggle
  WARNING: The script kaggle is installed in '/home/jupyter/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed kaggle-1.5.6
Note: you may need to restart the kernel to use updated packages.
#restarted the kernel
[2] import kaggle
 #works
[3] !pip show kaggle
Name: kaggle
Version: 1.5.6
...
Location: /home/jupyter/.local/lib/python3.5/site-packages
...
[4] !kaggle -v #doesn't work
/bin/sh: 1: kaggle: not found

[5] !echo $PATH
 /usr/local/cuda/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
[6] !export PATH=$PATH:/home/jupyter/.local/lib/python3.5/site-packages 
#no output
[7] !echo $PATH
/usr/local/cuda/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
# path is unchanged

Когда я пробую ту же строку !export в оболочке, путь меняется, и оболочка находит мой исполняемый файл. Когда я пробую это в ноутбуке, это не так.

1 Ответ

1 голос
/ 14 января 2020

Пип точно говорит вам, что здесь делать:

WARNING: The script kaggle is installed in '/home/jupyter/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

Вы можете использовать следующее для добавления к переменным окружения из Jupyter:

os.environ['PATH'] += os.pathsep + '/home/jupyter/.local/bin'

После чего !kaggle -v должен работать как положено.

...