README.md 2.95 KB
Newer Older
fengzch-das's avatar
fengzch-das committed
1
# <div align="center"><strong>OpenFold</strong></div>
2

fengzch-das's avatar
fengzch-das committed
3
## 1 简介
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
4

fengzch-das's avatar
fengzch-das committed
5
OpenFold是蛋白质结构预测模型训练和推理的库,主要提供以下功能:蛋白质单体和多体的训练和推理。
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
6

fengzch-das's avatar
fengzch-das committed
7
## 2 安装
8

fengzch-das's avatar
fengzch-das committed
9
组件支持组合
10

fengzch-das's avatar
fengzch-das committed
11
12
13
14
| PyTorch版本 | fastpt版本 | openflod 版本     | DTK版本  | Python版本      | 推荐编译方式 |
| ----------- | ---------- | ------------- | -------- | --------------- | ------------ |
| 2.5.1       | 2.1.0      | v2.2.0-fastpt | >= 25.04 | 3.8、3.10、3.11 | fastpt不转码 |
| 2.4.1       | 2.0.1      | v2.2.0-fastpt | >= 25.04 | 3.8、3.10、3.11 | fastpt不转码 |
15

fengzch-das's avatar
fengzch-das committed
16
+ pytorch 版本大于 2.4.1 && dtk 版本大于 25.04 推荐使用 fastpt 不转码编译。
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
17

fengzch-das's avatar
fengzch-das committed
18
### 2.1 使用pip方式安装
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
19

fengzch-das's avatar
fengzch-das committed
20
openflod whl 包下载目录:[光和开发者社区](https://download.sourcefind.cn:65024/4/main),选择对应的 pytorch 版本和 python 版本下载对应 openflod 的 whl 包: 
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
21

fengzch-das's avatar
fengzch-das committed
22
23
24
25
26
27
28
29
30
31
```shell
pip install torch* # 下载torch的whl包
pip install fastpt* --no-deps # 下载fastpt的whl包
source  /usr/local/bin/fastpt -E
pip install openfold* # 下载的openfold-fastpt的whl包
```

### 2.2 使用源码编译方式安装

#### 2.2.1 编译环境准备
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
32

fengzch-das's avatar
fengzch-das committed
33
提供基于 fastpt 不转码编译:
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
34

fengzch-das's avatar
fengzch-das committed
35
36
37
38
39
40
41
1. 基于光源 pytorch 基础镜像环境:镜像下载地址:[光合开发者社区](https://sourcefind.cn/#/image/dcu/pytorch),根据 pytorch、python、dtk 及系统下载对应的镜像版本。
2. 基于现有 python 环境:安装 pytorch,fastpt whl 包下载目录:[光合开发者社区](https://sourcefind.cn/#/image/dcu/pytorch),根据 python、dtk 版本,下载对应 pytorch 的 whl 包。安装命令如下:

```shell
pip install torch* # 下载torch的whl包
pip install fastpt* --no-deps # 下载fastpt的whl包, 安装顺序,先安装torch,后安装fastpt
pip install setuptools==59.5.0 wheel pytest biopython dm-tree==0.1.6 ml-collections modelcif
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
42
```
fengzch-das's avatar
fengzch-das committed
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

#### 2.2.2 源码编译安装

- 代码下载

```shell
git clone http://developer.sourcefind.cn/codes/OpenDAS/openfold.git # 根据编译需要切换分支
```

- 提供2种源码编译方式(进入 openfold 目录):
  - 源码编译安装:

    ```bash
    source /usr/local/bin/fastpt -C

    python setup.py build
    python setup.py install
    ```
  - whl 包构建安装:

    ```bash
    source /usr/local/bin/fastpt -C

    python setup.py bdist_wheel # 该指令用于编译 whl 包
    pip install dist/openfold-2.2.0-cp310-cp310-linux_x86_64.whl
    ```

#### 2.2.3 注意事项

+ ROCM_PATH 为 dtk 的路径,默认为 /opt/dtk;
+ 在 pytorch2.5.1 环境下编译需要支持 c++17 语法,打开setup.py文件,把文件中的 -std=c++14 修改为 -std=c++17。

## 3 验证
- 执行下面的命令测试组件:

```bash
source /usr/local/bin/fastpt -E

pytest-vs ./tests
Gustaf Ahdritz's avatar
Gustaf Ahdritz committed
82
```
fengzch-das's avatar
fengzch-das committed
83
84
85
86
87
88
89
90
91

## 4 Known Issue

-

## 5 参考资料

- [README_ORIGIN](README_ORIGIN.md)
- [https://github.com/aqlaboratory/openfold.git](https://github.com/aqlaboratory/openfold.git)