name: bindcraft description: > 使用BindCraft幻觉进行端到端结合剂设计。在以下情况使用此技能: (1) 设计具有内置AF2验证的蛋白质结合剂, (2) 运行生产质量的结合剂筛选活动, (3) 使用不同的设计协议(快速、默认、慢速), (4) 需要联合骨架和序列优化, (5) 希望获得高实验成功率。
对于仅骨架生成,请使用rfdiffusion。 对于质量控制阈值,请使用protein-qc。 对于工具选择指导,请使用binder-design。 license: MIT category: design-tools tags: [structure-design, sequence-design, binder, pipeline] proteinbase_slug: bindcraft proteinbase_url: https://proteinbase.com/design-methods/bindcraft biomodals_script: modal_bindcraft.py
BindCraft 结合剂设计
先决条件
| 要求 | 最低 | 推荐 |
|---|---|---|
| Python | 3.9+ | 3.10 |
| CUDA | 11.7+ | 12.0+ |
| GPU VRAM | 32GB | 48GB (L40S) |
| RAM | 32GB | 64GB |
如何运行
第一次使用? 请参阅安装指南来设置Modal和biomodals。
选项1:Modal(推荐)
cd biomodals
modal run modal_bindcraft.py \
--target-pdb target.pdb \
--target-chain A \
--binder-lengths 70-100 \
--hotspots "A45,A67,A89" \
--num-designs 50
GPU: L40S (48GB) | 超时: 默认3600秒
选项2:本地安装
git clone https://github.com/martinpacesa/BindCraft.git
cd BindCraft
pip install -r requirements.txt
python bindcraft.py \
--target target.pdb \
--target_chains A \
--binder_lengths 70-100 \
--hotspots A45,A67,A89 \
--num_designs 50
关键参数
| 参数 | 默认值 | 范围 | 描述 |
|---|---|---|---|
--target-pdb |
必需 | 路径 | 目标结构 |
--target-chain |
必需 | A-Z | 目标链 |
--binder-lengths |
70-100 | 40-150 | 长度范围 |
--hotspots |
无 | 残基 | 目标热点 |
--num-designs |
50 | 1-500 | 设计数量 |
--protocol |
default | fast/default/slow | 质量与速度 |
协议
| 协议 | 速度 | 质量 | 使用场景 |
|---|---|---|---|
| fast | 快 | 较低 | 初步筛选 |
| default | 中等 | 良好 | 标准活动 |
| slow | 慢 | 高 | 最终生产 |
输出格式
output/
├── design_0/
│ ├── binder.pdb # 最终设计
│ ├── complex.pdb # 结合剂 + 目标
│ ├── metrics.json # 质量控制分数
│ └── trajectory/ # 优化轨迹
├── design_1/
│ └── ...
└── summary.csv # 所有指标
指标输出
{
"plddt": 0.89,
"ptm": 0.78,
"iptm": 0.62,
"pae": 8.5,
"rmsd": 1.2,
"sequence": "MKTAYIAK..."
}
示例输出
成功运行
$ modal run modal_bindcraft.py --target-pdb target.pdb --num-designs 50
[INFO] 加载BindCraft模型...
[INFO] 目标: target.pdb (链 A)
[INFO] 热点: A45, A67, A89
[INFO] 协议: default
[INFO] 生成50个设计...
设计 1/50:
长度: 78 氨基酸
pLDDT: 0.89, ipTM: 0.62
已保存: output/design_0/
设计 50/50:
长度: 85 氨基酸
pLDDT: 0.86, ipTM: 0.58
已保存: output/design_49/
[INFO] 活动完成。摘要: output/summary.csv
通过率: 32/50 (64%),ipTM > 0.5
良好输出的特征:
- pLDDT: 大多数设计 > 0.85
- ipTM: 通过的设计 > 0.5
- 通过率: 30-70%(取决于目标)
- 不同设计之间的序列多样性
决策树
我应该使用BindCraft吗?
│
├─ 设计类型是什么?
│ ├─ 生产质量的结合剂 → BindCraft ✓
│ ├─ 高多样性探索 → RFdiffusion
│ └─ 全原子精度 → BoltzGen
│
├─ 什么最重要?
│ ├─ 实验成功率 → BindCraft ✓
│ ├─ 速度 / 多样性 → RFdiffusion + ProteinMPNN
│ ├─ AF2梯度优化 → ColabDesign
│ └─ 全原子控制 → BoltzGen
│
└─ 计算资源如何?
├─ 拥有 L40S/A100 → BindCraft ✓
└─ 只有 A10G → RFdiffusion + ProteinMPNN
典型性能
| 活动规模 | 时间 (L40S) | 成本 (Modal) | 备注 |
|---|---|---|---|
| 50个设计 | 2-4小时 | ~$15 | 快速活动 |
| 100个设计 | 4-8小时 | ~$30 | 标准 |
| 200个设计 | 8-16小时 | ~$60 | 大型活动 |
预期通过率: 30-70%,ipTM > 0.5(取决于目标)。
验证
find output -name "binder.pdb" | wc -l # 应与 num_designs 匹配
故障排除
ipTM分数低: 检查热点选择,增加设计数量 收敛慢: 使用快速协议进行筛选 内存不足错误: 减少模型数量,使用L40S GPU 多样性差: 降低采样温度,运行多个随机种子
错误解释
| 错误 | 原因 | 解决方法 |
|---|---|---|
RuntimeError: CUDA out of memory |
目标过大或结合剂过长 | 使用L40S/A100,减少结合剂长度 |
ValueError: no hotspots |
未找到热点 | 检查残基编号 |
TimeoutError |
设计耗时过长 | 使用快速协议 |
下一步: 按 ipsae 排名 → 实验验证。