OpenAI4S 把模型发现、加速器路由、模型资产获取、后端 bring-up 和正式科学计算视为彼此 独立的状态。这是所有 Agent 入口共同遵守的框架级契约,并非只存在于某一个 Skill 的 工作流说明中。
Protein Design MCP connector 是第一个采用者。其他依赖 checkpoint 的 connector 可以 复用相同的 Host 工具和准入状态机,但每个 connector 仍需实现真实推理 canary,并解析 自己的输出。框架不能因为 GPU 可见、包已安装,或某个文件名看起来像 checkpoint,就 推断模型已经可用。
| 状态 | 含义 | 不能证明什么 |
|---|---|---|
| discovered | Agent 能看到 connector 或工具。 | 后端、GPU 或权重已经存在。 |
| route selected | 用户选择了 local 或某个 ssh:<alias> 执行目标。 |
路线当前可达或已经部署。 |
| staged | 精确模型字节已导入 model-assets/ 并计算摘要。 |
后端能加载或运行这些字节。 |
| admitted | 真实最小推理成功,解析后的终态记录在所选路线报告了预期 checkpoint digest。 | 后续输入的实验有效性或科学成功。 |
| formal | 正式科学调用复用了完全一致的准入身份。 | 超出该次调用真实返回内容的证据。 |
一次准入身份同时绑定:
其中任意一项变化都必须重新运行 canary。准入有意只在 backend 进程生命周期内有效: 进程重启后同样要重新运行 canary。新进程尚未证明其环境、import、driver 访问、模型加载、 推理路径和输出 parser 仍然正常。
host.accelerator_status()。它先探测本地 NVIDIA 硬件,
再报告已配置的 SSH GPU 路线。存在多个候选时,Agent 必须让用户选择,不能静默偏向
本地或远程。host.stage_model_asset(source_path, ...)。这是需要精确路径审批的
导入操作;它拒绝 secret 路径和 symlink source,分块复制,并可核对预期 SHA-256。run_mode="canary" 运行真实最小推理,adapter、backend revision、staged checkpoint
digest 与 execution target 必须和预定的正式调用一致。run_mode="formal" 重试原始 operation。没有完全一致的当前进程准入时,connector
必须拒绝执行。缺少源码、环境或权重是 bring-up 条件,不能仅凭「没有预装」就宣布 backend 不可用。
host.accelerator_status() 返回本地探测证据、已配置 SSH 路线、有序候选执行目标和
selection_required。硬件可见性与 provider 注册、模型就绪状态互相独立。因此,SSH
registry 为空不能说明本机无 GPU;nvidia-smi 成功也不能说明模型后端已经安装。
既有 host.remote_gpu_status() 继续提供 SSH capability 的详细视图。选择 SSH 路线后,
仍必须进行实时可达性和 backend preflight。
host.stage_model_asset(...) 把一个 operator 持有的普通文件导入当前会话 workspace 的
model-assets/ 下。结果包含可移植相对路径、字节数、SHA-256、status: "staged" 和
admitted: false。
该工具既不下载文件,也不进行准入。下载审批与 backend 准入是两个独立控制。某些 connector 的模型 bundle 可以使用 manifest 固定每个数据文件,不能把目录名本身当作 稳定模型身份。
openai4s.host.model_admission.ModelAdmissionLedger 提供通用身份计算和状态转换。connector
在真实 backend 进程内持有 ledger;只有真实 handler 与 output parser 都成功后,才能把
canary 观测到的 checkpoint digest 交给 ledger。
这种分工是有意的:通用框架能够验证身份和状态转换,只有 connector 才知道
RFdiffusion .trb、folding confidence payload、language-model score 文件或其他后端特有
输出是否完整且可解析。
内置 Protein Design connector 把这套契约用于 RFdiffusion、ProteinMPNN、ColabFold 模型数据 bundle 和依赖 ESM-2 checkpoint 的调用。connector manager 会为 Agent 调用启用 准入强制。正式调用缺少匹配 canary 时,会产生并持久保存失败终态记录,而不是从 attempt 记账中消失。
connector 当前以本地 stdio 进程执行。用户选择 SSH execution target 时,在 verified remote adapter 尚不存在的情况下会明确报不支持,不会偷偷改成本地执行。没有 checkpoint 身份的 Rosetta 和 OpenMM operation 仍遵守各自的 revision、seed、终态记录与输出验证契约。
后端环境变量、网络隔离要求、逐工具 schema 与科学证据边界见 connector package 文档。
仓库内置 Python connector 的持久化记录保存 @openai4s/python,而不是某台服务器虚拟
环境的绝对路径。只有启动 connector 时,该 token 才解析为当前 daemon interpreter。
启动迁移只修正匹配的旧内置记录,不改写任意 custom command。
从 Customize → Connectors 添加 connector 只是启用配置,并不会立即启动 server; 工具发现或首次调用才会懒启动。编辑启动配置会断开缓存进程,使下一次操作使用新配置。 浏览器把环境值视为 write-only:不会返回已有值;可以显式替换选中的值,也可以显式删除 选中的变量名。
新 connector 应当:
canary|formal run mode;ModelAdmissionLedger;admit() 前解析并验证 backend-specific 输出;除非 connector 能独立重建 canary 所证明的全部 runtime 事实,否则不应把 admission 持久化 到 backend restart 之后。
离线测试覆盖本地/SSH 路由顺序和用户选择、需审批的资产 staging、digest mismatch 与 symlink 拒绝、准入身份和进程重启、Protein Design canary/formal 强制、MCP 生命周期与 shape 归一化、connector command 迁移、启动配置编辑及静态 UI 契约。真实 GPU 推理仍是 部署验收门禁,因为默认 CI 有意保持离线,也不会安装科学模型 runtime 或 checkpoint。