如何用Rosetta全家桶设计一个抗体?

新冠肆虐无药可医,

医护冒险奋战在前线。

实验室里抗体设计,

试管里混合液波光粼粼,

分子结构、细胞实验频频。

日以继夜,孜孜不倦,

只为破解疫情的难题。

我们紧密团结,努力前行,

心中不灭的信念是希望。

愿抗体如箭,射破病毒无疆,

愿健康如花,盛开在世间。

1. 准备一个抗原

比如新冠病毒表面某个蛋白。我这里准备了一个蛋白肽段,大概长这个样子:
在这里插入图片描述

2. 搭建Rosetta和PyRosetta环境

如果你不懂编程,不懂shell语言或者python,最好还是不要自己弄。

我这人喜欢折腾,光搭建这运行环境就花了两天,国内外有些相关资料但不多,Google都没有,都是直接查相关的英文手册。好在这些程序都是开源的,你可以直接阅读和编辑代码,那个痛苦又酸爽。。。。

这里假设环境搭好了,你知道你的app在哪。

3. 准备好背景知识和文件

参考的教程主要是Meilerlab 的workshop:Rosetta Antibody Workshop 2019 – Meiler Lab

视频网址:RosettaAntibodyDesign (RAbD): Walkthrough - Rosetta Virtual Workshop 2021 - YouTube

如果上不了油管,请看Bilibili:RosettaAntibodyDesign (RAbD) 操作步骤 - Rosetta Virtual Workshop 2021-The Meiler Lab

都看完了哇?下面我们来试试。

3.1 准备一个抗体

准备一个晶体结构已知的,只保留了Fab段的抗体。比如我把教程里的曲妥珠单抗(Trastuzumab)提出来了,它大概长这个样子:

在这里插入图片描述

可能大家像我一样都忘了抗体长啥样,也不知道一般的抗体的三维结构,这里稍微复习一下,抗体一般是Y型,由重链和轻链组成,H+L,Fc段是Y的手柄,Fab段是它识别抗原的两个抓手,Fab段的可变区才是最可怕的,三对可变区(CDR,上图中的绿色外的多颜色区域)基本可以识别生物界的抗原,抗体数量可以达到10的10-13次方的数量级。示意图如下:

在这里插入图片描述

3.2 将抗原及抗体放到同一个pdb文件

首先要用PyMol,将抗原肽和抗体放到同一个pdb文件里面
按住鼠标滚轮(mac鼠标没有)水平拖动,左键调整角度,将氨基酸肽段调整到与抗体可变区可能相结合的位置,距离小于10A。然后保存并导出同时有抗体和抗原肽段的pdb。

原本想着用程序先将两者docking好,所以我先创建了100个dock好的文件,结果发现没用。因为:

If we relax the structure too much, we will fall into an energy well that is hard to escape without significant sampling.

这句话最开始没太在意,就略过了,回过头才领会到,如果一开始选dock太完美的无法进行后续的抗体设计!会掉入能量陷阱。

这样文件工作就准备好了。开始进行Rosetta,设计抗体。

4. 开始设计抗体RAbD

4.1 一般设计

# 代码就这么几行,塞进去就可以跑了。这里先小剂量跑一下,生成20个抗体。
$ROSETTA_BIN/antibody_designer.static.macosclangrelease \
-s my_docked_pep.pdb -seq_design_cdrs L1 L3 -light_chain kappa -nstruct 20 -out:prefix tutA1_# 跑完了看看抗体的的得分,total_score, 或者能量值 dG_separated
$ROSETTA/main/source/tools/scorefile.py --scores dG_separated --output tab tutA1_score.sc | sort  -k2 -k1# 然后在pymol里看看长啥样
pymol tutA1_*

大概长这样:

在这里插入图片描述

还行,

在这里插入图片描述

各个可变区的序列开始发生变化了。设置对可变区进行Random start调整。

$ROSETTA_BIN/antibody_designer.static.macosclangrelease \
-s my_docked_pep.pdb -graft_design_cdrs L1 L3 -seq_design_cdrs L1 L3 -light_chain kappa -random_start -nstruct 5 -out:prefix tutA3_pymol tutA3_*

在这里插入图片描述

可以看到,可变区的三维结构更分散了。调整幅度更大,但抗体的位置变化不大,说明程序并未对两者的空间位置进行调整。

4.2 DeNovo,边Docking边设计抗体

切换另一种模式,尝试DeNovo的设计。

In this example, we use integrated RosettaDock (with sequence design during the high-res step) to sample the antibody-antigen orientation, but we don’t care where the antibody binds to the antigen. Just that it binds.

在这个例子中,我们使用集成的 RosettaDock(在高分辨率步骤中使用序列设计)来采样设计抗体-抗原,但我们不关心抗体与抗原结合的位置。 只是它具有约束力。

代码长这个样子:

$ROSETTA_BIN/antibody_designer.static.macosclangrelease \-s my_docked_pep.pdb -graft_design_cdrs L1 L2 L3 H1 H2 \-seq_design_cdrs L1 L2 L3 H1 H2 H3 -light_chain kappa \-mc_optimize_dG -do_dock -nstruct 5 -random_start -out:prefix tutC1_

跑出来长这个样子:

在这里插入图片描述

看到了没?抗体移来移去的去识别这个抗原,寻求两者最舒服最稳定的结合方式,爱情这就来了。从女方角度看,这个过程如下,同时伴随着抗体CDR区的重建。

在这里插入图片描述

4.3 Auto Epitope Constraints 限制抗体识别的表位

假设你的抗原很大,docking的时候,抗体就会到处跑去寻找它的爱情。如果我们买办,只想它娶隔壁村的姑娘,那么就得限制抗体识别的表位,使用这个 -use_epitope_constraints参数,它就不会乱跑了。我这里的抗原是一个肽段,不需要。

4.4 特定残基表位限制

这个就更狠了,直接包办,去取隔壁村的小芳姑娘。

通过 -epitope 8A参数,我们可以指定抗体围绕在A链的第八位氨基酸进行建模。

代码如下:

$ROSETTA_BIN/antibody_designer.static.macosclangrelease \
-s my_docked_pep.pdb \
-graft_design_cdrs L1 L3 \
-seq_design_cdrs L1 L2 L3 H1 H2 H3 -light_chain kappa -do_dock -use_epitope_constraints \
-paratope L1 L3 \
-epitope 8A \
-nstruct 10 \
-out:prefix tutC3_
# 这里的8A,是指A链(抗原链),8是第八位氨基酸

在这里插入图片描述

得分也还不错。

5. 其他

这个教程还有一些剩余部分,我都跑了,比如:

  1. 自定义CDR区
  2. 限制CDR区的氨基酸组分
  3. 建模时候用Mintype —— 这个据说更有效

This mintype enables Flexible-Backbone design. Our default is to use min/pack cycles, but relax typically works better. However, it also takes considerably more time! This tutorial takes about 339 seconds for one struct!

  1. 抗体框架设计,针对CDR去意外的框架,这一般是不变的,不用动。
  2. H3 Stem, kT, and Sequence variablility

总结

  • 试过无数次之后发现,手动调整的松散结合更利于后面的建模,docking完了之后能量值太低不利于优化,会掉入能量陷阱。当然,抗原抗体离得太远也不行。

  • 跑通模型之后,应该进行 nstruct = 1000, 2000-5000扩增,放大模型,大概要跑个几天。

  • 如果你的抗原肽来自某天然蛋白,还需要分全序列和肽段分别跑跑看!!!

  • 这期间遇到了无数的坑,花了我差不多一个星期的业余时间。特别感谢ChatGPT,文章最开始的那首打油诗就是它写的,我只开了个头。另外感谢它辅助我学习知识,阅读代码,还帮我挖了很多坑。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/15070.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ChatGPT 】《ChatGPT 后续:我开发了一个超级阅读器,免费分享给大家》- 知识点目录

《ChatGPT 后续:我开发了一个超级阅读器,免费分享给大家》 00:00 我们开发了超级阅读器 01:37 思路和开发过程 03:00 使用方式 03:43 AI 工具加持开发效率 04:14 更多可能性 04:57 局限性 1. 介绍:PandaGPT 上传文献聊天窗口提问 2. DALL…

搭建正版GPT4.0!不用ChatGPT账号,不要API!

手把手教你免费搭建正版GPT4.0!不用ChatGPT账号,不要API! 项目简介 项目地址:https://github.com/ramonvc/freegpt-webui优点: 完全免费且不需要任何 API 密钥 ❌🔑 该项目的特点是使用G4F API 的WebUI …

他做了一个「ChatGPT 杀手」,a16z 抢着投

比「GPT 侦探」更重要的是,AI 生成内容在不同行业的「容忍度」。 图片来源:由无界版图AI工具生成 作者 | 美漪编辑 | 靖宇 最近两个月,科技圈最热的话题,无疑是 OpenAI 推出的对话式 AI 应用 ChatGPT,不仅可以让它给你…

巴比特 | 元宇宙每日必读:ChatGPT「代码解释器」正式解禁,它补齐了ChatGPT的哪些短板?用户该如何使用?...

摘要:7月9日,OpenAI 的聊天机器人 ChatGPT 推出了新功能:代码解释器(Code Interpreter)。这个新功能已经对所有 Plus 订阅用户开放,其扩展了 ChatGPT 的功能,为用户带来了更好的交互式编程体验和…

ChatGPT应用组队学习来了!

Datawhale学习 联合主办:Datawhale、百度文心 Datawhale联合百度文心,五月为大家带来AIGC应用专题:大模型从入门到应用,学习大纲如下(文末整理了这次学习的所有资料): 参与学习 ▶ 活动时间&am…

阿尔法狗咬向ChatGPT七寸

图片来源:由无界AI生成 瞄准ChatGPT,谷歌的下一枚炮弹已经准备好,只待发射。而担负起发射任务的,是谷歌DeepMind。 昨天,谷歌DeepMind的CEO德米斯哈萨比斯(Demis Hassabis)在采访中放出豪言&…

谷歌版ChatGPT突然公测!上手实测结果在此,体验申请通过飞快

杨净 金磊 发自 凹非寺量子位 | 公众号 QbitAI 谷歌吃了大亏之后,这次一声不吭,放了大招: 对标ChatGPT的Bard测试版,刚刚正式对外发布。 而且这次用户在申请候补名单之后,无需经历漫长的等待时间。 没错,量…

对抗 ChatGPT 的创业武器:专注和紧密的反馈循环

ChatGPT 超越谷歌主导地位 在我的上一篇文章中,我探讨了 ChatGPT 超越谷歌主导地位的可能牛市案例。但我也对我认为是熊市的情况表示赞赏。正如我提到的,ChatGPT 的无界界面有点像,而不是 DoorDash 的重点推出策略,DoorDash 在美国所有城市和商品类别中同时推出,当你订购…

chatgpt赋能Python-python_queque

Python Queue模块实现队列的介绍 Python语言是一种通俗易懂、功能丰富的编程语言。它的标准库还包括许多有用的模块,用于实现各种数据结构和算法。其中,Queue模块是一种实现队列的模块。这个模块实现了多线程编程时所必需的队列数据结构。 什么是队列&…

ChatGPT已能操控机器人,工程师连代码都不用写,网友:微软在搞天网?

Alex 发自 凹非寺量子位 | 公众号 QbitAI 当我还在跟ChatGPT吹牛尬聊时,有人已经在拿它操控机器人了。 不是别人,正是OpenAI的金主爸爸、不久前刚拿ChatGPT“重新发明搜索引擎”的微软。 到目前为止,开发者调教机器人不仅技术门槛高&#xff…

火爆外网的ChatGPT,改Bug,敲代码不在话下

目录 前言 一、ChatGPT 是什么? 二、ChatGPT到底有什么用 1.可以回答问题 2.帮你创作文章和标题 3.调试代码和修复代码 4.检测安全漏洞,也许还能创建PoC 总结 前言 这几天ChatGPT AI 可谓是火的一塌糊涂,那么它到底是什么&#xff1f…

Python使用itchat库+图灵机器人(新手上路)

前不久有个朋友说,谁谁的男朋友写个机器人,然后聊天很嗨的样子,看下面图,然后今天下午闲着,就把整理了下思路,采用Python进行如下开发,具体步骤如下: 1、第一步,因为我是…

图灵 | 计算机器与智能

【“计算机器与智能”选自《Mind》,no.2236(1950.10),P433-460。牛津大学出版社允许重印。刘西瑞、王汉琦 翻译】 1. 模仿游戏 我建议来考虑这个问题 :“机器能够思维吗?” 这可以从定义 “机 器” 和 “思…

图灵奖得主LeCun评ChatGPT不算创新,被网友骂柠檬精

“ChatGPT并不算创新。” “OpenAI做的这个东西跟其他实验室相比,根本算不上什么进步。” 这两天,图灵奖得主LeCun公开和大热趋势“唱反调”,瞬间引发网友围观。 要知道,ChatGPT功能强大又好玩,火爆全网,任…

本地化部署大语言模型 ChatGLM

本地化部署大语言模型 ChatGLM 本地化部署大语言模型 ChatGLM前期筹备GitHub 基础包语言模型文件基础配置显存查看方法 Anaconda 模块ChatGLM-6B 网页部署Anaconda 环境创建根目录操作基础依赖加载transformers 和 protobuf 库加载Pytorch 源修改依赖库补充补充依赖 pypi 配置c…

麻将AI 不完全信息博弈学习笔记(完结)

前言 在这学期的数据结构必修课中,老师向我们提供了两道题: 其一是六子棋问题; 其二是麻将AI问题; 前者是经典的完全信息博弈问题,根据我已有的知识,利用博弈树和合理的剪枝可以提供一种高效的解法&#x…

数据库入门教程--01建库建表插入数据以及数据的修改

if exists(select * from sysdatabases where name Datatest) Drop database Datatest go--判断是否已存在数据库Datatest,并删除 create database Datatest--创建数据库 on--创建数据文件 (nameDatatest,--数据库中文件名filenameD:\数据库练习文件夹\Datatest.mdf…

医疗版ChatGPT直播评测!治疗方案与真人医生96%一致

杨净 发自 凹非寺量子位 | 公众号 QbitAI 国内首个医疗大模型,已经在“接诊”患者了。 最近,一组AI医生医院真实站岗数据曝光: 共接诊120多名患者,从问诊、检查到诊疗方案全流程覆盖;涉及心内科、消化内科、呼吸内科、…

利用ChatGPT思维分析硬科技创新趋势

2015年初夏,我去参加了在北京举办的联想科技大会。在会上,联想、英特尔、微软三位CEO第一次并肩上台发言,他们的演讲中都透露出对移动互联网行业的苦恼和无奈。尤其是微软的新CEO萨提亚纳德拉(Satya Nadella)&#xff…

微软为ChatGPT打造专用超算!砸下几亿美元,上万张英伟达A100打造

萧箫 发自 凹非寺量子位 | 公众号 QbitAI 微软砸下大几亿美元,专门为训练ChatGPT打造了一台超算—— 上万张英伟达A100芯片打造,甚至专门为此调整了服务器架构,只为给ChatGPT和新必应AI提供更好的算力。 △图源:微软 不仅如此&…