インストール

pdb2reaction は、CUDA 対応 GPU を備えた Linux 環境(ローカルワークステーションまたは HPC クラスター)が必要です。特に PyTorchfairchem-core (UMA)gpu4pyscf-cuda12x などの依存関係は、動作する CUDA インストールを前提としています。

詳細は上流プロジェクトを参照してください:

クイックスタート

以下は多くの CUDA 12.9 クラスターで動作する最小限のセットアップ例です。モジュール名やバージョンはお使いの環境に合わせて調整してください。この例はデフォルトの GSM による MEP 探索(--mep-mode gsm)を前提としています。DMF(--mep-mode dmf)を使用する場合は、先に conda で cyipopt をインストールしてください。

必須

# 1) CUDA 対応の PyTorchビルドをインストール
# 2) pdb2reactionをインストール
# 3) Plotly 静的画像 (PNG) エクスポート用のヘッドレス Chrome をインストール
#    ~150 MB の Chromium バイナリをダウンロード(インターネット接続必要)

pip install torch --index-url https://download.pytorch.org/whl/cu129
pip install pdb2reaction
plotly_get_chrome -y

最後に、UMA モデルをダウンロードできるように Hugging Face Hub にログインします(無料の HF アカウントと読み取り専用トークンが必要。https://huggingface.co/facebook/UMA でモデルライセンスの承認が必要な場合あり):

huggingface-cli login
# または
hf auth login --token '<YOUR_ACCESS_TOKEN>' --add-to-git-credential

これはマシン/環境ごとに1回だけ行う必要があります。

任意

  • MEP 探索で Direct Max Flux(DMF)法を使用する場合は、conda 環境を作成し、pdb2reaction のインストール前に cyipopt をインストールしてください。

    # 専用のconda環境を作成してアクティブ化
    conda create -n pdb2reaction python=3.11 -y
    conda activate pdb2reaction
    
    # cyipoptをインストール(MEP 探索のDMF法に必要)
    conda install -c conda-forge cyipopt -y
    
  • 環境モジュールを使用する HPC クラスターでは、PyTorch をインストールする前に CUDA をロードしてください。module avail cuda で利用可能なバージョンを確認し、ターゲットの PyTorch wheel に合うバージョン(例: cu126 ↔ CUDA 12.6、cu129 ↔ CUDA 12.9)をロードしてください:

    module load cuda/<your-version>   # 例: cuda/12.6 または cuda/12.9
    

ヒント: UMA がデフォルトの MLIP バックエンドです。ORB や AIMNet2 を使用するには、対応する extra をインストール(例: pip install "pdb2reaction[orb]")し、コマンドに -b/--backend orb を渡してください。詳細なインストール手順の手順 7 を参照してください。

Warning

MACE: MACE は e3nn==0.4.4 を必要としますが、fairchem-core(UMA)と競合します。正準の MACE 導入手順は pip uninstall -y fairchem-core && pip install mace-torch です。UMA と MACE は同一環境で共存できないため、両方必要な場合は別々の conda 環境を使ってください。(古いメモにある --no-deps mace-torch 方式は torch-scatter / e3nn が pin されないため推奨しません。)

詳細なインストール手順

環境を段階的に構築する場合:

  1. CUDAをロード(HPCで環境モジュールを使用する場合)

    module avail cuda で利用可能なバージョンを確認し、ターゲットの PyTorch wheel に合うバージョン(例: cu126 は CUDA 12.6、cu129 は CUDA 12.9)をロードしてください:

    module load cuda/<your-version>
    
  2. conda環境を作成してアクティブ化

    conda create -n pdb2reaction python=3.11 -y
    conda activate pdb2reaction
    
  3. cyipopt をインストール MEP 探索で DMF 法(--mep-mode dmf)を使用する場合に必要です。GSM のみを使用する場合はスキップできます。

    conda install -c conda-forge cyipopt -y
    
  4. 適切なCUDAビルドのPyTorchをインストール

    CUDA 12.9の場合:

    pip install torch --index-url https://download.pytorch.org/whl/cu129
    

    PyTorch は CUDA ドライバーバージョンに合わせたビルドが必要です。互換性は PyTorch Get Started で確認してください。CPU のみの実行もサポートされますが、大幅に遅くなります(10-100 倍)。

  5. pdb2reaction 本体と可視化用Chromeをインストール

    pip install pdb2reaction
    plotly_get_chrome -y
    
  6. Hugging Face Hub (UMAモデル) にログイン

    hf auth login
    

    参照:

  7. (任意)追加の MLIP バックエンドをインストール

    pdb2reaction はデフォルトで UMA を使用します。他のバックエンドを使用する場合は、対応するオプション依存関係をインストールしてください:

    # ORB バックエンド
    pip install "pdb2reaction[orb]"
    
    # AIMNet2 バックエンド
    pip install "pdb2reaction[aimnet]"
    
    # MACE バックエンド (UMA と競合 — 先に fairchem-core をアンインストール)
    pip uninstall -y fairchem-core && pip install mace-torch
    
    # DFT 一点計算の後処理(`--dft` / `pdb2reaction dft`)
    # gpu4pyscf-cuda12x、PySCF、および関連依存をインストールします。
    pip install "pdb2reaction[dft]"
    

    暗黙溶媒補正を使用するには、xTB をインストールし、xtb コマンドが PATH 上で利用可能であることを確認してください。

    xTB のインストール

    ALPB 溶媒和モデルの場合(推奨の出発点):

    conda install -c conda-forge xtb
    

    CPCM-X 溶媒和モデルの場合(ソースからのビルドが必要):

    git clone --depth 1 https://github.com/grimme-lab/xtb.git
    cd xtb
    cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -DWITH_CPCMX=ON
    make -C build -j8
    

    GCC >= 10 が必要です。実行時に CPXHOMEbuild/_deps/cpcmx-src/ に設定してください。

    カスタム xTB バイナリを使用するには、YAML 設定で xtb_cmd キーを設定するか、Python で calc.xtb_cmd を使用してください。

  8. インストールの確認

    pdb2reaction --version
    

    インストールされたバージョンが表示されます。GPU アクセスの確認:

    python -c "import torch; print('CUDA:', torch.cuda.is_available(), torch.cuda.get_device_name(0) if torch.cuda.is_available() else 'N/A')"
    

    CUDA: False の場合、CUDA モジュールのロードと PyTorch ビルドの CUDA バージョンを確認してください。

次の導線