用途
Boltz 是一个开源的生物分子结构预测工具,基于 Boltz-1/Boltz-2 模型。适用场景包括:(1) 预测蛋白质复合物结构;(2) 其他生物分子结构预测任务。资料将其定位为可用于蛋白质-蛋白质复合物、蛋白质-配体等预测场景的工具。
运行环境要求
资料给出的最低与推荐配置如下:
- Python:最低 3.10+,推荐 3.11
- CUDA:最低 12.0+,推荐 12.1+
- GPU VRAM:最低 24GB,推荐 48GB(L40S)
- RAM:最低 32GB,推荐 64GB
使用方式
方式一:Modal
cd biomodals
modal run modal_boltz.py \
--input-faa complex.fasta \
--out-dir predictions/
该方式使用 GPU L40S(48GB),默认超时 1800s。首次使用需先参考 Getting started 配置 Modal 与 biomodals。
方式二:本地安装
pip install boltz
boltz predict \
--fasta complex.fasta \
--output predictions/
关键参数
| 参数 | 默认值 | 范围 | 说明 |
|---|---|---|---|
| --recycling_steps | 3 | 1-10 | 循环迭代次数 |
| --sampling_steps | 200 | 50-500 | 扩散步数 |
| --use_msa_server | true | bool | 是否使用 MSA 服务器 |
FASTA 输入格式
>protein_A
MKTAYIAKQRQISFVK...
>protein_B
MVLSPADKTNVKAAWG...
输出格式
predictions/
├── model_0.cif # 最佳模型(CIF 格式)
├── confidence.json # pLDDT, pTM, ipTM
└── pae.npy # PAE 矩阵
注意:Boltz 输出 CIF 格式,如需 PDB 可自行转换:
from Bio.PDB import MMCIFParser, PDBIO
parser = MMCIFParser()
structure = parser.get_structure("model", "model_0.cif")
io = PDBIO()
io.set_structure(structure)
io.save("model_0.pdb")
输出质量判定
示例运行输出:
$ boltz predict --fasta complex.fasta --output predictions/
[INFO] Loading Boltz-1 weights...
[INFO] Predicting structure...
[INFO] Saved model to predictions/model_0.cif
confidence.json 示例:
{
"ptm": 0.78,
"iptm": 0.65,
"plddt": 0.81
}
良好输出的参考标准:
- pTM:> 0.7(全局结构可信)
- ipTM:> 0.5(界面可信)
- pLDDT:> 0.7(逐残基可信)
- CIF 文件:典型复合物约 100-500 KB
选择决策
资料给出的判断思路包括:
- 预测蛋白质-蛋白质复合物:可选 Boltz、Chai 或 ColabFold
- 预测蛋白质 + 配体:可选 Boltz 或 Chai
- 预测单个蛋白质:建议使用 ESMFold(更快)
- 是否需要 MSA:不需要或追求速度可选 Boltz;需要或追求最高精度可选 ColabFold
- 相比 Chai 选择 Boltz 的理由:偏好开放权重、Boltz-2 速度;如需 DNA/RNA 支持可考虑 Chai
典型性能
| 任务规模 | 时间(L40S) | 成本(Modal) | 说明 |
|---|---|---|---|
| 100 个复合物 | 30-45 分钟 | 约 $8 | 标准验证 |
| 500 个复合物 | 2-3 小时 | 约 $35 | 大型任务 |
| 1000 个复合物 | 4-6 小时 | 约 $70 | 全面任务 |
单个典型 binder-target 复合物约 15-30 秒。
结果验证:
find predictions -name "*.cif" | wc -l # Should match input count
问题排查
- 置信度低:增加 recycling_steps
- OOM 错误:使用免 MSA 模式或 A100-80GB
- 预测慢:减少 sampling_steps
错误解释:
| 错误 | 原因 | 修复 |
|---|---|---|
| RuntimeError: CUDA out of memory | 复合物过大 | 使用 --use_msa_server false 或更大 GPU |
| KeyError: 'iptm' | 仅单链 | 确保 FASTA 含 2 条及以上链 |
| FileNotFoundError: weights | 缺少模型 | 先运行 boltz download |
| ValueError: invalid residue | 非标准氨基酸 | 检查序列中的修饰残基 |
Boltz-1 与 Boltz-2 对比
| 方面 | Boltz-1 | Boltz-2 |
|---|---|---|
| 速度 | 快 | 更快 |
| 精度 | 良好 | 改进,尤其在抗体-抗原方面 |
| 配体 | 基础 | 更好支持 |
| 亲和力预测 | 无 | 支持(小分子结合) |
| 发布 | 2024 | 2025 |
Boltz-2 是当前默认版本。Boltz-1 仍用于设计流程需要反转 v1 模型的场景。
亲和力预测(Boltz-2)
Boltz-2 新增亲和力预测模块,以较低成本接近自由能微扰(FEP)的精度。该模块在小分子结合数据上训练,适用于蛋白质-配体和小分子工作。它不预测蛋白质-蛋白质结合亲和力;对于蛋白质 binder,应改用界面置信度(ipTM、ipSAE)判断。
限制
资料中明确的限制包括:CUDA 显存与内存有最低门槛;免 MSA 模式虽快但精度选择上存在取舍;亲和力预测仅针对小分子结合,不支持蛋白质-蛋白质亲和力预测;输出为 CIF 格式,如需 PDB 需另行转换。其他未在资料中提及的功能、收费与效果,暂未提供。