

论文题目:Illuminating protein space with a programmable generative model 期刊:Nature 发表时间: 2023 年 11 月 机构: Generate Biomedicines 核心模型: Chroma 代码: https://github.com/generatebio/chroma
Chroma 是 Generate Biomedicines 在 Nature 发表的蛋白质生成模型。它的重点不是单纯生成一个看起来像蛋白的骨架,而是试图建立一个可编程的蛋白质先验:先学习自然蛋白结构与序列的联合分布,再在采样过程中加入对称性、功能基序、形状、结构类别和文本语义等条件,从而生成符合用户需求的蛋白结构、序列和侧链。方法上,Chroma 将蛋白骨架扩散为符合聚合物统计规律的随机塌缩链,并用具有亚二次复杂度的随机图神经网络完成反向去噪和结构合成。实验上,作者不仅做了大规模计算评估,还对 310 个设计蛋白进行表达、折叠和生物物理验证,并解析了两个接近设计模型的晶体结构。它展示了生成式蛋白设计从结构采样走向条件可控设计的重要方向,但距离可靠功能设计仍有明显距离。
蛋白质设计的终极目标,不只是生成一条能折叠的氨基酸序列,而是按需求创造新的蛋白质物质:可以是稳定 scaffold,可以是抗体样结合界面,可以是对称装配体,可以是酶活性位点周围的新骨架,也可以是具有特定形状和空间组织能力的蛋白复合物。
传统蛋白设计通常依赖搜索。研究者先指定一个结构框架或功能基序,再用 Rosetta、ProteinMPNN、AlphaFold、能量打分、过滤规则和人工经验反复筛选。这个流程有效,但它的本质仍然是从巨大空间里一步步搜索。问题在于,蛋白质空间极其庞大,真正可折叠、可表达、可稳定存在并具备功能的区域又非常稀疏。搜索越依赖人工规则,越难扩展到复杂任务。
Chroma 尝试换一种思路:不再把蛋白设计主要看成搜索问题,而是把它看成从可设计蛋白分布中进行条件采样的问题。也就是说,模型先学习什么样的蛋白结构和序列整体上是合理的,再在生成过程中加入用户约束,让采样向目标功能、形状或结构类别偏移。
这篇文章值得关注,主要因为它同时尝试解决三个过去很难合在一起的问题:
第一,生成对象不只是单链 backbone,而是蛋白和蛋白复合物,并进一步生成序列与侧链。 第二,模型结构设计考虑了长蛋白和大复合物的计算复杂度,避免完全依赖 O(N²) 或 O(N³) 级别的全局交互。 第三,条件控制不是每个任务重新训练一个模型,而是在采样阶段通过可组合 conditioner 注入约束。
论文明确提出,已有蛋白生成模型尚未同时实现全复合物的序列-结构联合建模、亚二次计算复杂度和无需重训的多样约束条件采样;Chroma 正是围绕这三点展开。
蛋白设计难,不只是因为序列空间大。更深层的问题在于,蛋白质是一类高度耦合的物理系统:
一条序列必须形成稳定三维结构; 结构内部要有合理的疏水核心、氢键网络、二级结构搭配和局部几何; 如果是复合物,还要考虑链间界面、对称性、装配方式和结合表面互补; 如果涉及功能,还要保留催化残基、结合基序、离子结合位点或动态构象变化。
传统方法的典型逻辑是:先构造或搜索 backbone,再做序列设计,然后用结构预测、能量函数和人工规则过滤。这个流程的核心瓶颈有三个。
第一是搜索瓶颈。可行骨架空间太大,很多计算时间花在寻找合理结构上,而不是优化真正关心的功能。
第二是表示瓶颈。蛋白既是链状聚合物,又是三维几何对象,还是由残基、原子、侧链、复合物界面共同决定的多尺度系统。只用序列会丢掉几何,只用 backbone 会丢掉侧链和序列可实现性,只做局部图又可能难以捕捉远程相互作用。
第三是可控性瓶颈。实际设计任务常常不是请生成一个稳定蛋白,而是请在保留某个 motif 的同时重建周围 scaffold,或生成具有某种对称性的纳米装配体,或让结构靠近某种形状,或偏向某类折叠。每次为新目标重训模型不现实。
Chroma 的核心价值在于,它将这些问题统一到扩散模型的条件采样框架中:模型提供蛋白质先验,用户约束提供条件项,采样过程则在二者之间寻找满足条件且仍然像真实蛋白的解。
这类方法以 Rosetta 系列为代表,优势是物理解释性强,可以精细处理侧链堆积、氢键、界面和局部几何。它们在 scaffold 设计、binder 设计、酶设计和对称装配体设计中都很重要。
但问题也明显:搜索成本高,设计流程复杂,通常需要大量经验性过滤。对于复杂功能设计,研究者往往需要手工定义约束、反复优化 backbone、再进行序列设计和结构预测验证。它很强,但不够自动化。
蛋白语言模型从天然序列中学习进化统计规律,可以生成看起来像自然蛋白家族的新序列,也能用于突变效应预测和序列优化。它们的优势是能利用海量序列数据。
但序列模型通常缺少显式三维几何控制。对于需要指定空间结构、界面几何、功能基序和多链装配的任务,仅靠序列生成不够直接。
扩散模型适合处理高维连续空间生成问题,因此被引入蛋白 backbone 生成。它们可以从噪声逐步去噪,生成三维结构。RFdiffusion 等工作已经证明扩散模型可用于 motif scaffolding、binder backbone 生成和功能设计。
但早期结构生成方法常面临三个问题: 一是计算复杂度随残基数增长较快; 二是生成对象多集中于 backbone,对序列、侧链和复合物处理不够统一; 三是条件模式虽然强大,但不同条件如何模块化组合、如何在采样阶段灵活注入,仍是关键问题。
Chroma 不是在单点任务上追求极致,而是试图构建一个更通用的蛋白生成底座:既能无条件生成,也能接受几何、结构类别、语义和文本条件。
Chroma 可以理解为一个蛋白质空间的概率模型。它先学习自然蛋白和蛋白复合物的结构-序列分布,然后把设计问题写成条件采样:
模型先验负责回答:什么样的蛋白整体上合理? conditioner 负责回答:用户想要什么? 扩散采样负责在两者之间寻找折中:既满足约束,又保持蛋白样结构。
论文图 1 给出了整个框架:前向过程把真实蛋白 backbone 扩散成随机塌缩聚合物;反向过程从聚合物状态逐步恢复蛋白 backbone;随机图神经网络预测残基间几何;等变几何求解器把预测的几何关系整合成全局三维结构;随后设计网络在 backbone 条件下生成序列和侧链,得到全原子蛋白复合物。

这个设计有一个很关键的转变:Chroma 不是简单在坐标上加独立高斯噪声,而是引入符合蛋白聚合物统计规律的相关噪声过程。因为蛋白不是任意点云,而是有链连接、有半径尺度、有塌缩状态和远程接触统计的聚合物。把加噪过程设计得更接近蛋白物理统计,有助于让反向生成过程更符合蛋白结构空间。
Chroma 的任务可以分为两类。
第一类是无条件生成。用户给定蛋白长度、链数等基本设定,模型直接采样新的蛋白 backbone,再生成序列和侧链,输出一个蛋白或蛋白复合物的全原子模型。
第二类是条件生成。用户指定约束,例如:
对称性:生成 C3、C4、D3、四面体、八面体或二十面体对称复合物; 子结构:固定某个结构片段,让模型补全缺失部分; 功能基序:固定催化三联体、EF-hand 钙结合 motif 等,让模型生成周围 scaffold; 形状:让蛋白整体贴合某个点云形状; 语义:让模型偏向某类 CATH 折叠或二级结构组成; 文本:通过自然语言描述引导结构生成。
输出不是一个单纯 backbone,而是 backbone、序列、侧链构象共同构成的蛋白模型。
Chroma 的表示思路有两层。
第一层是 backbone 坐标。扩散过程主要作用在蛋白 backbone 的三维坐标上。与图像扩散中每个像素独立加噪不同,Chroma 的加噪过程要保持蛋白链的聚合物性质,包括链连续性和半径尺度统计。论文图 1a 描述了这个过程:训练时真实蛋白逐渐被扩散为塌缩聚合物,生成时模型从塌缩聚合物逐步反向去噪,恢复成蛋白复合物 backbone。
第二层是残基图。为了让模型处理长程相互作用,Chroma 不使用完整的全连接残基对图,而是构造带随机长程连接的图神经网络。这样既保留局部链连接和空间邻近关系,又通过少量远程边传播全局信息。
这背后的直觉类似快速 N-body 方法:一个大系统中不必显式计算所有两两相互作用,也可以通过合理的稀疏连接近似长程信息流。论文强调该结构可达到 O(N) 或 O(NlogN) 的亚二次复杂度,这对长蛋白和大型复合物生成非常重要。
Chroma 的前向扩散过程可以概括为:
从真实 protein backbone 坐标开始; 逐步加入相关噪声; 噪声过程不是把每个残基独立推向高斯分布,而是让整体结构趋向具有蛋白聚合物统计特征的塌缩状态; 在高噪声端,样本更像随机塌缩聚合物,而不是完全无结构的点云。
这样做的意义在于,蛋白 backbone 有强链约束。如果使用普通独立高斯噪声,模型在反向过程里需要同时学会链连续性、尺度统计、局部几何和远程折叠,任务较难。Chroma 把部分聚合物物理先验写进扩散过程,使模型反向去噪时面对的中间状态更接近蛋白可能经过的几何空间。
反向过程则由去噪网络完成。给定时间步 t 的噪声坐标 xt,模型预测一个去噪后的结构估计 x0,或者更准确地说,预测与干净 backbone 相关的残基间几何信息,再由几何求解模块整合为三维结构。图 1 中将其写作一个时间依赖的 denoiser,把 noisy coordinates 映射到 predicted denoised coordinates。
Chroma 的 backbone 生成不是直接让神经网络输出最终坐标。它采用一个更结构化的路径:
第一步,随机图神经网络处理 noisy structure。节点可理解为残基或残基相关的结构单元,边包括局部和随机长程连接。网络根据当前噪声结构、时间步和图连接关系进行消息传递,更新几何表征。
第二步,网络预测带置信度的残基间几何关系。这些几何关系可以包括残基间距离、方向或其他能够约束三维结构的 inter-residue geometry。预测置信度很重要,因为不同残基对在不同噪声水平和不同空间状态下可靠性不同。
第三步,等变几何求解器根据这些残基间几何约束求出一个全局一致的三维 backbone。所谓等变,指模型对整体旋转和平移不敏感:蛋白在空间中整体旋转或移动,内部几何关系不应改变,生成结果也应相应旋转或移动。
这个设计比直接预测坐标更稳健。直接输出坐标容易受到坐标系选择影响,也难以保证全局一致性。先预测残基间几何,再求解全局结构,相当于让网络关注相对几何关系,而把三维坐标合成交给几何模块。
生成 backbone 只是第一步。一个 backbone 是否可实现,最终还取决于是否存在能折叠到该结构的序列,以及侧链是否能合理堆积。
Chroma 在 backbone 扩散采样后,使用 design network 生成序列和侧链构象。论文说明,该设计网络同样基于类似的图神经网络架构,并包含条件序列和侧链解码层;它在采样到的 backbone 条件下生成氨基酸序列和侧链,从而构成序列与结构的联合生成模型。
这一步非常重要。很多结构生成方法生成的是 backbone,然后需要外部 inverse folding 模型或 ProteinMPNN 设计序列。Chroma 的思路是把 backbone 生成和序列/侧链生成纳入同一个生成框架。虽然实际流程仍可分成 backbone diffusion 和 design network 两步,但模型目标更接近完整蛋白设计。
Chroma 引入低温采样,用修改后的扩散过程提高生成 backbone 的 likelihood,同时牺牲一部分构象多样性。论文明确指出,低温采样可以在提高样本质量和降低熵之间做权衡。
这对蛋白设计很现实。纯粹追求多样性会产生很多边界样本,可能不稳定、不可表达或不可折叠。实验设计时,研究者通常更愿意先得到高成功率候选,再考虑多样性扩展。低温采样就是把分布往更高概率、更保守、更可实现的区域推。
但这也带来风险。论文在无条件样本分析中观察到,Chroma v.1 中 α-螺旋存在过度表示,作者认为这可能与低温采样放大了天然蛋白中本来就较高的螺旋频率有关。
Chroma 最有特色的部分是 conditioner 框架。
可以把 Chroma 的无条件模型看成一个蛋白先验 p(x):它告诉我们什么样的结构像真实蛋白。用户约束可以看成条件 y,比如指定对称性、形状、motif 或语义。设计目标就是从 p(x|y) 中采样,也就是在满足条件 y 的情况下,生成仍然符合蛋白先验的结构。
论文图 1c 用一个很清晰的形式表示:时间依赖的蛋白先验与时间依赖的 conditioner 相加,得到时间依赖的 posterior。换成直观语言,就是在每一个扩散去噪步中,既沿着模型学到的蛋白分布走,也沿着用户约束给出的方向调整。
Chroma 的 conditioner 包括几类:
几何约束:固定子结构、控制特定原子距离、补全缺失区域。 motif 约束:把功能基序嵌入更大的结构中。 对称约束:生成具有任意对称群的复合物。 形状约束:用点云描述目标体积形状,通过最优传输距离等方式引导结构贴合形状。 语义约束:训练结构分类器预测 CATH 类别或自然语言注释,再在生成时反向优化分类器输出。
论文强调,这些 conditioner 可以组合,支持针对具体设计任务的定制生成。
Chroma 的实际生成流程可以概括为六步:
作者首先大规模采样无条件蛋白:100,000 个单链蛋白和 20,000 个复合物,覆盖两个模型版本 v.0 和 v.1。结果显示,Chroma 能生成具有天然蛋白特征的复杂结构,包括 α-螺旋束、β-折叠、TIM barrel 样结构,以及类似抗体-抗原复合物的多链构型。
为了避免只是看图说话,作者计算了二级结构比例、contact order、长度依赖的回转半径、长程接触频率和残基接触密度等统计量。整体上,Chroma 样本与 PDB 分布较一致,但也存在 α-螺旋偏多的问题。
新颖性方面,作者用 nearest-neighbour TM score 比较生成结构和 PDB 已知结构。论文图 2 中多个样本与最近 PDB 结构的 TM score 约为 0.46、0.50、0.51、0.53,说明生成结构并不只是直接复制已知结构。论文还用 CATH domain coverage 定义 novelty score,发现 Chroma 生成结构与天然结构之间存在明显差异,天然 backbone 通常需要更少 CATH domain 即可覆盖,而生成结构需要更多片段覆盖,说明其整体组合更偏新。

仅有 backbone 看起来合理还不够,关键是是否存在能折叠到该 backbone 的序列。作者为每个生成 backbone 采样一个序列,然后用三个先进结构预测方法检查该序列是否会被预测折叠回原始生成结构。
结果显示,Chroma 样本具有广泛的 refolding 能力,甚至长度超过 800 个残基的蛋白也能取得较高 TM score。论文也明确指出,这个测试并不完美,因为它依赖结构预测模型能否泛化到新 fold 和新拓扑;但当预测结构与生成结构高度一致时,它至少提供了生成结构可实现性的部分证据。
这一点很重要。生成模型经常会生成几何上看似合理、但没有可实现序列的结构。Chroma 用 refolding 作为中间证据,说明模型生成的 backbone 与序列之间存在一定一致性。
论文展示了几类条件生成能力。
第一是对称性。Chroma 可以生成 Cn、Dn、四面体、八面体、二十面体等对称复合物。论文图 3a 甚至展示了一个含 60 个亚基、总计 60,000 个残基、超过 240,000 个原子的二十面体复合物,这体现了亚二次复杂度架构对大体系生成的意义。

第二是子结构补全和 motif scaffolding。作者把 DHFR 切掉一半,让模型补全另一半;把 VHH 抗体的 CDR 区域切掉再重建;还固定 αββ packing motif、胰凝乳蛋白酶催化三联体和 EF-hand 钙结合 motif,让模型在周围生成 scaffold。这个任务直接对应功能蛋白设计中的核心难点:既要保留关键功能几何,又要让其嵌入一个整体稳定的蛋白框架。
第三是形状控制。作者用点云描述拉丁字母和阿拉伯数字等复杂形状,通过基于最优传输距离的启发式 classifier gradient 引导蛋白 backbone 贴合目标体积。虽然字母形状更像压力测试,不一定对应真实生物功能,但它证明 Chroma 可以把抽象形状约束转化为蛋白结构生成条件。
第四是语义控制。作者训练结构分类器预测二级结构、CATH topology 和自然语言注释,然后在生成时让模型优化分类器输出。对于 Rossmann fold 等训练集中较常见类别,生成结果较能体现目标特征;但对于 Ig fold 或 β-barrel,模型有时只捕捉到部分特征,不能保证完整拓扑正确。论文也承认,语义条件依赖神经分类器,分类器预测和真实类别可能不一致。

Chroma 的重要性不仅在于计算生成,更在于作者做了相当规模的实验验证。
实验流程很直接: 先用 Chroma 低温采样生成 backbone; 再用 Chroma design network 为每个 backbone 设计序列; 然后主要根据序列或结构 likelihood 自动选择实验候选; 特别值得注意的是,作者刻意没有用结构预测 refolding 或结构能量计算进行过滤,以便更直接检验 Chroma 学到的分布本身。
作者总共生成并测试了 310 个蛋白,包括无条件设计和基于 CATH class/topology 的语义条件设计。第一批 172 个无条件蛋白长度为 100–450 aa,使用 split-GFP reporter system 进行 pooled solubility assay,并通过 FACS 和 Nanopore sequencing 得到可溶表达 enrichment score。结果是,172 个蛋白的得分都高于阴性对照,说明大量 Chroma 设计蛋白可以在大肠杆菌中可溶表达。western blot 进一步确认,top 20 中有 19 个可溶表达,而 bottom 20 中没有可溶表达。

作者随后又测试了 96 个更长的无条件蛋白,长度扩展到 950 aa;其中 top 10 中有 9 个被 western blot 确认可溶表达。对于 split-GFP top 10% 的蛋白,作者纯化了 7 个进行 CD 和 DSC 检测,结果表明多数具有稳定折叠和可观二级结构。更关键的是,作者解析了 UNC_079 和 UNC_239 两个设计蛋白的 X-ray 晶体结构,与 Chroma 生成模型 backbone 的 RMSD 分别为 1.1 Å 和 1.0 Å,说明至少部分设计在原子级结构上接近预期。
对于条件设计,作者测试了 42 个由 ProClass 按 CATH 类别或 topology 条件生成的蛋白,其中 40 个在 split-GFP assay 中高于阴性对照,比例为 95%。部分纯化蛋白的 DSC 熔解温度为 64–78 °C。CD 推断的二级结构含量与 Chroma 设计模型中的二级结构含量相关,α-螺旋 R² 为 0.84,β-折叠 R² 为 0.51。
这组实验的价值在于,它不是只挑几个成功案例展示,而是做了较系统的表达、纯化、生物物理和晶体学验证。对于生成式蛋白设计论文,这是非常重要的可信度来源。
很多扩散模型默认从独立高斯噪声开始,但蛋白不是普通点云。Chroma 的 polymer diffusion 提醒我们,生成式蛋白设计的关键不只是换一个神经网络,而是要把蛋白的链状聚合物物理写进生成过程。合理的噪声分布本身就是一种结构先验。
Chroma 的 conditioner 框架很值得借鉴。它把各种设计需求统一为采样中的条件项,而不是每来一个任务就重训模型。这种思想可以推广到 binder 设计、酶活性位点设计、蛋白-小分子结合口袋设计,甚至小分子生成中的多目标约束优化。
蛋白复合物、对称纳米结构、多结构域蛋白都不是小体系。如果模型复杂度是 O(N²) 或 O(N³),许多任务会变得非常昂贵。Chroma 使用随机长程图连接,把全局信息传播和可扩展性结合起来,这是面向真实大分子系统的重要工程选择。
生成模型很容易在图像、统计指标或结构预测上表现好,但真正能否表达、折叠、稳定存在,必须靠实验。Chroma 的 310 个蛋白实验验证是本文最重要的证据之一,也让它区别于许多只做计算 benchmark 的生成模型。
Chroma 证明了许多生成蛋白可以表达、折叠并接近设计结构,但这不等于已经能稳定设计功能。论文展示了 motif、形状、类别和文本条件,但大多数实验验证仍集中在可溶表达、折叠稳定性和结构一致性,而不是催化活性、结合亲和力、选择性或细胞功能。
对于 AI 制药来说,真正困难的是功能闭环:生成 binder 是否真的结合目标?酶设计是否有催化效率?蛋白药物是否有稳定性、免疫原性、可开发性和体内行为?Chroma 尚未系统回答这些问题。
语义 conditioner 的能力取决于分类器。如果分类器学到的是数据集中常见类别的表面模式,而不是真正的结构因果规律,生成结果就可能只满足分类器,而不满足真实目标。论文中 Ig fold 和 β-barrel 的例子已经显示,模型有时能提高类别概率,但结构并不完全符合典型拓扑。
自然语言控制更应谨慎理解。当前结果说明文本可以作为一种弱语义引导,但距离像图像生成那样稳定响应复杂提示还很远。
低温采样有助于生成高 likelihood 结构,但也可能把分布推向更保守、更常见的区域。论文观察到 α-螺旋过度表示就是一个信号。对于探索新型蛋白空间来说,如果模型过度偏向高概率区域,可能会牺牲真正新颖的拓扑和功能机会。
用 AlphaFold 或其他结构预测模型检验生成序列是否折回 backbone 是合理的计算验证手段,但它不是实验真值。论文也指出,该测试依赖结构预测模型能否泛化到新 fold 和新拓扑。对于非常新颖的结构,结构预测模型可能既可能过度自信,也可能低估可实现性。
作者在讨论中指出,即便采用最保守标准,只把纯化并单独表征成功的蛋白算作成功,Chroma 仍有约 3% 成功率。这个数字对从头蛋白设计并不低,但也说明大量生成样本仍可能不适合进一步开发。论文还显示,长度越长 split-GFP 得分越低;likelihood 对实验成功的预测并不稳定。
蛋白药物或蛋白工程项目通常还要求高表达、可纯化、热稳定、低聚集、低免疫原性、明确功能、可规模化生产,以及在复杂生物环境中的有效性。Chroma 当前更像是一个强大的生成式设计平台雏形,而不是端到端药物发现机器。
Chroma 对 AI 制药的意义不在于它马上能替代实验室设计蛋白药物,而在于它给出了一种更通用的设计范式。
第一,蛋白设计会越来越像条件生成。未来研究者可能不是从零手工搭建 backbone,而是输入目标界面、活性位点、对称性、形状、表达限制和开发属性,由模型在这些约束下生成候选。
第二,蛋白生成模型会从 backbone-only 走向全原子、多链、功能条件联合设计。结构、序列、侧链、复合物界面和功能基序需要在同一框架中协同处理。
第三,生成模型需要与实验闭环结合。Chroma 已经展示了从生成到 split-GFP、CD、DSC、X-ray 的验证链条。未来更关键的是把高通量结合实验、酶活实验、细胞筛选和稳定性数据反馈给模型,让 conditioner 不只是几何或语义约束,而是真正来自功能实验的可学习目标。
第四,AI 制药中的小分子生成也可以借鉴 Chroma 的思路。对于小分子,先验可以是类药化学空间,conditioner 可以是结合口袋、药效团、ADMET、合成路径和多目标属性。真正重要的不是无约束生成更多分子,而是在可合成、可结合、可优化、可实验验证的条件下采样。