Files
3218485270 f493bde8a9 POD 趋势感知 Agent:缓存热点模式 + 三图合成 + 热点去重/风格去重 + review 兜底
- 缓存热点批量流程(有采集缓存不触发 Google)
- 简报不足直接从采集缓存生成(轻量补齐)
- 三图合成(模特/印花/底图)+ 底图压缩 <2MB
- 热点去重→风格去重自动切换 + 不适合类目 review 兜底
- 透明背景(background=transparent)+ 提示词清洗(敏感词/背景描述)
- 任务前 basemap 校验 + 模板国家校验 + 模特任务级分配
2026-08-22 14:14:01 +08:00

8.7 KiB
Raw Permalink Blame History

2026-08-20 工作日志

SPU 增加 mark 字段 + 批量替换固定值

  • SPU 表新增 mark 列(TEXT),全部 59 条 SPU 设为 '1'。
  • 按用户要求用 SQL 批量替换 SPU 15 个字段为统一模板值: pattern=印花、details=无、collar_style=圆领、style=休闲、care_Instructions=数码印花类可机洗且不可干洗、fabric=微弹、target_audience=成人、season=四季、is_transparent=否、layout=H、weaving_method=针织(含钩织、毛织面料)、printing_type=定位印花、fabric_texture_1=光面、fabric_weight_unit_1=g/㎡、lining_texture=无里料/无内衬。
  • 注意:这些字段不再随 PG 数据变化(原 details=english_name、fabric=品类面料、target_audience=美国男装等已被覆盖),sync_from_pg.py 的 SPU 插入已改为 fixed 模板值 + mark='1'。
  • 保留的 PG 映射字段:material20 个唯一值)、component_1~3/比例、fabric_weight_1(克重,如 180/207/270)。
  • create_db.py 的 SPU 定义同步加了 mark 列。重跑验证:SPU 59 / SKU 1400,16 个固定值字段各仅 1 个唯一值。
  • 踩坑:SPU INSERT 的占位符一度写成 27 个 ? 对 26 列(报 27 values for 26 columns),已修正。

component_proportion 字段转百分比

  • SPU 的 component_proportion_1/2/3 由数值(100、100.0、92.0…)改为百分比形式(100%、92%…),空值保持不变。
  • SQLUPDATE SPU SET component_proportion_x = CAST(CAST(component_proportion_x AS REAL) AS INTEGER) || '%' WHERE ... IS NOT NULL AND <> ''(当前值全为整数小数,无精度损失)。
  • sync_from_pg.py 新增 format_pct() 函数(整数值去 .0 加 %,带小数保留,非数字原样),SPU 插入时对 p1/p2/p3 应用。重跑验证:p2 空 33、p3 空 51 保持,格式全部正确。

SPU layout 字段改为"常规"

  • SPU.layout 由 'H' 全部替换为 '常规'59 条),sync_from_pg.py 的 fixed 模板值同步更新。

同步墨西哥货盘数据(替换美国数据)

  • PG plates 表:墨西哥 = plate_id 6(共 17 国,美国 2/3/4/5、日本 7、韩国 8、沙特 9、巴西 10、英国 11、加拿大 12、波兰 13、西班牙 14、德国 15、澳洲 16、意大利 17)。
  • 改造 sync_from_pg.py:顶部常量 PLATE_IDS=(6,) + COUNTRY="MX" 可切换国家;SPU 插入 country 用 COUNTRYSKU 颜色增加 clean_color_name()(去尺码前缀如 'S-3XL黑色'→'黑色')与 is_clean_code()code 须 '品类code-非中文后缀')兜底。
  • 结果:SPU 8 / SKU 123(颜色×尺码粒度),country 全 MX。8 个品类:HM01、MESXT001、METB001、METN001、METP001、PET001、SFB、TBB001。
  • 脏数据兜底:墨西哥 colors 有脏 code'METB001-S-3XL黑色'、'SFB-黑色'),清洗后 code 为 'METB001-黑色'/'SFB-黑色' 等(源库只有中文名、无拉丁编码,故 code 含中文属必然)。
  • 留空:仅 SFB(运动短裤)12 条 SKU 缺 price/package_weight/img_url,因 PG 中 SFB 无 prices 记录、无 product_extra(无 packaging JSON)、无 color_detail_images。SFB 尺码走 size_chart 回退(2 色×6 码)。
  • 注:本步将数据库内容由美国(US)整体替换为墨西哥(MX)——这是错误的,用户要求的是保留 US 再追加 MX。

修正:US + MX 双国累积同步(保留多国数据)

  • sync_from_pg.py 重构为 sync(plate_ids, country, clear_first)
    • clear_first=True 先 DELETE 整库再插入(重置/单国全量);clear_first=False 仅追加,跳过已存在的 SPU code 与 SKU 组合 (spu_id, code, size)。
    • __main__ 顺序执行:sync((2,3,4,5),"US",clear_first=True)sync((6,),"MX",clear_first=False)
  • 结果:SPU 67US 59 + MX 8/ SKU 1523US 1400 + MX 123country 分布 [('MX',8),('US',59)],全部保留。
  • 缺失 price/package_weight/img 共 72 条 = 5000BUS60 条,源库无价格/包装/图)+ SFB(MX12 条,源库无 prices/product_extra/图),属正常留空。
  • 顶部注释已列出全部 17 国 plate_id 映射,后续同步任意国家(如 JP=7/KR=8/GB=11/DE=15)追加进脚本的 __main__ 调用即可,不会覆盖已有数据。

追加同步日本(JP)与英国(GB)

  • JP = plate_id 715 品类,1 个缺 product_extra 走 size_chart 回退);GB = plate_id 1115 品类,其中 4 个 code=NULL 被自动过滤,实际 11 有效品类,均有 product_extra)。
  • __main__ 追加 sync((7,), "JP", False)sync((11,), "GB", False),整库重置顺序:US(全量) → MX → JP → GB(追加)。
  • 结果:SPU 93US59/MX8/JP15/GB11/ SKU 1997US1400/MX123/JP216/GB258,四国数据全部保留。
  • JP 字段填充:color/size 216/216price 204/216package_weight 200/216img 204/216(缺项来自源库无价格/包装/图的品类)。GBcolor/size/price/img 全填,package_weight 238/258shoulder_width 236/258(裤子/裙无肩宽属正常)。
  • 颜色名正常(日文/英文均识别),尺码体系 JP=XSL、GB=SXL,均按颜色×尺码展开。

SKU code 命名规则改为「款号-颜色的英文名」(用户要求)

  • 问题:用户反馈「看不到日本 SKU」——实际 JP 数据齐全(216 条),根因是 JP colors 源数据存在脏 code(中文颜色名+尺码区间拼进 code,甚至整组颜色被拼成一条),旧兜底把它们变成 JPHM009-灰色(S~XXL 这类难看 code,看起来像坏数据。
  • 新规则(sync_from_pg.py):SKU code 规范(品类code-纯字母数字后缀,如 JPHM009-BL01/JPTM007-ESPRESSO)直接用;缺失/脏 code → 款号(品类code)-颜色的英文名
  • 英文名来源:PG color_detail_images.color_name_web(按 color_id 取,如 Black/White/Navy/Apricot);该表无值则用 ZH_TO_EN 中文→英文字典兜底;多色拼接脏名取首个可识别颜色英文名(first_color_en())。
  • is_clean_code() 收窄:后缀须为纯字母数字,含中文/~/() 一律判为脏(修复纯尺码区间假颜色 JPHM009-S~XXXL 被误判规范的问题);纯尺码行 code 仅保留款号,color=NULL。
  • clean_color_name() 增强:额外去掉结尾尺码区间括号(如 灰色(S~XXL灰色)。
  • 全量重跑(先备份 spu_sku.db.bak):SPU/SKU 总数不变(93/1997),JP 残留中文/~ 的 code 由多条降为 0
  • 已知源数据坑JPTM001 的某条 colors 记录把 5 个颜色(白/杏/藏青/灰/粉)拼进同一 code 字段,脚本只能取首个颜色英文名兜底为 JPTM001-White,无法还原成 5 条独立颜色 SKU——需在 PG 侧修源。
  • 结论:加其他国家只需在 __main__ 追加 sync((plate_id,), "国家码", False),命名规则自动生效。

清洗 JPTM001 脏 colors + 重新同步(用户要求"先清洗再导入sku"

  • PG 侧:colors 表 id=357 把 5 个颜色(白/杏/藏青/灰/粉)拼进同一条 code(源数据损坏);其 color_detail_images 本就有 5 个独立颜色(White/Apricot/Deep Navy Blue/Gray/Pink,各 9 图)但 color_id 全为 NULL——脏记录是个未被图片引用的孤儿。
  • 清洗(事务提交):DELETE id=357INSERT 5 条规范 colorscode=JPTM001-WH01/AP01/BE01/GR02/PK01name 中文,size_range=XS-XXXL);UPDATE color_detail_images.color_id 指回新 id(白/杏/藏青/灰/粉 各 9 行 + 黑 9 行全关联成功)。
  • 颜色 code 缩写约定:白=WH01、杏=AP01、藏青=BE01、灰=GR02、粉=PK01(粉色无先例新编 PK01;藏青沿用 JPTM006 的 BE01)。
  • 重跑 sync_from_pg.py 全量:JPTM001 SKU 由 2 色(14 条)→6 色(42 条);全局 SKU 1997→2025(+28)SPU 93 不变。脏 JPTM001-White 长串记录已清除。
  • 注意:四国(US/MX/JP/GB)还存在其它"多色拼接"脏 colors 记录(一条 code 含 ≥2 个颜色,如 DG102/DG120/DG205/DG701/VS002/JSA004/GBHM002/GBTF004 等)。JPTM001 已修,其余待用户决定是否同法清洗(每条需先核 color_detail_images 是否可按独立颜色拆分)。

SKU 尺码字段按国家区分(仅 JP=亚洲,其余=欧美)

  • 用户最初要求 US/JP 改为亚洲尺码,后纠正:US 不改,仅 JP 走亚洲尺码。
  • 最终状态:size_group/size_type —— JP=亚洲尺码/亚洲尺码亚洲常规(244),US/GB/MX=尺码/欧美尺码常规(1781)。全表 SKU 仍 2025。
  • 回滚备份:spu_sku.db.bak_usjpUS+JP 都改错的版本)、spu_sku.db.bak_revert_us(改回 US 后的版本)。
  • 规律:尺码体系与国家挂钩——仅 JP=亚洲尺码亚洲常规,US/GB/MX=欧美尺码常规。后续加国家时按此约定(亚洲市场如 JP/KR 走亚洲,欧美市场 US/GB/MX/DE 走欧美),或写进 sync_from_pg.py 按 country 映射自动填。