Biohub/esm:蛋白质世界的世界模型,从序列预测到药物设计
posts posts 2026-05-30T03:05:00+08:00Biohub发布的esm是一套蛋白质生物学世界模型,包含ESMC蛋白质语言模型、ESMFold2结构预测和ESM Atlas(覆盖68亿序列与11亿个结构的可解释图谱)。本文解析其三层架构、组件间的协同机制,以及它在蛋白质设计中的适用边界。技术笔记世界模型, 开源快速信息卡
- GitHub: Biohub/esm
- Stars: 2,700+
- Forks: 300+
- License: NOASSERTION(GitHub 未能识别为标准许可,商用前需查阅仓库 LICENSE 文件)
- 语言: Python / Jupyter Notebook
- 维护状态: 活跃(2026-07 仍有提交)
学习目标
读完后你应该能:
- 说清 ESM 的三层架构(ESMC 语言模型、ESMFold2 结构预测、ESM Atlas 可解释层)和各层职责
- 说明 ESMFold2 相比 AlphaFold3 的优势与局限,以及官方结论的证据强度
- 解释 ESM Atlas 如何用稀疏自编码器把神经网络表征翻译成可读的生物学描述
- 判断 ESM 在蛋白质设计任务中的适用边界(已验证能力 vs 尚未充分验证的)
- 评估 ESM 是否适合你的场景,并知道从哪一步开始
目录
Biohub/esm:蛋白质世界的世界模型
一句话判断
esm 不是单个预测模型,而是一条从序列理解到结构预测、再到功能解释的完整推理链。ESMFold2 在蛋白质-蛋白质和抗体-抗原结合的基准上已展示出可比肩甚至超过 AlphaFold3 的成绩,ESM Atlas 把「世界模型」从概念推进到了可检索的生物学空间。值得注意的是,这些结论目前主要来自官方发布与预印本,第三方独立复现有限。
系统地图
esm 由三层组件构成一个流水线,每一层解决一类问题:
┌───────────────────────────────────────────────┐
│ ESM Atlas(可搜索图谱) │
│ 68 亿条序列 + 11 亿个预测结构 │
│ 稀疏自编码器(SAE) → 可解释特征 → 自然语言描述 │
├───────────────────────────────────────────────┤
│ ESMFold2(结构预测层) │
│ 在冻结的 ESMC-6B 表征上接扩散结构预测头 │
├───────────────────────────────────────────────┤
│ ESMC(蛋白质语言模型) │
│ 300M / 600M / 6B 三档,在约 28 亿条序列上训练 │
└───────────────────────────────────────────────┘三层关系:ESMC 是底层世界模型,学习序列背后的进化规律;ESMFold2 基于它的表征做结构预测;ESM Atlas 再用稀疏自编码器把 ESMC 的内部表征拆解成可解释特征并映射到已知数据库。
核心组件逐层解析
ESMC:蛋白质语言模型
ESMC(Evolutionary Scale Modeling of the Cambrian)是一个掩码语言模型,训练目标是在遮住部分氨基酸后预测完整序列,上下文是进化留下的蛋白质序列,而不是自然语言句子。Biohub 给出的参数量三档为 300M、600M 与 6B,最大的是 6B 版本;模型在约 28 亿条跨生命树的序列上训练。与 ESM2 相比,ESMC 的核心论点是存在一条 Scaling Frontier:随着模型规模与训练计算量增大,长程结构与功能信息从表征中「浮现」出来的程度持续提升。
设计要点:
- 全序列掩码训练:随机遮盖部分氨基酸,要求模型重建完整序列,从而压缩折叠与功能的约束
- 多层表征输出:默认只返回最后一层,可通过
output_hidden_states=True取各 Transformer 层的表征 - 两条推理路径:本地 Hugging Face 运行(便于定制与微调),或走 Biohub 云平台(开箱即用)
from transformers import AutoModelForMaskedLM, AutoTokenizer
model = AutoModelForMaskedLM.from_pretrained("Biohub/ESMC-6B", device_map="auto").eval()
tokenizer = AutoTokenizer.from_pretrained("Biohub/ESMC-6B")
inputs = tokenizer(sequences, return_tensors="pt", padding=True)
inputs = {k: v.to(model.device) for k, v in inputs.items()}
with torch.inference_mode():
output = model(**inputs)官方目前说明 PyPI 包尚未正式发布,需通过 pip install esm@git+https://github.com/Biohub/esm.git@c94ed8d 从 GitHub 安装。
ESMFold2:融合语言模型的结构预测
ESMFold2 用 ESMC-6B 的表征作为输入,接一个扩散(diffusion)结构预测头,直接从序列产出原子分辨率的全原子结构。相比早期 ESMFold,它可以处理蛋白质、DNA、RNA、小分子配体以及带修饰的氨基酸组成的复合体系。
核心特性:
- 单序列模式:默认不需要 MSA(多序列比对),速度比传统方法快一个数量级
- 可选的 MSA 提升:困难靶点上可补充 MSA 以提升准确率
- 扩散采样步数可调:在精度与速度之间取舍
from esm.models.esmfold2 import ESMFold2Model, StructurePredictionInput, ProteinInput
model = ESMFold2Model.from_pretrained("biohub/ESMFold2").cuda().eval()
spi = StructurePredictionInput(
sequences=[ProteinInput(id="A", sequence=HHAI_SEQ)]
)
result = ESMFold2InputBuilder().fold(model, spi, num_loops=3, num_sampling_steps=50)输出包含 pLDDT(置信度)、pTM、ipTM 等质量指标,用于判断预测可信度。上述代码基于官方 cookbook 的写法,具体 API 会随版本演进,以仓库文档为准。
ESM Atlas:世界模型的可解释层
这是 esm 里最特别的部分。ESMC 把学到知识压缩进权重,人类无法直接读。Atlas 用**稀疏自编码器(SAE)**把 ESMC 的内部表征拆成约 1.6 万个可解释特征,再让自动化流程把这些特征与已知蛋白质数据库中的实体关联起来。
工作方式:
ESMC 隐藏层表征 → 稀疏自编码器(SAE) → 离散特征激活 → Agent 生成自然语言描述每个特征对应一类可能的生物学意义(例如「此区域可能参与蛋白相互作用」)。Atlas 覆盖约 68 亿条序列和 11 亿个预测结构,是当前对蛋白质生物学规模最大的一次 AI 应用,可以在 Biohub 平台上检索结构、功能邻域以及现有数据库尚未标注的进化关联。
任务流案例:设计一个蛋白质 binder
以设计靶向某蛋白质的结合肽(binder)为例:
- 输入目标序列:把靶点序列送入 ESMFold2,先用单序列模式快速拿到结构
- 生成候选序列:在 ESMC 表征空间做优化,或用 ESMFold2 的逆向设计能力生成新的结合序列
- 结构验证:把候选序列重新输入 ESMFold2,确认折叠合理、结合界面成立
- 功能预估:通过 ESM Atlas 查询候选序列的表征特征,评估潜在活性
- 实验迭代:在实验室合成并测试,按实测结果调整序列
Biohub 在 2026 年 5 月的发布说明与一份预印本中报告,用这套流程针对与癌症和免疫相关的 5 个靶点完成了一次纯计算设计,搜索在数天内完成(而非数月到数年),所得 binder 在实验室验证中表现出高亲和力、高特异性和高稳定性,且与公开数据库已知序列相似度很低,倾向于是从头(de novo)生成的新解。需要说明:这批结果来自官方发布与预印本,完整实验方案和第三方复现尚未公开。
能力边界与不确定性
已验证的能力
- 从单条序列预测蛋白质结构,无需 MSA
- 蛋白质-配体复合物结构预测(DNA、RNA、小分子)
- 蛋白质语言模型表征提取,适合下游任务微调
- 大规模蛋白质序列 / 结构的可检索图谱(Atlas)
尚未充分验证或存在局限的
- 性能对标声明:官方称 ESMFold2 在 DockQ 等指标上达到并能超过 AlphaFold3 的结果,主要来自官方预印本,第三方独立评测有限
- binder 设计实际效果:官方展示了 5 个靶点的验证数据,样本量小,泛化能力未知
- 计算资源门槛:ESMC-6B 与 ESMFold2 都需要较多 GPU 内存,本地运行成本高
- 生物安全边界:项目含 Frontier Safety 相关内容,但具体护栏实现并未完全公开
不能由此推出的结论
- ESMFold2「全面超越」AlphaFold3(目前只有官方自测 / 预印本数据)
- 这套系统可直接用于临床药物设计(仍处科研验证阶段)
- SAE 特征解释完全准确(由自动化流程生成,存在幻觉可能)
适用人群与采用建议
适合先尝试:
- 需要快速从序列拿到结构,且没有充足 MSA 计算资源
- 想在 ESMC 表征空间做下游任务(分类、聚类、功能预测)的研究团队
- 需要大规模结构 / 表征数据查询(通过 Atlas)
- 蛋白质设计的早期探索(binder、酶改造)
可以等等再上车:
- 需要充分验证的生产级结构预测管线(建议与 AlphaFold2/3 交叉对比)
- 对可解释性有严格要求的监管场景(SAE 特征仍在研究期)
- 计算资源受限的中小团队
技术规格速览
| 组件 | 模型规模 | 输入 | 输出 |
|---|---|---|---|
| ESMC | 300M / 600M / 6B | 蛋白质序列 | 隐藏层表征 |
| ESMFold2 | 冻结 ESMC-6B + 扩散头 | 序列 ± 配体 | 3D 结构(cif/pdb)+ 置信度 |
| ESM Atlas SAE | 从 ESMC 表征提取 | ESMC 表征 | 约 1.6 万个可解释特征 |
许可:GitHub 将仓库标记为 NOASSERTION,表明它不是 MIT 或 Apache 这类标准开放许可,实际条款以仓库 LICENSE 文件为准,商用前需确认。
如何开始
云平台(最快)
pip install esm # PyPI 即将发布,当前建议用 git+... 安装
from esm.sdk import esmc_client
model = esmc_client(model="esmc-600m-2024-12", url="https://biohub.ai", token="<your_token>")本地 Hugging Face
from transformers import AutoModelForMaskedLM, AutoTokenizer
model = AutoModelForMaskedLM.from_pretrained("Biohub/ESMC-6B", device_map="auto")官方资源
- GitHub:https://github.com/Biohub/esm
- 官方发布说明:https://biohub.org/news/world-model-of-protein-biology/
- 预印本:https://www.biorxiv.org/content/10.64898/2026.06.03.729735v1
- Atlas 平台:https://biohub.ai/
- 教程:https://github.com/Biohub/esm/tree/main/cookbook/tutorials
自测题
ESM 的三层架构各层的职责是什么? 参考答案:ESMC 是底层语言模型,在约 28 亿条序列上训练(300M/600M/6B 三档),学习进化规律;ESMFold2 以 ESMC 表征为输入、接扩散头做结构预测;ESM Atlas 用 SAE 把 ESMC 表征拆成可解释特征并映射到数据库。
ESMFold2 相比 AlphaFold3 的优势和局限是什么? 参考答案:优势——支持单序列模式(无需 MSA),速度更快;可处理 DNA、RNA、小分子与修饰氨基酸;官方预印本称其在蛋白质-蛋白质与抗体-抗原基准上达到并超过 AlphaFold3。局限——这些结论主要来自官方,第三方复现有限;binder 设计只有 5 个靶点样本,泛化未知。
ESM Atlas 的稀疏自编码器起什么作用? 参考答案:ESMC 的知识以神经表征存在权重里,人读不懂。Atlas 用 SAE 把表征拆成约 1.6 万个可解释特征,再由自动化流程映射到已知蛋白质数据库,让大规模未注解序列变得可搜索。
这套系统能直接用于临床药物设计吗? 参考答案:不能。binder 验证只有 5 个靶点、样本量小;SAE 解释由自动化流程生成、存在幻觉;计算资源门槛高。目前定位是科研验证工具。
你会从哪几方面测试它是否适合你的团队? 参考答案:云平台上跑通一个单序列预测,与 AlphaFold2/3 对比精度和速度;用 ESMC 表征做下游任务微调;用 Atlas 查大规模数据;评估计算资源是否在预算内。
进阶路径
阶段一:快速验证(1–2 周)
- 目标:跑通 ESMFold2 单序列预测,看懂三层架构
- 行动:注册 Biohub 云平台,用
esm.sdk预测一个结构,对照官方基准 - 验收:能说清 ESMC、ESMFold2、ESM Atlas 各自的输入输出及协作方式
阶段二:科研应用(2–4 周)
- 目标:在科研任务中评估 ESM 的适用边界
- 行动:预测目标结构、微调 ESMC 表征做下游任务、用 Atlas 查特征
- 验收:能判断它在特定任务上的精度与速度是否达标
阶段三:蛋白质设计(1–3 个月)
- 目标:用 ESM 做 binder、酶改造等设计
- 行动:按「任务流案例」走一遍,在 ESMC 表征空间优化序列并实验验证
- 验收:能独立完成一个设计流程,并解释其生物学依据
阶段四:方法学改进(长期)
- 目标:理解方法学局限并提出改进
- 行动:读 ESMC、ESMFold2、Atlas 的论文,分析架构与训练细节
- 验收:能批判性评价系统优劣并给出改进方向
常见问题
Q1: ESMFold2 的精度真的超过 AlphaFold3 吗?
A:官方预印本称其在 DockQ 基准上达到并能超过 AlphaFold3,尤其在抗体-抗原结合预测上更强。但这是官方结论,建议在实际任务中与 AlphaFold2/3 交叉对比后选用。
Q2: 需要多少计算资源?
A:ESMC-6B 与 ESMFold2 都需要较大的 GPU 内存。Biohub 云平台是最快的入门方式,不需要本地 GPU;本地运行请查看 HuggingFace 模型卡的硬件说明。
Q3: ESM Atlas 的特征解释可靠吗?
A:特征由自动化流程生成,存在幻觉可能,更适合作为假设生成工具,而非确定性结论,不应直接用于临床决策。
Q4: 可以商用吗?
A:GitHub 将仓库标记为 NOASSERTION,不是 MIT 或 Apache 标准许可。具体能否商用、以何种形式,需查看仓库 LICENSE 文件并咨询法律意见。
Q5: 如何获取技术支持?
A:可通过 GitHub Issues 或在官方渠道提问。科研类问题通常在 GitHub Issues 能得到社区或官方回复。
练习
练习 1:跑通 ESMFold2 单序列结构预测
任务:在 Biohub 云平台或本地用 ESMFold2 预测一个蛋白质的结构。
步骤:
- 打开 Biohub 平台,或本地按
esm依赖并导入ESMFold2Model - 选一条已知蛋白序列(如 GFP,绿色荧光蛋白)
- 用单序列模式预测(不提供 MSA)
- 下载 PDB 结果,用 PyMOL 或 ChimeraX 可视化
- 与实验结构(Protein Data Bank)对比
参考答案:
- 单序列模式应在分钟级完成
- 计算 RMSD(均方根偏差),检查是否捕获正确的折叠拓扑
- 若拓扑明显错误,说明该蛋白位于 ESMFold2 的能力边界之外
练习 2:用 ESMC 表征做聚类
任务:用 ESMC 提取序列表征向量并做聚类分析。
步骤:
- 从 UniProt 下载一组功能相关的序列(如全部激酶)
- 加载 ESMC 模型(600M 起步,资源充裕再用 6B)
- 提取每个序列的表征(末层隐藏状态平均)
- 用 sklearn 做 PCA 或 UMAP 降维可视化
- 检查聚类是否与已知家族分类吻合
参考答案:
- ESMC 在大量序列上预训练,应能捕获功能相关模式
- 功能相近的序列在表征空间应更靠近
- 可比较不同层(等价于例程中的
output_hidden_states=True)的功能相关性差异
练习 3:用 ESM Atlas 查询特征
任务:用 ESM Atlas 查一个蛋白质的结构与功能特征。
步骤:
- 打开 ESM Atlas 平台
- 检索你感兴趣的蛋白质(如刺突蛋白相关靶点)
- 查看 SAE 特征分解结果,哪些特征被激活
- 与已知功能注释对照,评估解释是否合理
参考答案:
- SAE 特征应能大致捕捉已知功能域
- 解释由自动化流程生成,有幻觉可能,需谨慎
- 把特征当假设来源,再用实验去验证
资料口径说明
本文的判断与结论来自以下来源,存在明确局限:
- 主要来源:Biohub 官方发布说明(2026-05-27)、ESM 预印本、ESM GitHub 仓库。
- 断言强度:ESMFold2 对比 AlphaFold3、binder 设计的成绩均为官方发布与预印本口径,第三方独立复现有限。
- 稳定性边界:代码示例基于 ESM 现有 Python API,具体签名会随版本变化;PyPI 包尚未正式发布,需用 git+ 方式安装。
- 时效性:本文基于 2026 年 5–6 月的版本撰写,后续以官方为准。
🦞 文档版本:2026-05-30 | ESM 版本:ESMC-6B / ESMFold2 | 来源:GitHub
参与讨论
使用 GitHub 登录。欢迎补充事实、异议与实践。
讨论暂时无法加载。