fix(viral_video): VLM outfit回填服装关键词扩充 (#2188) #2192

Merged
xiaoxia merged 1 commits from fix/vlm-outfit-keywords-hair into develop 2026-10-05 13:51:02 +08:00
Owner

问题

staging 3张真人模特图 VLM E2E发现:2张图的portrait_prompt显示「身着日常服装」(outfit回填未命中),原因是 _cloth_kws 关键词列表缺少「上衣/打底衫/罩衫/雪纺衫/西服/套装/网纱/短袖/长袖/无袖」等常见服装词。VLM实际输出的product.name(「男士白色V领上衣」「黑色透视网纱短袖上衣」)无法匹配。

修改

  1. _cloth_kws 扩充到40+关键词,按类别分组(衬衫T恤/毛衣卫衣/外套风衣/裙装/裤装/制服/通用上装词)
  2. 提取窗口 ci-8/ci+4 → ci-12/ci+8,向前多抓颜色/材质形容词,向后多抓款式词
  3. 去重(旧列表里「马甲/背心」重复)

验证

3张真人模特图 E2E 结果:

  • 3/3图全部识别成功(无「未识别·无法判断」,_source=xml)✅
  • 3/3 portrait_prompt 正确有人物性别/年龄/表情/姿态 ✅
  • 1/3(红裙女)outfit正确回填「红色花卉刺绣无袖V领中长款连衣裙」✅
  • 2/3(白T恤男/黑网纱女)outfit回填失败→「日常服装」,本次修复
  • 总耗时约95s(3图并行2 worker,lite-first)

PR合入后需运维重建staging worker再重跑E2E验证所有3图outfit都正确回填。

## 问题 staging 3张真人模特图 VLM E2E发现:2张图的portrait_prompt显示「身着日常服装」(outfit回填未命中),原因是 _cloth_kws 关键词列表缺少「上衣/打底衫/罩衫/雪纺衫/西服/套装/网纱/短袖/长袖/无袖」等常见服装词。VLM实际输出的product.name(「男士白色V领上衣」「黑色透视网纱短袖上衣」)无法匹配。 ## 修改 1. _cloth_kws 扩充到40+关键词,按类别分组(衬衫T恤/毛衣卫衣/外套风衣/裙装/裤装/制服/通用上装词) 2. 提取窗口 ci-8/ci+4 → ci-12/ci+8,向前多抓颜色/材质形容词,向后多抓款式词 3. 去重(旧列表里「马甲/背心」重复) ## 验证 3张真人模特图 E2E 结果: - 3/3图全部识别成功(无「未识别·无法判断」,_source=xml)✅ - 3/3 portrait_prompt 正确有人物性别/年龄/表情/姿态 ✅ - 1/3(红裙女)outfit正确回填「红色花卉刺绣无袖V领中长款连衣裙」✅ - 2/3(白T恤男/黑网纱女)outfit回填失败→「日常服装」,本次修复 - 总耗时约95s(3图并行2 worker,lite-first) PR合入后需运维重建staging worker再重跑E2E验证所有3图outfit都正确回填。
xiaoxia added 1 commit 2026-10-05 13:47:41 +08:00
fix(viral_video): #2188 VLM outfit回填服装关键词扩充
CI/CD Pipeline / Check if frontend-only change (push) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (push) Successful in 2s
CI/CD Pipeline / Check push changed paths (push) Successful in 17s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 28s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 47s
CI/CD Pipeline / Frontend Lint (push) Has been skipped
CI/CD Pipeline / PR Build API Image (push) Has been skipped
CI/CD Pipeline / PR Build Web Image (push) Has been skipped
CI/CD Pipeline / PR Build Worker Image (push) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m51s
CI/CD Pipeline / Build Staging API Image (push) Successful in 33s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m21s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been skipped
CI/CD Pipeline / Validate - Python (mypy + alembic) (push) Successful in 3m47s
CI/CD Pipeline / Integration Tests (push) Successful in 3m40s
CI/CD Pipeline / Build Staging Web Image (push) Successful in 2m54s
CI/CD Pipeline / Validate - Style (push) Has been cancelled
CI/CD Pipeline / Build Staging Worker Image (push) Has been cancelled
CI/CD Pipeline / Retag skipped Staging API Image (push) Has been cancelled
CI/CD Pipeline / Retag skipped Staging Web Image (push) Has been cancelled
CI/CD Pipeline / Retag skipped Staging Worker Image (push) Has been cancelled
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Has been cancelled
CI/CD Pipeline / Staging E2E Tests (push) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (push) Has been cancelled
CI/CD Pipeline / Build Production API Image (push) Has been cancelled
CI/CD Pipeline / Build Production Web Image (push) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (push) Has been cancelled
CI/CD Pipeline / Deploy Production (push) Has been cancelled
CI/CD Pipeline / Production Browser E2E (push) Has been cancelled
CI/CD Pipeline / ACR Image Cleanup (push) Has been cancelled
CI/CD Pipeline / Canary Release to Production (push) Has been cancelled
CI/CD Pipeline / CI Gate (push) Has been cancelled
CI/CD Pipeline / Validate - Security (push) Has been cancelled
CI/CD Pipeline / Unit Tests (push) Has been cancelled
CI/CD Pipeline / Frontend Unit Tests (push) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Security (pull_request) Successful in 9m45s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m16s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 4m22s
CI/CD Pipeline / Validate - Style (pull_request) Failing after 4m25s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 47s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 1m50s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m23s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Failing after 2s
77133eb9a0
- 原 cloth_kws 漏了'上衣/打底衫/罩衫/雪纺衫/西服/套装/网纱/短袖/长袖/无袖'等常见词,
  导致'白色V领上衣''黑色透视网纱短袖上衣'等未命中,回退到通用'日常服装'
- 扩充到40+关键词,覆盖衬衫/T恤/毛衣/外套/裙装/裤装/制服/通用上装词
- 提取窗口 ci-8/ci+4 → ci-12/ci+8,向前多抓颜色/材质形容词,向后多抓款式词
- 重复词(马甲/背心)清理
xiaoxia merged commit 77133eb9a0 into develop 2026-10-05 13:51:02 +08:00

🗑️ 预览环境已清理

PR #2192 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #2192 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。

🚀 预览环境已部署

项目 详情
PR号 #2192
预览链接 https://pr-2192.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #2192 | | 预览链接 | [https://pr-2192.preview.xiaoxiajianji.com](https://pr-2192.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
Sign in to join this conversation.