[关闭]
@icycookies 2025-03-20T06:43:12.000000Z 字数 6672 阅读 1366

OpenBioMed生物医药智能体开源平台使用指南

目录

平台简介
快速上手指南
预设工作流及其功能
工作流定制指南
附录:常见问题
附录:已有工具和功能

什么是OpenBioMed?

OpenBioMed由清华大学智能产业研究院和水木分子共同研发的生物医药智能体开源平台。我们希望通过可视化编程拖拽式工作流搭建的方式,帮助更多研发人员零门槛使用最先进的AI模型,针对不同的药物设计、生命科学研究任务实现定制化的智能体应用(AutoPilot),从而实现研究效率的指数级提升。在OpenBioMed中,我们提供了二十余种工具卡片,涵盖小分子与蛋白质的检索、设计、优化、分析、导出等功能,并针对部分工具适配了自然语言输入和性能优越的自研模型。此外,我们提供了一键式的工作流执行方案,通过在后台重复执行工作流,我们能够模拟研究中的探索试错(Trial-and-Error)过程,并通过最先进的对话语言模型针对执行结果进行分析,将潜在的科学发现总结为报告并发送至用户邮箱中。在未来,OpenBioMed将致力于服务开源社区,通过更直观的操作界面和更强大的功能集成,为研究者提供一站式生物信息分析解决方案,助力高效科研与创新突破!

我们的平台网址为:http://openbiomed.pharmolix.com

我们的代码已在GitHub上开源。如果您认为我们的开源项目和模型对您的研究有帮助,请考虑给我们的项目点上星标🌟。如果您在使用过程中有任何技术问题或建议,请随时在GitHub issue中提出,或联系opensource@pharmolix.com寻求技术支持。

15分钟上手OpenBioMed:蛋白质结构预测与可视化工作流

运行第一个工作流

如果您是新用户,请点击平台初始界面右上角的“申请使用”按钮,在注册界面中填写你的电子邮箱并设置密码。在审核通过后,我们会在2个工作日内通过邮件的形式进行通知。

在通过电子邮箱和密码登陆平台后,您将进入如下界面:

演示图片1

我们为用户预置了四个默认工作流用于快速上手OpenBioMed平台的相关功能。在这一节中我们将介绍蛋白质结构预测与可视化工作流(Protein Folding and Visualization)的使用。

点击该工作流后,您将进入编辑与运行界面:

演示图片3

该工作流将依次执行如下步骤:

由于该工作流是串行的,我们只需要指定第一步的输入(某个UniProtKB的ID,在我们的示例中为P01116,是长度为189的RASK_HUMAN蛋白),并点击Image Output卡片中的运行按钮,即可得到模型所预测的蛋白质结构的可视化结果。(备注1:Data to Message卡片主要用于输出的解析和提取,我们将在后续文档中具体讲解;备注2:您可以通过点击图片来进一步放大可视化结果。备注3:您可以通过修改可视化卡片中的config来选择使用何种可视化风格。备注4:图像在我们的服务器中并不是永久存储的,一段时间后该图像可能被清理而丢失。因此,我们建议用户按照后续教程及时导出并保存工作流执行的结果)

演示图片4

针对工作流的微调

在这一小节中,我们将针对一些常见需求对工作流进行一些修改。例如,当我拥有一个未被UniProtKB记录的蛋白质序列时,该如何进行结构预测和可视化呢?解决方案非常简单:由于我们不再需要从UniProtKB中检索蛋白质,我们可以直接用鼠标选中第一个Data to Message卡片与PROTEIN_FOLDING之间的连线,并敲击BackSpace删除它;接着,PROTEIN_FOLDING卡片的protein字段失去了先前卡片的输入,恰好可以将我们的蛋白质序列粘贴至该文本框中;最后,我们再次尝试点击Image Output卡片中的运行按钮,即可看到最终的可视化结果。以下是一个针对短肽序列AMFDSIADRYDLLNRVLSLGRERYWR(来自Q47LE2,1-40)的执行结果:

演示图片5

当我们在OpenBioMed平台上完成了蛋白质结构预测后,该如何将预测结果下载至本地进行进一步分析处理呢?OpenBioMed针对该需求开发了导出工具,可以通过界面左侧Components条目下依次找到pharmolix和EXPORT_PROTEIN,将该工具卡片拖拽出来。接着,我们需要蛋白折叠卡片(PROTEIN_FOLDING)的卡片的输出,即折叠后蛋白的结构,接入到蛋白质导出工具的输入中(实际使用的是Data to Message解析后的结果):

演示图片6

点击EXPORT_PROTEIN上的开始按钮后,工作流将依次执行PROTEIN_UNIPROT_REQUEST(蛋白质检索)、PROTEIN_FOLDING(蛋白质折叠)和EXPORT_PROTEIN(蛋白质导出)。点击右下角的Response Data,可以看到工作流执行完毕后,file条目中出现了一个地址,单击该条目并复制完整地址后,在浏览器中访问该地址,即可自动下载蛋白质结构的pdb文件。(备注:该文件在我们的服务器中并不是永久存储的,一段时间后该文件可能被清理而丢失。)

演示图片7

更多预设工作流

基于口袋的药物分子设计与优化

该工作流对应了Stable drug design,其流程较为复杂,具体步骤如下:

  1. 从PDB数据库中检索得到一个蛋白质结构(PROTEIN_PDB_REQUEST),用户需要提供PDB ID(如4XLI);
  2. 在该蛋白质上标出一个与配体结合的口袋(IMPORT_POCKET),用户需要提供口袋对应的所有氨基酸序号(一个字符串,用分号隔开);
  3. 使用PharMolixFM模型,设计一个能与步骤2产生的口袋结合的小分子(STRUCTURE_BASED_DRUG_DESIGN);
  4. 使用AutoDockVina计算步骤3产生的小分子与步骤2产生的口袋的结合得分(PROTEIN_MOLECULE_DOCKING_SCORE);
  5. 使用BioT5模型对步骤3产生的小分子的结构和性质进行询问(MOLECULE_QUESTION_ANSWERING),用户可以用自然语言给出一个提问(如小分子的结构特征,目前仅支持英文形式);
  6. 使用GraphMVP模型预测步骤3产生的小分子的相关性质(MOLECULE_PROPERTY_PREDICTION),如血脑屏障穿越能力(BBBP)和对不同人体器官的潜在副作用(SIDER);
  7. 使用MolT5模型,对步骤3产生的小分子进行编辑和优化(TEXT_BASED_MOLECULE_EDITING),用户可以用自然语言给出一个优化目标(如降低肝毒性,目前仅支持英文形式);
  8. 使用PharMolixFM模型,预测步骤7产生的小分子与步骤2产生的口袋的对接结果(POCKET_MOLECULE_DOCKING);
  9. 使用AutoDockVina计算步骤7产生的小分子与步骤2产生的口袋的结合得分(PROTEIN_MOLECULE_DOCKING_SCORE);
  10. 使用BioT5模型对步骤7产生的小分子的结构和性质进行询问(MOLECULE_QUESTION_ANSWERING),用户可以用自然语言给出一个提问(如小分子的结构特征,目前仅支持英文形式);
  11. 使用GraphMVP模型预测步骤7产生的小分子的相关性质(MOLECULE_PROPERTY_PREDICTION),如血脑屏障穿越能力(BBBP)和对不同人体器官的潜在副作用(SIDER);
  12. 针对步骤7产生的小分子和步骤1产生的蛋白质所形成的复合物构象进行可视化(VISUALIZE_COMPLEX);

(备注1:该工作流并非严格串行,点击某个卡片的执行键可能仅会执行一部分工作流,且会导致先前同一个工具卡片的执行结果被覆盖,如果需要执行工作流的全流程,请参考后续教程;备注2:部分工具的执行速度较慢,请耐心等待)

药物分子检索与可视化

该工作流对应了Molecule query and Visualization,其流程如下:

  1. 从PubChem平台上检索一个小分子(PUBCHEMID_QUERY),用户需要给出小分子的PubChem ID或英文名称(如Aspirin);
  2. 在PubChem平台上检索结构与步骤1产生的小分子相似的小分子(MOLECULE_STRUCTURE_QUERY),用户可以调整相似度的阈值(默认为0.8);
  3. 对检索到的小分子进行可视化(VISUALIZE_MOLECULE),用户可以选择使用2D或3D视图进行可视化;

(备注:目前平台仅支持返回一个结构相似的分子,如果需要更多的相似分子可以反复执行工作流)

基于检索增强的大模型对话

该工作流对应了RAG-based LLM agent,其流程如下:

  1. 使用OpenBioMed提供的工具进行互联网搜索(WEB_SEARCH),用户需要给出搜索关键词;
  2. 用户给出一个自然语言指令(Text Input),如要求基于搜索结果进行小说创作,并与搜索结果进行组合;
  3. 使用DeepSeek-chat模型(需要用户填入DeepSeek API key)进行对话;

(备注1:该工作流支持点击右上角的Playground按钮来一键执行;备注2:互联网搜索的时间可能较长,如果出现超时导致的执行失败,可以考虑上调timeout参数)

如何定制自己的工作流?

本项目基于Langflow开发,部分使用教程可以参考官方文档。您可以通过点击初始界面的New Flow按钮来搭建自己的工作流,这一节中我们将对工作流的具体搭建步骤进行说明。

工具卡片

我们的平台支持了Langflow的多数工具,如使用不同的生成式AI模型对话、对数据进行拆分合并等,关于它们的使用方式请参考官方文档。在本文档中我们将介绍OpenBioMed自行开发的工具,以分子问答(MOLECULE_QUESTION_ANSWERING)卡片为例:

首先,您需要从左侧Components-pharmolix中点击第五条并拖动至画布,如下图所示:

演示图片8

在该卡片的最上方,我们对该工具的功能和输入输出进行了简要介绍。可以发现,分子问答工具需要用户给出一个小分子molecule和一个自然语言提问text作为输入,并在Response datatext字段产生一个文本回答。随后,我们提供了四个输入字段:

在下图中,我们提供了使用字段输入方式的实例,输入分子的SMILES串为COP(=S)(OC)OC1=NC(=C(C=C1Cl)Cl)Cl,问题为What's the structural definition of this molecule?

演示图片9

随后,点击卡片右上角的运行按钮,等待一段时间后即可得到执行结果,此时在按钮左侧会出现运行时间和是否成功。随后,点击卡片右下角的Response Data,即可得到工具输出:

演示图片10

可以发现,输出的text字段即对应了针对该问题的回答。

连接工具的输入输出

还是以分子问答为例,可以发现,图中的卡片左侧的部分字段有蓝色和红色的输入点,卡片右侧的Response Data处有红色的输出点。输入点的颜色含义如下:

点击某个输出点,即可拖动出一条连线,将其拖动至某个输入点,即可将某个工具的输出接入为另一工具的输入。输入输出的连接规则如下:

现在,我们来尝试对两个工具进行连接,搭建一个极简工作流:该工作流首先从PubChem平台上检索名为Chlorpyrifos-methyl的分子(对应了上一节分子问答工具的输入),接着询问该分子的结构定义。我们从Components-pharmolix中拖出PUBCHEMID_SEARCH工具,在query字段中输入Chlorpyrifos-methyl,运行后可以发现工具成功输出了结果:

演示图片11

我们希望将该工具输出的分子连接到分子问答工具的molecule字段中,然而,这要求我们将一个红色点连接至蓝色点。为此,我们需要引入一个辅助工具:在Components-Processing中找到Data to Message。我们将查询工具的Response Data连接至该工具的Data输入中。接着,我们需要传递哪个字段的值,我们就在Template中用大括号将字段名称包裹起来,在我们的案例中Template即为{molecule}。最后,我们将蓝色的Message点连接至分子问答工具的molecule中。最终的连接结果如下所示:

演示图片12

点击分子问答工具的执行按钮,平台会依次执行该工具所依赖的所有工具,并成功得到最终的执行结果。此外,您可以点击所有工具的输出部分来检查工具的中间输出。

工作流搭建与调试

在连接多个工具卡片后,您可以通过点击任意一个卡片上的运行按钮来进行调试。需要注意的是,该操作会自动运行该工具所依赖的所有前序工具,并将这些工具先前的运行结果覆盖(备注:您可以随时通过黑色边框高亮来获知正在运行的工具)。因此,我们建议:

不推荐的调试示例:

演示图片13

推荐的调试示例(message的输出为./tmp/pubchem_Chlorpyrifos-methyl.pkl):

演示图片14

另一个常见的问题是如何测试整个工作流的执行情况。为此我们提供了两种方案:

工作流重复执行与报告生成

在使用工作流的过程中,您可能会发现某些工具重复执行时会返回不同的结果,这一随机性是由以下因素导致的:

我们认为这样的随机性在科学研究中是有益的:它模拟了实际场景中的探索试错(Trial-and-Error)过程,即尝试不同的变量组合,执行相同的处理流程,从中遴选出成功的结果并进行归因,从而产生新的科学发现。为此,我们为用户提供了工作流重复执行与报告生成服务,利用DeepSeek等大模型的”长思考“能力,尝试以AutoPilot的形式解决一些科学难题。在搭建完工作流后,您可以通过点击页面右上角的Submit按钮,并在弹窗中指定工作流类型(该参数主要用于生成更高质量的报告,我们目前仅适配缺省工作量和药物研发工作流的报告撰写)和工作流重复执行次数,我们将会在后台重复运行工作流。任务完成后,我们将会向您的注册邮箱发送通知,您可以在附件中找到工作流运行报告。

(备注:由于运算资源限制,在使用高峰期,工作流执行与报告撰写智能体可能需要耗费数小时乃至数天时间来完成任务,烦请耐心等待。)

附录:常见问题

附录:已有工具及功能

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注