| # reasons you might want to use `environment.yaml` instead of `requirements.txt`: | |
| # - pip installs packages in a loop, without ensuring dependencies across all packages | |
| # are fulfilled simultaneously, but conda achieves proper dependency control across | |
| # all packages | |
| # - conda allows for installing packages without requiring certain compilers or | |
| # libraries to be available in the system, since it installs precompiled binaries | |
| # in case of errors look here: https://pytorch.org/get-started/previous-versions/ | |
| name: dnabind2 | |
| channels: | |
| - conda-forge | |
| - defaults | |
| - nvidia # GH200 | |
| - pytorch | |
| # it is strongly recommended to specify versions of packages installed through conda | |
| # to avoid situation when version-unspecified packages install their latest major | |
| # versions which can sometimes break things | |
| # current approach below keeps the dependencies in the same major versions across all | |
| # users, but allows for different minor and patch versions of packages where backwards | |
| # compatibility is usually guaranteed | |
| dependencies: | |
| - python=3.10 | |
| - dask[complete] | |
| - pip>=23 | |
| - lightning=2.5.1 | |
| - cudnn=9.10.2.21 | |
| - torchmetrics=0.11.4 | |
| - pip: | |
| - torch==2.6.0+cu124 | |
| - rootutils==1.0.7 | |
| - hydra-core==1.3.2 # Hydra for config management | |
| - hydra-colorlog==1.2.0 # Allow colorful logging in Hydra | |
| - omegaconf==2.3.0 # Required by hydra-core | |
| - pandas==2.2.3 | |
| - lxml==5.3.0 | |
| - pymex==0.9.31 | |
| - gitpython==3.1.44 | |
| - black==25.1.0 # code formatter | |
| - tqdm==4.67.1 | |
| - matplotlib==3.10.3 | |
| - transformers==4.55.2 | |
| - huggingface_hub==0.34.4 | |
| - biopython==1.85 | |
| - ortools==9.14.6206 | |
| - fair-esm==2.0.0 | |
| - scikit-learn==1.7.1 | |
| - rich==14.1.0 | |
| - wandb==0.21.1 | |
| - --extra-index-url https://download.pytorch.org/whl/cu124 | |
| - -e . | |
| # conda install -c nvidia -c conda-forge cuda-toolkit=12.4 ninja cmake -y | |
| # use the toolkit inside the conda env | |
| #export CUDA_HOME="$CONDA_PREFIX" | |
| #export PATH="$CUDA_HOME/bin:$PATH" | |
| #export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$LD_LIBRARY_PATH" | |
| # recommended by many CUDA builds | |
| #export CUDACXX="$CUDA_HOME/bin/nvcc" | |
| #which nvcc && nvcc -V # should now show 12.4 under $CONDA_PREFIX/bin/nvcc | |
| #pip install --no-build-isolation mamba_ssm |