飞书产品实物图工作流
目标:把飞书 PIM 中的工程资料转换为可审核的白底产品渲染图,同时确保针数、触点、焊脚、孔位、外壳结构和关键尺寸不被图像模型擅自修改。
输入
优先接受飞书 Base URL 加以下任一定位信息:
- 当前视图中的可见行号;
- 内部型号;
- Product ID 或 record_id。
行号必须按照 URL 指定视图的筛选与排序计算。不可使用全表默认顺序替代视图顺序。
必须存在预览图或实物参考图。只有 2D 图纸时不生成实物图,记录为“缺预览图/实物参考”,等待补充素材。
真源优先级
- 内部型号与产品名称字段:确定具体变体,例如
4P、225。 - 2D PDF 工程图:校验针数、间距、塑胶高度、外形尺寸和关键结构。
- 预览图或实物参考图:锁定产品的真实造型、接触件方向、观察角度、颜色和材质表现;这是图像生成的必需输入。
- 与型号完全匹配的 STEP/STP:可辅助核对外形;附件名或尺寸代码不匹配时不得作为该变体真源。
- 生成模型推断:只允许补足摄影棚灯光、白色背景和轻微阴影,不得自行设计产品结构。
如果预览图的针数或尺寸与内部型号、2D 图纸冲突,以内部型号和 2D 图纸确定变体数量与尺寸,但保持预览图中的产品家族结构、接触件方向和造型语言。无法确定关键结构,或预览图属于其他产品家族时,停止生成并向用户确认。
工作流
1. 读取飞书记录
优先运行:
python3 scripts/fetch_feishu_row.py \
--url '<BASE_URL>' --row <VISIBLE_ROW_NUMBER> \
--out-dir work/source
脚本使用用户身份解析 URL、按指定视图读取该行并下载该记录的全部附件。飞书登录或权限失败时,要求用户在目标环境完成 lark-cli 用户登录,不切换为机器人身份。
也可按内部型号搜索;具体命令见 references/feishu-fields.md。
2. 校验资料
运行:
python3 scripts/validate_record.py work/source/record.json
随后由智能体完成视觉核验:
- 数清预览图中的弹片、针脚、焊脚和槽位;
- 查看 2D PDF 的型号表、尺寸表和结构视图;
- 检查 STEP/STP 文件名中的 P 数、高度代码是否与内部型号一致;
- 记录所有冲突以及最终采用的真源。
PDF 可用 scripts/render_pdf.py 渲染成 PNG 后查看。
缺少预览图
只有 2D PDF、没有预览图或实物参考图时:
- 不生成可发布的实物白底图;
- 不从轴测线条猜测弹片朝向、弯折方式、孔洞或隐藏结构;
- 输出缺失项,要求补充预览图、供应商效果图或至少一张实物照片;
- 2D 图纸仍可用于后续数量和尺寸校验。
3. 生成白底实物图
使用目标智能体可用的高保真图片生成/编辑模型;如果环境中提供 Image2,则使用 Image2。将预览图和 2D 图纸渲染页作为不同角色的参考输入:预览图锁定家族外观、方向和材质,内部型号与 2D 图纸锁定具体变体、数量和尺寸。
读取 references/image-prompt.md 构造提示词,并明确写出:
- 精确产品型号;
- 恰好多少个顶部触点、前端焊脚和 housing channels;
- 间距、塑胶高度和图纸中的关键尺寸;
- 哪张参考图存在错误以及必须忽略的部分;
- 禁止增加、删除、复制或变形任何结构。
默认外观:纯白无缝背景、轻微自然接触阴影、三分之四前上视角。颜色必须接近真实电商摄影:黑色塑胶为柔和的炭黑/深灰黑哑光,不压成死黑;金属采用低饱和浅金或香槟金,保留自然磨砂和轻微使用痕迹,不使用高饱和橙金、镜面黄金或夸张3D高光。若预览图或实物参考另有颜色,以参考图为准。
4. 验收
生成后必须逐项核对:
- 型号与目标记录一致;
- 针数、弹片、焊脚、孔位和槽位数量一致;
- 外壳分隔、开口和侧壁结构一致;
- 没有 AI 新增纹理、裂缝、螺丝、孔洞或金属件;
- 白底干净,产品边缘完整;
- 图片不包含尺寸文字、虚假认证或未经确认的参数。
一次生成未通过时,只针对具体错误重做。连续两次仍不能保持关键结构时,停止图像推断,改用匹配型号的 STEP/STP 确定性渲染或要求补充资料。
5. 白底图交付
当前工作流只输出干净的无水印白底图:不添加 Logo、品牌角标、文字、参数或装饰边框。Logo 版本不属于当前流程;用户以后明确提出时再作为独立后处理任务执行。
默认只输出本地审核图。只有用户明确要求“回填飞书”时,才把通过审核的图片上传到目标附件字段;不得覆盖 2D 图纸、3D 图或预览图真源。
输出记录
每次输出同时报告:
- 飞书 record_id、内部型号与可见行号;
- 使用的真源文件;
- 发现的资料冲突;
- 结构核验结果;
- 本地图片路径;
- 是否已经回填飞书。