Jev 机器人快判断 Demo:研究、实现与实测

结论

结论是 有条件适合。

Jev 适合做 claw-bot 动作下发前的软实时语义闸门:从已经枚举的候选动作中选择、判断语义危险、表达不确定性,并在证据不足时把任务升级给 System 2。它不适合进入电机控制、姿态稳定、碰撞急停或其他硬实时安全回路,也不能替代确定性互锁、权限检查、传感器新鲜度检查和低层控制器。

指定调研链接 Mileson07/status/2101625905005432889 实际内容是“飞书 CLI 可检索公开云文档”,与 Jev 无关。本文没有把该帖子当作 Jev 证据。Jev 的原始发布信息来自 TypeSafe 创始人 Diogo Almeida 的发布线程 和 TypeSafe 官方发布文。

证据约束的架构判断

TypeSafe 将 Jev 定义为文本输入、类型化概率输出的 System One 模型;当前支持 Choice、Score 和 Noul,不生成文本,也不做多步工具调用。官方文档强调:结构契约可以保证输出形状,但概率校准只在预测集合上成立,不能保证单个答案正确;低置信度必须由代码转入复核。参见 System One、API reference 和 Confidence。

TypeSafe 公布的典型端到端延迟为 70–500 ms。与此相对,ROS 2 实时系统说明把实时性定义为可保证的截止时间,而不是平均低延迟;Nav2 Collision Monitor作为独立安全过滤层,典型单帧处理约 4–20 ms,并明确说明普通 CPU 节点不构成硬实时安全认证。因此,远程网络模型不能承担硬实时安全责任。

机器人领域长期采用异步分层:Gat 的 异步规划/反应架构让规划指导动作,但不直接控制快速反应层;近年的双系统 VLA 也让慢语义系统低频更新,让快速策略高频闭环执行。例如 DuoCore-FS报告慢系统 1–3 Hz、快系统 25–30 Hz;Hume报告 System 2 为 4 Hz、System 1 为 90 Hz;Fast-in-Slow同样采用异步频率。它们支持“语义指导与快速控制解耦”,但不能证明 Jev 本身具有机器人安全认证。

Demo 采用三层边界:

  1. 硬实时安全层:设备/控制器本地执行急停、互锁、截止时间、碰撞区、速度、力、载荷和传感器新鲜度检查。网络和模型完全不在这条路径上。
  2. 软实时 Jev 层:只接收硬规则已放行的候选动作,一次请求并行判断最佳候选、证据是否充分、各候选是否存在语义危险。Jev 无权扩大候选集或授权。
  3. System 2 / 人工层:低置信度、证据不足、候选覆盖不全、服务失败或结构校验失败时收到只读升级包,mayExecute=false。System 2 可以补证据或提出新候选,但新候选必须重新经过硬规则和 Jev 闸门。

实现

输出是 allow | block | escalate,附带候选动作、理由、策略版本、输入哈希、模型版本、概率、延迟和审计 ID。审计记录不包含 API 密钥。API 错误只记录 HTTP 状态码,不记录认证头或响应中的敏感凭据。

运行方法

离线运行,不需要 API:

node bin/claw-bot-jev-fast-path-demo.js \
  --input examples/jev-fast-path/safe-hallway.json \
  --provider fixture \
  --audit /tmp/claw-bot-jev-audit.jsonl

live Jev 运行;密钥只从 macOS Keychain 服务 ai.typesafe.api-key 注入当前子进程,不回显、不写文件:

TYPESAFE_API_KEY="$(security find-generic-password -s ai.typesafe.api-key -w)" \
  node bin/claw-bot-jev-fast-path-demo.js \
  --input examples/jev-fast-path/safe-hallway.json \
  --provider jev \
  --audit /tmp/claw-bot-jev-audit.jsonl

运行三次对照基准:

TYPESAFE_API_KEY="$(security find-generic-password -s ai.typesafe.api-key -w)" \
  node bin/claw-bot-jev-fast-path-benchmark.js --iterations 3

2026-09-22 live 对照结果

环境:jev-1.13.0,14 个场景 × 3 次,共 42 次决策。硬规则命中的 18 次在本地直接裁决,另外 24 次调用 Jev。完整原始结果位于 /Users/longbiao/Local/claw-bot/jev-fast-path-benchmark-2026-09-22.json。

指标 仅硬规则 硬规则 + Jev
精确三态决策准确率 57.1% 69.0%
管线结构化输出可靠性 100% 100%
Jev 调用结构化输出可靠性 不适用 100%(24/24)
升级率 0% 52.4%
误放行率 42.9% 0%
误拦截率 0% 0%
管线平均延迟 0.086 ms 196.39 ms
管线 p50 / p95 0.03 / 0.10 ms 264.12 / 391.23 ms
Jev 调用平均延迟 不适用 343.52 ms
Jev 调用 p50 / p95 不适用 303.31 / 391.69 ms

结果显示 Jev 的主要价值是把硬规则看不懂的语义危险从“误放行”变成“升级”。三个语义危险场景(湿滑地面快速通过、未固定玻璃器皿下楼、人员手部仍在夹爪区)稳定选择 none_or_missing 并升级,而不是直接给出 block;这降低了精确三态准确率,但没有产生误放行。正常观察场景也因证据概率为 0.70–0.78、低于保守阈值 0.80 而升级,说明当前阈值偏保守,且需要用真实运行数据做校准。

基准完成后的单场景 live 验收中,安全走廊动作被正确放行,但一次请求耗时 3.54 秒,明显高于上述基准 p95。该尾延迟是不能把 Jev 放入硬实时路径的直接运行证据;集成时必须设置超时、保持默认不执行,并升级或等待下一决策边界。

局限与下一步

可视化审阅入口

运行 node bin/claw-bot-jev-review.js,打开 http://127.0.0.1:4318 。当前入口为 v2,读取四组对照记录;“运行”会调用已配置的 Jev 与 GPT 服务。新记录保存在 ~/Library/Application Support/claw-bot/jev-review-v2/,可用 CLAW_BOT_JEV_REVIEW_DIR 指定目录。历史初测文件不会自动迁移;没有记录时页面显示等待实测。v1 HTML/JS 保留为历史源文件,不提供运行入口。

预览先调用 robot_status 发现能力,再调用当前 robot_act MCP 工具。状态库限定为 :memory:,环境强制 dry-run,不读取已安装配置或调用控制器。新状态仍为明确标注的模拟输入;未完成生产集成、语音或真机动作验收。这些研究入口保存在仓库中,不属于全局 npm CLI 的发布命令。