Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Common issues with installing BindCraft - please add to Readme #123

Closed
linuxfold opened this issue Dec 8, 2024 · 3 comments
Closed

Common issues with installing BindCraft - please add to Readme #123

linuxfold opened this issue Dec 8, 2024 · 3 comments

Comments

@linuxfold
Copy link

I was unable to install with the included install script. It seemed to try to solve forever. I am using CUDA 12.7.

I tried running the test command python -u ./bindcraft.py --settings './settings_target/PDL1.json' --filters './settings_filters/default_filters.json' --advanced './settings_advanced/default_4stage_multimer.json' and installing everything that said was missing.

This is the output after installing everything I could and then running the test command:
Available GPUs:
NVIDIA GeForce RTX 40901: gpu
[....]
Traceback (most recent call last):
File "/home/user/Documents/BindCraft/./bindcraft.py", line 41, in
design_paths = generate_directories(target_settings["design_path"])
File "/home/user/Documents/BindCraft/functions/generic_utils.py", line 50, in generate_directories
os.makedirs(path, exist_ok=True)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/os.py", line 215, in makedirs
makedirs(head, exist_ok=exist_ok)
[Previous line repeated 2 more times]
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/os.py", line 225, in makedirs
mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/content'

@linuxfold
Copy link
Author

linuxfold commented Dec 8, 2024

I think I figured out that issue... having to edit the json file to point to the correct paths.

Now when I run I get the following output after the GPUs:

┌──────────────────────────────────────────────────────────────────────────────┐
│ PyRosetta-4 │
│ Created in JHU by Sergey Lyskov and PyRosetta Team │
│ (C) Copyright Rosetta Commons Member Institutions │
│ │
│ NOTE: USE OF PyRosetta FOR COMMERCIAL PURPOSES REQUIRE PURCHASE OF A LICENSE │
│ See LICENSE.PyRosetta.md or email [email protected] for details │
└──────────────────────────────────────────────────────────────────────────────┘
PyRosetta-4 2024 [Rosetta PyRosetta4.Release.python310.ubuntu 2024.42+release. 2024-10-11T08:24:04] retrieved from: http://www.pyrosetta.org
Starting trajectory: PDL1_l140_s329539
WARNING: 'model_1_multimer_v3' not found
WARNING: 'model_2_multimer_v3' not found
WARNING: 'model_3_multimer_v3' not found
WARNING: 'model_4_multimer_v3' not found
WARNING: 'model_5_multimer_v3' not found
Stage 1: Test Logits
Traceback (most recent call last):
File "/home/user/Documents/BindCraft/./bindcraft.py", line 106, in
trajectory = binder_hallucination(design_name, target_settings["starting_pdb"], target_settings["chains"],
File "/home/user/Documents/BindCraft/functions/colabdesign_utils.py", line 97, in binder_hallucination
af_model.design_logits(iters=50, e_soft=0.9, models=design_models, num_models=1, sample_models=advanced_settings["sample_models"], save_best=True)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 346, in design_logits
self.design(iters, **kwargs)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 340, in design
self.step(lr_scale=lr_scale, num_recycles=num_recycles,
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 206, in step
self.run(num_recycles=num_recycles, num_models=num_models, sample_models=sample_models,
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 89, in run
model_nums = self._get_model_nums(num_models, sample_models, models)
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 71, in _get_model_nums
ns = [ns[n if isinstance(n,int) else ns_name.index(n)] for n in models]
File "/home/user/anaconda3/envs/BindCraft/lib/python3.10/site-packages/colabdesign/af/design.py", line 71, in
ns = [ns[n if isinstance(n,int) else ns_name.index(n)] for n in models]
IndexError: list index out of range

@linuxfold
Copy link
Author

linuxfold commented Dec 9, 2024

Was able to solve this problem with issue #76 .

Had to edit the af_params_dir in default_4stage_multimer.json to point to the params.

I think it is working now. Got this error but it seems to be proceeding:

2024-12-08 18:17:33.591370: W external/xla/xla/service/gpu/ir_emitter_unnested.cc:1171] Unable to parse backend config for custom call: Could not convert JSON string to proto: Expected : between key:value pair.
= true, full_matrice
^
Fall back to parse the raw backend config str.

It output the following:
Trajectory successful, final pLDDT: 0.93
Starting trajectory took: 0 hours, 5 minutes, 7 seconds

Then I got this error:

Traceback (most recent call last):
  File "/home/user/Documents/BindCraft/./bindcraft.py", line 169, in <module>
    mpnn_trajectories = mpnn_gen_sequence(trajectory_pdb, binder_chain, trajectory_interface_residues, advanced_settings)
  File "/home/user/Documents/BindCraft/functions/colabdesign_utils.py", line 345, in mpnn_gen_sequence
    mpnn_model = mk_mpnn_model(backbone_noise=advanced_settings["backbone_noise"], model_name=advanced_settings["model_path"], weights=advanced_settings["mpnn_weights"])
TypeError: mk_mpnn_model.__init__() got an unexpected keyword argument 'weights'

@linuxfold
Copy link
Author

linuxfold commented Dec 9, 2024

A few hours later... and found from #28

pip uninstall colabdesign

pip install git+https://github.com/sokrypton/ColabDesign

fixes TypeError: mk_mpnn_model.init() got an unexpected keyword argument 'weights'

I think it is working now... Changed the input file to 5 sequences...

Target number 5 of designs reached! Reranking...
Files in folder '/home/user/Outputs/PDL1/Trajectory/Animation' have been zipped and removed.
Files in folder '/home/user/Outputs/PDL1/Trajectory/Plots' have been zipped and removed.
Finished all designs. Script execution for 12 trajectories took: 1 hours, 37 minutes, 23 seconds

Adding extra installation commands for my records:

pip for everything except ffmpeg (use conda)

numpy==1.26.4
matplotlib==3.9.1

Jax:
pip install -U "jax[cuda12]"

Pyrosetta:
pip install pyrosetta-installer
python -c 'import pyrosetta_installer; pyrosetta_installer.install_pyrosetta()'

@linuxfold linuxfold changed the title Permission Error - was unable to install with install script Common issues with installing BindCraft - please add to Readme Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants