pipとrequirements.txtでパッケージの一括インストール

結論

# 作成
pip freeze > requirements.txt
# インストール
pip install -r requirements.txt

以下本文です

requirements.txtはパッケージとバージョンをセットにしてリスト化したものです。

requirements.txtpip freeze を使用して作成することができます。

pip freeze > requirements.txt
# > はリダイレクト

ちなみに pip freeze を使用すると以下のようなものが表示されます。つまりrequirements.txtにも同じようなものが記載されているはずです。

$ pip freeze
contourpy==1.0.5
cycler==0.11.0
fonttools==4.38.0
kiwisolver==1.4.4
matplotlib==3.6.1
numpy==1.23.4
packaging==21.3
Pillow==9.2.0
pyparsing==3.0.9
python-dateutil==2.8.2
six==1.16.0
torch==1.12.1
typing_extensions==4.4.0

そして、肝心のrequirements.txtからパッケージを一括でインストールする方法ですが、

pip install -r requirements.txt

になります。

これを使用することで、requirements.txtに記載されているバージョンのパッケージがインストールされます。

requirements.txtの使い道として、パッケージが管理しやすくなったり、GitHubなどに挙げることで、他の人と環境を共有することがあります。
JavaScriptでいう package.json のようなものだと思います。(package.jsonにはもっと色々書くことがあると思うけど)
PyTorchのリポジトリを見てみても requirements.txt が用意されています。(バージョンは指定されていませんが)

https://github.com/pytorch/pytorch/blob/master/requirements.txt

コメント