一条实验指令,写出来只要一行。
按方案 B 配三组溶液。六十度搅拌两小时,再做光谱表征。
放到真实实验台上,它就散了。
取容器,开盖,称量,移液,混料,控温。
每一下都得有设备真的动起来。
AI 写得出可行方案。这套线下操作它做不完。
华为 openJiuwen 团队和一家算力平台的公共事业中队,挑电催化当场景。
他们把大模型和底层物理设备接上了。
方案从屏幕下发到了硬件。
顶住这层对接的,是 Jiuwen Symbiosis 这套物理智能体。

图 1:Jiuwen Symbiosis 的字标,这套物理智能体把实验方案送进了真实实验台
湿实验为什么难。
难点不在写方案。
难在现场太杂。样品,容器,仪器,环境,全都耦合在一起。
AI 要想清楚这一步能不能做。
移液之前,瓶盖开了没有。
加热之前,那台工位是不是空着。
设备还不同构。多流程并发跑,异常随时插进来。
每个动作都得有边界。每一次状态变更都得能追溯。
实验室越大,链路越长,并发越多,后果越重。
一个没被识别的状态偏差,一次越界操作,会顺着流程往下传。
湿实验没有撤销键。这一点和数字世界完全不同。
拆开看,它是一个闭环。
感知,规划,执行,反馈,四段转一圈。
官方叫它智能体循环。
行动之前先确认现场。动作按设备能力和当前状态分配下去,做完再拿观测结果检查,不对就转进下一轮。
感知这一段回答现场长什么样。
和常见的 AI对话不同,它先看清现场,再汇两类信息。
一类是环境。台上有哪些容器和样品,各自在哪,谁挨着谁。
识别走开放词汇那条路。用文字描述就能定位目标,结果再结合深度换算到设备坐标系。
相机装在机械臂末端,或者固定在台子一侧,出来的都是能直接拿去用的位置。
另一类是设备。谁能动,眼下什么姿态,是否空闲,末端有没有夹着东西。
能力是显式声明的。能移动,能夹取,能吸取,有没有视觉。
编排的时候,动作只发给真有这项能力的设备。
机械臂来自这家,移动机器人来自那家,接口千差万别。
适配层把这些差异抹平,往上只给一套能力和状态的抽象。
流程只管这一步谁能做。
实验室里不缺 AI工具,缺的是能把方案落到设备上的那一层。
规划回答接下来做什么,由谁来做。
输入是自然语言写的实验目标,加上现场状态,加上各设备自己声明的能力。
它把任务拆成有先后依赖的子任务。再给每个子任务配一台眼下可用又具备本领的设备。
配液交给移液工作站。转移交给机械臂。跨台转运交给移动机器人。
步骤之间的数据依赖也写明。上一步测到的样品位置,直接当下一步抓取的参数,不写死坐标。
方案下发之前整体过一遍。确认每一步的前置条件都能被前面那步满足,不满足约束的操作进不来。
固定脚本的毛病就在这里。
流程和某套布局绑死。换一台设备,就得改控制程序。
动态编排不绑。同一个实验目标,现场条件不同就出不同方案。
新加一类实验,不用重写控制程序。
实验室新增或者更换设备,设备自己声明能力就能被纳入编排。
执行把计划变成设备的物理动作。
规划结果拆成面向具体设备的指令,按序发给移液台,机械臂,移动机器人。
每一次交接都以现场状态为前提。上一台真做完了没有,下一台空不空,能不能到得了目标位置。
运动和抓取类动作不会并行下发给同一台设备。
多条指令同时驱动同一套硬件,容易出事。
指令到硬件之前,还要过护栏的边界检查。
反馈回答刚才那一步到底做到没有。
每步执行结果写进执行记忆,现场状态跟着更新。
下一步开始之前,系统拿最新真实状态校验这一步成不成立。
目标容器不在原位,工位被占住,上一步没达到预期,都会触发重新规划。
重规划有次数上限,不会无限转圈。
长时间跑下去,得记得住当下,也得查得清过去。
目标样品现在在哪,这个位置什么时候确认的,之后设备动过没有。
执行记忆自动维护这些。
感知到的位置和设备状态记录在案。成功动作的结果沉淀下来,供后续步骤继承。
参照关系一变,比如移动机器人的底盘位移了,此前记的位置自动失效。
系统知道要重新确认,而不是照旧坐标动手。
开发者不用手写任何缓存逻辑,这比在 AI编程里手工维护状态省心。
它还守两条原则。
现场观测优先于根据执行记录做的推断。
没被确认的状态一律算未知,不算成立。
瓶盖没被看到,也没有执行记录能证明它开了,系统就不会假设它开着。
对湿实验来说,这一条最要紧。它挡的正是那种连锁失败。
轨迹是另一件事。
每一次动作调用,每一份现场观测,每一个异常事件,都结构化记下来,关键画面可以留。
任务结束能回放成完整的可视化报告。
某个样品的检测结果不对,研究者顺着轨迹往回走。
哪一步,由哪台设备处理,当时现场什么样,有没有失败重试,一眼看得到。
历史轨迹还能离线批量分析。失败案例自动聚类,归出共性原因,生成改进建议交人工审核。
不是处理一次失败,是从一类失败里改。
动态编排换来灵活。灵活得拿安全兜住。
护栏不挂在流程尾巴做事后检查。它挂的是执行过程里的关键事件。
运动类工具调用之前触发。工具执行异常时,恢复护栏触发。
超出边界的指令直接被拒,不下发到硬件。
边界还没配好的,也要对指令做类型和数值有效性检查。非数值,无穷大,一样拦得住。
拦住还不够。失败之后得收得住。
运动或者抓取失败,恢复机制尽量把设备带回一个已知的安全位姿。
末端空着,就顺手释放。
确认还夹着样品,就带载回退。绝不会因为一次运动失败把样品丢下。
回位本身再失败,系统不重复重试同一个动作,而是如实上报。
设备回到已知状态,下一步无论是重试,还是交给人处理,都有个干净的起点。
回到开头那句。
屏幕上列的实验步骤,怎么变成台子上的物理操作。
答案不是一个包揽一切的模型。
是一套面向物理世界的智能体系统。
闭合的一圈看清现场。动态编排让设备之间的协作跟着现场变。
执行记忆和可回放轨迹记住每一步,追得上每一次。
护栏守住每个动作的边界。
代码仓已经开在 AtomGit 和 GitHub 上,社区入口和官网也一并放了出来。
