用途:使用 OpenFold3(AlQuraishi Lab 的开源权重 PyTorch AlphaFold3 复现)预测蛋白质、DNA、RNA 及配体复合物的三维结构。
环境要求:Python 3.10+(推荐 3.11)、CUDA 12.1+(推荐 12.4+)、GPU 显存 24GB(推荐 80GB H100)、内存 32GB(推荐 64GB)、权重磁盘约 3GB。
安装:pip install 'openfold3[cuequivariance]==0.4.1'。默认注意力核为 DeepSpeed DS4Sci_EvoformerAttention;若不可用,可在 model_config.py 的 eval 内存设置中改为 use_deepspeed_evo_attention: False 与 use_cueq_triangle_kernels: True。
权重:Apache-2.0,约 2.3GB,来自 HF OpenFold/OpenFold3,仓库为 gated(自动批准),需先在模型页接受访问表单并登录。示例:export OPENFOLD_CACHE=~/.openfold3 后执行 huggingface-cli download OpenFold/OpenFold3 checkpoints/of3-p2-155k.pt --local-dir "$OPENFOLD_CACHE"。首次运行若网络与凭据可用也会自动下载。
运行:run_openfold predict --query_json=queries.json --output-dir out/ --use-msa-server false --use-templates false。checkpoint 会自动在 $OPENFOLD_CACHE 下发现,仅在非标准布局时用 --inference-ckpt-path 指定。启用 MSA 与模板(更慢、更准)时去掉两个 false,需能访问 api.colabfold.com 与 data.rcsb.org。
查询格式:不读 FASTA,使用经 InferenceQuerySet(pydantic,禁止额外键)校验的 JSON,顶层为 {"queries": {"名称": {...}}},链需指定 molecule_type(protein/dna/rna 用 sequence;ligand 用 smiles 或 ccd_codes)、chain_ids 列表,同源多聚体重复同一序列;可提供自定义 a3m。
关键参数:--num-diffusion-samples 默认 5,--num-model-seeds 默认 1,--use-msa-server 默认 true,--use-templates 默认 true。
输出:out/ 下含 summary.txt、配置 JSON 与各 query/seed 目录,内有 .cif 与 confidences JSON;先读 *_confidences_aggregated.json(含 avg_plddt、ptm、iptm、gpde、has_clash、sample_ranking_score 等)。良好结果参考:Successful Queries 与输入数一致,avg_plddt>70(单序列)或>80(含 MSA),ptm>0.6,复合物 iptm>0.5,has_clash 为 0.0。
限制与排错:DeepSpeed 缺失可改用 cuEq 路径(需 pip install nvidia-cutlass);rdkit 需 libXrender 等 X11 库;boto3/awscrt 被急切导入需安装;JSON 形状错误或多余键会触发 ValidationError;--runner-yaml 仅接受 InferenceExperimentConfig,核与内存设置位于 model_config.py;RCSB 不可达时用 --use-templates false;显存不足可减少扩散样本或使用 low_mem 预设。其余细节资料未提供。