見出し画像

【Mac】Google Colab + poetryを用いた仮想環境構築

はじめに

以前はCursorの仮想環境構築について簡単にまとめたが、深層学習用にGPUが欲しくなったのでGoogle Colabでの環境構築も始めた

ディレクトリ構造

Colab Notebooks/
└── sample/ # プロジェクトのフォルダ
 ├── README.md # プロジェクトの概要説明
 ├── pyproject.toml # Poetryのプロジェクト設定ファイル
 ├── poetry.lock # 依存関係を固定するためのロックファイル
 ├── code/ # ソースコードのフォルダ
  └── __init__.py # パッケージ化用の初期化ファイル

Google Driveをマウント

# Google Driveをマウント
from google.colab import drive
drive.mount('/content/drive')     

ディレクトリ作成

work_dirの"sample"を適宜変える

# プロジェクトディレクトリを定義
root_dir = "/content/drive/MyDrive/Colab Notebooks"
work_dir = f"{root_dir}/sample"
code_dir = f"{work_dir}/code"

# 必要なディレクトリを作成
import os
os.makedirs(work_dir, exist_ok=True)
os.makedirs(code_dir, exist_ok=True)
# README.mdの作成
with open(f"{work_dir}/README.md", "w") as file:
    file.write("# Sample Project\nThis is a sample project.")
# sample/__init__.pyファイルの作成
with open(f"{code_dir}/__init__.py", "w") as file:
    file.write("# Init file for the sample package")
# プロジェクトディレクトリに移動
os.chdir(work_dir)     

poetry環境作成

# Poetryのインストール
!curl -sSL https://install.python-poetry.org | python3 -

# 任意の場所に .venv フォルダを作り仮想環境を管理
!poetry config virtualenvs.in-project true

# グローバルな `python` に存在するライブラリを使えるように設定
!poetry config virtualenvs.options.system-site-packages true

ライブラリ追加

# ライブラリインストール
!poetry add torch
!poetry install --no-root

poetry add コマンドでpytorchを追加

仮想環境を有効にする

# 仮想環境のパスをsys.pathに追加して、仮想環境内のパッケージが使えるようにする 
import sys 
venv_site_packages = f"{work_dir}/.venv/lib/python3.10/site-packages" 
sys.path.append(venv_site_packages)

Colabではセルごとに独立したシェルを使っているため、仮想環境を明示的に有効化する必要がある
なのでsys.path.append() で仮想環境内の site-packages を手動でPythonのパスに追加している

最後にimportで確認

これでcolabでもパッケージ管理できるようになった

参考文献


この記事が気に入ったらサポートをしてみませんか?