README.md 1.11 KB
Newer Older
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
1
2
3
4
5
6
7
# OpenFold

A faithful PyTorch reproduction of DeepMind's 
[AlphaFold 2](https://github.com/deepmind/alphafold).

## Installation

Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
8
9
10
Python dependencies available through `pip` are provided in `requirements.txt`. 
OpenFold also depends on `openmm==7.5.1` and `pdbfixer`, which are only
available via `conda`. 
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
11

Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
12
13
For convenience, we provide a script that installs Miniconda locally, creates a 
`conda` virtual environment, and installs all Python dependencies. Run:
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
14
15

```bash
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
16
17
18
scripts/install_third_party_dependencies.sh
```

Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
19
To activate the environment, run:
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
20
21
22
23
24
25
26
27
28

```bash
scripts/activate_conda_venv.sh
```

To deactivate it, run

```bash
scripts/deactivate_conda_venv.sh
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
29
30
31
32
```

## Features

Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
33
34
35
36
37
OpenFold reproduces AlphaFold's inference and data processing pipelines. With 
the exception of model ensembling, which fared poorly in DeepMind's ablation 
testing and is therefore omitted here, OpenFold supports all features of the 
original required for inference. It is even capable of importing AlphaFold's 
original pretrained weights. 
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
38
39
40

Future versions will support multi-GPU training with 
[DeepSpeed](https://github.com/microsoft/DeepSpeed).