首页 > 解决方案 > 如何在 Google Colab 的 Google Drive 上安装 conda?

问题描述

! wget https://repo.anaconda.com/miniconda/Miniconda3-py37_4.8.2-Linux-x86_64.sh
! chmod +x Miniconda3-py37_4.8.2-Linux-x86_64.sh
! bash ./Miniconda3-py37_4.8.2-Linux-x86_64.sh -b -f -p /usr/local
import sys
sys.path.append('/usr/local/lib/python3.7/site-packages/')

此代码单元为我的 Google Colab 安装 conda。Colab 对其会话有时间限制,它会在 8 或 9 小时的活动计算后重置环境状态和数据,因此我需要一次又一次地重新启动此单元。

有没有办法在 Google Drive 上安装 conda 和我所需的所有软件包?

标签: anacondagoogle-colaboratory

解决方案


这不是一个完美的解决方案,但它可能比每次都下载和构建新的 conda 安装更快。步骤概述:

  1. 将 conda 安装到 Colab 上的本地目录中,压缩此目录并将其存储在 Google Drive 上。
  2. 当您启动新的 Colab 笔记本或重新启动现有笔记本时,运行代码块以从 Google Drive 获取 conda 安装并重新设置环境。

1.创建conda安装和你需要的包(一次)

下载并安装 miniconda 到/content/miniconda3目录:

%env PYTHONPATH=
! wget https://repo.anaconda.com/miniconda/Miniconda3-py37_4.9.2-Linux-x86_64.sh
! chmod +x Miniconda3-py37_4.9.2-Linux-x86_64.sh
! bash ./Miniconda3-py37_4.9.2-Linux-x86_64.sh -b -f -p /content/miniconda3

将 miniconda 添加到系统PATH

import os
path = '/content/miniconda3/bin:' + os.environ['PATH']
%env PATH=$path

安装你需要的 conda 包(例如 packagexyz):

!conda install -c conda-forge packagexyz -y

可选代码块:检查 packagexyz 是否正常工作。这应该打印 packagexyz 的版本及其在 conda 目录中的位置:

import sys
_ = sys.path.append("/content/miniconda3/lib/python3.7/site-packages")
import packagexyz
print(packagexyz.__version__, packagexyz.__file__)

将所有内容复制到 Google Drive(单击链接以获取身份验证代码,然后将其粘贴到框中):

from google.colab import drive 
drive.mount('/content/drive')
!tar -zcf conda_colab.tar.gz /content/miniconda3
!cp conda_colab.tar.gz /content/drive/My\ Drive/

2. 将 conda 复制回 Colab(在重启笔记本时运行)

挂载Google Drive(需要再次输入验证码),拷贝回conda安装,重新设置环境:

from google.colab import drive 
drive.mount('/content/drive')

!tar -xf /content/drive/My\ Drive/conda_colab.tar.gz -C ../

import os
path = '/content/miniconda3/bin:' + os.environ['PATH']
%env PATH=$path
%env PYTHONPATH=
import sys
_ = sys.path.append("/content/miniconda3/lib/python3.7/site-packages")

笔记

  • 此解决方案仅经过轻微测试。您可能需要根据您安装的软件包设置其他环境变量。
  • tar通过调整压缩设置,第 2 步可能会更快。如果你有一个非常大的 conda 安装,请考虑在第 1 步和第 2 步开始时使用apt-get安装pigz,然后添加--use-compress-program=pigz!tar...命令以并行化压缩和解压缩步骤。

推荐阅读