MHS:仪器接口互通不等于安全,设备拒绝执行才算数

把命令送到仪器,就等于它能安全执行吗?

2026 年 8 月,Anthropic 与 HHMI Janelia 联合放出了 Model Hardware Standard(MHS)研究预览,把显微镜、移液器、机械臂接进统一的 agent 接口。公告里有一个细节比任何架构图都更值得先看,因为它把本节的题目演了一遍:Genentech 团队在 BCA 蛋白定量实验里遇到黏性 BSA 溶液起泡,液位传感器因此报错,而 Claude 的反应是"在同一孔里换参数重试"。命令送达了,重试也执行了,结果却是液体被搅得越来越起泡,直到专家手动补入"换到干净孔、降低混合次数"的物理规则,实验才稳定下来。注意这里失败的环节:不是命令没送到,而是送达之后的执行在物理上不安全。MHS

这是全篇的问题起点,请把它记在心里:命令被送达仪器,不等于它被安全执行。MHS 公告把这条线讲成了两件事的对照,一边是模型把物理故障当软件错误反复"重试"、越试越糟,一边是 CMU 团队故意制造故障、系统在设备真正动作之前全部拦下。后几章要拆的,就是模型侧为什么失败、设备侧为什么能成功。

要解释这种重试为何会失控,先回到仪器接口缺了什么。"实验室自动化"并不是新需求:传统学术实验室靠人逐个操作仪器,灵活但极度费人力;自动化实验室把所有仪器塞进调度器,昂贵且锁定。MHS 要做的是第三种形态,让 agent 和仪器通过统一的机器可读接口对话。危险的缝隙就藏在这里:语言统一了,命令送达变快了,可接口本身并不承诺执行安全。

图注:三种实验室形态的对比。传统实验室人直接驱动仪器,灵活但费人力,AI 只停留在人机对话;自动化实验室由调度器中介,成本高(vendor 标注 $2M–$10M+)且灵活性锁定;MHS 实验室由人与 agent 双线驱动统一接口,把成本、灵活性与 AI 集成度同时做对。图中卡片数字是 Anthropic 的表述(vendor claim),不是独立评测数据。MHS

再来看"送达"最标准的形态,先问它到底保证了什么。MCP(Model Context Protocol)是 agent 与软件工具之间的事实标准协议,host / client / server 三角色跑在 JSON-RPC 2.0 上。agent 用 tools/list 发现服务器上有哪些工具,再用 tools/call 发起一次调用,把结果拿回给模型。2026-07-28 修订版把协议重新定义为 stateless(无状态):每条请求自包含版本与能力声明,没有协议层会话(no protocol-level session)。这套流程保证的是"到达":请求以合法格式被送达对方。到达之后发生什么,协议没有承诺。MCP spec

这套流程对"查天气、算税额"这类无状态 API 完全够用,但物理仪器不是无状态函数,MCP 的保证在这里开始失灵。起泡事故的怪异之处正在于此:每一条重试命令都格式合法、都成功送达,唯有物理世界在一次次累积伤害。仪器与软件工具共有三点差别。第一,慢。一次移液、一次离心、一次对焦都是秒级到分钟级的物理动作。第二,带状态。移液器当前位置、酶标仪里的板子、机械臂抓着的耗材,都是跨调用的物理上下文,而协议层不替你保存。第三,后果不可逆。参数越界、耗材损坏、样品报废,没有回滚按钮。三条差别共同指向同一个结论:对无状态协议而言,送达即完成;对物理仪器而言,送达只是动作的开始。

判断"送达之后是否安全",至少要先回答三个问题,而 MCP 协议层一个都答不了:设备此刻可用吗?谁独占它?参数是否越过物理边界?通读规范会发现,MCP 主线不提供 physical unit(物理单位)、reservation(独占预约)、safety class(安全等级)、calibration(校准)、provenance(溯源)这五类仪器语义原语。协议只保证 wire 层面的送达和格式层面的合法,设备侧是否接受、执行是否安全,不在它的职责里。换句话说,MCP 对安全没有承诺,这不是它的缺陷,而是它的边界,安全承诺必须由别的层给出。MCP spec

追到这里,还要拆一层常见的误读,否则会找错答案的位置:MCP 与 MHS 不是同一层。MCP 是 agent 与软件工具之间的协议,MHS 才是 agent 与仪器之间的接口。MHS 公告明确说,MCP 只是三种调用入口之一,agent 也可以用命令行或 code files 访问它。所以,仪器语义的空白不能指望在 MCP 里补上,答案必须往上走一层。MHS

那么,连事实标准的工具调用协议都答不了这三个问题,谁来答?下一章看 MHS 给出的第一个答案:让设备自己开口。

MHS 的增量:把能力与安全限制变成设备自报的机器可读层

MHS 的第一个答案,是把设备"是什么、能干什么、不许干什么"做成 agent 可发现的机器可读层。

它先引入标准化 driver(驱动),把任何硬件设备的接口压成 read / write 两条基元:"读温度"是 read,"设温度"是 write。在此之上,driver 携带一个用自然语言写的 capability tag(能力标签),可以由人直接写,也可以让 agent 采访用户后生成。MHS 据此自动产出一份 reference file(参考文件),写明设备能测什么(what it can measure)、能调什么(what can be adjusted)、会强制哪些安全限制(what safety limits will be enforced)。MHS

Anthropic 为这个设计举了一个很说明问题的例子:机械臂能举起多重的物体。这种"机器特性"无法从代码里读出来(not discernible from code alone),纯 API 文档只声明接口签名,举重上限藏在说明书和实验员的经验里。capability tag 要做的,就是把这类隐性知识从说明书、私有 GUI 和资深实验员脑子里,搬进机器可读的一层。MHS需要说明的是,MHS 目前仍是 research preview,capability tag 的完整 schema 与 wire protocol 尚未公开,这里只能依据公告的官方表述,无法给出逐字段规格。

这段设计的价值在于改变了集成成本的性质:以前接一台新仪器,是开发者与设备逐对"翻译"私有协议,每加一台都要重来;现在设备自报能力,agent 侧只要建模一次。公告声称集成时间从数周压到数小时甚至数分钟,这些数字是 Anthropic 与合作方的表述,不是独立评测,但方向是真实的:把约定从"私下沟通"变成"公开声明"。

看 MHS 在真实工作流里的样子。

图注:MHS 统一接口下的 agent-device 闭环。科学家用自然语言描述实验,Claude 规划并编排,所有指令经三个 MHS 接口下到液处理器、机械臂、酶标仪,设备状态再流回 Claude。橙色闭环 ①②③④ 是 Claude 闭环执行的一段:设流速、转移液体、读吸光度、与专家结果对比、调整流速。图中没有数据曲线,140 µL/s 与 RMSE 数值只存在于文字说明,属于 Anthropic 表述。MHS

"设备自报能力"不是 MHS 的孤例。LAP(Lab Automation Protocol,2026 年 6 月的 arXiv preprint)把同样的语义做成协议级 InstrumentCard:设备能力、物理参数上下限、安全等级、联锁清单,一张签名的 JSON-LD 卡,托管在固定地址供 agent 发现。LAPNuance MCP(2026 年 7 月 preprint)在 MCP 应用层用 24 个封闭的 capability families 声明显微镜能力,未声明的能力返回确定的结构化 UNSUPPORTED。Nuance MCPSiLA 2 的 Feature 框架更早:2008 年成立的 SiLA Consortium 把"能力声明 + 类型约束 + 错误信号"做成了标准模板。SiLA 2四个体系精神同源,严格度递增,MHS 只是这条脉络上最新、最面向 agent 的一环。

但这里必须停一下。capability tag 让设备"可被发现"(discoverable),可发现不等于"可被安全授权"(authorizable)。reference file 里写的"会强制哪些安全限制",只是设备在纸面上的承诺。这些安全声明真能兑现吗?下一章用真实实验检验。

真实实验检验:语法正确的命令,不等于物理安全

我们说一次 agent 调用"语法正确",通常指它生成了合法参数、通过了 schema 校验。但语法正确只证明命令能被理解,不证明它物理上安全。

回到 Genentech。BCA 蛋白定量里的黏性 BSA 溶液,对水和对黏性液用同一套流速就会鼓泡,第一轮实验正是这么失败的。Anthropic 的说法是,给定目标范围和专家转印结果后,Claude 独立搜索到水约 140 µL/s(RMSE 0.016)、黏性 BSA 约 10 µL/s(RMSE 0.181),这些收敛数值是 Anthropic 的表述,公告未给出独立验证的数据曲线。真正的反例在运行时:鼓泡引起的液位传感错误出现后,Claude 的默认反应是在同一孔换参数重试,把物理故障当成软件错误,越搅越糟,直到专家显式补入"换到干净孔、降低混合次数"这条物理规则才稳定下来。MHS

对照组在 CMU。团队在液体处理仪、酶标仪、机械臂和监控相机组成的系统上,故意诱导六类故障:缺板、旋转板、读板器忙、相机断连、设备不可达、急停激活。结果一句话就够:the system correctly blocked all six before any device moved,六类故障全部在设备动作之前被拦下。MHS

同一个 MHS,两个结局。一边靠模型自觉,把物理故障当软件错误反复重试;一边靠执行条件前置,在命令真正驱动设备之前拒绝动作。两起实验并置,结论浮出水面:自然语言理解不是安全证明。

"拒绝执行"能不能工程化、可复现?Nuance MCP 给出了一个答案。每个 agent 可调用的操作都暴露为带 input schema 的 MCP tool,schema 用 Pydantic v2 model 表达,规定参数名、类型、单位、默认值和允许范围,并禁止未知字段。server 在任何 adapter 调用被 dispatch 之前完成校验,失败返回指名违规字段的结构化 ValidationError,adapter 永远不会被触达(the adapter is never reached)。论文设了一个负对照:agent 收到"把载物台倾斜到 95 度"的指令,发出 alpha_deg=95.0 的调用,被 schema 以必须 ≤80 拒绝,没有任何 adapter 调用发生,agent 转而提出一个范围内的替代方案。注意这里的纠错触发器是 schema,不是模型的自觉。Nuance MCP

图注:schema 绑定校验的三阶段流程。agent 发出 JSON tool call,server 构造 Pydantic 实例并检查物理边界,非法请求在边界处被结构化 ValidationError 拒绝、adapter 永不被到达,合法请求才 dispatch 到设备并返回结果。论文自陈这是分层安全模型的最低层 L1,不叫 safety,硬件联锁、人工批准、设施策略都在它之上。Nuance MCP

Nuance MCP 的作者给自己划了一条很克制的界线:这是 bounded execution at the tool boundary(工具边界处的有界执行),是分层安全模型的最低层,不是仪器安全。软件侧的 schema 校验再严,只证明"这条参数没越过数值范围",不证明"这个动作物理上安全"。能拒绝越界参数的是边界,能兜住物理后果的是设备。

模型侧的自我纠错(self-correction)也确实有用,但要看清它的位置。AutoLabs 在 Big Kahuna 高通量液体处理平台上做了 5 个实验、20 个 agent 配置、每配置 10 次重复的系统消融:reasoning 容量是把化学量错误(nRMSE)压低 85% 以上的头号因素;guided self-check 主要提升步骤正确率 F1,unguided 的整体复查主要压 nRMSE。但论文同时写得很明白:光靠 system prompt 里的自然语言引导合规是不够的,最后必须由规则代码翻译成 Big Kahuna 的 XML 硬件文件并通过校验,硬件 XML 才是 LLM 之外的设备侧最后一道防线。AutoLabs

图注:AutoLabs 的多 agent 管线。Supervisor 调度五个专职子 agent 生成实验步骤,输出经过 Self-Checks 节点(红框:guided 逐项检查与 unguided 整体迭代)修正后,才交给硬件文件生成模块。Self-Checks 在 agent 内部 pipeline 里,硬件侧联锁不在图中。AutoLabs

这一节还有两个旁证,各说一句话。HHMI Janelia 的 Arco Bast 用 shared memory dictionary 让异构厂商的显微组件共享同一份 live state,再用 Claude Code 驱动 observe→adjust→repeat 的闭环校准,整合时间从数月压到数天(Janelia 表述)。这是成像端的工程叙事,演示的是"AI in the loop"的观察与调整,不是设备侧拒动,别把它读成带联锁的闭环。Bast

更早的历史反例是 Coscientist:2023 年 12 月发表在 Nature 的首篇同行评审 lab agent,Planner 只靠 GOOGLE / PYTHON / DOCUMENTATION / EXPERIMENT 四个命令字面量调度,没有任何 device-side enforcement,论文在 Discussion 里明确承认 dual-use(双重用途)滥用风险,数据与代码因安全顾虑暂缓公开。Coscientist

2023 年公开承认风险,2026 年把安全位前移到设备侧。那么问题来了:既然模型自觉不可靠、schema 校验只是 L1,谁、在哪一层、以什么机制强制拒绝?下一章看 LAP 给出的协议位答案。

安全由谁负责:模型规划,设备拒动,人批准不可逆

LAP 的 Safety-Fence(安全栅)把"强制拒绝"从工程实践升格成协议握手。它把操作按危险程度分成 S0 到 S3 四档:S0 是急停,永远允许、快速通道;S1 是例行可逆操作,不需要额外授权;S2 涉及不可替换样本或昂贵难逆操作;S3 是危险操作,比如激光、高电压、自燃物、人机协作,必须走完整的人工批准流程。LAP

图注:一次 S3 危险操作的 safety-fence 握手时序。Research Agent 提交任务(S3 anneal),Instrument Agent 进入 safety-hold 并请求授权,Safety Authority 收到带参数哈希的 challenge,人工或政策批准后签发 JWS 签名的 operator token,设备校验哈希与签名匹配后才转为 running,最后返回签名结果。token 单次有效,不可跨任务复用。LAP

S3 的关键在设计细节上。operator token 用 JWS 签名,claims 里带 jti(单次 nonce)和 paramsHash,也就是任务参数的 SHA-256。参数一改,哈希就变,token 立即失效;jti 让设备把 token 标记为单次使用,不能拿同一张批准去跑另一个任务。设备在拿到匹配 token 之前拒绝 actuate。这就是第一章"谁批准"的协议位答案,而"谁独占"由 LAP 的 first-class Reservation(带时间租约和开销上限的独占预约)补上。LAP

三层责任在这里各归其位。模型在受限空间内做计划和优化,它提出方案;设备侧保有不可绕过的联锁、状态机、参数上限和急停,它在执行前强制校验;不可逆操作绑定任务级人工批准,人把守最后一道门。这不是给模型自由设限,恰恰相反,是把"像人一样操作设备"的泛化权,收窄成"在声明过的能力范围内操作"的受限权。这正是 capability-based security(能力安全)与最小权限原则的落地。

agent 侧的授权同样不能靠模型的自觉。Zuvic 在 2026 年对 LangChain / LangGraph、LlamaIndex、Stripe Agent Toolkit 做了源码审计,发现这些框架默认只要工具名能解析、schema 校验通过,就以模型提供的参数执行副作用。它们做 capability gating(能力门控),回答"这个工具在不在可用集里",但不做 per-call value authorization(逐调用授权),回答不了"这一次、这个参数、这个接收方,被授权了吗"。审计用一个固定输出 update_payout_account(account=acct_ATTACKER_999) 在默认 dispatch 路径上打出了真实副作用。这是 confused deputy(被利用的中间代理)问题在 LLM 时代的重现:模型同时提供了动作和授权依据,而框架只在门口看了一眼工具名。Zuvic

capability gating 与 per-call authorization 的差别,可以用 Progent 的示意图看得很清楚。

图注:Progent 把 agent 的每个工具调用绑到显式 policy。左侧是五步执行流,其中 send_email 是注入试图触发的攻击调用;中间是 policy 的 allow 规则(不含 send_email);右侧展示权限演化被 SMT 判定区分:扩张必须人工批准,收窄自动应用,注入试图扩张权限时被确定性拒绝。Progent

Progent 把"逐调用检查"做成了显式语言:policy 是带 effect(allow / forbid)和 fallback(终止 / 询问用户 / 返回消息)的规则列表,每个 tool call 由确定性过程匹配,未匹配的默认被 block。policy 的改动被 SMT 判定分成扩张(expansion)和收窄(narrowing)两类,扩张必须显式批准,收窄自动应用,从而保证任何攻击都无法静默提权。Progent

模型侧到底兜不兜得住?LabSafetyBench 在 Nature Machine Intelligence 上给出了同行压力:评估了 19 个前沿 LLM/VLM,在危险识别(hazard identification)测试上,没有任何模型超过 70% 的准确率。LabSafetyBench

图注:LabSafetyBench 的模型表现四联图:632 道纯文本安全题上 19 个模型的准确率柱状图,5 个头部模型在 10 个安全类目的热力图,4 个多模态模型的图文题表现,以及题目来源分组。正文只取一个结构事实:危险识别上无模型超过 70%,不必从图中读出具体模型分数。LabSafetyBench

MCP 协议侧也在回应这件事。2025-11-25 修订引入的 elicitation 原语区分 form 与 url 两种模式,url 模式专门为支付这类敏感操作准备,把审批环节拉出模型上下文,并绑定到发起者身份。人类审批正在从"建议"变成协议位。MCP elicitation

这一层盖章可以盖了:模型负责在不越界的空间里优化,设备负责把物理边界变成命令到达之前就生效的约束,人负责对不可逆操作说 yes 或 no。可这套分层,在工业标准里早就有过吗?是新鲜发明,还是老遗产的 agent 化?下一章回答。

标准分层:编排层与设备语义层,谁替代不了谁

如果把 MHS / LAP 当成"让 AI 控制实验室"的发明,会错过更重要的东西:设备侧可执行的安全约束,工业界已经写了二十年。

SiLA 2 是这条线的代表。SiLA Consortium 2008 年成立,2015 年启动 SiLA 2,2022 年发布的 Part A v1.1 把 Feature 框架定义为 Commands + Properties + SiLA Data Types + Execution Errors + Metadata 的统一模板。关键在类型系统:Constrained Type 把约束编码进类型本身,最小值、最大值、单位、内容类型同步生效,规范明文要求 server 在接收命令参数时检查所有约束,违反就发 Validation Error。SiLA 2也就是说,"物理边界必须在设备侧被检查"这件事,SiLA 2 在 2015 年的设计里就有协议位;LockController 把"这个调用需要先拿锁"做成强制,ParameterConstraintsProvider 把"这个参数只能从枚举里选"收敛成结构。

OPC UA 的 LADS(Lab Automation Deviceset)则把故障状态做成协议级状态机。LADSDeviceType 之下,每个 FunctionalUnit 是"独占虚拟设备",同一时刻只被一个用户使用,与 LAP 的 Reservation 语义同构。它的 FunctionalStateMachine 定义六个状态、八条转换:Stopped / Running / Stopping / Aborting / Aborted / Clearing,配 Start / Stop / Abort / Clear 四个方法。

图注:LADS 的 FunctionalStateMachine:六个状态、八条转换。注意 Aborted 状态的退出条件,只能由人工干预后的显式 Clear 命令退出,回到 Stopped。这是工业级"不可自动恢复的故障状态"的协议模板,它早于 LLM agent 出现,不是 MHS 或 LAP 的发明。LADS

这个状态机的价值在 Aborted 的退出条件上:设备一旦进入 Aborted,不会自己恢复,必须人工干预后发 Clear 才回到 Stopped。把"不可自动恢复"写进协议,等于承认一个原则:有些故障状态不是让模型"再试一次"能解决的,人必须在环。这条原则在 2023 年 11 月发布 v1.0.0 的 LADS 规范里(2020 年立项),就是本专题主线最朴素的工业回响。

那 MHS / LAP 与这些工业标准是什么关系?LAP 的六层架构把话说得很清楚。L5 是科学层(Research Agent 内部),L4 是编排层(多仪器 workflow),L3 语义层承载 InstrumentCard、QUDT、UCUM、MeasurementResult,L2 交互层承载方法调用与 safety-fence 握手,L1 是身份与传输(JSON-RPC 2.0 / mTLS / OAuth 2.1)。LAP 只规范 L1 到 L3 加 L4 的编排消息;最底下的 L0 设备抽象层明确标灰为 out of scope,里面封的是厂商 SDK、SCPI、串口、OPC UA 和 SiLA 2 的 adapter。LAP

图注:LAP 六层协议栈。L1 身份与传输、L2 交互、L3 语义与 L4 编排消息是 LAP 的规范性内容(青色),L5 科学层和 L0 设备抽象层都标灰为 out of scope。MeasurementResult 落在 L3 语义层。这是协议栈,不是 agent 框架。LAP

封装,不是替代,这句话就是本章的锚。MHS / LAP 是 agent 侧的编排层,SiLA 2 / LADS 是设备语义与工业安全层。agent 需要的是"capability tag 能被工具调用发现",工业层早就回答了"设备如何声明并强制执行物理边界"。谁把对方排除在外,谁就丢了半边。

开放驱动还要算上它的双刃剑。MHS 计划开源、把 driver 当社区资产沉淀,这会降低锁定和接入成本;但错误的能力描述、过期的校准、缺失的溯源,会沿着共享 driver 跨设备传播。一个实验室写错的上限,会被下一个打开同一 driver 的 agent 当成事实。MHS

那标准之争到底比什么?最后一章收口。

胜负手:把授权、联锁、校准与溯源做成可验证的执行条件

把前几章的证据摊开,会看到一件事:MHS 的进步是声明性的,capability tag 把能力和上下限做成机器可读,但"可发现"只是第一步。真正定胜负的,是下面四件事能不能在协议位被验证。

执行条件协议位证据线
授权(authorization)Safety-Fence S0–S3 + operator tokenLAP:JWS 签名,paramsHash 绑定任务参数,jti 单次有效
联锁(interlock)设备侧拒动与状态机MHS 的 CMU 六类故障在设备动作前全部阻断;LADS FunctionalStateMachine
校准(calibration)过期即拒LAP:CalibrationExpired 错误码拒收,结果携带 calibrationRef
溯源(provenance)MeasurementResult 全员必填LAP:UCUM 单位 + QUDT 链接 + uncertainty + provenance + 签名

逐条看。授权,LAP 的 S3 握手让人工批准变成携带参数哈希的签名 token,参数一改 token 即失效。LAP联锁,CMU 的六类故障阻断证明设备侧拒动既必要也可行,LADS 的状态机把"不可自动恢复"固化成模板。MHS校准,LAP 把 CalibrationExpired 做成拒收错误码,测量结果的 calibrationRef 必须指向标定记录。溯源,MeasurementResult 的 UCUM 单位、QUDT 链接、不确定度模型、provenance manifest 和签名全部必填,实验从"事后讲故事"变成"按构造可复现"。LAP

收尾时值得点破一处反常:这套"可验证的执行条件",最好的实现不是某个模型的推理能力,而是 20 年前工业标准里最朴素的机制:约束类型、状态机、独占、签名。SiLA 2 的 Constrained Type、LADS 的 FunctionalUnit 独占、Aborted 只能人工 Clear,这些都不是为 agent 设计的,但它们恰好是 agent 最需要的东西。LADS

所以标准之争,比的从来不是谁更会调用,而是谁能把授权、联锁、校准与溯源做成可验证的执行条件。谁做到,谁就赢下这场标准竞争;谁只把"能调用"当"能安全执行",谁就还会在下一个起泡的孔里再试一次。

回到开头那个鼓泡的孔。接口互通只会更快地放大 agent 的行动能力,但它不会自动带来安全。安全是把权限、状态与物理边界下沉为设备可发现但不可绕过的可执行约束,是设计出来的分层执行条件,不是模型理解的副产品。这句话,就是这篇专题想让你带走的全部。

参考文献

本专题引用的核心资料如下,建议深入学习时阅读原文:

  1. Previewing the Model Hardware Standard(Anthropic × HHMI Janelia) — https://www.anthropic.com/news/model-hardware-standard-research-preview
  2. LAP: An Agent-to-Instrument Protocol for Autonomous Science — arXiv:2606.03755
  3. Model Context Protocol — Tools Specification(2026-07-28 修订版) — https://modelcontextprotocol.io/specification/2026-07-28/server/tools
  4. Schema-Bound LLM Control of Scientific Instrumentation through Model Context Protocol Skills — arXiv:2607.17012
  5. SiLA 2 Part A v1.1 Overview, Concepts and Core Specification — SiLA 2 PDF;OPC UA LADS Companion Specification Part 1 — LADS
  6. AutoLabs: Cognitive Multi-Agent Systems with Self-Correction for Autonomous Chemical Experimentation — Scientific Reports
  7. Toward Secure LLM Agents(Progent) — arXiv:2504.11703;Capability Gates Are Not Authorization(Zuvic) — arXiv:2606.28679;SEAgent — arXiv:2601.11893;RACG — arXiv:2606.13884;MCPSecBench — arXiv:2508.13220
  8. How One Postdoc's Problem Solving is Changing the Way Scientists Work(HHMI) — https://www.hhmi.org/news/how-one-postdocs-problem-solving-changing-way-scientists-work
  9. Autonomous Chemical Research with Large Language Models(Coscientist) — Nature
  10. LabSafetyBench(Nature Machine Intelligence) — https://www.nature.com/articles/s42256-025-01152-1
MHS:仪器接口互通不等于安全,设备拒绝执行才算数