Nat. Comput. Sci. | SmileyLlama: 改造大型语言模型,实现定向化学空间探索
今天介绍的是发表在 Nature Computational Science 上的一项研究工作。该研究提出了 SmileyLlama,展示了如何通过监督微调和直接偏好优化,将通用大语言模型 Llama 改造成面向药物分子设计的化学语言模型。作者使用约 200 万个 ChEMBL 分子的 SMILES 及其药物相关性质构造提示数据,让模型学会根据用户指定的分子性质生成有效、新颖且类药的 SMILES 分子;随后又用 DPO 提升模型对具体性质要求的遵循能力,并将其用于 iMiner 强化学习框架,以寻找具有优化三维构象和较高靶点结合亲和力的候选分子。研究表明,相比从零训练专用化学语言模型,基于现成 LLM 进行提示式微调是一条资源效率更高的路线,并且 SmileyLlama 在保留部分自然语言能力的同时,可以更可靠地直接生成满足用户需求的分子。文章也指出,DPO 虽能提升目标遵循度,但可能降低分子多样性;模型在大环分子等数据稀缺场景中仍有不足,不过这一 SFT/DPO/LLM 框架可进一步扩展到药物发现之外的化学、生物和材料设计任务。

获取详情及资源:
0 摘要
通过对工程化提示词进行监督微调,可将大型语言模型(large language models, LLMs)转化为 SmileyLlama,用于探索药物分子的化学空间。SmileyLlama 与预训练 LLMs 以及从头训练的化学语言模型进行了基准比较,以评估其生成有效且新颖的类药分子的能力;同时,直接偏好优化被用于提升 SmileyLlama 对提示词的遵循能力,并作为 iMiner 强化学习框架的一部分,用于预测具有优化三维构象且对药物靶点具有高结合亲和力的分子。通过使 LLM 直接作为化学语言模型表达,同时保留其大部分自然语言能力,结果显示,SmileyLlama 能够可靠生成具有用户指定性质的分子,而不仅仅是作为具备化学知识的聊天机器人或虚拟助手。尽管 SmileyLlama 面向药物发现,但监督微调、直接偏好优化与 LLM 相结合的框架也可扩展至其他化学、生物学和材料应用。
1 引言
化学语言模型(CLMs)通常基于字符串表征进行训练,例如 SMILES 和 SELFIES,并已成为从头生成分子的有用工具,其中最典型的应用是生成与制药和药物发现相关的分子。几乎所有用于分子生成的 CLMs 都是在大量数据上从头训练得到的,例如 ChEMBL 和 ZINC,并采用了不同的模型架构,包括变分自编码器、循环神经网络、生成式预训练 Transformer(GPTs)以及结构化状态空间序列(S4)模型。此外,通过额外训练或不同模型框架对分子进行进一步下游优化,CLMs 在化学生成任务中也取得了进展。
语言模型是对语言单位概率分布进行建模的统计模型,可通过从这些分布中采样来生成有意义的文本。语言模型的最新进展主要来自在大规模数据上训练经尺度扩展的 Transformer,由此产生了大型语言模型(LLMs),例如闭源的 GPT-4 和开放权重的 Llama。近期,科研团队开始使用前沿 LLM 辅助研究,例如将其作为虚拟实验室成员、实现自然语言与化学语言之间的转换,甚至自主开展研究。除化学词典查询或实验室辅助之外,LLMs 还被用于在进化算法中执行突变和交叉操作,以探索化学空间;也被用于修改 SMILES 字符串,从而改变其所表征分子的性质。另一些工作则从 LLMs 中获得启发来设计 CLMs,例如通过基于 Transformer 的架构实现对提示词的响应能力。然而,据目前所知,尚无由预训练通用 LLM 衍生而来的 CLM 达到现代 CLMs 在化学数据上从头训练所表现出的性能水平。
开放权重 LLM:Meta-Llama-3.1-8B-Instruct(以下简称 Llama)可被转化为面向药物发现生成任务的模型。Llama 的开放权重属性带来了多方面优势,包括允许训练和共享适配器;无需将潜在有价值的数据存储在远程服务器上即可进行推理;可控制微调所用的超参数和算法;并可对模型权重开展可解释性分析。通过使用来自 ChEMBL 的 SMILES 字符串,对预训练 Llama 进行监督微调(SFT)和直接偏好优化(DPO),SmileyLlama 能够根据用户定义的、与药物化学相关的提示词,生成具有期望性质的类药分子,其性能可达到或超过现代 CLMs 的水平。进一步结果显示,SmileyLlama 可显著改进 iMiner 算法中的强化学习模块,更高效地探索化学空间,从而生成针对靶蛋白 3D 结合进行优化的分子;这一能力以 SARS-Cov-2(SARS2)主蛋白酶(MPro)为例进行了说明。尽管数据集和后续分析均以药物发现作为下游应用场景,但这一通用流程可扩展至其他化学应用,例如化学合成规划或过渡金属配合物发现。
2 结果
2.1 Llama的SFT 和 DPO
为引导预训练 Llama 模型输出适用于药物分子生成的结果,首先采用 SFT。在这一过程中,Llama 的权重基于 ChEMBL 数据集(v33)中约 200 万个分子的 SMILES 字符串进一步优化,从而得到 SmileyLlama。针对数据集中的每个分子,选取了一组具有药学意义、且与药物化学相关的分子性质,并使用 RDKit 进行计算。此外,药物分子还必须具备与相关生物学现象有关的适宜特征,例如符合五规则,或具有与口服生物利用度、胎盘穿透能力或血脑屏障穿透能力相关的拓扑极性表面积(TPSA)范围。若某类药物无需满足这些标准,则与 SmileyLlama 交互的用户也应能够调整相应范围标准,或将其删除。
在为每个 SMILES 字符串计算并选定这些性质后,构建了包含这些性质取值的提示词,并将产生这些性质的原始 SMILES 字符串作为“正确”补全结果。举例而言,系统指令设定为“你热爱并擅长生成类药分子的 SMILES 字符串”;若指定了性质,则用户指令采用“输出一个具有以下性质的类药分子的 SMILES 字符串:”这一形式;若未指定性质,则采用“输出一个类药分子的 SMILES 字符串:”这一形式。鉴于角色提示的有效性,提示词被设计为赋予 SmileyLlama 一个擅长生成 SMILES 字符串的人工智能角色;同时,这一提示词格式也在激励性与简洁性之间取得了平衡。每项性质均有 50% 的概率被计算并写入提示词,使训练后的模型在推理阶段无论是否指定性质,都能学会同样有效地运行。用于 SFT 的提示词经过结构化设计,使用户在推理阶段无需从大量生成分子中筛选具有正确特征的少数分子,而是可以直接提示 SmileyLlama 提供具有期望特征的分子。SFT 训练过程已有进一步说明。
DPO 也被用于进一步更新 Llama 权重,以强化模型稳健生成分子的能力,尤其是面向性质指定等更具体的任务导向目标。从算法上看,首先提示经过 SFT 的模型生成具有给定性质的分子,随后采样多个 SMILES 字符串,并使用 RDKit 评估这些分子是否具有与提示词要求一致的性质。随后,将正确遵循提示词的分子与未正确遵循提示词的分子进行配对,分别标记为优胜样本和失败样本,并通过单个轮次的 DPO 改善模型性能。
2.2 SmileyLlama 与其他 LLMs 和 CLMs 的基准比较
为比较 SmileyLlama 与其他现有 CLM 的生成能力,采用 GuacaMol 套件对分子的有效性、唯一性和新颖性进行了基准评估。此外,基于 GuacaMol 定义的 Kullback–Leibler(KL)散度和 Fréchet ChemNet distance(FCD,记为
表1 | 在 ChEMBL 上训练的 SmileyLlama、LLMs 以及常见 CLM 架构的 GuacaMol 基准比较

首先分析了 Llama 生成分子的能力,包括仅依赖其预训练知识的零样本设置,以及在构造的提示词中提供一个或多个来自 ChEMBL 数据库示例的设置。结果表明,在未进行 SFT、且提示词中未提供示例的情况下,与其他先进 CLMs 相比,LLM 难以生成较高比例的有效 SMILES 字符串,整体表现较差;即使调整温度(T)等超参数,这一情况仍然存在。值得注意的是,当提示词中提供 20 个示例时,分子有效性反而低于未提供示例的零样本设置。一种可能解释是,Llama 在零样本条件下可能已经接触过部分 SMILES 语法,因此能够生成有效字符串;但其本身缺乏内在泛化能力,更倾向于重复记忆中的 SMILES,导致唯一性较低。当提示词中提供多个示例时,这会使 Llama 偏离其已知且能够生成的 SMILES 字符串;然而,由于示例数量仍然有限,其对 SMILES 字符串中允许变化结构的掌握不足,因此有效性更低。不过,由于这些提示词具有较高多样性,Llama 在 20 样本设置下的唯一性非常高。
SFT 显著提升了 SmileyLlama 生成类药分子的能力。此外,还通过消融实验考察了 SmileyLlama 的提示词格式,包括使用拟人化程度较低的用户提示词和空白模板对 Llama 进行 SFT。结果显示,改变提示词格式并未对 GuacaMol 基准结果产生显著影响。为展示 LLM-SFT 方法的通用性,还采用与 SmileyLlama 相同的 SFT 工作流,包括相同超参数,对 Llama-3.2-3B、Llama-3.2-1B 和 Qwen-2.5-7B 进行了微调。GuacaMol 基准结果显示,SmileyLlama 与 SmileyQwen2.5-7B 之间并未出现显著差异。通过考察 SmileyLlama-1B 和 SmileyLlama-3B 还发现,有效性随参数量增加而提高,而新颖性、唯一性,以及训练分布与生成分子分布之间的匹配程度基本保持不变。
SmileyLlama 生成分子在多样化性质集合上与 ChEMBL 分子高度一致。UMAP 可视化结果显示,SmileyLlama 能够在 ChEMBL 化学空间中所有具有充分代表性的区域生成分子。与药物化学相关的分子性质分布分析中,KL 散度值显示 SmileyLlama 生成分子与 ChEMBL 分子在所有性质上均高度一致,并且与其他模型结果相当,这也体现在 GuacaMol 中较低的 KL 散度上。此外,ChEMBL 训练数据本身包含少量不理想的分子骨架,但 SmileyLlama 和大多数稳健的 CLM 并不会过度采样这些不可行的化学结构。最后,训练是在 T = 1.0 条件下进行的,因为 GuacaMol 基准中的推理温度探索表明,该温度足以适用于结果部分描述的所有测试。

图1 | 不同性质下 SmileyLlama 生成分子与 ChEMBL 训练数据分子的分布比较。SmileyLlama 生成分子以蓝色表示,ChEMBL 训练数据分子以金色表示 a. UMAP 可视化基于随机选取的 10,000 个 ChEMBL 分子和 10,000 个 SmileyLlama 生成分子,采用 15 个邻近点和 0.1 的最小距离;这些参数是化学空间可视化中的常用取值。b. 所考察的分子性质包括
2.3 SFT 条件下使用 SmileyLlama 进行性质指定
在 SFT 条件下,对完整分子性质任务面板中生成的有效且互异的 SMILES 字符串平均比例进行了统计。该基准不同于其他条件分子生成基准,其重点在于测试 SmileyLlama 是否能够稳健生成性质落入特定取值范围的分子,而不是生成具有某一精确性质值的分子。这一点对药物化学家具有实际意义,因为在化学空间探索过程中,Lipinski 规则违背项数量、氢键供体和受体数量等指标通常以数值范围的形式使用。此外,LLMs 往往难以处理具有较高精度、且必须被拆分为多个 token 的数字。因此,训练过程中未在提示词中表示这一类别。
表2 | SmileyLlama 在一系列任务中生成的有效且不同的分子比例

总体而言,SmileyLlama 模型在通过工程化提示词训练过的任务上表现良好,尤其是在与提示词消融实验得到的模型相比时更为明显。推理阶段可选择使用较低温度,这能够进一步改善 SFT 预测结果。尽管所有单独性质均出现在训练数据中,但部分性质的代表性不足,例如 Lipinski 五规则、大环结构的存在,以及某些与 warhead 相关的 SMARTS 类别和 Enamine 子结构类别,因此这些类别的表现相对中等。符合预期的是,SmileyLlama 在涉及精确数值指定的任务上表现较差。更值得注意的是,SmileyLlama 在复合任务上表现良好,例如生成与已有先导化合物相似的分子,即“骨架跃迁”、R 基修饰,和/或基于结构的设计中从配体片段出发延展分子。一个典型示例是,SmileyLlama 能够基于 Enamine 数据库中的全部 320 个子结构生成符合 Lipinski 五规则的分子,而 Lipinski 五规则涵盖了性质范围任务中的大多数分子性质。

图2 | SmileyLlama 用于片段生长的条件生成,以及 DPO 前后结果与 ChEMBL 的比较 a. 示例分子由一个 Enamine 子结构出发进行生长,并需满足 Lipinski 五规则。所用提示词为:“输出一个具有以下性质的类药分子的 SMILES 字符串:包含 O=C(O)c1ccc(C(F)(F)F)cc1 子结构,MW ≤ 500,logP ≤ 5,氢键供体数 ≤ 5,氢键受体数 ≤ 10”。b. 在满足 Lipinski 五规则的四项性质分布上,对 ChEMBL 分子(橙色)、SmileyLlama 生成分子(蓝色),以及经过 DPO 后 SmileyLlama 生成的 1,000 个分子进行了比较。所用提示词为:“输出一个具有以下性质的类药分子的 SMILES 字符串:氢键供体数 ≤ 5,氢键受体数 ≤ 10,MW ≤ 500,logP ≤ 5”(灰色)。MW 和 logP 分布采用高斯核密度估计(kernel density estimator, KDE)进行估计。所有结果均在温度 T = 1.0、最大新生成 token 数为 128 的条件下生成 1,000 个分子。
将 SmileyLlama 与提示词有效性消融实验所得模型进行了比较。具体而言,删除用于训练 SmileyLlama 的数据集中所有提示词内的分子性质信息;来自 ChEMBL 的每个分子均被视为同一提示词的补全结果,即 SmileyLlama 在未指定分子性质时所使用的提示词。采用与 SmileyLlama 完全相同的超参数进行 SFT 后,消融模型在该基准上的表现明显弱于 SmileyLlama,仅在三个任务上达到 90% 以上的性能。当目标性质在数据中较少出现时,这种差异尤为明显,例如大环结构的存在,或与 warhead 相关的 SMARTS 模式。二者性能之间的显著差距凸显了提示词工程方案的必要性:针对化学任务进行微调时,不能仅依赖基础模型自身的知识。
2.4 DPO 条件下使用 SmileyLlama 进行性质指定
尽管 SmileyLlama 通常能够在通过工程化提示词训练过的任务上表现良好,并且在使用不同于训练阶段的提示词进行查询时仍可保持适当性能,但仍可通过 DPO 针对特定任务进行进一步优化。DPO 最常见的应用是改进由 LLM 衍生的聊天机器人响应,但也已用于改善 CLMs 输出,并避免单独训练奖励模型。在这里,DPO 的作用在于通过配对期望响应与非期望响应,进一步优化模型。随后更新模型权重,使其更可能生成配对中的“优胜”响应,并降低生成配对中“失败”响应的概率。数据集通过将每个任务中结构生成失败的尝试与成功的尝试进行随机配对而构建。
经 DPO 优化后的 SmileyLlama 在几乎所有任务上均显著提升了对提示词的遵循能力。需要注意的是,尽管 DPO 会使模型更稳健地遵循提示词中的规则,但也会相对于训练集造成性质分布偏移并使分布变窄,而且似乎对温度变化基本不敏感。相比之下,未经 DPO 的 SmileyLlama 偶尔不能遵循提示词,但能够更忠实地再现经过筛选、且满足 Lipinski 规则的 ChEMBL 分子性质分布。在药物发现语境下,SFT 主要有利于化学空间的早期探索,而 DPO 则是一种约束优化方式,可将生成分子限制在用户指定的期望子类别中。
2.5 使用 SmileyLlama/iMiner 预测与蛋白活性位点的结合亲和力
前述测试并未利用候选药物的 3D 结构信息,也未利用其形状特征及其与靶蛋白活性位点的分子相容性。因此,将经 DPO 增强的 SmileyLlama 嵌入 iMiner 框架,用于生成唯一且有效的配体,并进一步优化其与特定蛋白靶点的结合能力。SmileyLlama 与 iMiner 结合后,通过将深度强化学习与基于 AutoDock Vina 的实时 3D 分子对接相结合,生成针对靶蛋白的新型抑制剂分子,从而在创造化学新颖性的同时,根据靶点活性位点的形状和分子相容性对分子施加约束。为验证 SmileyLlama 在 iMiner 语境中的有效性,生成了针对 MPro 的抑制剂分子;MPro 是一种对 SARS2 生命周期至关重要的酶。MPro 具有易于获取的实验 3D 结构,可为基于结构的配体设计提供所需信息。
在无条件从头生成场景中,SmileyLlama 学习的用户提示词为“输出一个具有以下性质的类药分子的 SMILES 字符串:High SARS2PRO”,其目标对应于最小化 AutoDock Vina 评分,同时最大化原始 iMiner 奖励函数中的类药性评分(

图3 | iMiner 与 SmileyLlama 在 SARS2 MPro 优化轮次中对接评分分布变化的比较 a. 在 iMiner 中,后期训练轮次会出现多样性急剧下降,这解释了后期迭代中峰形变尖锐的现象。采用 SFT+DPO 的 SmileyLlama 在整个优化过程中保持了多样性,因此形成较宽的分布峰,并且相较于 iMiner 表现出更高的数据效率。b. 比较了两种不同用户提示词:Sars2Pro 和 Sars2Pro+Ro5。所有结果均在温度 T = 1.0、最大新生成 token 数为 128 的条件下生成 2,000 个有效 SMILES。
SmileyLlama 最终优化得到的新颖分子集合的性质分布表明,氢键供体和受体数量的分布较为理想,但分子量(MW)和 logP 结果并不符合类药性取值。这表明 iMiner 奖励函数存在一定不足,使 CLM 可能需要对损失/奖励函数进行重新加权和/或加入新项,也可能需要进一步调节超参数和/或进行成本较高的再训练。然而,SmileyLlama 的独特优势在于,仅通过提示词工程即可改变生成分子的性质分布,而无需重新训练。将提示词组合为“输出一个具有以下性质的类药分子的 SMILES 字符串:High SARS2PRO,氢键供体数 ≤ 5,氢键受体数 ≤ 10,分子量 ≤ 500,logP ≤ 5(High SARS2Pro+Ro5)”后,MW、logP 和类药性评分等性质均得到显著改善;同时,由于较小分子形成的分子间相互作用较少,较高对接评分会出现一定程度的预期下降。
一组由 SmileyLlama 生成的新颖分子被对接至 MPro 活性位点,所用工程化提示词分别为“High SARS2Pro”和“High SARS2Pro+Ro5”。其中两个评分较高的分子类似于具有三叶草结构的 perampanel 药物变体;这类分子是 Jorgensen 团队优化并测试过的抑制剂。然而,与此前分子始终保留中心吡啶酮环不同,SmileyLlama 生成分子以嘧啶官能团替代了三叶草状中心连接单元。在结构差异较大的药物骨架中也观察到较高对接评分,但所有情况下均未在 Therapeutic Target Database 中发现显著同源性匹配。这表明 SmileyLlama 的生成能力较为稳健,并且超出了预训练 Llama 模型本身的能力范围。最后,所提出的候选药物具有合成可及性,其平均合成可及性(SA)评分约为 3。

图4 | SmileyLlama 从头生成分子在 SARS2 MPro 活性位点中的结合构象 a-c. 展示了 SmileyLlama 生成分子在 SARS2 MPro 经典结合口袋中的表面渲染结果。这些分子分别由 SARS2PRO 提示词优化后的 SmileyLlama 生成(a),以及由 SARS2Pro+Ro5 提示词生成的两个独立样本(b 和 c)。颜色标注如下:蓝色表示氮,红色表示氧,绿色表示配体碳原子,浅灰色表示残基碳原子。
2.5 化学语言建模之外的 SmileyLlama
尽管 SFT 和 DPO 在构建 SmileyLlama 的过程中改变了 Llama,但在相应提示下,SmileyLlama 仍能够使用英语进行对话。为了更定量地评估 SmileyLlama 在化学语言建模之外仍保留下来的通用能力,采用 Language Model Evaluation Harness,在 MMLU、GPQA、Math-Hard 和 MMLU-Pro 基准上对其性能进行了测试。结果显示,与 Llama 相比,SmileyLlama 通常在道德情境任务上表现更差;值得注意的是,其在化学相关科目上的表现也更差。这可能部分源于 SmileyLlama 倾向于用 SMILES 字符串补全与化学相关的提示词。此外,MMLU 测试中的准确性错误近期也受到关注,因此 SmileyLlama 在化学任务中的性能下降可能部分是评价基准设计不佳造成的假象。总体而言,这一结果仍具有一定积极意义,因为它暗示由 LLM 衍生的 CLMs 可能继承并利用其基础模型的自然语言处理能力。SmileyLlama 已经体现出这一点:可通过自然语言提示词引导其生成分子的性质以及所探索的化学空间,同时仍保留一定处理非化学自然语言的能力。不过,要将 SmileyLlama 发展为 LLM 的附加能力,仍需进一步工作;这一目标可能通过使用更大的基础模型实现。
3 讨论
相关结果为后续由 LLMs 衍生的 CLMs 明确了几个关键点。第一,若目标是根据文本描述生成分子,并不需要在化学专用文本上预训练专门模型;使用通用 LLM,并基于包含数百万个分子的数据集进行一次资源消耗显著更低的提示词遵循 SFT,即足以实现这一目标。第二,DPO 提供了另一种资源高效的模型优化方式,可使模型在目标任务上生成评分较高的分子,而无需依赖上下文示例;这一过程转而依赖模型自身的生成能力来产生优劣样本。由此得到的一个推论是,SmileyLlama 能够组合其在单目标优化过程中获得的知识,并在指定多个目标的任务中取得良好表现;这种能力可通过组合提示词激发,而不需要针对两个提示词同时训练,是一个理想结果。即便如此,SmileyLlama 框架以及围绕药物发现的相关探索仍存在局限与权衡。优良候选药物还需要抑制脱靶效应,和/或对蛋白或病毒突变保持稳健性,并满足其他下游要求。虽然 SmileyLlama 并未针对生成具有这些性质的分子进行显式优化,但这里建立的 DPO 框架应可扩展至这些特征的分子优化。与此同时,DPO 虽然能够提高模型对提示词的遵循能力,但代价是压缩性质分布或降低多样性;这在某些应用领域或发现早期阶段未必理想。此外,SmileyLlama 在数据稀缺场景下仍表现困难,例如生成大环分子的任务。
用于改造 LLMs 的提示词与优化框架既可广泛探索化学空间,也可将搜索范围收缩到特定区域;这一思路还可用于药物发现之外的分子设计,例如利用 SMILES 对过渡金属配合物进行扩展。将化学问题表述为语言结构,也可能支持其他应用,例如化学合成相关任务。与十年中许多受到 LLMs 影响的领域类似,化学中由此打开的新可能性空间十分广阔。