For the modeling team, we used AlphaFold to predict the structures for the different models of the gpT7
protein. As explained in our “Modeling” section, Alphafold is a new and powerful tool that opens the world of
modeling to new frontiers (ranging from medicinal proteins modeling to application based proteins). As a
contribution, we have compiled a guide of how to install the program and how to then use it for your own
projects. We will then conclude with a web server that hosts the modeling and any final thoughts. Providing
these different methods and ways of modeling will help to expand future iGEM teams to utilize more modeling
which could then help to focus on efficient spending of resources and also better/in-depth explanations of the
results.
*Note the only operating system used for AlphaFold by our team is any Linux based
distribution.
The steps to run and use Alphafold are as follows:
As of the time that this wiki was made, the current AlphaFold library set is at 2.2 terabytes of storage space. You have the option to download a reduced size of one of the libraries to go from ~2.2 total terabytes to roughly 600 gigabytes. However, this may impact the accuracy of your models. The main tool used to download all the databases for extraction later is “aria2c” and then extracted with either “tar” or “gunzip”. The download scripts can be found in AlphaFold's github page: https://github.com/deepmind/alphafold/tree/main/scripts.
If choosing to work with docker, then you must first download Docker on your system. After installing
Docker, install the NVIDIA Container Toolkit for GPU support. Since Docker requires sudo level privilege for
using certain functions, configure Docker to allow non-root users to run it.
To check that AlphaFold will be able
to use the GPUs on your system, run the following command:
docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
git clone https://github.com/deepmind/alphafold.git
docker build -f docker/Dockerfile -t alphafold .
pip3 install -r docker/requirements.txt
python3 docker/run_docker.py \ --fasta_paths=T1050.fasta \ --max_template_date=2020-05-14 \ --data_dir=$DOWNLOAD_DIR
Most system administrators do not support Docker due to various security reasons and potential
elevation of privilege when it comes to potential hacking. Singularity is a common substitute for Docker and
was designed to support High Performance Computing systems. If choosing to use Singularity, then first
download Singularity. Then configure it to allow groups to use the “--fakeroot” feature so that non-root users
can build containers.
To build the container simply copy the attached script into a file called
“alphafold.def” and then run the following command (if using the fakeroot feature):
singularity build --fakeroot alphafold.sif alphafold.def
If you cannot gain access to a system that can satisfy all the requirements needed to install AlphaFold, then you may use the “google collab notebook” to run AlphaFold on a web server instead of your personal computer. The notebook explains the differences between using the web server versus running on a personal machine, however it is a better option if you need models, but can't afford the hardware/system access. You can utilize it here: Web Server.