智能体使用经验 蛋白定向进化 Agent 教学贴 | 攀登蛋白 activity 的高峰 ⛰️

Lin_Xiaohan · 2025年07月14日 · 80 次阅读

1. 引子|什么是蛋白的定向进化

蛋白质定向进化(Directed Evolution)是一种模拟自然选择过程、在实验室中快速优化蛋白质功能的工程策略,其基本原理是通过引入突变(如误配引物扩增、错误复制或体外突变库构建)和高通量筛选或选择,迭代获得具有期望性质(如更高活性、更强稳定性或新功能)的突变体。该方法无需对蛋白质结构或机制有详细了解,因而在蛋白质工程中广泛应用,尤其适用于酶活性优化、底物特异性重编程、生物合成通路设计以及基因编辑工具(如 Cas 蛋白)的改造等领域。定向进化的概念最早可追溯至 20 世纪 90 年代,Frances Arnold 是该领域的先驱之一,她因系统发展并应用这一技术于工业酶工程而获得 2018 年诺贝尔化学奖,标志着定向进化在现代生物技术中的核心地位。

然而在庞大的蛋白序列空间中做随机突变的探索方式效率较低,因此定向进化往往依赖于高通量的实验技术,以及一点点运气🍀。随着蛋白质预训练模型的发展,越来越多的研究者开始意识到预训练的蛋白模型可以在定向进化中发挥强大的引导作用,缩小搜索的序列空间,使定向进化真正“定向”。发表在 Science 上的 EVOLVEpro 是机器学习辅助的蛋白定向进化(Machine Learning Directed Evolution, MLDE)中的标志性工作。在蛋白语言模型(如 ESM 系列)的基础上,它采用了一种非常朴素的少样本学习(few-shot learning)思路,具体流程如下:

图 1:EVOLVEpro 的原理图示

图 1:EVOLVEpro 的原理图示

  • 输入测得的少样本数据(蛋白序列 - 实验活性对)
  • 获取对应序列的 ESM embedding
  • 用 ESM embedding 和实验活性的数据训练一个非常简单的回归器(如随机森林)
  • 用回归器预测所有候选序列(通常是对某一条序列做饱和单突变、或特定条件的单突变)的活性
  • 根据预测得到的活性数据排序,获取“最有希望”的若干突变体
  • 进行下一轮实验,重复上述流程直到蛋白的活性令人满意

看上去有点复杂,没关系,我们在 In-Silico Directed Evolution Agent 中实现了这一完整流程,现在一切都变得非常简单🫰。

2. 实例 | 在对话中实现蛋白的定向进化

  • Step 1:选择定向进化 Agent 开始对话
  • Step 2:上传你的“少样本”实验数据 那么 Agent 能识别哪些格式的实验数据呢?
    • 理论上任何格式的实验数据都能识别,我们给 Agent 配备了非常灵活的文件识别系统,但是复杂的文件格式(如 .xlsx)和复杂的文件内容会十分考验 Agent 的能力,使 Agent 表现不佳
    • 我们推荐使用可读的文本格式(如 .txt,.csv)作为输入
    • 我们推荐文件中的数据内容按照如下的标准格式组织,其中 seq_name; sequence; property 为表头行,表头行以下每一行包含一条序列数据,分别是序列名、序列以及测得的蛋白数据
seq_name; sequence; property
WT; AAAAAAAAA...; 1.0
A2V; AVAAAAAAA...; 1.5
...
  • Step 3:Agent 会解读你上传的实验数据格式,并整理成上面所述的标准格式(所以如果上一步所上传的格式不标准其实也没有关系,但如果过于复杂 Agent 有概率会理解不了) 可以看到在这一步里面实验数据已经被总结成了标准格式 同时 Agent 会把实验数据中所有涉及到的序列总结成 FASTA 文件,以供后续推理使用
  • Step 4:生成候选突变体 这时候你需要与 Agent 交流下一轮候选的突变体。你可以指定一条序列,对其进行饱和单突变(生成其所有可能的单突变体),或者也可以像这里这样,对突变的位置、氨基酸类型有一些要求: 在这个例子中,我要求 Agent 给我生成满足如下条件的所有单突变体:突变前的残基是 L,突变后的残基是 P。当然,你也可以对突变的残基序号有一些要求。最后 Agent 会生成一个包含所有候选序列的 FASTA 文件。 注意:这一步只会生成基础序列的单突变体,如果有其他特殊需求,你也可以直接上传候选序列的 FASTA 文件。
  • Step 5:获取蛋白序列的 embedding 在这一步中,Agent 会调用蛋白预训练模型对之前得到的两个 FASTA 文件进行推理,获取对应的蛋白 embedding。 这一步会消耗一些 GPU 资源,占用一部分推理时间,请耐心等待⏳
  • Step 6:训练与预测 接下来 Agent 会根据实验数据和数据中序列的 embedding 训练一个回归模型 并使用训练好的回归器对候选突变体池中的所有序列进行预测 预测后 Agent 会输出一个 .csv 文件,里面按照预测的结果对所有的候选突变体进行了排序。 这样我们就可以根据模型的预测结果挑选下一轮用于实验的突变体了!

3 总结 | 实用且简单的定向进化工具

本文总结了用 定向进化 Agent 利用蛋白预训练模型对蛋白进行机器学习辅助的定向进化的流程。AI 有可能犯蠢,以下这些 Tips 📒 可以帮助你提高成功率:

  • 重开:遇事不决可以重开一个对话,Agent 作为概率模型,一切都是命运的选择 🙏
  • 整理格式:虽然我们发展 Agent 的目的是为了更大的灵活性,是希望它能处理一切脏活和累活,但是必须要承认的是,它现在还有点笨,很多时候它无法理解、处理过于复杂的信息,所以如果你的输入能够处理成 Agent 更熟悉的格式(比如结构化的文本内容),会有助于它更好地完成任务
  • 使用工具:如果智能体太笨了,无法调教成功,也可以从以下接口进入直接使用配制好的定向进化工具 你需要按照工具的提示填写一些标准化的表单,执行定向进化的计算任务。
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号