SIM模拟数据。本站所有分数、比率与价格均为示意。
Instrument
EN 联系

Judge API

给开发者:发一个 run,$0.60 拿回判分结论和系数表里的一行。

看 API 规格

进来一个 run,出去一个结论

角色 C · Judge API一次 $0.60 的调用里发生的事
输入
一个 run bundle:3 路视频 + 关节/力矩流 + 11 项归因元数据
输出
attempt / success / failure_class / 两个置信度,以及公共表里的一行
成本 · 标价
$0.181 · $0.60 → 毛利 69.8% i
规模
OpenAPI 3.1 · 25 个端点 · 4 个 webhook 事件 · 58 个完整定义的 schema

七步,没有一步要人在场

七步 · 一眼看完

一次 $0.60 调用的成本构成 示意

七步里没有一步需要 operator 在场。格子的产能锁在人身上,判分器的产能锁在 GPU 上,所以它应该定得很便宜。i
七步细节 目标值
  1. 1收单 · 校验校 bundle 哈希 + 11 项归因字段完整性。缺一项直接拒收。 i~40 ms
  2. 2抽帧接触事件附近密采 i~1.2 s
  3. 3三模型集成判分三个 VLM 各自独立给结论。attempt 与 success 分两次问,永不合并。$0.13 · ~6 s
  4. 4表决 + 两个置信度多数表决,attempt_confidence 与 success_confidence 分列 i~10 ms
  5. 5写三本账judgments 记判分器,operator_labels 记人,runs 只记发生了什么。两者不一致 → 进校准集。~25 ms
  6. 6归并公共表匿名行进 coefficients。n < 40 的格子不出数,显示 insufficient异步
  7. 7计量按次计费,并记录该 key 的 rights_granted i$0.60

每一次分歧都让判分器更准

↺ 回流:"递归"真正的位置
第 5 步攒下的分歧集 → 训练 rc-judge-v2 → 可以对全部历史 run 重判。i
每跑一次,变准的是仪器,不是机器人。

一次调用,两个分开的答案 示意

请求体
# 归因字段必填 —— 缺一项就拒收
POST /v1/judgments
Authorization: Bearer rck_live_…
Idempotency-Key: 8f2a41-01

{
  "bundle_uri": "gs://rc-runs/8f2a41/",
  "policy": { "vendor":"example-lab", "name":"policy-a",
              "version":"6.0.2", "checkpoint":"sha256:9f3c…" },
  "body":   { "arm":"xArm7", "hand":"WujiHand2", "dof":20,
              "mount_h_mm":740, "calibrated_at":"2026-09-16" },
  "task":   { "id":"tabletop.pick_place.mug_022", "tier":"A" },
  "env":    { "lighting_k":4200, "clutter":3, "friction_mu":0.42 },
  "seed":   "0x5F3A9C21",
  "reset":  { "type":"manual", "seconds":42, "operator_min":2.4 },
  "judge":  "rc-judge-v1"
}
200 OK
{
  "judgment_id": "jd_5c19",
  "attempt": true,              // 语言层属性 —— 永远单独返回
  "success": false,             // 身体层属性 —— 永远单独返回
  "failure_class": "grasp.slip",
  "counts_against_policy": true,  // 查分类法得到,不是硬编码名单
  "attempt_confidence": 0.91,
  "success_confidence": 0.86,
  "charged_to": { "rcsn": null, "cell_id": "cell-sf-03" },
  "judge_version": "rc-judge-v1",
  "table_row_id": "cf_4471"
}

三条靠结构守住的线

没有 POST /v1/attestations

背书在 API 里只读,签发在线下:这个端点根本不存在。i

B 档抗差分攻击:k = 5

每格至少 5 道题,不返回 task_id;查询太窄时服务端自动放宽而不是拒绝。i

排除规则查分类法,不查名单

54 类里有 20 类不计策略分,而且会随晋升变多。i

另外两条

B 档隔离要做到连接级,不是查询级。如果隔离依赖于「查询时不要 SELECT 那几列」,一个 ORM 里的 SELECT * 就能漏掉一道 B 档题。正确做法是 Judge API 用一个在那四个内容列上完全没有权限的数据库角色连接,让它想漏也漏不出来。

未分类不等于豁免。一次失败如果 failure_class 为空,照样计入策略分。否则「不打标签」就成了免费的分母缩水:谁都可以靠拒绝归因把自己的成功率做上去。