如何在Google Colab中保存pip环境 避免重复安装依赖
Colab 免重复安装 Magenta 的可行方案
Colab 实例回收后系统盘数据会全部清空,这是每次重启都要重装依赖的核心原因,不需要每次重新走pip全量安装流程,以下三种方案都可以解决重复耗时的问题:
方案1:将依赖直接安装到Google Drive持久化存储
这是最稳定、后续使用成本最低的方案,只需要第一次执行完整安装,后续启动几秒就能加载完成:
- 笔记本开头先挂载Google Drive,按弹窗提示完成授权:
from google.colab import drive drive.mount('/content/drive')
- 第一次使用时,指定pip把magenta全量安装到Drive的专属目录,不要装到实例默认的临时系统路径:
!pip install --target='/content/drive/MyDrive/colab_deps/magenta' magenta
- 后续所有新开的Colab笔记本,只需要在最开头加两行代码,把Drive里的依赖路径加到Python的搜索路径中,不需要再执行pip安装:
import sys sys.path.append('/content/drive/MyDrive/colab_deps/magenta')
执行完这两行就可以直接import magenta正常使用,加载过程耗时不超过5秒。如果后续需要升级magenta版本,重新执行一次带--target参数的pip安装命令覆盖旧文件即可。
方案2:持久化pip缓存目录压缩安装耗时
如果不想修改Python包的加载路径,可以把pip的下载缓存目录挂到Drive,后续安装时直接读取本地缓存的安装包,不需要重复从源站下载,安装耗时可以从30分钟压缩到1-2分钟:
- 每次启动笔记本挂载Drive后,先配置pip的缓存路径:
!mkdir -p /content/drive/MyDrive/pip_cache !pip config set global.cache-dir /content/drive/MyDrive/pip_cache
- 配置完成后再执行
!pip install magenta,第一次运行时会自动把所有下载的whl包、依赖文件存到Drive的缓存目录,后续新开实例执行同样的安装命令时,pip会直接调用缓存文件,不需要重复联网下载,安装速度会大幅提升。
方案3:打包预配置环境直接解压使用
第一次在Colab实例里完成magenta全量安装后,可以把整个装好的依赖目录打包存到Drive,后续启动直接解压到系统路径即可:
- 第一次安装完成后,先执行
!python --version确认当前Colab默认的Python版本(目前默认是3.10),然后把对应路径下的site-packages打包存到Drive:
!zip -r /content/drive/MyDrive/magenta_env.zip /usr/local/lib/python3.10/dist-packages/
- 后续每次启动笔记本,直接执行解压命令把预装好的依赖覆盖到系统路径:
!unzip -q /content/drive/MyDrive/magenta_env.zip -d /
解压过程耗时不到1分钟,完成后直接导入包即可使用。
注意事项:
- Colab会不定期升级默认Python版本,如果加载包时出现版本不兼容报错,在新版本环境下重新执行一次安装/打包流程,覆盖Drive里的旧文件即可
- 打包环境时尽量用Colab默认的标准运行时,不要混用GPU/TPU运行时安装的带特殊二进制编译的包,避免出现兼容性问题
- 不要把不同Python版本的依赖混存在同一个Drive目录里,容易出现导入异常
内容的提问来源于stack exchange,提问作者whitebear
相关产品推荐
相关产品推荐

