这批轴承能不能收
实用外径超了 7 微米 —— 退货、全检,还是让步接收
来料检验站上的判断层。一批货卡在门口,后面的产线在等它。
为什么要快 卸货口的车在计时收费,检验员手里同时有三批货。这个判断慢下来,堵的不是一个人,是整条来料通道。
让步接收的门槛由各家质量体系自己定,这里不给建议,只把那个数算准。
接线长什么样
判断层和计算层之间没有依赖,所以它们并行发 —— 串起来等于白花一个来回。
状态一直在你这边,模型不持有任何东西
合法动作由你的代码生成,模型只在里面挑
3 个问题一次前向答完,不是问 3 次
回来的是选项 + 把握程度,不用再解析文字
需要的那个数随判断一起回来
精确值,带单位,可以逐位核对
执行动作,世界更新
然后进入下一个 tick
当时的情况
一段话,和你真的会拿到的一样
一批深沟球轴承到货 2000 件,抽检 32 件。图纸要求外径 25.000 毫米,单边公差 0.015 毫米。实测均值 25.022 毫米,标准差 0.004 毫米。供应商是合作三年的一供,这批货下游是非承载的导向位,客户没有指定检验等级。产线库存还够 4 小时。
要判断的事
一次问完,回来的是选项和把握程度,不是一段还要再解析的文字
超出公差带多少
- 实测外径均值25.022 mm
- 图纸标称25.000 mm
- 单边公差0.015 mm
展开这一步
#0 = 25.022 mm (实测外径均值) #1 = 25.000 mm (图纸标称) #2 = 0.015 mm (单边公差) d = SUB(#0, #1) a = ABS(@d) over = SUB(@a, #2) result = @over
「超了一点」和「超了 7 微米」是两句话。让步接收的门槛通常写成一个具体数(比如超差 ≤ 10 微米可让步),所以这个差值必须算出来,不能估。
状态一直在你这边,模型不持有任何东西
合法动作由你的代码生成,模型只在里面挑
3 个问题一次前向答完,不是问 3 次
回来的是选项 + 把握程度,不用再解析文字
需要的那个数随判断一起回来
精确值,带单位,可以逐位核对
执行动作,世界更新
然后进入下一个 tick
接进你的系统
下面就是这一页真正发出去的东西。把 state 换成你的场景、criteria 换成你的动作集, 它就是你的了。
POST /v1/systemone
{
"model": "memorylake-c1",
"state": "一批深沟球轴承到货 2000 件,抽检 32 件。图纸要求外径 25.000 毫米,单边公差 0.015 毫米。实测均值 25.022 毫米,标准差 0.004 毫米。供应商是合作三年的一供, …",
"questions": {
"disposition": {
"type": "choice",
"instructions": "这批货怎么处置?",
"criteria": {
"accept": "正常入库",
"concession": "走让步接收,标注后放行",
"sort": "全检挑选,合格的收",
"reject": "整批退货",
"other": "以上都不合适"
}
},
"notify": {
"type": "noul",
"instructions": "是否需要现在就通知供应商?"
},
"risk": {
"type": "score",
"instructions": "放行这批货的质量风险有多高?",
"criteria": [
"低",
"需要留意",
"高"
]
}
}
}回来的是 {answers: {key: {value, probs}}} ——不用再写一个解析器去猜模型想说什么, 也不用为「它这次多说了一句」写兜底。
"超出公差带多少": {
"type": "number",
"unit": "um"
}
→ { "value": ..., "unit": ..., "exact": true }数值问题和其它问题写在同一个 questions 里, 一次请求一起答完。返回的 exact: true 表示 这个值可以直接拿去跟阈值比大小。