← Về thư mục
📄 / / profiles / r-and-d / raw_evidence / OpenAI4S / skills / ligandmpnn / README_zh.md

LigandMPNN Skill

设计面上还带着配体、核酸或金属时,反向折叠该怎么做。LigandMPNN 把这些原子一并放进图里,普通 ProteinMPNN 看不见的东西它能看见。它的 run.py 还会把设计好的序列贴回输入坐标,把 PDB 和 FASTA 一起写出来——所以哪怕是纯蛋白任务,用它当 runner 也更省事,ProteinMPNN 权重和可溶权重它同样接得住。这份 recipe 只指向外部的 LigandMPNN 仓库和 checkpoint,不捆绑可执行文件,也不捆绑权重。

LigandMPNN 是围着你交给它的那份配体坐标做设计的,而且它把这个位姿当成事实。要是喂进去的是对接或建模摆上去、位置有偏差的配体,设计出来的口袋就是照着一个可能并不真实的配体位置长的——而这一次运行看上去和一次正确的运行毫无分别。每条序列头里的 ligand_confidence,是模型给自己刚写出来的序列打的分,不是对结合的测量。链怎么选、固定哪些残基、带不带上下文原子、用哪种 model type,都必须对着真实的输入结构核对;生成的序列和贴回坐标得到的结构,在实验给出结论之前都只是设计候选。

安装

一个 Skill 就是一个文件目录,所谓安装,就是把这个目录复制到 Agent 会去读的地方。有 Node 18+、且 PATH 上有 git(npm 靠它解析 github: 形式的包名)即可,无需先克隆仓库:

npx github:PKU-YuanGroup/OpenAI4S install ligandmpnn --target claude

--target claude 写入 ~/.claude/skills,claude-project 写入 ./.claude/skills,openai4s 写入 <data_dir>/user-skills,--dir <path> 则写到你指定的任意位置。往目标写任何东西之前,都会先打印解析出的绝对路径;--dry-run 到此为止,不再写入。重装时,若目标副本被你改过、或者不是它自己装的,就拒绝覆盖;uninstall 也只删除它自己写过的文件。对于 npm 发布版中包含的配方,可用 npx @pku-yuangroup/openai4s-skills install ligandmpnn --target claude 安装发布版本。npm 目录可能与当前仓库不同。

没有 Node 时,直接取这个目录——需要 .zip 上传时再打包。tarball 是整个仓库(超过 100 MB),下面这条管道是 POSIX shell(macOS、Linux、WSL)写法,只解出这一个目录:

curl -L https://codeload.github.com/PKU-YuanGroup/OpenAI4S/tar.gz/refs/heads/main \
  | tar -xz --strip-components=2 OpenAI4S-main/skills/ligandmpnn
python3 -m zipfile -c ligandmpnn.zip ligandmpnn

同一份内容的图形界面版本是点击下载整个仓库 zip 包,Windows 上也走这条路:解压后把 skills/ligandmpnn/ 拷出来即可(unzip main.zip 'OpenAI4S-main/skills/ligandmpnn/*' 只解这一个目录)。如果你本来就在跑 OpenAI4S,那这里没有任何东西需要安装——wheel 自带全部内置 Skill,且内置 Skill 优先于 <data_dir>/user-skills 里的同名副本。目标目录、来源记录,以及安装器拒绝去做的那些事:tools/skills-installer/。

文件

文件 职责
SKILL.md 说明仓库怎么装、有哪几种 model type 及其对应权重、PDB 与配体上下文怎么解析、哪些链和残基参与设计或被固定、采样与批量输出怎么配、贴回坐标的 PDB 在哪里。配体相关的坑也在里面,例如输入 PDB 的 HETATM 被上游清理掉之后,模型看不见口袋却不会报错。下游验证同样有交代。