# Install poetry ## Install [Official HP](https://python-poetry.org/docs/)にある以下のコマンドを実行 Ubuntuイメージを使ったDockerコンテナにインストールする場合,22.04じゃないとインストールできなかった.. ```bash $ curl -sSL https://install.python-poetry.org | python3 - # PATHの追加 $ echo "export PATH="/home/ryoukun/.local/bin:$PATH"" >> ~/.bashrc # Terminalを再起動しない場合,設定ファイルを手動でリロード $ source ~/.bashrc # インストールの確認 $ poetry --version ``` ## Install後にすること 初期状態では,`~/.poetry/` (Linux) に保存される. コマンドを実行する際,環境生成のたびに参照パスが変わったりとめんど!! そこで,プロジェクトフォルダ下に生成されるよう設定変更する. ```bash $ poetry config --list $ poetry config virtualenvs.in-project true ``` ## poetry自身のアップデート ```bash $ poetry self update ``` ## python versionの切り替え requirement: pyenv ```bash $ pyenv install 3.11.4 $ pyenv local 3.11.4 $ poetry env use 3.11.4 ``` ## PyPIに存在しないパッケージをインストール GPU版Pytorchのような`pip ... --index-url ...`を必要とするとき requirement: poetry 1.5.1 ```bash # pytorch+cpuの例 $ poetry source add torch_cpu --priority=explicit https://download.pytorch.org/whl/cpu $ poetry add torch torchvision torchaudio --source torch_cpu ``` ## dependenciesにgroupを使う パッケージをグループに分けることができる 例えば,環境によってCPU版 or GPU版のグループを指定して,インストール 他には,開発用のパッケージを開発時のみグループで指定して,インストール 使い方は単純で,`poetry add --group `で依存関係の追加 インストールする際に,`poetry install --with `とwithオプションで指定 オプションは色々ある. with: mainに加えて,指定したグループもインストールする only: 指定したグループのみ requirement: poetry 1.5.1 ```bash # pytorch+cpu or gpuの例 $ poetry source add torch_cpu --priority=explicit https://download.pytorch.org/whl/cpu # ダウンロード元の指定 $ poetry add torch torchvision torchaudio --source torch_cpu --group cpu # 依存関係の追加 $ poetry source add torch_gpu --priority=explicit https://download.pytorch.org/whl/cu117 # ダウンロードし元の指定 $ poetry add torch torchvision torchaudio --source torch_gpu --group gpu # 依存関係の追加 $ poetry install --with gpu # cpuとすれば,CPU版がインストールできる # gpu版もインストール ``` ## Reference 1, [https://zenn.dev/zerebom/articles/b338784c8ac76a](https://zenn.dev/zerebom/articles/b338784c8ac76a)