SuperAPI AI 工具集

setup-colabfold-remote-tool

智能体与模型

查看项目

更新于 10-20 04:54

技能介绍

用途

本技能用于把 ColabFold(AlphaFold2-Multimer)封装成 ToolUniverse 的远程工具,完成环境搭建、启动、验证和故障排查,并可选通过 ToolUniverse Connect 进行中继共享。它面向需要在本地或受控环境中运行蛋白质结构预测、又不希望直接使用官方 CLI 的用户。

主要能力

  • 提供双环境搭建流程:ToolUniverse 的 MCP 服务器环境与 Python 3.11 的模型环境,模型环境通过固定依赖锁文件安装,避免版本漂移。
  • 通过 tu remote setup colabfold 自动执行预检、环境、工具包、权重和冒烟测试五个步骤,支持 --only 单步执行。
  • 冒烟测试会实际发送一次请求,校验输出文件(*_unrelaxed_rank_*.pdb 和非空 structures),并记录峰值显存到 ~/.cache/tooluniverse/measured/colabfold.json。
  • 提供本地 Streamable HTTP MCP 端点(默认 http://127.0.0.1:8051/mcp),可通过 FastMCP 客户端发现和调用 colabfold_predict 工具。
  • 支持通过 tu remote login 和 tu remote share colabfold 进行浏览器设备授权和中继共享,密钥保存在本地 0600 配置文件,不显示明文。
  • 资料包含针对 a3m 输入格式的精确说明:单链 a3m 与复合物 a3m 的头部格式、对齐宽度计算方式,以及 MSA-free 哨兵序列的低 pLDDT 预期。
  • 提供 GPU 与并发调优建议:单 worker 设计、显存预算平坦(100/200/400 残基均为 4.0 GiB)、XLA 预分配关闭、空闲超时 300 秒等。

使用方式

前提条件:在 Linux 上从 ToolUniverse 仓库根目录运行,Python 3.12.3;需要 CUDA GPU;模型环境需要 Python 3.11(uv venv --seed --managed-python --python 3.11 ~/colabfold-venv)。数据、权重、缓存和凭据应放在 Git 之外。绑定回环地址;非回环绑定需要 TOOLUNIVERSE_API_TOKEN,且不得放入参数或结果。

主要步骤:

  1. 运行标准库合约检查:python scripts/remote_validation/setup_skill_preflight.py --implementation colabfold,之后可加 --check-provider-env、--live、--check-connect-prereqs。
  2. 创建两个环境:MCP 服务器环境(python3 -m venv .venvs/colabfold,激活后安装项目和 fastmcp);模型环境路径由 TOOLUNIVERSE_COLABFOLD_PYTHON 指定,由 tu remote setup --only environment 从锁文件填充。
  3. 设置环境变量并运行 tu remote setup colabfold,或分步执行 preflight/environment/kit/weights/smoke。
  4. 本地启动:python -m tooluniverse.remote.colabfold.colabfold_tool,然后通过 FastMCP 客户端确认发现包含 colabfold_predict。
  5. 可选共享:安装固定的 tuplatform-connect wheel,执行 tu doctor 和 tu serve --share,或使用 tu remote share colabfold。
  6. 调用示例:使用胰岛素(A 链 21、B 链 30)的两链 a3m,参数 num_models=1、num_recycles=1、seed=0,通过本地 MCP 端点调用 colabfold_predict。成功返回包含 n_structures、scores(含 mean_plddt、ptm、iptm)、best、query_length、chains、msa_rows、msa_source、engine_rebuilt、weights_held_by 等字段;structures 需显式传 return_structures: true 才返回。

适用场景

  • 在具备 CUDA GPU 的 Linux 主机上私有部署 ColabFold 远程工具,并通过 MCP 接口调用。
  • 需要固定依赖版本、可重复环境搭建和冒烟验证的科研或工程场景。
  • 需要在本地或受控网络中通过 ToolUniverse Connect 共享预测能力,且能接受浏览器设备授权流程。

限制

  • 资料明确说明公开出版、跨用户隔离、并发、恢复和科学准确性尚未验证,建议保持私有部署。
  • 该实现未经过 2026-08-16 平台矩阵测试,未通过 Platform 实际调用;公开出版、独立调用者授权/隔离、饱和度和持久监督均未测试。
  • 单 worker 一次只处理一个请求,第二个请求会排队;无 padding 桶,不同总长度各自触发 XLA 编译。
  • 某些参数(如 use_bfloat16、use_templates、num_relax、msa_mode)在请求时会被按名拒绝;num_models x num_seeds > 5 会因超时限制被拒绝。
  • 单序列 a3m 会导致 pLDDT 约 35-44,属于预期结果而非故障。
  • 模板被按名拒绝,因为上游针对 a3m 输入的模板路径会调用同一远程服务;不需要本地 MMseqs2 数据库,请求时不拉取任何数据。
  • 资料未提供收费、价格或商业授权信息。