如何用LigandMPNN实现高效分子对接?超详细AI药物设计教程 🚀
LigandMPNN是一款基于消息传递神经网络(MPNN)的AI驱动分子对接工具,能够精准预测蛋白质-配体相互作用,显著提升药物设计效率。本教程将带你快速掌握从环境配置到高级设计的全流程,让复杂的分子优化变得简单!
🌟 为什么选择LigandMPNN?
LigandMPNN作为ProteinMPNN的增强版,专为配体存在下的蛋白质设计优化,核心优势包括:
✅ 多模型支持:内置ProteinMPNN/LigandMPNN/膜蛋白专用模型,满足不同场景需求
✅ 精准控制:支持固定残基、氨基酸偏好调整、对称性设计等高级功能
✅ 高效解析:保留原始PDB文件的残基编号和链信息,避免序列错位
✅ 集成工具链:自带侧链 packing、序列评分功能,一站式完成设计-评估
⚡ 特别适合小分子药物开发、酶工程改造和蛋白质-配体相互作用研究
📋 环境准备与安装指南
🔧 核心依赖
Python ≥3.0 | PyTorch | Numpy | ProDy (PDB解析)
🚀 一键安装步骤
# 1. 克隆项目仓库
git clone https://gitcode.com/gh_mirrors/li/LigandMPNN.git
cd LigandMPNN
# 2. 创建虚拟环境
conda create -n ligandmpnn_env python=3.11
conda activate ligandmpnn_env
# 3. 安装依赖包
pip3 install -r requirements.txt
# 4. 下载模型参数 (关键步骤!)
bash get_model_params.sh "./model_params"
💡 模型参数存储路径:
./model_params,包含多种噪声水平的预训练权重
🎯 快速上手:第一个分子设计任务
以1BC8蛋白(含配体结构)为例,5分钟完成序列设计:
python run.py \
--model_type "ligand_mpnn" \ # 使用配体感知模型
--seed 111 \ # 随机种子(确保结果可复现)
--pdb_path "./inputs/1BC8.pdb" \ # 输入PDB文件
--out_folder "./outputs/my_first_design" # 结果输出目录
📂 输出文件说明
| 文件路径 | 说明 |
|---|---|
outputs/my_first_design/seqs/1BC8.fa |
设计的蛋白质序列(含置信度评分) |
outputs/my_first_design/backbones/1BC8_1.pdb |
带设计序列的PDB结构 |
✨ 序列文件中会显示
overall_confidence和ligand_confidence指标,数值越高表示模型对设计结果越自信(范围0-1)
⚙️ 核心功能详解与实战案例
1️⃣ 氨基酸偏好控制(全局/逐残基)
全局偏好设置
# 偏向W/P/C,避免A
python run.py \
--pdb_path "./inputs/1BC8.pdb" \
--bias_AA "W:3.0,P:3.0,C:3.0,A:-3.0" \
--out_folder "./outputs/global_bias"
逐残基精确控制
创建JSON配置文件 inputs/bias_AA_per_residue.json:
{
"C1": {"P": 10.0}, # C1强制为脯氨酸
"C3": {"G": -5.0} # C3禁止甘氨酸
}
运行命令:
python run.py \
--pdb_path "./inputs/1BC8.pdb" \
--bias_AA_per_residue "./inputs/bias_AA_per_residue.json" \
--out_folder "./outputs/per_residue_bias"
2️⃣ 对称性设计(同源寡聚体专用)
实现C1=C2=C3、C4=C5对称设计:
python run.py \
--pdb_path "./inputs/1BC8.pdb" \
--symmetry_residues "C1,C2,C3|C4,C5" \ # 分组定义
--symmetry_weights "0.33,0.33,0.33|0.5,0.5" \ # 权重分配
--out_folder "./outputs/symmetry_design"
🔬 常用于设计同源二聚体、四聚体等对称性蛋白质
3️⃣ 侧链 packing 功能
设计序列后自动优化侧链构象:
python run.py \
--model_type "ligand_mpnn" \
--pdb_path "./inputs/1BC8.pdb" \
--pack_side_chains 1 \ # 启用侧链packing
--number_of_packs_per_design 4 \ # 生成4个构象样本
--out_folder "./outputs/sc_default"
📊 输出文件位于
./outputs/sc_default/packed/,B因子列显示侧链构象置信度
4️⃣ 批量处理多PDB文件
通过JSON配置文件批量处理多个蛋白:
# inputs/pdb_ids.json 示例
{
"./inputs/1BC8.pdb": "",
"./inputs/4GYT.pdb": ""
}
运行命令:
python run.py \
--pdb_path_multi "./inputs/pdb_ids.json" \
--out_folder "./outputs/batch_design"
📈 设计结果评估:序列评分工具
使用 score.py 评估设计序列的合理性:
# 自回归评分(考虑序列依赖关系)
python score.py \
--model_type "ligand_mpnn" \
--pdb_path "./outputs/my_first_design/backbones/1BC8_1.pdb" \
--autoregressive_score 1 \
--use_sequence 1 \ # 使用设计的序列进行评估
--out_folder "./outputs/design_scores"
📉 输出指标解析
| 指标 | 说明 |
|---|---|
log_probs |
对数概率(越高越好) |
mean_of_probs |
位置平均概率(反映序列保守性) |
std_of_probs |
概率标准差(反映设计多样性) |
🛠️ 高级参数调优指南
温度参数(控制序列多样性)
--temperature 0.1 # 低温度 → 保守设计(多样性低)
--temperature 1.0 # 高温度 → 激进设计(多样性高)
残基固定与重设计
# 固定C1-C10,重设计其他区域
--fixed_residues "C1 C2 C3 C4 C5 C6 C7 C8 C9 C10"
配体上下文开关
# 不使用配体信息(用于对照实验)
--ligand_mpnn_use_atom_context 0
📚 项目结构与核心模块
LigandMPNN/
├── inputs/ # 输入文件(PDB/JSON配置)
├── outputs/ # 设计结果(序列/PDB)
├── model_params/ # 预训练模型参数
├── openfold/ # 依赖模块(结构解析/工具函数)
├── run.py # 主程序入口
├── score.py # 序列评分工具
└── sc_utils.py # 侧链packing功能
📌 核心算法实现:
model_utils.py(模型构建)、data_utils.py(数据处理)
🚫 常见问题与解决方案
Q1: 运行时报错 "模型参数文件不存在"?
A: 确保执行了 bash get_model_params.sh "./model_params",若下载慢可手动从项目主页获取。
Q2: 设计序列与配体发生空间冲突?
A: 启用侧链优化并增加pack次数:--number_of_packs_per_design 10
Q3: 如何设计跨膜蛋白?
A: 使用膜蛋白专用模型:
--model_type "per_residue_label_membrane_mpnn" \
--transmembrane_buried "C1 C2 C3" # 指定跨膜区域
📝 引用与致谢
如果使用本工具发表论文,请引用:
@article{dauparas2023atomic,
title={Atomic context-conditioned protein sequence design using LigandMPNN},
author={Dauparas, Justas and Lee, Gyu Rie and Pecoraro, Robert and others},
journal={Biorxiv},
year={2023}
}
🙏 本项目基于ProteinMPNN开发,部分代码借鉴自Openfold
🎯 总结
LigandMPNN通过AI驱动的分子设计,为药物研发和蛋白质工程提供了强大工具。从基础的序列设计到复杂的对称性改造,只需简单参数配置即可实现专业级结果。立即上手,开启你的分子设计之旅吧!
🔗 项目地址:https://gitcode.com/gh_mirrors/li/LigandMPNN
📧 问题反馈:提交issue至项目仓库
祝你的分子设计实验顺利!💊🧬
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
MiniMax-M2.5MiniMax-M2.5开源模型,经数十万复杂环境强化训练,在代码生成、工具调用、办公自动化等经济价值任务中表现卓越。SWE-Bench Verified得分80.2%,Multi-SWE-Bench达51.3%,BrowseComp获76.3%。推理速度比M2.1快37%,与Claude Opus 4.6相当,每小时仅需0.3-1美元,成本仅为同类模型1/10-1/20,为智能应用开发提供高效经济选择。【此简介由AI生成】Python00
ruoyi-plus-soybeanRuoYi-Plus-Soybean 是一个现代化的企业级多租户管理系统,它结合了 RuoYi-Vue-Plus 的强大后端功能和 Soybean Admin 的现代化前端特性,为开发者提供了完整的企业管理解决方案。Vue06- RRing-2.5-1TRing-2.5-1T:全球首个基于混合线性注意力架构的开源万亿参数思考模型。Python00
Qwen3.5Qwen3.5 昇腾 vLLM 部署教程。Qwen3.5 是 Qwen 系列最新的旗舰多模态模型,采用 MoE(混合专家)架构,在保持强大模型能力的同时显著降低了推理成本。00