用途:ESM 提供蛋白质语言模型,用于理解、生成与设计蛋白质。skill 覆盖两个模型家族:ESM3 做序列、结构、功能的多模态生成式设计;ESM C 做高效表示学习与嵌入。
主要能力:
- ESM3 序列生成:用掩码序列('_' 表示掩码位)补全或生成新序列。示例:ESMProtein(sequence="MPRT___KEND"),配合 GenerationConfig(track="sequence", num_steps=8)。
- 结构预测与逆折叠:track="structure" 从序列预测结构,可读取 coordinates、to_pdb();从 PDB 设计序列时用 ESMProtein.from_pdb(...),sequence=None,再按 track="sequence" 生成。
- ESM C 嵌入:ESMC.from_pretrained("esmc-300m"),encode/forward 获取嵌入,支持批处理。
- 功能条件与注释:用 FunctionAnnotation(label="fluorescent_protein", start=50, end=150) 做功能条件生成,也可预测功能。
- 思维链生成:多步迭代,先生成结构,再细化序列,再预测功能。
- Forge API 批处理:ESM3ForgeInferenceClient 配合 asyncio 异步批量生成。
模型选择:ESM3 有 esm3-sm-open-v1(1.4B,开放权重,本地)、esm3-medium-2024-08(7B,仅 Forge)、esm3-large-2024-03(98B,仅 Forge);ESM C 有 esmc-300m、esmc-600m、esmc-6b。
安装:uv pip install esm;加速可 uv pip install flash-attn --no-build-isolation;Forge 访问需在 https://forge.evolutionaryscale.ai 获取 token。
适用场景:蛋白质工程、药物发现、科研;新 GFP 设计、变体生成与筛选、基于结构的序列优化、功能预测、基于嵌入的聚类分析。
限制:部分大模型仅通过 Forge 提供,需 token;生成结果需用结构预测或湿实验验证;请遵循 Responsible Biodesign Framework,考虑生物安全与伦理。详细参数见 references 下的 esm3-api.md、esm-c-api.md、forge-api.md、workflows.md。