关于 foldseek
Foldseek 可在本地或通过其 Web 服务搜索蛋白质结构数据库,无需 GPU。它适用于需要检查结构相似性、设计新颖性或候选支架的研究人员。
主要功能
- 01在本地数据库中搜索结构
- 02使用 Foldseek Web 服务
- 03支持 PDB、AlphaFold DB 等数据库
- 04导出表格形式的搜索结果
适用场景
- 01将蛋白质设计与 PDB 结构比较
- 02在 AlphaFold DB 中检查设计相似性
- 03为基序移植查找支架
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ adaptyvbio/ protein-design-skills --skill foldseek安装后在 Claude Code 中输入/foldseek确认已加载。
详细介绍
Foldseek 结构搜索
前置条件
| 要求 | 最低配置 | 推荐配置 |
|---|---|---|
| Python | 3.8+ | 3.10 |
| RAM | 8GB | 16GB |
| 磁盘 | 10GB | 50GB(用于本地数据库) |
运行方式
注意:Foldseek 可在本地运行,也可通过 Web 服务运行。无需 GPU。
选项 1:Web 服务(快速;有速率限制,请谨慎使用)
# Upload structure to web server
curl -X POST "https://search.foldseek.com/api/ticket" \
-F "[email protected]" \
-F "database[]=afdb50" \
-F "database[]=pdb100"
选项 2:本地安装
# Install Foldseek
conda install -c conda-forge -c bioconda foldseek
# Search PDB
foldseek easy-search query.pdb /path/to/pdb100 results.m8 tmp/
# Search AlphaFold DB
foldseek easy-search query.pdb /path/to/afdb50 results.m8 tmp/
选项 3:Python API
import subprocess
import pandas as pd
def foldseek_search(query_pdb, database, output="results.m8"):
"""Run Foldseek search."""
subprocess.run([
"foldseek", "easy-search",
query_pdb, database, output, "tmp/",
"--format-output", "query,target,pident,alnlen,evalue,bits"
])
return pd.read_csv(output, sep="\t",
names=["query", "target", "pident", "alnlen", "evalue", "bits"])
关键参数
| 参数 | 默认值 | 描述 |
|---|---|---|
--min-seq-id | 0.0 | 最小序列一致性 |
-e | 0.001 | E 值阈值 |
--alignment-type | 2 | 0=3Di,1=TM,2=3Di+AA |
--max-seqs | 1000 | 通过预过滤器的最大命中数;降低此值会影响灵敏度 |
数据库
| 数据库 | 描述 | 大小 |
|---|---|---|
pdb100 | PDB 链 | ~340K 个结构 |
afdb50 | 按 50% 序列一致性聚类的 AlphaFold DB | ~53M 个结构 |
swissprot | SwissProt 结构 | ~540K 个结构 |
cath50 | CATH 结构域 | ~50K 个结构域 |
输出格式
# results.m8 (tabular)
query target pident alnlen evalue bits
query 1abc_A 85.2 120 1e-45 180.5
query 2def_B 72.1 115 1e-32 145.2
示例输出
成功运行
$ foldseek easy-search query.pdb pdb100 results.m8 tmp/
# results.m8 columns: query target pident alnlen mismatch gapopen qstart qend tstart tend evalue bits
query 1abc_A 85.2 120 ... 1e-45 180.5
query 2def_B 72.1 115 ... 1e-32 145.2
上方的命中一致性和 E 值为占位符;foldseek 不会输出其他工具可能显示的
[INFO] 行。
决策树
Should I use Foldseek?
│
├─ What are you searching?
│ ├─ By 3D structure → Foldseek ✓
│ ├─ By sequence → Use BLAST (uniprot skill)
│ └─ Both → Run both, compare results
│
└─ What do you need?
├─ Find structural homologs → Foldseek ✓
├─ Remote homolog detection → Foldseek ✓
├─ Structural clustering → Foldseek ✓
└─ Functional annotation → Cross-reference with UniProt
常见用例
查找相似设计
# Compare your design to PDB
foldseek easy-search design.pdb pdb100 similar_natural.m8 tmp/
新颖性检查
# Ensure design is novel (low similarity to known)
foldseek easy-search design.pdb afdb50 novelty.m8 tmp/
# Novel if: top hit identity < 30%
支架搜索
# Find scaffolds for motif grafting
foldseek easy-search motif.pdb pdb100 scaffolds.m8 tmp/ \
--min-seq-id 0.0 -e 10
验证
wc -l results.m8 # Number of hits
故障排除
没有命中:降低 E 值阈值,尝试更大的数据库
命中过多:提高 min-seq-id 阈值
搜索缓慢:使用较小的数据库
错误说明
| 错误 | 原因 | 解决方法 |
|---|---|---|
Database not found | 路径错误 | 检查数据库位置 |
Invalid PDB | 结构格式错误 | 验证 PDB 格式 |
Out of memory | 数据库过大 | 使用更多 RAM 或 Web 服务 |
下一步:使用 pdb 技能下载命中结果 → 用于支架设计。
评论
支持 Markdown