拼豆图纸识别
唯一任务:把图纸上的图例条读成结构化结果,吐出来。
不管色卡、不管库存、不写飞书、不做消耗计算 —— 那些都是下游的事,本技能一概不碰。
一、只读图例条
图例条通常在图纸底部(也见过在侧边),形如:
■H17 1544 ■A1 172 ■B3 96 … ← 色块 + 色号 + 颗数
不要数格子。 逐格数颜色是另一条路(颜色通道),本技能不走。
二、硬规则
| 规则 | 说明 |
|---|---|
| 照抄,不推算 | 数字以印在纸上的为准,不拿「大概是」去补 |
| 原样写,不改写 | 看到 A1 就写 A1,看到 A01 就写 A01、看到小写就写小写 —— 不补零、不纠正、不对齐色卡 |
| 不猜 | 拿不准的标出来(见第四节),绝不填个估的数字充数 |
| 保留原始顺序 | 按图例条从左到右、从上到下,方便用户逐格核 |
| 无图例就停 | 有些图纸没印图例 → 停下告诉用户,不要自己数格子编一份 |
| 单位是「颗」 | 不是克、不是包、不是行数 |
三、输出契约(本技能的唯一交付物)
一份 JSON:
{
"legendFound": true, // 必给。false = 没找到图例条 → App 直接拦
"total": 7736, // 可选,数字。留档用(App 导入不读它,见下)
"printedNumber": "Mard(7736)", // 可选,原文照抄,App 不解析(只备查)
"colors": [ // 必填、非空
{ "code": "H17", "count": 1544 },
{ "code": "A1", "count": 172 }
],
"uncertain": [ // 可选,App 只取 code 当"待核"标记
{ "code": "H3", "count": 700, "candidates": [700, 760], "note": "7/6 难分" }
],
"notices": [ "识别色数: 30 色" ] // 可选,App 不解析
}
legendFound—— 必给。false = 没找到图例条 → App 直接拦。找不到时且colors为[]。total—— 可选,数字。图纸标称或合计总颗数。App 导入并不读它(2026-10-13 用户口径
「导入只取 color 那个数组,其它数据源不要改」),吐出来纯属留档给人核。printedNumber—— 可选,原文照抄,App 不解析(只备查)。colors—— 必填、非空。逐格原样列出,顺序 = 图上顺序。uncertain—— 可选,App 只取 code 当"待核"标记。凡不是 100% 确定的格子都必须列出候选与原因。notices—— 可选,App 不解析。读图时看到的事实(如["识别色数: 30 色"])。
> 图纸名、尺寸、来源等图上读不出来的信息一律留空,不要编 —— 命名不是识别。
> ⚠️ 这份 JSON 本身就是落库契约:App 的「图纸 → 导入 JSON」原样吃这一份,
> 不需要(也不要)转写成别的字段名。App 侧对每个字段的用法见 references/output-contract.md。
>
> 但要知道 App 的导入只采纳 colors(和 uncertain 的 code) —— 名称、图片、尺寸
> 这些"图纸身份"由人在 App 里给,识别结果改不动它们(这是 App 侧的硬约束,不是可选建议)。
四、什么算「拿不准」(就标出来)
- 数字笔画粘连 / 太小:原图数字高度 ≲ 10px 时,
6/8/9/0、1/7、3/5极易混 - 字形相近的色号字母:
H/K、E/F、G/C、B/8 - 同一色号出现两次 —— 可能是真重复,也可能是某一格看错了:两种都列出来,不要自己合并
- 反光、压边、折痕、遮挡导致某格看不清
判断手段:放大到原始像素再看(放大不改变像素,只是看得见)。仍然分不清 → 进 uncertain。
五、边界(明确不做)
- ❌ 不调飞书、不写库 —— 落库是别处的事,与本技能无关
- ❌ 不核色卡 —— 不判断色号存不存在、不纠正格式
- ❌ 不做总量校验、不裁决「和标注对不上」—— 只把
printedNumber原样记下,差值交给人 - ✅ 读不准就标出来,交给用户自己对
六、报给用户
结果贴出来时,先说清三件事:
- 读到几色、合计几颗
uncertain里的每一条(逐条列:哪一格 / 拿不准什么 / 候选是什么)—— 这是重点- 有没有
notices(图上看到的异常)
参考资料
按需读取,不必预先加载:
references/generic-prompt.md—— 把本技能摊平成可直接粘贴的提示词,给只支持图片输入、没有技能体系的 AI(GPT / Claude / Gemini / 豆包 / 通义…)用。references/output-contract.md—— 落库契约(贴回 App「图纸 → 导入 JSON」的字段说明)与后端单轮接口形态。references/pitfalls.md—— 已知的坑对照表(调试时查)。