乐于分享
好东西不私藏

开源生物分子 AI 模型与工具生态科普指南

开源生物分子 AI 模型与工具生态科普指南

副标题:从序列搜索、结构生成和结构预测,到对接、模拟、验证与科学交互核验日期:2026-07-23(Asia/Shanghai)

摘要

这 21 个项目并不完整,只是一个补全,本文作为字典工具

工作环节
通俗比喻
本综述覆盖的项目
典型输入 → 输出
搜索与数据准备
去图书馆找相似案例
MMseqs2、ColabFold、AtomWorks
序列/结构文件 → MSA、模板、统一原子表示
结构生成
从需求画新蓝图
RFdiffusion3、RFdiffusion3NA
长度、基序、配体或约束 → 新结构候选
序列设计
为骨架选择合适材料
ProteinMPNN、LigandMPNN、SolubleMPNN
固定骨架与设计位点 → 候选氨基酸序列
结构预测
按材料清单模拟建成后的样子
AlphaFold 3、RF3、Boltz-2、Chai-1、Protenix、OpenFold3
序列、MSA、配体等 → 三维结构与置信度
几何、对接与物理检查
做质检、试装和抗压测试
PoseBusters、AutoDock Vina、OpenMM
结构/体系/协议 → 几何报告、pose、打分或轨迹
科学交互
把图纸、检查表和监控面板放在一起
Mol*、RCSB Saguaro、Apache ECharts、Ketcher、Gradio
结构/序列/矩阵/分子 → 可视化、编辑或演示页面

合理的组合方式不是把 21 个项目全部串在一起,而是根据任务选择必要环节,并保留每个环节的输入、版本、参数、输出和证据边界。

flowchart LR    A["序列或已知结构"] --> B["MMseqs2 / ColabFold<br/>MSA 与搜索"]    A --> C["AtomWorks<br/>结构解析与标准化"]    D["设计目标与约束"] --> E["RFD3 / RFD3NA<br/>结构生成"]    E --> F["MPNN 家族<br/>序列设计"]    B --> G["结构预测模型组<br/>AF3 / RF3 / Boltz / Chai / Protenix / OpenFold3"]    C --> G    F --> G    G --> H["PoseBusters / Vina / OpenMM<br/>几何、对接与物理假设"]    H --> I["人工评审与实验"]    G --> J["Mol* / Saguaro / ECharts<br/>查看和解释"]    H --> J    K["Ketcher"] --> D    L["Gradio 独立 Demo"] -.-> G

对当前 AIDD 项目而言,这些工具应共享现有作业、Artifact、Dynamic Plan、审计和人工门控,而不应被包成一个难以解释的“超级模型”。

1. 先分清项目的“职业”

同一个三维结构文件,可能是生成模型刚画出的蓝图、结构预测模型给出的折叠假设,也可能是对接软件放置的配体 pose。文件格式相似,证据含义却完全不同。

你真正想问的问题
应选的项目类型
不能从结果中直接推断什么
有哪些远缘序列,能构建什么 MSA?
MMseqs2、ColabFold
不直接给出真实三维结构
在这些功能基序、热点或配体周围,能否造一个新结构?
RFD3、RFD3NA
生成分数不等于可折叠或有功能
这副骨架上应放哪些氨基酸?
ProteinMPNN、LigandMPNN、SolubleMPNN
序列模型分数不等于表达量、溶解度或亲和力
已知序列和组分可能形成什么结构?
AF3、RF3、Boltz-2、Chai-1、Protenix、OpenFold3
高结构置信度不等于结合、功能或安全性成立
一个配体可能怎样放进口袋?
AutoDock Vina
docking score 不等于实验自由能或 IC50
一个 pose 是否有明显几何问题?
PoseBusters
通过几何检查不等于 pose 就是真的
按某力场和协议,体系在有限模拟时间内如何演化?
OpenMM
一次短 MD “没有散开”不等于实验稳定
怎样让人看懂结构、序列、误差矩阵和化学结构?
Mol*、Saguaro、ECharts、Ketcher、Gradio
UI 只呈现证据,不创造新的科学结论

因此,平台中的稳定对象应是科学能力、输入输出契约和证据语义,不是某个模型名字。具体模型、checkpoint、容器和参数应作为可替换 implementation。

2. 开源生态全景

2.1 结构生成与蛋白设计

RFdiffusion3

RFD3 是 Foundry 的全原子结构生成模型。它可根据长度、模板、功能基序、靶蛋白、小分子、DNA/RNA、热点、氢键和对称性等约束生成蛋白结构,典型输出是每候选一份压缩 mmCIF 和 JSON 设计元数据;它回答“造什么结构”,而不是“已有序列折成什么”。RFD3 README|RFD3 输入规范

RFdiffusion3NA

RFD3NA 将生成空间扩展到 RNA/DNA,可使用 RNA dot-bracket、碱基配对、金属/配体环境以及蛋白–核酸联合约束。它适合 RNA aptamer、多聚合物装配和核酸功能结构探索,但项目成熟度与任务内验证仍少于 RFD3。RFD3NA README|官方多聚合物示例

ProteinMPNN、LigandMPNN、SolubleMPNN

ProteinMPNN 接收固定蛋白骨架、可设计/固定位置、温度、氨基酸偏置和对称约束,输出候选 FASTA 与序列模型分数。ProteinMPNN 官方仓库|Science 论文

LigandMPNN 进一步编码小分子、离子、DNA/RNA 等周围原子环境,适合设计口袋、金属配位和核酸界面;它仍不预测 ligand pose 或 affinity。LigandMPNN 官方仓库|Nature Methods 论文

SolubleMPNN 是 ProteinMPNN 的权重变体,输出仍是固定骨架候选序列;模型名中的 “Soluble” 表示训练先验,不是数值溶解度预测。Foundry checkpoint registry

2.2 全原子结构预测模型

下表按项目名字排列,不代表性能名次。各模型的输入特性、许可边界和训练数据时间截止点不同,只有在同一盲测集、同一数据政策和同一验收指标下才能公平比较。

模型
核心定位
典型输入
典型输出
许可与采用判断
AlphaFold 3
官方 AF3 推理基线
官方 JSON、MSA、template、CCD/SMILES、bond、seed
多 seed/sample mmCIF、confidence、PAE、ranking CSV
源码 Apache-2.0;权重和输出仅限特定非商业用途,商业流程应阻断
Boltz-2
结构预测 + 小分子 affinity 头
YAML、protein/RNA/DNA/ligand、MSA、template、constraint、affinity property
结构、PAE/PDE、binder probability、log10(IC50 μM) 型 affinity
代码与权重 MIT;可商用;亲和力有严格 target/ligand 适用域
Chai-1
多组分结构和实验 restraint
FASTA、aligned.pqt MSA、template、contact/covalent restraint
多结构样本、ranking/confidence
代码与权重 Apache-2.0;可商用;适合异源共识
OpenFold3
完整开放的 AF3 类训练复现生态
query JSON、MSA、template、protein/RNA/DNA/ligand
多样本结构、配置与置信度
Apache-2.0;训练数据/代码/权重开放;仍是 research preview
Protenix
AF3 类开放结构预测与训练栈
JSON、MSA、RNA MSA、template;功能依模型版本
多结构、置信度、训练/推理产物
代码与参数 Apache-2.0;多 cutoff/模型档,适合企业训练研究
RF3
全原子、多组分结构预测;可用于 Foundry 设计闭环
sequence、MSA、protein/RNA/DNA/ligand/ion、CCD/SDF/SMILES、bond/template
mmCIF、逐样本/全局置信度、PAE 等
Foundry BSD-3;归档时应保存权重许可声明、版本和 SHA256

来源:AlphaFold 3|Boltz-2|Chai-1|OpenFold3|Protenix|RF3

2.3 搜索、MSA 与原子数据基础设施

ColabFold 的主要平台价值是将 MMseqs2 搜索、复合物配对和 A3M 输出封装成可重复流程。对专有序列,应使用本地数据库或私有 MSA server,不允许本地失败后静默回退公共服务。ColabFold 官方仓库

MMseqs2 是蛋白/核酸搜索和聚类引擎,适合作为 MSA-GENERATE 的底层 implementation;它不应成为结构模型内部不可见的网络调用。MMseqs2 官方仓库

AtomWorks 负责 PDB/mmCIF/mmJSON、CCD、组装体、键和结构注释的解析与统一原子表示,并为 Foundry 模型提供 I/O 和 feature pipeline。它不是用户可见预测模型,更适合成为所有结构适配器共享的 normalization kernel。AtomWorks 官方仓库

2.4 几何、对接与物理检查

PoseBusters 检查分子和 protein–ligand pose 的键长、键角、平面性、内部碰撞和复合物碰撞等合理性。它可以发现明显错误,但“全部通过”不等于 pose 真实或 ligand 有活性。PoseBusters 官方仓库|原始论文

AutoDock Vina 根据冻结的 receptor/ligand PDBQT、搜索盒和采样参数生成 pose 与经验打分。它适合同一协议内的 pose 假设和相对排序,不能作为跨靶点通用自由能或实验 affinity。Vina 官方文档

OpenMM 是分子模拟工具包,不是预训练模型或力场。只有 topology、force field、ligand parameterization、protonation、solvation、integrator、ensemble、seed 和分析方法共同冻结后,才形成可解释的模拟协议。OpenMM 官方仓库|完整许可证说明

2.5 科学交互组件

组件
当前项目状态
最适合的交互
不应承担的职责
Mol* 5.11.0
已锁定并有基础结构 renderer
mmCIF/PDB/SDF、结构选择、representation、pLDDT、轨迹
不计算模型结论,不修改原 Artifact
RCSB Saguaro 3.3.0
已有多链序列 renderer
sequence、motif、PTM、设计位点、confidence tracks
不推断功能;construct position 不能直接当 PDB number
Apache ECharts 6.1.0
已用于优化活动图表
PAE/PDE 热图、模型排名、校准、时间序列
不做统计推断;颜色不能替代指标定义
Ketcher 3.17.1
已有派生分子编辑器
2D 编辑、SMILES/Molfile 产生
不作为权威化学规范化器;服务端 RDKit 才是校验边界
Gradio 6.20.0
未接入
新模型容器烟测、内部 demo、输入输出验收
不应成为第二套生产任务、权限和 Artifact 系统

来源:Mol*|Saguaro|ECharts|Ketcher|Gradio

3. 输入和输出:五个具体场景

3.1 已知蛋白序列,预测结构

用户输入├── Chain A: MKT...GLY├── Chain B: EVQ...LAA├── 各链来源、construct start/end├── 可选 MSA ArtifactRef├── 可选 template policy└── seeds / samples / model implementation            ↓AF3 / Boltz-2 / Chai-1 / OpenFold3 / Protenix / RF3            ↓标准输出├── 全部原始模型样本├── normalized mmCIF├── ResidueMap / AtomMap├── pLDDT / PAE / pTM / ipTM 等原生指标├── sample ranking 与限制说明└── 完整运行 manifest

这里最关键的是输出所有样本和指标语义,而不是只留 top-1 PDB。不同模型的 ranking score 不可直接平均;平台应另外计算统一的结构一致性、界面接触与几何指标。AF3 官方权重和输出还需受非商业条款约束,不能与其他宽松许可模型一样默认进入商业流程。

3.2 从零设计蛋白 binder

输入:靶蛋白结构 + hotspot + binder 长度 70–100 aa  → RFD3 生成 100 个 binder 骨架  → ProteinMPNN 为每个骨架生成 8 条序列  → 选择一个结构预测器,只按序列和允许的独立信息复折叠  → 计算目标骨架与复折叠结构的一致性  → 用另一个不同实现的结构模型复预测前 20 条  → 几何/界面/开发性门控  → 人工选择实验集合

生成的目标骨架不能再作为结构预测模型的 template,否则复折叠“验证”会把答案一起交给模型。第一个预测器可从 RF3、Boltz-2、Chai-1、Protenix 或 OpenFold3 中按任务选择,第二个应尽量来自不同实现生态;AF3 可在符合其权重条款时作非商业对照。

3.3 蛋白–小分子口袋设计

输入:protein target + ligand 的 canonical identity、stereochemistry、SDF/CCD  → RFD3 生成受配体约束的口袋/支架  → LigandMPNN 设计口袋序列  → 选择支持目标化学组分的两个结构模型复预测复合物  → PoseBusters 检查 ligand/complex 几何  → Vina 做 pose perturbation/redocking 假设  → Boltz affinity 在适用域内给 binder/同系列排序信号  → OpenMM 对入选 pose 做最小化/短 MD 多副本检查  → 实验 assay

需要同时保留 ligand canonical identity、stereochemistry、atom map、父 pose digest 和所有 protonation/tautomer state。LigandMPNN confidence、Vina score、Boltz affinity 和实验 IC50 是四种不同证据,不得混成一个未经校准的总分。

3.4 RNA/DNA 与多聚合物设计

输入:protein/RNA/DNA entity + dot-bracket/base-pair/bond/metal constraints  → RFD3NA 生成多聚合物候选  → 蛋白链用 MPNN 设计  → 核酸链用专用二级结构/序列规则过滤  → 两个支持相应 polymer/entity 类型的结构模型复预测  → 共价键、碱基配对、金属配位和几何门控  → 实验

当前项目的 ProteinCandidate 只能表达蛋白链,因此这个场景要求先扩展通用组装体契约,不能把 RNA/DNA 和配体信息塞入自由文本字段。

3.5 已有蛋白口袋,对小分子做对接与检查

用户输入├── receptor 结构及质子化/水/金属处理策略├── ligand SDF/SMILES、立体化学与 protonation state├── docking box 中心和尺寸└── exhaustiveness、seed 和输出 pose 数            ↓AutoDock Vina 生成 pose 与同协议内的经验分数            ↓PoseBusters 检查键长、键角、平面性与碰撞            ↓入选体系可用 OpenMM 做能量最小化或冻结协议的多副本短 MD            ↓输出:poses + scores + geometry report + trajectory/analysis + manifest

这条流程不需要强行插入结构生成或序列设计模型。它的价值是生成和排除 pose 假设,不是把 docking score 包装成实验亲和力。

4. 同类项目怎么选:没有总冠军,只有任务适配

4.1 结构生成与序列设计是两步

项目
它改变什么
何时优先考虑
一句话边界
RFdiffusion3
生成或补全全原子蛋白结构
蛋白 binder、motif scaffolding、配体/金属周围结构设计
输出首先是“结构蓝图”,不是已验证蛋白
RFdiffusion3NA
生成 RNA/DNA/蛋白多聚合物结构
aptamer、核酸界面、多聚合物组装
要额外验证核酸二级结构与碱基配对
ProteinMPNN
为蛋白骨架选氨基酸
普通固定骨架逆折叠
不显式优化配体 pose 或亲和力
LigandMPNN
让周围小分子、离子或核酸原子参与序列设计
口袋、金属配位、蛋白–核酸界面
环境感知不等于会预测 affinity
SolubleMPNN
用不同训练先验为骨架生成序列
需与 ProteinMPNN 做序列分布对照时
名字中的 Soluble 不是溶解度数值预测

一个典型设计任务先用 RFD3/RFD3NA 得到骨架,再用一个 MPNN 变体生成序列。两类模型的分数不能互相替代,也都不能替代后续复折叠和实验。

4.2 六个结构预测项目的差异

项目
最有辨识度的能力
适合优先纳入的场景
重要注意点
AlphaFold 3
官方 AF3 推理实现与多组分基线
学术、非商业对照
代码许可和权重/输出条款不同,商业流程需阻断
Boltz-2
结构预测外增加小分子 affinity 头
需要结构与有边界亲和力信号的任务
affinity 只在声明的 target/ligand 适用域内解读
Chai-1
多组分预测与 contact/covalent restraint
已有实验接触、共价键或其他限制条件
restraint 不能在验证阶段偷渡目标答案
OpenFold3
AF3 类完整开放训练复现和跨硬件研究
需研究训练管线、可复现性和硬件适配
当前仍需按 research preview 心态做自己的挑战集
Protenix
AF3 类开放训练/推理栈与多数据 cutoff 档
企业训练研究、数据时间截止点实验
比较时必须记录具体模型档和 cutoff
RF3
Foundry/AtomWorks 生态内的全原子多组分预测
已使用 RFD3/MPNN/AtomWorks 的设计闭环
同生态复折叠不是完全独立证据,应增加异源模型

上表不能替代本地 benchmark。即使公开论文的总体指标很高,实际项目仍应在自己的蛋白类别、复合物类型、配体分布、数据 cutoff 和输出用途上建立盲测集。

4.3 搜索与数据工具不是附属品

  • MMseqs2
     是高性能搜索和聚类引擎,更像数据库“发动机”。
  • ColabFold
     把 MMseqs2 搜索、MSA 组装、复合物配对和下游格式转换封装成易用流程,更像“导航系统”。
  • AtomWorks
     解析 PDB/mmCIF/CCD、组装体和原子级注释,更像让不同模型共用同一套尺规的“转换器”。

MSA、模板和数据库版本会改变模型结果。它们应是带 digest 和来源记录的一级产物,不应藏在模型容器里临时联网获取。

4.4 PoseBusters、Vina 和 OpenMM 互不替代

项目
回答的问题
输出性质
PoseBusters
结构有没有明显的键长、键角、平面性或碰撞问题?
规则/统计型几何质检报告
AutoDock Vina
在指定口袋和搜索协议下,哪些 ligand pose 值得继续考察?
pose 假设与同协议内经验排序
OpenMM
按某个已冻结力场和模拟协议,体系如何演化?
坐标轨迹、能量和协议内分析

4.5 交互组件是一套联动界面

  • Mol
    * 管三维结构、原子选择、表征和轨迹;
  • RCSB Saguaro
     管一维序列、位点和 annotation tracks;
  • Apache ECharts
     管 PAE/PDE 热图、模型排名和运行指标;
  • Ketcher
     管小分子二维编辑,但权威规范化应留在服务端化学工具;
  • Gradio
     适合快速输入输出 Demo 和模型烟测,不适合取代已有的权限、作业和 Artifact 系统。

最理想的体验是:用户在 Saguaro 点击第 145 位残基,Mol* 同时聚焦三维位置,ECharts 高亮 PAE 对应行列,接触表定位到相邻 ligand atom,而不是五个互不相识的小窗口。

4.6 按目标选组合

目标
建议的项目组合
为什么
企业自托管结构预测
从 Boltz-2、Chai-1、Protenix、OpenFold3、RF3 中盲测两个
先用本地任务集和许可要求选型,同时保留异源共识
结构 + 小分子亲和力信号
Boltz-2 + 另一个结构模型 + PoseBusters
把 affinity、结构共识和几何质检分开
已有 contact/covalent restraint
Chai-1 + 另一个不使用相同 restraint 的对照
区分“条件下拟合”与独立支持
Foundry 设计流程
RFD3/RFD3NA + MPNN 家族 + RF3 + 异源预测器
共生态工程衔接顺滑,异源模型降低循环验证风险
完整训练与数据研究
Protenix 和/或 OpenFold3
重点是训练栈、数据 pipeline、cutoff 和可复现性
学术非商业基准
AlphaFold 3 + 一个宽松许可模型
获得官方对照,同时保留可转生产的路线

5. 许可证与“开源”边界

类别
项目
结论
宽松代码和权重/参数
ProteinMPNN、LigandMPNN、Boltz-2、Chai-1、Protenix、OpenFold3
MIT 或 Apache-2.0;仍需保存具体版本、第三方依赖和数据条款
Foundry BSD 主线
RF3、RFD3、RFD3NA、Foundry 包装层
仓库 BSD-3;RF3论文有权重宽松许可声明;RFD3/RFD3NA 外部 checkpoint 未见独立权重许可证,商用前需书面确认
代码开放、权重受限
AlphaFold 3
当前源码 Apache-2.0;官方权重和输出仅限非商业组织的非商业用途,并禁止与商业活动相关使用
多许可证运行时
OpenMM
API/CPU 主要 MIT,CUDA/OpenCL 平台 LGPL,另有第三方条款
UI/工具
Mol*、Saguaro、ECharts、Ketcher、Gradio、Vina、PoseBusters、ColabFold、MMseqs2、AtomWorks
多为 MIT/Apache/BSD;Ketcher/OpenMM等需保留 NOTICE/多许可证信息

AlphaFold 3 当前官方仓库明确区分 Apache-2.0 源码与单独的模型参数条款;参数和输出不得用于与商业活动相关的用途,也不得用输出训练类似的生物分子结构预测模型。AF3 权重条款

许可证在平台中应成为执行前的机器可读 gate,而不是文档备注:code_licenseweight_licensedata_licenseoutput_policycommercial_status 和 legal_review_ref 应分别记录。

6. 从科普到落地:当前项目代码现状

6.1 已具备的正确基础

当前 P01-P02 已形成结构模型的可替换外壳:

  • protein_structure/contracts.py
     定义 ProteinCandidate、chain/source/construct、修改、二硫键、模板上下文和冻结的模型策略;
  • protein_structure/engine.py
     定义 ProteinStructureAdapter 与统一 ProteinPredictionArtifacts
  • protein_structure/service.py
     完成输入暂存、protocol digest、持久作业、结果验证、ResidueMap、confidence map、assessment、日志和 manifest;
  • config/flows.json
     已发布 P01-P02 micro-Flow;
  • Dynamic Plan 已能用带 digest 的 ArtifactRef 编排不同 Flow;
  • capability-implementations.json
     已有 implementation identity、代码/权重/数据/容器资产、硬件和许可证治理 schema。

这说明新增模型不需要重新实现任务、审计、回放和 Artifact 系统。

6.2 当前缺口

  1. P01-P02 当前 implementation 仍是 aidd.protein.structure.public-fixture,不是生产模型;
  2. ProteinCandidate
     只表达蛋白链,不能完整表达 DNA/RNA/ligand/ion/CCD/SMILES/SDF 和通用共价键;
  3. ProteinPredictionArtifacts
     只有单一 PDB/mmCIF,不能完整表达多 seed、多 sample、PAE/PDE 和 per-atom confidence;
  4. P01-P02 当前 gpu_count=0,与真实 RF3/Chai/Boltz 等 GPU 需求不符;
  5. capability implementation registry 尚无蛋白模型 implementation;
  6. jobs/manager.py
     使用进程内 ThreadPoolExecutor,不能承载需要 30–80 GB 显存的模型常驻运行;
  7. 模型前处理还没有统一的 MSA ArtifactRef、entity map、AtomMap 和 restraint schema。

6.3 已经接入的工具和 UI

  • Vina 1.2.7、Meeko 0.7.1、PoseBusters 0.6.5 已在 SM05-SM06 中形成真实 docking/validation 流程,docking/engine.py 已直接调用 Vina 与 PoseBusters;
  • molecular-structure-renderer.tsx
     已使用 Mol* 5.11.0 加载结构,但还未消费 ResidueMap/ConfidenceMap 或共享选择;
  • protein-sequence-renderer.tsx
     已使用 Saguaro 3.3.0,并明确当前编号是 construct-local;
  • molecule-draft-editor.tsx
     已使用 Ketcher 3.17.1,保存时交给服务端 RDKit 做规范化和身份 diff;
  • ECharts 6.1.0 已在优化活动 renderer 使用,可复用为 PAE/PDE 和模型共识图表。

因此交互层不需要更换技术栈,只需增加结构模型专用的 related-artifact 解析与 selection mapping。

7. 项目落地的目标架构

7.1 能力族与 implementation 分离

建议稳定能力族:

aidd.sequence.msa-generateaidd.protein.backbone-generateaidd.biopolymer.generateaidd.protein.sequence-designaidd.biomolecule.structure-predictaidd.protein-ligand.affinity-rankaidd.molecular-pose.validateaidd.molecular-system.simulateaidd.structure.consensus-assess

implementation 名称再包含模型与冻结资产,例如:

rfd3-foundry-0.2.0-<checkpoint-digest>proteinmpnn-original-<commit>-<weights-digest>boltz2-2.2.1-<weights-digest>chai1-0.6.1-<weights-digest>protenix-v2-2.0.0-cutoff-2021-09-30openfold3-preview2-0.4.4rf3-foundry-0.2.0-<checkpoint-digest>

这样模型升级、替换和 challenger 评估不会改变科学协议的能力语义。

7.2 通用输入契约

建议新增 BiomolecularAssemblySpecification

entities[]├── entity_id / chain_ids / role├── type: protein | rna | dna | ligand | ion├── sequence / length_range├── chemical identity: CCD | SMILES | SDF/CIF ArtifactRef├── modifications├── source and construct mapping└── MSA/template ArtifactRefsbonds[]restraints[]design_regions[]fixed_atoms[]sampling_policylicense_and_network_policy

模型不支持某字段时必须返回 out-of-domain;不能静默删除 ligand、bond、template 或 restraint 后继续执行。

7.3 通用结构输出契约

建议新增 StructurePredictionBundle

  • 原始模型输出目录;
  • 每个 seed/sample 的结构和原生 ranking;
  • 权威 normalized mmCIF;
  • entity/chain/residue/atom/token 映射;
  • per-atom/per-residue confidence;
  • PAE/PDE/distogram 等矩阵;
  • model-native summary;
  • 统一几何与结构一致性评估;
  • 输入、MSA、template、数据库、checkpoint、容器、参数、seed、GPU 和耗时 manifest;
  • Prediction
     证据标记、适用域和限制。

PDB 只应作为兼容副本,因为多字符 chain、复杂化学组分和共价连接更适合 mmCIF。

7.4 独立 GPU runner

flowchart LR    UI["DeerFlow / React Workbench"] --> MCP["AIDD MCP + Preview/Gate"]    MCP --> W["AIDD Worker / Durable Job"]    W --> R["GPU Runner API"]    R --> C1["Generation / sequence-design containers"]    R --> C2["Structure predictor containers A / B"]    R --> C3["Docking / simulation containers"]    C1 --> O["Immutable object/artifact store"]    C2 --> O    C3 --> O    O --> W    W --> UI

基础 Worker 负责协议、排队、状态和 Artifact;模型容器负责 GPU 计算。Runner 请求应包含 implementation identity、input ArtifactRefs、资源上限和 effect key,返回原始输出清单、日志、状态和 digest。

7.5 Dynamic Plan 组合

每个模型保持独立 micro-Flow,Dynamic Plan 只通过 ArtifactRef 连接:

flowchart TD    A["Assembly / sequence specification"] --> M["MSA / data preparation Flow"]    D["Design specification"] --> G["Backbone / biopolymer generation Flow"]    G --> Q["Sequence-design Flow"]    M --> F1["Structure predictor Flow A"]    M --> F2["Structure predictor Flow B"]    Q --> F1    Q --> F2    F1 --> V["Consensus / geometry Flow"]    F2 --> V    V --> P["Physics Check Flow"]    P --> H["Named-human Gate"]

这复用现有 Dynamic Plan 的预算、分支、停止条件和人工门控,不创建新的 agent runtime。

8. 交互页面建议

8.1 推荐布局

┌──────────────────────────────────────────────────────────────┐│ Run / Model / Sample / License / Evidence / Download         │├───────────────────────────────┬──────────────────────────────┤│ Mol* 3D structure             │ ECharts PAE/PDE heatmap      ││ residue/atom/ligand selection │ model ranking / confidence   │├───────────────────────────────┴──────────────────────────────┤│ Saguaro sequence tracks                                      ││ construct/source/auth/label numbering, motif, PTM, design    │├───────────────────────────────┬──────────────────────────────┤│ Geometry / PoseBusters       │ Provenance / model manifest   ││ contacts / clashes / bonds   │ assets / seeds / limitations  │└───────────────────────────────┴──────────────────────────────┘

8.2 统一选择总线

现在 Saguaro 选择是 chain:construct_position,Mol* 使用结构内部 loci,PAE 使用 token index。建议由 ResidueMap/AtomMap 把共享选择升级为:

{"artifact_digest":"sha256:...","entity_id":"protein-A","chain_id":"A","construct_position":37,"source_position":145,"label_seq_id":37,"auth_seq_id":145,"insertion_code":null,"model_token_index":36}

Saguaro 点击残基后,Mol* 应 focus 同一结构位置,ECharts PAE 高亮对应行列;Mol* 点击 ligand atom 后,contact 表和 Ketcher/RDKit identity panel 应定位同一 AtomMap。

8.3 插件采用结论

  • 继续使用 Mol
    *:已有依赖和 renderer,扩展 selection/theme/sample 即可;
  • 继续使用 Saguaro
    :已有 sequence viewer,补 ResidueMap 和 annotation tracks;
  • 继续使用 ECharts
    :足够绘制 PAE/PDE、共识和运行指标,不必增加 Plotly;
  • 继续使用 Ketcher
    :只负责编辑,服务器端 RDKit 保持权威;
  • Gradio 仅做独立 demo
    :用于新模型容器的短期烟测,不嵌成第二套生产 UI。

9. 分阶段实施建议

阶段 A:统一契约与运行边界

目标:真实模型接入前先消除结构性债务。

  • 新增多组分 entity/bond/restraint schema;
  • 扩展多 seed/sample、PAE/PDE、per-atom confidence 输出;
  • 建立 MSA ArtifactRef 与网络数据流转 policy;
  • 建立 GPU runner API 和容器/权重 digest 治理;
  • 为蛋白模型新增 capability implementation records;
  • 将 code/weight/data/output license 拆开。

验收:fixture 可以在不运行真实模型时完整 round-trip,并对 unsupported field fail-closed。

阶段 B:横向评估结构预测项目

不预设某个模型必然成为生产主线。从 Boltz-2、Chai-1、Protenix、OpenFold3 和 RF3 中选取符合许可、硬件和任务需求的候选,用同一小型挑战集评估;AF3 仅在符合条款的隔离环境做非商业对照。

  • 对每个候选固定代码、checkpoint、自算 SHA256、容器、参数和 seed;
  • 用相同的 protein-only、complex 和 protein–ligand fixtures 比较输入覆盖与失败边界;
  • 将原始输出全部归档,再转成统一 StructurePredictionBundle;
  • 实测显存、吞吐、超时、OOM、取消和恢复;
  • 基于科学指标、许可、运维成本和项目适配性选择生产 implementation 与 challenger。

验收:所有候选共用一套报告,结论可回溯到单个输入、模型资产和原始输出。

阶段 C:补齐 MSA 和多模型共识

  • 建立 ColabFold/MMseqs2 独立 MSA Flow;
  • 按阶段 B 的盲测接入至少两个不同结构 implementation;
  • 统一计算 pairwise structure/interface disagreement;
  • 需要时把 Boltz affinity 单独注册为有适用域的 capability;
  • 不直接平均不同模型的原生 confidence。

验收:同一冻结输入和同一 MSA 下的多模型盲测、不一致性分析和校准报告。

阶段 D:接入生成与序列设计闭环

  • 将 RFD3 和 RFD3NA 作为两个输入域不同的 generation Flow;
  • 将 ProteinMPNN、LigandMPNN 和 SolubleMPNN 注册为同一能力族的不同 implementation;
  • 每条 sequence 保存 parent backbone、design mask、约束与生成谱系;
  • 任何复折叠预测器都禁止把设计骨架当作验证 template;
  • 至少一个异源预测、几何门控和人工 gate 后才进入实验候选集。

验收:公开 motif、binder、ligand-pocket 和 nucleic-acid fixtures,证明约束、谱系和反循环规则完整。

阶段 E:几何、物理和交互完善

  • 将 PoseBusters 从 Vina pose 扩展到结构模型产生的 ligand pose;
  • 将 OpenMM 最小化/短 MD 建成独立 physics-hypothesis Flow;
  • 用 Mol*、Saguaro 和 ECharts 完成跨视图 ResidueMap/AtomMap 联动;
  • 用 Gradio 保持新模型的独立 smoke demo,不导入第二套生产作业系统;
  • 所有模型、搜索数据库和验证组件持续进入同一 challenge track。

10. 统一验收与证据分层

10.1 每个模型 implementation 的共同验收

  • 身份
    :代码、权重、容器、数据库、前后处理均有 digest;
  • 输入
    :entity、chain、sequence、ligand、bond、MSA、template、restraint 无静默丢失;
  • 输出
    :每个坐标和置信度能映射回输入 entity/residue/atom;
  • 可重复性
    :seed 和确定性边界明确;
  • 资源
    :最大 token/atom、显存、超时、OOM 和取消可测试;
  • 许可证
    :执行前 gate,输出继承 policy;
  • 科学性
    :适用域、限制和错误类型可机器读取;
  • 升级
    :任何模型/权重/数据库/容器变化重新跑固定 challenge set。

10.2 证据层级

模型原始输出  ↓格式/映射/几何有效性  ↓模型内置信度  ↓多样本稳定性  ↓异源模型一致性  ↓物理假设检查  ↓实验 Observation

上层可以否定下层的过度解释,但下层不能自动升级成上层。例如高 pLDDT 不能升级成 affinity observation,多模型一致也不能升级成实验结构。

11. 综述结论:怎样把这个生态用对

  1. 先选科学能力,再选具体项目。
     搜索、生成、序列设计、结构预测、对接和模拟是不同能力,不存在一个能合理替代所有环节的“总模型”。
  2. 把 MMseqs2、ColabFold 和 AtomWorks 当成一级基础设施。
     MSA、模板、数据库和原子标准化会改变下游结果,必须可审计、可复用。
  3. 结构预测不预设唯一胜者。
     用自己的盲测集在 AF3、Boltz-2、Chai-1、OpenFold3、Protenix 和 RF3 中做合规比较,生产上保留两个异源 implementation 比依赖某个公开总榜更可靠。
  4. 设计流程要串联,证据要分层。
     RFD3/RFD3NA 生成结构,MPNN 家族生成序列,独立结构模型做复折叠,但各环节分数不应混成一个不可解释总分。
  5. PoseBusters、Vina 和 OpenMM 组成逐渐加深的检查链。
     它们分别检查几何、生成 pose 假设和检验特定物理协议,任何一个都不是实验活性的替代品。
  6. 把开源边界做成机器可读门控。
     分别记录 code、weight、data 和 output 条款;尤其不能用 AF3 源码的 Apache-2.0 掩盖其官方权重与输出限制。
  7. 用 Mol、Saguaro、ECharts 和 Ketcher 建一个联动工作台。
    * Gradio 保留给独立 Demo 和烟测,不取代生产权限、作业和 Artifact 系统。
  8. 当前代码应沿现有架构扩展。
     补齐通用多组分契约、GPU runner、多样本产物和 ResidueMap/AtomMap 联动,继续复用 Dynamic Plan、ArtifactRef、MCP 和命名人工门控。
  9. 模型链的终点仍是实验。
     模型可以帮助生成、排序和排除假设,但不能自行把 Prediction 升级为 Observation。

12. 逐项目资料与主来源

本项目逐项目分析

  • RFdiffusion3
  • RFdiffusion3NA
  • ProteinMPNN
  • LigandMPNN
  • SolubleMPNN
  • AlphaFold 3
  • Boltz-2
  • Chai-1
  • Protenix
  • OpenFold3
  • AtomWorks
  • ColabFold
  • MMseqs2
  • PoseBusters
  • AutoDock Vina
  • OpenMM
  • Mol*
  • Ketcher
  • RCSB Saguaro
  • Apache ECharts
  • Gradio

延伸专题

  • RosettaFold-3 主来源深度报告
  • Foundry 开源模型目录
  • RF3 输入输出可视化说明
  • RF3 初学者图解

21 个项目的官方入口

  1. RFdiffusion3
  2. RFdiffusion3NA
  3. ProteinMPNN
  4. LigandMPNN
  5. SolubleMPNN / Foundry checkpoint registry
  6. AlphaFold 3
  7. Boltz-2
  8. Chai-1
  9. Protenix
  10. OpenFold3
  11. AtomWorks
  12. ColabFold
  13. MMseqs2
  14. PoseBusters
  15. AutoDock Vina
  16. OpenMM
  17. Mol*
  18. Ketcher
  19. RCSB Saguaro
  20. Apache ECharts
  21. Gradio