Cannot Run Structure Prediction – Missing Modules
Issue Summary
As a user attempting to utilize OpenFold for local protein structure prediction without training, we encountered several issues with the available commits, including main
and v2.1.0
. Specifically, we faced the following problems:
- Missing Module Error: The
run_pretrained_openfold.py
script failed due to the absence of theattn_core_inplace_cuda
module. - Missing Script: The
scripts/predict_from_model.py
script was referenced in issues but not present in the repository. - Non-Functional Docker Image: The provided Dockerfile did not build a working image.
- Lack of Guidance: There is no official guidance on which commit is usable for structure prediction only.
What I Tried
To resolve these issues, we took the following steps:
- Cloned the Repository: We cloned the OpenFold repository using the command
git clone -b v.2.1.0 https://github.com/aqlaboratory/openfold.git
. - Installed Dependencies: We installed all dependencies, including
ml_collections
,modelcif
,triton
, etc. - Tried Various Commits: We tried various commits, including
f434a2786b5a6b39171f358fb3470ad9f4fd2a58
. - Built Docker Image: We attempted to build a Docker image from the
docker/Dockerfile
.
Unfortunately, all these attempts resulted in either module import errors or missing scripts.
Questions
We have the following questions regarding the usage of OpenFold for structure prediction:
- Specific Commit or Tag: Is there a specific commit or tag where structure prediction works out-of-the-box?
- Installing or Compiling
attn_core_inplace_cuda
: How to properly install or compile theattn_core_inplace_cuda
module? Is there any documentation available? - Known Working Dockerfile or Base Image: Can you provide a known working Dockerfile or a base image?
Conclusion
We appreciate the excellent work on the OpenFold project and would be grateful if we could get a working version running. We believe that resolving these issues will enable us to utilize OpenFold for real-world structure prediction.
Troubleshooting Steps
To troubleshoot the issues with OpenFold, we can take the following steps:
Step 1: Verify the Repository Clone
Ensure that the repository was cloned correctly by checking the commit hash and the presence of all files.
Step 2: Install Dependencies
Verify that all dependencies, including ml_collections
, modelcif
, triton
, etc., are installed correctly.
Step 3: Check Commit Hash
Check the commit hash used to clone the repository to ensure it is correct.
Step 4: Build Docker Image
Attempt to build a Docker image from the docker/Dockerfile
to ensure it is working correctly.
Step 5: Consult Documentation
Consult the OpenFold documentation for any guidance on using the attn_core_inplace_cuda
module or any other related issues.
Potential Solutions
Based on the issues encountered, potential solutions could include:
- Using a Different Commit: Try using a different commit or tag that may be more stable or functional.
- Compiling
attn_core_inplace_cuda
Manually: Attempt to compile theattn_core_inplace_cuda
module manually using the provided documentation. - Using a Different Dockerfile: Try using a different Dockerfile or a base image that may be more compatible with the OpenFold repository.
Future Development
To improve the usability of OpenFold for structure prediction, the following development steps could be taken:
- Provide Clear Guidance: Provide clear guidance on which commit or tag is usable for structure prediction only.
- Document Dependencies: Document the dependencies required for OpenFold, including
ml_collections
,modelcif
,triton
, etc. - Improve Dockerfile: Improve the Dockerfile to ensure it builds a working image.
Q: What is OpenFold and what is its purpose?
A: OpenFold is a deep learning-based tool for protein structure prediction. Its purpose is to predict the 3D structure of proteins from their amino acid sequences, which is essential for understanding protein function and behavior.
Q: What are the common issues encountered when using OpenFold?
A: Some common issues encountered when using OpenFold include:
- Missing Module Error: The
attn_core_inplace_cuda
module is missing, causing therun_pretrained_openfold.py
script to fail. - Missing Script: The
scripts/predict_from_model.py
script is not present in the repository. - Non-Functional Docker Image: The provided Dockerfile does not build a working image.
- Lack of Guidance: There is no official guidance on which commit is usable for structure prediction only.
Q: How to properly install or compile attn_core_inplace_cuda
?
A: Unfortunately, there is no official documentation on how to install or compile the attn_core_inplace_cuda
module. However, you can try the following steps:
- Check the Repository: Verify that the repository is cloned correctly and that all files are present.
- Consult Documentation: Consult the OpenFold documentation for any guidance on using the
attn_core_inplace_cuda
module. - Try a Different Commit: Try using a different commit or tag that may be more stable or functional.
Q: Can you provide a known working Dockerfile or a base image?
A: Unfortunately, we do not have a known working Dockerfile or a base image that can be used with OpenFold. However, you can try the following steps:
- Check the Repository: Verify that the repository is cloned correctly and that all files are present.
- Consult Documentation: Consult the OpenFold documentation for any guidance on building a Docker image.
- Try a Different Commit: Try using a different commit or tag that may be more stable or functional.
Q: Is there a specific commit or tag where structure prediction works out-of-the-box?
A: Unfortunately, there is no specific commit or tag that we can recommend for structure prediction. However, you can try the following steps:
- Check the Repository: Verify that the repository is cloned correctly and that all files are present.
- Consult Documentation: Consult the OpenFold documentation for any guidance on using the
attn_core_inplace_cuda
module. - Try a Different Commit: Try using a different commit or tag that may be more stable or functional.
Q: How to troubleshoot issues with OpenFold?
A: To troubleshoot issues with OpenFold, you can try the following steps:
- Verify the Repository Clone: Ensure that the repository was cloned correctly and that all files are present.
- Install Dependencies: Verify that all dependencies, including
ml_collections
,modelcif
,triton
, etc., are installed correctly. - Check Commit Hash: Check the commit hash used to clone the repository to ensure it correct.
- Build Docker Image: Attempt to build a Docker image from the
docker/Dockerfile
to ensure it is working correctly. - Consult Documentation: Consult the OpenFold documentation for any guidance on using the
attn_core_inplace_cuda
module or any other related issues.
Q: What are the potential solutions to resolve issues with OpenFold?
A: Some potential solutions to resolve issues with OpenFold include:
- Using a Different Commit: Try using a different commit or tag that may be more stable or functional.
- Compiling
attn_core_inplace_cuda
Manually: Attempt to compile theattn_core_inplace_cuda
module manually using the provided documentation. - Using a Different Dockerfile: Try using a different Dockerfile or a base image that may be more compatible with the OpenFold repository.
Q: How to improve the usability of OpenFold for structure prediction?
A: To improve the usability of OpenFold for structure prediction, the following development steps could be taken:
- Provide Clear Guidance: Provide clear guidance on which commit or tag is usable for structure prediction only.
- Document Dependencies: Document the dependencies required for OpenFold, including
ml_collections
,modelcif
,triton
, etc. - Improve Dockerfile: Improve the Dockerfile to ensure it builds a working image.
By following these troubleshooting steps and potential solutions, we can resolve the issues with OpenFold and utilize it for real-world structure prediction.