🐥

Conda環境の取扱方法メモ

2022/10/01に公開約8,200字

Stable Diffusionの多くの派生環境をローカルで実行する上で
Anacondaを使用する事でパッケージを環境ごとに分離しておける。
GPUを使用する場合はコンテナ内で色々調整しなきゃいけないイメージのDockerよりも
個人的には現状使いやすいと思っているので基本的な事をメモする。

私の使っているcondaのバージョン

$ conda --version
conda 4.14.0

仮想環境を構築

conda create -n <virtual env name> python=x.x.x <package name>

仮想環境をコピー

conda craete -n <virtual env name> --clone <new virtual env name>

仮想環境に入る

conda activate <virtual env name>

仮想環境から出る

conda deactivate

仮想環境で使用しているパッケージの一覧をリスト表示する
下記はStableDiffusionを動作させる際に構築したldm環境のパッケージの一覧

$ conda list

# packages in environment at /home/keigo/anaconda3/envs/ldm:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main  
_openmp_mutex             5.1                       1_gnu  
analytics-python          1.4.0                    pypi_0    pypi
anyio                     3.6.1                    pypi_0    pypi
backoff                   1.10.0                   pypi_0    pypi
bcrypt                    4.0.0                    pypi_0    pypi
blas                      1.0                         mkl  
blinker                   1.5                      pypi_0    pypi
brotlipy                  0.7.0           py38h27cfd23_1003  
bzip2                     1.0.8                h7b6447c_0  
ca-certificates           2022.07.19           h06a4308_0  
certifi                   2022.6.15        py38h06a4308_0  
cffi                      1.15.1           py38h74dc2b5_0  
chardet                   4.0.0                    pypi_0    pypi
charset-normalizer        2.0.4              pyhd3eb1b0_0  
clip                      1.0                       dev_0    <develop>
cryptography              37.0.1           py38h9ce1e76_0  
cudatoolkit               11.3.1               h2bc3f7f_2  
cycler                    0.11.0                   pypi_0    pypi
entrypoints               0.4                      pypi_0    pypi
fastapi                   0.85.0                   pypi_0    pypi
ffmpeg                    4.3                  hf484d3e_0    pytorch
ffmpy                     0.3.0                    pypi_0    pypi
fonttools                 4.37.1                   pypi_0    pypi
freetype                  2.11.0               h70c0345_0  
future                    0.18.2                   pypi_0    pypi
giflib                    5.2.1                h7b6447c_0  
gmp                       6.2.1                h295c915_3  
gnutls                    3.6.15               he1e5248_0  
gradio                    3.3                      pypi_0    pypi
h11                       0.12.0                   pypi_0    pypi
httpcore                  0.15.0                   pypi_0    pypi
httpx                     0.23.0                   pypi_0    pypi
idna                      2.10                     pypi_0    pypi
intel-openmp              2021.4.0          h06a4308_3561  
jpeg                      9e                   h7f8727e_0  
kiwisolver                1.4.4                    pypi_0    pypi
lame                      3.100                h7b6447c_0  
latent-diffusion          0.0.1                     dev_0    <develop>
lcms2                     2.12                 h3be6417_0  
ld_impl_linux-64          2.38                 h1181459_1  
lerc                      3.0                  h295c915_0  
libdeflate                1.8                  h7f8727e_5  
libffi                    3.3                  he6710b0_2  
libgcc-ng                 11.2.0               h1234567_1  
libgfortran-ng            11.2.0               h00389a5_1  
libgfortran5              11.2.0               h1234567_1  
libgomp                   11.2.0               h1234567_1  
libiconv                  1.16                 h7f8727e_2  
libidn2                   2.3.2                h7f8727e_0  
libpng                    1.6.37               hbc83047_0  
libstdcxx-ng              11.2.0               h1234567_1  
libtasn1                  4.16.0               h27cfd23_0  
libtiff                   4.4.0                hecacb30_0  
libunistring              0.9.10               h27cfd23_0  
libuv                     1.40.0               h7b6447c_0  
libwebp                   1.2.2                h55f646e_0  
libwebp-base              1.2.2                h7f8727e_0  
linkify-it-py             1.0.3                    pypi_0    pypi
lz4-c                     1.9.3                h295c915_1  
markdown                  3.4.1                    pypi_0    pypi
markdown-it-py            2.1.0                    pypi_0    pypi
matplotlib                3.5.3                    pypi_0    pypi
mdit-py-plugins           0.3.0                    pypi_0    pypi
mdurl                     0.1.2                    pypi_0    pypi
mkl                       2021.4.0           h06a4308_640  
mkl-service               2.4.0            py38h7f8727e_0  
mkl_fft                   1.3.1            py38hd3c417c_0  
mkl_random                1.2.2            py38h51133e4_0  
monotonic                 1.6                      pypi_0    pypi
ncurses                   6.3                  h5eee18b_3  
nettle                    3.7.3                hbbd107a_1  
numpy                     1.19.2           py38h7895c89_1  
numpy-base                1.19.2           py38h4c65ebe_1  
oauthlib                  3.2.1                    pypi_0    pypi
opencv-python-headless    4.6.0.66                 pypi_0    pypi
openh264                  2.1.1                h4ff587b_0  
openssl                   1.1.1q               h7f8727e_0  
orjson                    3.8.0                    pypi_0    pypi
paramiko                  2.11.0                   pypi_0    pypi
pillow                    9.2.0            py38hace64e9_1  
pip                       20.3.3           py38h06a4308_0  
pycparser                 2.21               pyhd3eb1b0_0  
pycryptodome              3.15.0                   pypi_0    pypi
pydantic                  1.10.2                   pypi_0    pypi
pydub                     0.25.1                   pypi_0    pypi
pynacl                    1.5.0                    pypi_0    pypi
pyopenssl                 22.0.0             pyhd3eb1b0_0  
pyparsing                 3.0.9                    pypi_0    pypi
pysocks                   1.7.1            py38h06a4308_0  
python                    3.8.5                h7579374_1  
python-multipart          0.0.5                    pypi_0    pypi
pytorch                   1.11.0          py3.8_cuda11.3_cudnn8.2.0_0    pytorch
pytorch-mutex             1.0                        cuda    pytorch
pyyaml                    6.0                      pypi_0    pypi
readline                  8.1.2                h7f8727e_1  
requests                  2.28.1           py38h06a4308_0  
rfc3986                   1.5.0                    pypi_0    pypi
setuptools                63.4.1           py38h06a4308_0  
six                       1.16.0             pyhd3eb1b0_1  
sniffio                   1.3.0                    pypi_0    pypi
sqlite                    3.39.2               h5082296_0  
starlette                 0.20.4                   pypi_0    pypi
streamlit                 1.12.2                   pypi_0    pypi
taming-transformers       0.0.1                     dev_0    <develop>
tk                        8.6.12               h1ccaba5_0  
torchvision               0.12.0               py38_cu113    pytorch
typing_extensions         4.3.0            py38h06a4308_0  
uc-micro-py               1.0.1                    pypi_0    pypi
urllib3                   1.26.11          py38h06a4308_0  
uvicorn                   0.18.3                   pypi_0    pypi
websockets                10.3                     pypi_0    pypi
wheel                     0.37.1             pyhd3eb1b0_0  
xz                        5.2.5                h7f8727e_1  
zlib                      1.2.12               h5eee18b_3  
zstd                      1.5.2                ha4553b6_0  

仮想環境に特定パッケージのインストール

conda install -n <virtual env name> <package name>

バージョンを指定してパッケージを仮想環境にインストール

conda install <package name>==x.x.x

パッケージのアップデート

conda update <package name>
conda remove <package name>
GitHubで編集を提案

Discussion

ログインするとコメントできます