Colaboratory

Локальные среды выполнения

В Colab можно подключиться к локальной среде выполнения. Это позволит выполнять код на локальном компьютере.

Безопасность

Выполняйте коды только тех авторов, которым можно доверять. При использовании локального подключения выполняемый код может читать, записывать и удалять файлы на вашем компьютере.

Подключение к среде выполнения на локальном компьютере дает ряд преимуществ, но в то же время подвергает систему серьезному риску. Подключаясь к локальной среде выполнения, вы разрешаете клиенту Colab выполнять код в блокноте, используя ресурсы компьютера. Это дает блокноту следующие возможности:

Прежде чем подключаться к локальной среде выполнения, разберитесь в назначении выполняемого кода и убедитесь, что его авторам можно доверять. Дополнительная информация о механизмах защиты сервера для блокнотов Jupyter содержится в документации Jupyter.

Инструкции по настройке

Шаг 1. Запустите среду выполнения

Вы можете запустить Jupyter напрямую или воспользоваться образом Docker для Colab. Образ Docker содержит пакеты, которые используются в наших удаленных средах выполнения (https://colab.research.google.com), а также активирует некоторые функции UI (например, отладку или отслеживание используемых ресурсов). Пакеты (в основном файлы), установленные на локальный компьютер, по умолчанию недоступны. Образ Docker предоставляется для платформ linux/amd64.

Вариант 1. Образ Docker для среды выполнения Colab

Установите Docker на локальный компьютер. Обратите внимание, что europe-docker.pkg.dev и asia-docker.pkg.dev – это копии образа us-docker.pkg.dev ниже для Европы и Азии. Пользователи в этих регионах смогут скачать их быстрее. Образы не различаются между собой. Запустите среду выполнения:

        docker run -p 127.0.0.1:9000:8080 us-docker.pkg.dev/colab-images/public/runtime
      

Чтобы обеспечить поддержку графических процессоров на компьютерах, на которых установлены драйверы NVIDIA и NVIDIA Container Toolkit, используйте команду:

        docker run --gpus=all -p 127.0.0.1:9000:8080 us-docker.pkg.dev/colab-images/public/runtime
      

Образ тестировался на графических процессорах NVIDIA T4, L4 и A100.

После запуска контейнер распечатает сообщение с исходным серверным URL, используемым для аутентификации (например, http://127.0.0.1:9000/?token=...). Скопируйте этот URL – он потребуется при выполнении шага 2.

Вариант 2. Среда выполнения Jupyter

Установите Jupyter на локальный компьютер. Новые серверы для блокнотов запускаются как обычно, но нужно будет добавить подключения WebSocket от клиента Colab в список доверенных, установив метку.

  jupyter notebook \
    --NotebookApp.allow_origin='https://colab.research.google.com' \
    --port=8888 \
    --NotebookApp.port_retries=0 \
    --NotebookApp.allow_credentials=True
    

После запуска сервер распечатает сообщение с исходным серверным URL, используемым для аутентификации. Скопируйте этот URL – он потребуется при выполнении шага 2.

Шаг 2. Подключитесь к локальной среде выполнения

В Colab нажмите кнопку "Подключиться" и выберите "Подключиться к локальной среде выполнения". В открывшемся диалоговом окне введите URL из предыдущего шага и нажмите кнопку "Подключиться". После этого вы подключитесь к локальной среде выполнения.

Настройки определенных браузеров

Обратите внимание, что пользователям браузера Mozilla Firefox необходимо задать параметр network.websocket.allowInsecureFromHTTPS в редакторе настроек Firefox. Сервис Colab подключается к локальному ядру по протоколу WebSocket. По умолчанию в браузере Firefox запрещены подключения с доменов HTTPS по стандартным протоколам WebSocket.

Совместный доступ

Вы можете поделиться своим блокнотом с другими людьми, но у них не будет доступа к среде выполнения на вашем компьютере. По умолчанию блокнот будет запущен в стандартной удаленной среде выполнения Colab.

Все выходные данные кодовых ячеек по умолчанию хранятся на Google Диске. Если локальному подключению будет доступна конфиденциальная информация и вы захотите отменить сохранение выходных данных, выберите Изменить > Настройки блокнота > Исключить выходные данные кодовой ячейки при сохранении блокнота.

Подключение к среде выполнения на другом компьютере

В Colab можно подключиться к среде выполнения, которая запущена на другом компьютере (например, в экземпляре Google Compute Engine). Для этого нужно настроить переадресацию локальных портов SSH.

Сначала настройте среду выполнения с помощью инструкций выше.

Затем установите SSH-подключение между локальной машиной и удаленным экземпляром (например, экземпляром Google Compute Engine), добавив метку "-L". Пример. Чтобы выполнить переадресацию порта 8888 локальной машины на порт 8888 экземпляра Google Compute Engine, выполните следующий код:

gcloud compute ssh --zone YOUR_ZONE YOUR_INSTANCE_NAME -- -L 8888:localhost:8888
    

После этого подключитесь к переадресованному порту в Colab (как описано в пункте "Шаг 2. Подключитесь к локальной среде выполнения").