-
Notifications
You must be signed in to change notification settings - Fork 67
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
AF2 Dependencies for af2_metrics.py #26
Comments
We've tried to create a fully self-enclosed environment but it's been
challenging. This will probably get done at some point but it might take
awhile for one of us to get to it.
In the short term, have you tried creating a completely new environment and
installing all the packages from scratch? There shouldn't be any dependency
conflicts if you're installing from scratch.
Also, openmm isn't needed unless you're doing amber relax in the AF2
prediction script. Our script is designed to process large batches of
designs at a time, and you wouldn't really want to use relax in that
setting anyway bc it takes so long. (and if you're not processing large
batches of designs, you could easily use any other AF2 script, including
the google colab notebooks from deepmind or colabfold)
I'm not sure what would happen if you tried to create the same environment
twice but the documentation probably explains this:
https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#creating-an-environment-with-commands
…On Thu, Sep 15, 2022 at 4:59 AM Germanki ***@***.***> wrote:
(also discussed in #7
<#7>)
Hi RFDesign Team,
Thank you very much for sharing RFDesign and providing the tutorials!
I am trying to run the af2_metrics.py script however the SE3-nvidia.yml
file does not contain a number of modules required to run it.
So far I have identified the following needing to be installed: dm-tree,
biopython, dm-haiku, absl-py, jaxlib, jax, ml_collections, tensorflow
I got up to PDBfixer and its requirement openmm but unfortunately, openmm
wouldn't install because of environment conflicts.
I notice that the same issue has been highlighted in issue #7
<#7> and so I have tried
to install various different correct versions of the different libraries
and I have also gone to the alpha fold git repo to identify their
requirements.txt folders. Unfortunately, I am still not having any luck
with getting the environment conflicts to solve :(
You mentioned in #7 <#7>
that you were working on a major update to the repo that would solve this
env issue but I notice that the SE3-nvidia.yml file still doesn't contain
some of the above.
I was wondering if you might be able to update the yml file to build the
right conda environment?
Would I then be able to run the conda env -f create SE3-nvidia.yml again
and it would overwrite the previous SE3-nvidia env with the new updated one?
Thank you!
—
Reply to this email directly, view it on GitHub
<#26>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABCU55BAZFUD6FAFBCN42LV6MFS7ANCNFSM6AAAAAAQNKIPGY>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Hi Jue, Thank you so much for your quick reply! Sorry to hear that it has been challenging to create a fully self-enclosed environment. Yes, I started on a blank machine, created a new environment using the SE3-nvidia.yml file, then when I ran the af2_metrics command, as each error came back explaining which module was not installed, I installed them one by one using 'conda install'. This was successful up until openmm. ("conda install -c conda-forge openmm" had too many envrionment conflicts) Thanks for the heads up about openmm. I was trying to install it because pdbfixer was required by af2_metrics.py (specifically when it called: cleanup.py - see attached code below) and installing pdbfixer apparently requires openmm (installation instructions for pdbfixer from their github: https://htmlpreview.github.io/?https://github.com/openmm/pdbfixer/blob/master/Manual.html)
Though I note that this is indeed calling the amber relax function! Is there any way to stop this from happening when I run the af2_metrics.py command? With Many Thanks, |
I mean make a completely blank environment, not using the provided yml
file, and install the dependencies one by one until you don't get any more
errors.
To remove the dependence on amber relax, comment out the line in
af2_metrics.py that says "from alphafold.relax import relax"
…On Fri, Sep 16, 2022 at 4:01 AM Germanki ***@***.***> wrote:
Hi Jue,
Thank you so much for your quick reply!
Sorry to hear that it has been challenging to create a fully self-enclosed
environment.
Yes, I started on a blank machine, created a new environment using the
SE3-nvidia.yml file, then when I ran the af2_metrics command, as each error
came back explaining which module was not installed, I installed them one
by one using 'conda install'. This was successful up until openmm. ("conda
install -c conda-forge openmm" had too many envrionment conflicts)
Thanks for the heads up about openmm. I was trying to install it because
pdbfixer was required by af2_metrics.py (specifically when it called:
cleanup.py - see attached code below) and installing pdbfixer apparently
requires openmm (installation instructions for pdbfixer from their github:
https://htmlpreview.github.io/?https://github.com/openmm/pdbfixer/blob/master/Manual.html
)
File "/home/ec2-user/RFDesign/scripts/../hallucination/models/alphafold/alphafold/relax/amber_minimize.py", line 25, in <module>
from alphafold.relax import cleanup
File "/home/ec2-user/RFDesign/scripts/../hallucination/models/alphafold/alphafold/relax/cleanup.py", line 22, in <module>
import pdbfixer
File "/opt/conda/envs/SE3-nvidia/lib/python3.9/site-packages/pdbfixer-1.8.1-py3.9.egg/pdbfixer/__init__.py", line 2, in <module>
from .pdbfixer import PDBFixer
File "/opt/conda/envs/SE3-nvidia/lib/python3.9/site-packages/pdbfixer-1.8.1-py3.9.egg/pdbfixer/pdbfixer.py", line 35, in <module>
import openmm as mm
ModuleNotFoundError: No module named 'openmm'
Though I note that this is indeed calling the amber relax function! Is
there any way to stop this from happening when I run the af2_metrics.py
command?
I am currently running: ./af2_metrics.py RFDesign/inpainting/mytests/out
in the scripts folder
With Many Thanks,
Adam
—
Reply to this email directly, view it on GitHub
<#26 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AABCU5Y6OI36H3I5VZDVPULV6RHSFANCNFSM6AAAAAAQNKIPGY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Hi Jue, Thank you for the suggestions! Commenting out the line does af2_metrics.py that says "from alphafold.relax import relax" does indeed fix this particular problem! Thank you! Though there is now a problem that the alpha fold model parameters are not installed #27 |
SOLUTION TO THIS PROBLEM IS TO COMMENT OUT LINE 40 of does af2_metrics.py that says "from alphafold.relax import relax"
(also discussed in #7)
Hi RFDesign Team,
Thank you very much for sharing RFDesign and providing the tutorials!
I am trying to run the af2_metrics.py script however the SE3-nvidia.yml file does not contain a number of modules required to run it.
So far I have identified the following needing to be installed: dm-tree, biopython, dm-haiku, absl-py, jaxlib, jax, ml_collections, tensorflow
I got up to PDBfixer and its requirement openmm but unfortunately, openmm wouldn't install because of environment conflicts.
I notice that the same issue has been highlighted in issue #7 and so I have tried to install various different correct versions of the different libraries and I have also gone to the alpha fold git repo to identify their requirements.txt folders. Unfortunately, I am still not having any luck with getting the environment conflicts to solve :(
You mentioned in #7 that you were working on a major update to the repo that would solve this env issue but I notice that the SE3-nvidia.yml file still doesn't contain some of the above.
I was wondering if you might be able to update the yml file to build the right conda environment?
Would I then be able to run the conda env -f create SE3-nvidia.yml again and it would overwrite the previous SE3-nvidia env with the new updated one?
Thank you!
The text was updated successfully, but these errors were encountered: