用途
本技能用于将 OpenFold3(蛋白质结构预测模型)设置为 ToolUniverse 的远程工具。它覆盖从环境准备、依赖安装、权重校验、本地启动验证,到通过 ToolUniverse Connect 中继共享的完整流程,并包含故障排查与清理指引。
主要能力
- 运行远程验证预检脚本,检查实现是否满足基本契约。
- 创建两个独立 Python 环境:ToolUniverse 的 MCP 服务器环境,以及模型自身按锁定依赖构建的环境。
- 通过
tu remote setup执行预检、环境、工具包、权重、冒烟五个步骤,每步失败时给出名称与修复提示。 - 本地启动 OpenFold3 工具服务,并通过 FastMCP 客户端验证工具发现与调用。
- 提供
openfold3_fold示例输入与预期成功输出形态。 - 可选通过
tu remote share与 ToolUniverse Connect 中继进行私有共享。 - 提供 GPU 显存测量、并发测试建议与日志排查路径。
使用方式
前提:在 Linux 上从 ToolUniverse 仓库根目录运行,Python 3.12.3,需要 CUDA GPU,不面向 CPU;提供方数据、权重、缓存、凭据应置于 Git 之外;绑定回环地址,非回环绑定需 TOOLUNIVERSE_API_TOKEN。
先运行契约检查:
python scripts/remote_validation/setup_skill_preflight.py --implementation openfold3
创建 MCP 服务器环境:
python3 -m venv .venvs/openfold3
. .venvs/openfold3/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .
python -m pip install fastmcp
模型环境路径由 TOOLUNIVERSE_OPENFOLD3_PYTHON 指定,需先创建空解释器:
python3 -m venv ~/openfold3-venv
然后执行:
export TOOLUNIVERSE_OPENFOLD3_PYTHON=~/openfold3-venv/bin/python
tu remote setup openfold3
可用 --only preflight|environment|kit|weights|smoke 逐步执行。冒烟步骤会记录测量到的峰值显存到 ~/.cache/tooluniverse/measured/openfold3.json。
本地启动:
python -m tooluniverse.remote.openfold3.openfold3_tool
端点:http://127.0.0.1:8039/mcp。
共享前需登录一次:
tu remote login
共享命令:
tu remote share openfold3
本地就绪检查:tu remote check openfold3;仅本地前台运行:tu remote run openfold3。
ToolUniverse Connect 中继需安装指定 wheel:
python -m pip install fastmcp pyyaml "tuplatform-connect @ https://connect.aiscientist.tools/downloads/tuplatform_connect-0.3.0-py3-none-any.whl#sha256=3fad5eee5ecf7887a693d93ccd1aa112dc0955617a885d1fc3daded0030f9ae0"
tu doctor --forward http://127.0.0.1:8039/mcp --json
tu serve --share --forward http://127.0.0.1:8039/mcp --name validation-openfold3 --workers 1
示例调用:工具 openfold3_fold,参数示例:
{"chains":[{"molecule_type":"protein","sequence":"LSDEDFKAVFGMTRSAFANLPLWKQQNLKKEKGLF"}]}
预期成功形态:n_structures 大于零,且 scores 对象包含每个样本的置信度 JSON(含 avg_plddt);五个扩散样本需由调用方按分数排序。
适用场景
- 在单卡 GPU 环境上私有部署 OpenFold3 远程工具。
- 需要模型常驻、避免每次请求重复构建模型的本地推理服务。
- 通过 ToolUniverse Connect 进行受控的私有中继共享。
限制与未验证事项
验证状态(2026-09-29):在 NVIDIA GB10(aarch64, cc 12.1)上,使用优化套件快速模式运行,关闭 pair_transition,强制 post_release 门,数据加载器设为 0 worker;在单 worker 内通过四次连续相同请求验证,而非单次冒烟。公开分享、跨用户隔离、并发、恢复与生物学准确性均未测试;该部署应保持私有。
该实现未参与 2026-08-16 平台矩阵,未通过平台进行任何调用,证据仅为单卡本地回环端点。
建议单 worker,单请求处理;读取 vram_budget_gb 与测量文件后再考虑共置。冷启动后应至少测试四次连续相同请求与混合形状序列,再测试并发级别。
日志:worker 自身记录在 ~/.cache/tooluniverse/remote-logs/openfold3-resident.log;上游预测错误日志在出生目录 /tmp/openfold3-resident-*/logs/predict_err_rank0.log,不在请求输出目录。
清理:Ctrl-C 停止服务;若安装则运行 tuplatform-service uninstall --name validation-openfold3;确认后仅删除 .venvs/openfold3 与提供方缓存目录,避免宽泛递归删除;撤销临时密钥。
仅使用实现 README 链接的官方上游文档,不要替换为第三方模型镜像。