""" 27 个抽象 strategy pattern 定义 + 193 条具体 strategy 的分类映射。 用 (req_id, is_selected) 作为主键;REQ_034 / REQ_059 有多 alt,用 strategy_id 消歧。 """ # ═══════════════════════════════════════════════════════════ # Pattern 定义 # ═══════════════════════════════════════════════════════════ PATTERNS = [ # A 类:生成驱动 ('P01', '结构化提示词单步直出套路', 'A', '精心构造单一 prompt(五维度/JSON/分段结构),一次性生成完整产出。无多节点工作流,依赖模型的深度语义理解。'), ('P02', 'Midjourney 风格码参数驱动套路', 'A', '利用 Midjourney 的 --sref / --oref / --cref 等风格参考码锚定画面风格或主体,批量生成变体。'), ('P03', 'Nano Banana / Gemini 多模态单模型直出套路', 'A', 'Nano Banana Pro 或 Gemini 3 的多模态能力,在单模型内完成图像理解+生成+编辑。'), # B 类:工作流/管线 ('P04', 'Coze 工作流编排全自动套路', 'B', 'Coze 平台可视化节点串联 LLM→文案→批量生图→抠图→拼合,零代码全自动。'), ('P05', 'ComfyUI 节点链精控套路', 'B', 'ComfyUI 里 ControlNet / IP-Adapter / LoRA / KSampler 节点组合,高度可定制。'), ('P06', 'Lovart / 一站式 AI 设计平台套路', 'B', 'Lovart、Canva AI 等一站式 AI 设计平台的 end-to-end 方案,低门槛模板化产出。'), ('P07', 'QA 闭环自动优化套路', 'B', 'LLM 生成 → QA Agent 自动评分 → 迭代优化到满分,典型 HTML/CSS 输出 + Puppeteer 截图。'), # C 类:参考图/素材驱动 ('P08', '参考图垫图控制套路', 'C', '上传参考图作为 AI 生成的锚点(风格/主体/构图),保留参考图关键特征。'), ('P09', '双图融合虚拟试穿套路', 'C', '双图输入(主体图 + 目标图),AI 完成融合/替换/换装。典型 CatVTON / IDM-VTON 工作流。'), # D 类:主体一致 + 变装/变景 ('P10', 'IP 系列化角色一致性套路', 'D', '锁定角色 IP(毛色/服饰/特征),批量产出同角色在不同场景/情绪/姿态下的图片。'), ('P11', '图生图局部重绘套路', 'D', 'Inpaint 蒙版重绘局部区域,主体其他部分保持;特别用于手部、服饰、物品替换。'), ('P12', 'Character Sheet 多视角参考表套路', 'D', '一次生成正背侧多视角参考表,作为后续多场景生成的 visual anchor。'), # E 类:分层合成/拼贴 ('P13', '多图层分层合成套路', 'E', '分别生成底图/人物/光效/文字,再在画板/PS/ComfyUI 逐层合成。'), ('P14', '智能抠图 + 拼贴排版套路', 'E', 'BiRefNet / RMBG 自动抠主体 → 多主体按布局拼贴为画板/长图/九宫格。'), ('P15', '网格/分镜一次性直出套路', 'E', '一个 prompt 直接生成九宫格/25宫格等完整网格图,而非分开生成再拼。'), # F 类:视频/动态 ('P16', '图生视频动态化套路', 'F', '静态图作为首帧/尾帧,用 Runway/Kling/Seedance 等生成动态视频。'), ('P17', '多镜头故事视频全链路套路', 'F', 'LLM 写脚本 → 分镜 → 批量生图 → 图转视频 → 拼接成完整故事视频。'), ('P18', '唇形同步视频套路', 'F', '静态人像 + 音频 → 唇形同步动画视频(Hedra, Wav2Lip, HeyGen, LivePortrait)。'), # G 类:光影色调 ('P19', '戏剧性光影与 Chiaroscuro 套路', 'G', '低调光、明暗对照、单光源聚焦,Rembrandt/Butterfly 等专业布光。'), ('P20', '色调锚定与胶片质感套路', 'G', '锁定主色调(暖调/冷调/单色),叠加胶片颗粒/柔焦/LUT 等光学质感。'), ('P21', '多光源分层打光套路', 'G', '主光/辅光/轮廓光/氛围光分层规划,模拟摄影棚或电影级布光。'), # H 类:空间/透视 ('P22', '空间透视与广角畸变套路', 'H', '消失点、广角/鱼眼、仰拍俯拍、荷兰角等特殊透视控制。'), ('P23', '360 全景/VR 生成套路', 'H', 'equirectangular 投影、2:1 比例、无缝球形全景。'), # I 类:材质/质感 ('P24', '专业摄影级材质质感套路', 'I', '摄影参数模拟 + 材质关键词(毛绒/石材/木纹/金属/玻璃)精准描述。'), ('P25', '人像皮肤 + 去 AI 感套路', 'I', '皮肤纹理/瑕疵/毛孔/次表面散射,消除塑料感,达到真实摄影级自然质感。'), # J 类:文字/排版 ('P26', 'AI 图内文字渲染 + 排版套路', 'J', '利用 GPT-Image / Nano Banana 直接在画面中渲染文字,无需后期叠加。'), ('P27', '数据驱动模板化套版套路', 'J', '数据表(CSV/JSON/Excel)作为输入源,填入预设模板,批量产出同结构异内容。'), ] PATTERN_NAME = {pid: name for pid, name, _, _ in PATTERNS} PATTERN_CAT = {pid: cat for pid, _, cat, _ in PATTERNS} PATTERN_DESC = {pid: desc for pid, _, _, desc in PATTERNS} # ═══════════════════════════════════════════════════════════ # 具体 strategy 到 pattern 的映射 # ═══════════════════════════════════════════════════════════ # 第一层:用 strategy_id 直接映射(针对多 alt req 或需特殊归类的) STRATEGY_ID_OVERRIDES = { # REQ_034 的 3 条(selected + 2 alts) 'strategy-3d9f49e4': 'P01', # 纯提示词驱动路线 'strategy-b328e670': 'P08', # 参考图复刻路线 'strategy-d7adce07': 'P13', # 混合素材增强路线(实景+AI分层合成) # REQ_059 的 3 条 'strategy-3d86771b': 'P22', # 鱼眼镜头夸张变形 'strategy-dfca9a9b': 'P22', # 极端仰拍透视冲击 'strategy-99acc1d0': 'P23', # 球形全景360度 } # 第二层:(req_id, is_selected) -> pattern # 覆盖单 alt reqs。多 alt reqs 的 entries 会在 classifier 里先走 STRATEGY_ID_OVERRIDES REQ_SEL_MAPPING = { # ────── P01 结构化提示词单步直出 ────── ('REQ_001', True): 'P01', # 3D夸张风格路线 ('REQ_006', True): 'P01', # 提示词驱动一步直出 ('REQ_015', True): 'P01', # 多阶段精准控制流派 ('REQ_015', False): 'P01', # 单阶段精准提示词文生图 ('REQ_024', True): 'P01', # 直接生成路线 ('REQ_025', True): 'P01', # 提示词工程直接生成 ('REQ_033', True): 'P01', # 极简单步 AIGC 叠加 ('REQ_043', True): 'P01', # 蓝图A:纯AI自动生成 ('REQ_055', True): 'P01', # 提示词驱动极端特写 ('REQ_058', True): 'P01', # 结构化Prompt五维度直出 ('REQ_064', True): 'P01', # 高水准氛围插画 ('REQ_083', True): 'P01', # 提示词工程驱动 ('REQ_085', True): 'P01', # 提示词驱动单色调场景 ('REQ_086', True): 'P01', # AI提示词驱动多色并置 ('REQ_087', True): 'P01', # 禅意极简水墨 ('REQ_088', True): 'P01', # 诗意提示词驱动·单图超现实 ('REQ_098', True): 'P01', # 纯AI图文一体生成 # ────── P02 Midjourney 风格码 ────── ('REQ_061', True): 'P02', # 风格锁定直出路线 --sref ('REQ_067', False): 'P02', # 提示工程驱动的梦境逻辑路线 MJ ('REQ_002', True): 'P02', # 人物×道具精准绑定路线(MJ --oref) ('REQ_037', True): 'P02', # 多姿态拼贴路线 JSON × Nano Banana Pro # ────── P03 Nano Banana 多模态单模型 ────── ('REQ_009', False): 'P03', # AI生成式拼贴工作流 ('REQ_017', True): 'P03', # 基于ControlNet的多人姿态迁移 ('REQ_031', True): 'P03', # Strategy-031 (真人→蟑螂人 via Nano Banana) ('REQ_033', False): 'P03', # 双工具协作精细化(Nano Banana + Firefly) ('REQ_049', True): 'P03', # 提示词直出网格路线(NanoBananaPro/即梦) ('REQ_084', True): 'P03', # 文本直驱全景生成(DiT360/混元3D) # ────── P04 Coze 工作流 ────── ('REQ_010', True): 'P04', # 工作流驱动模块化组装法 ('REQ_030', False): 'P04', # 工作流自动化批量(Coze+DeepSeek) ('REQ_045', True): 'P04', # AI脚本驱动·批量生图·文字嵌入·宫格自动排版 ('REQ_046', True): 'P04', # 全自动 Coze 工作流 ('REQ_074', True): 'P04', # AI提示词驱动全自动食材百科 ('REQ_079', False): 'P04', # 豆包Seedream提示词生图流派 ('REQ_080', True): 'P04', # Canva AI 数据驱动全链路自动化 # ────── P05 ComfyUI 节点链精控 ────── ('REQ_007', True): 'P05', # 高保真写实路线 realisticVisionV51 ('REQ_017', False): 'P05', # 基于3D姿态参考的多人动态生成 ('REQ_049', False): 'P05', # ComfyUI工作流精控网格 FLUX-Klein ('REQ_051', True): 'P05', # 工业化路线:角色资产先行+分镜批量 ('REQ_055', False): 'P05', # 垫图+LoRA精准控制 ('REQ_058', False): 'P05', # 3D白模参考图ControlNet引导 ('REQ_062', False): 'P05', # ComfyUI 节点化工作流精准控制 ('REQ_073', True): 'P05', # 高精度全自动 ComfyUI Flux 深度控制 ('REQ_080', False): 'P05', # ComfyUI 工作流批处理 ('REQ_094', False): 'P05', # ControlNet精准光影约束 # ────── P06 Lovart 一站式 ────── ('REQ_021', False): 'P06', # Lovart AI 全流程一站式 ('REQ_040', True): 'P06', # 全自动批量语义驱动 Lovart+Nano Banana ('REQ_050', True): 'P06', # 结构化信息图混排全自动化 ('REQ_050', False): 'P06', # AI提示词驱动混合媒体拼贴 # ────── P07 QA 闭环 ────── ('REQ_081', True): 'P07', # AI全自动图层合成流派(品牌规则+QA闭环) ('REQ_092', True): 'P07', # AI驱动HTML信息图全自动生成 ('REQ_099', False): 'P07', # 结构化提示词驱动--变量锚点+字体层次 ('REQ_099', True): 'P07', # 全自动化 AI 管线--品牌规则+QA 闭环 # ────── P08 参考图垫图控制 ────── ('REQ_025', False): 'P08', # 人物固定+多角度换装 ('REQ_042', True): 'P08', # 参考图引导生成(版式迁移) ('REQ_056', False): 'P08', # 参考图驱动型人脸一致性近景 ('REQ_063', False): 'P08', # HEX 色板精准定调 + LUT 模板 ('REQ_065', True): 'P08', # 极速直出路线:精准配色锚点 ('REQ_065', False): 'P08', # 参考图驱动:GPT反向读图 ('REQ_082', True): 'P08', # 参考图像锁定(Nano Banana Pro/Qwen) # ────── P09 双图融合虚拟试穿 ────── ('REQ_016', True): 'P09', # 双图垫图融合 + 手部专项修复 ('REQ_022', True): 'P09', # 静态写真精准换装 ('REQ_023', False): 'P09', # 纯图像超现实错位穿戴 ('REQ_028', True): 'P09', # AI人宠合照专业模型 ('REQ_029', True): 'P09', # 精准叠合:AI主体抠图+姿态锚点+局部重绘 ('REQ_032', True): 'P09', # CatVTON局部重绘保面部 # ────── P10 IP 系列化 ────── ('REQ_001', False): 'P10', # 写实高精度路线:人脸身份锁定+情绪矩阵prompt库 ('REQ_027', True): 'P10', # 系统化三要素精细控制 ('REQ_027', False): 'P10', # 轻量级提示词驱动路线 ('REQ_068', True): 'P10', # 高精度拟人化四层结构流派 ('REQ_068', False): 'P10', # 快速批量出图(场景×情绪矩阵) ('REQ_071', True): 'P10', # 统一IP系列化批量生产 ('REQ_071', False): 'P10', # 单图精品直出流派 # ────── P11 图生图局部重绘 ────── ('REQ_024', False): 'P11', # 分步合成路线(生成底图后局部重绘头部) ('REQ_026', False): 'P11', # AI换装路线(真实宠物照片,局部重绘) ('REQ_026', True): 'P11', # AI文生图路线(从零生成) — 按方法归 P11 ('REQ_029', False): 'P11', # 风格统一 IP-Adapter + 图生图重绘 ('REQ_072', False): 'P11', # 高一致性图生图局部重绘 # ────── P12 Character Sheet 多视角 ────── ('REQ_037', False): 'P12', # 动态抓拍 MJ V7 Character Sheet ('REQ_051', False): 'P12', # 轻量直出:单Prompt多格叙事 ('REQ_082', False): 'P12', # 结构化提示词(专业分镜术语) ('REQ_083', False): 'P12', # LoRA精确角度控制坐标系量化 ('REQ_091', True): 'P12', # 3D场景叙事表情包 ('REQ_091', False): 'P12', # 多表情一致性表情包 # ────── P13 多图层分层合成 ────── ('REQ_005', True): 'P13', # 沉浸式花卉穹顶婚礼场景--三层立体空间 ('REQ_005', False): 'P13', # 中式节日庆典喜庆场景--红金配色书法字牌 ('REQ_008', True): 'P13', # 纯AI一键合成:人物→微缩场景融合 ('REQ_008', False): 'P13', # 场景定制增强路线 ('REQ_019', True): 'P13', # 直接融合生成路线 ('REQ_019', False): 'P13', # 分层合成精修路线 ('REQ_021', True): 'P13', # AI文生图 + 多元素分层合成 ('REQ_041', True): 'P13', # AI 智能拼贴叙事流派(主线) # ────── P14 智能抠图 + 拼贴 ────── ('REQ_009', True): 'P14', # 模板化自动拼贴工作流 ('REQ_028', False): 'P14', # AI图生图场景融合路线 ('REQ_039', True): 'P14', # 多视角生活拼贴自动化 ('REQ_041', False): 'P14', # 结构化叙事长图流派 ('REQ_044', True): 'P14', # 路线A:提示词驱动的图文一体化 ('REQ_044', False): 'P14', # 路线B:AI智能后处理叠加 ('REQ_052', True): 'P14', # 结构化网格拼贴流派 ('REQ_052', False): 'P14', # 叙事性场景拼贴 Bento-grid # ────── P15 网格/分镜一次性直出 ────── ('REQ_030', True): 'P15', # 单图驱动九宫格全自动生成 ('REQ_010', False): 'P15', # 提示词驱动一步生成法 ('REQ_032', False): 'P15', # 轻量提示词驱动 Google Whisk AI ('REQ_067', True): 'P15', # 极简符号化超现实路线:五维咒语 × 多主体场景 ('REQ_070', True): 'P15', # Strategy-070 (25 宫格高密度) ('REQ_045', False): 'P15', # 长文自动分页为图片序列 # ────── P16 图生视频动态化 ────── ('REQ_022', False): 'P16', # 动态故事动画流派 ('REQ_023', True): 'P16', # 图转视频动态错位穿搭 ('REQ_038', False): 'P16', # 动态视频生成 AI 文生视频 ('REQ_088', False): 'P16', # 宇宙视角缩放·人物分层合成(含动态) # ────── P17 多镜头故事视频 ────── ('REQ_003', True): 'P17', # 多镜头拟人化故事视频全链路 ('REQ_003', False): 'P17', # 精品单图拟人化角色生成 # ────── P18 唇形同步(本次数据稀少,归并入 P17 也可;先独立保留)────── # (本次数据里没有单独唇形同步 strategy,此 pattern 保留作为未来占位) # ────── P19 戏剧性光影 Chiaroscuro ────── ('REQ_014', True): 'P19', # 分层精控路线--深色底图×霓虹光效 ('REQ_014', False): 'P19', # 提示词直出路线--配色锁定 ('REQ_062', True): 'P19', # Strategy-062(暗调点睛) ('REQ_089', True): 'P19', # 场景主导型科技活动海报(霓虹强化) ('REQ_094', True): 'P19', # 戏剧性光影对比(侧光/逆光/硬光) # ────── P20 色调锚定与胶片质感 ────── ('REQ_013', True): 'P20', # AI图文生成+色调控制 ('REQ_013', False): 'P20', # AI插画生成+排版合成 ('REQ_063', True): 'P20', # 主色调锚定+色彩脚本分层+胶片氛围 ('REQ_064', False): 'P20', # 快速全自动管线路线(胶片质感) ('REQ_076', True): 'P20', # MidJourney 颗粒质感 + 纸张底图 ('REQ_076', False): 'P20', # Risograph 孔版印刷风格 # ────── P21 多光源分层打光 ────── ('REQ_095', True): 'P21', # 多光源分层打光三阶段 ('REQ_095', False): 'P21', # AI提示词直出策略 ('REQ_096', True): 'P21', # 体积光+霓虹双色对比 # ────── P22 空间透视与广角畸变 ────── ('REQ_060', True): 'P22', # 水面倒影嵌套镜像 ('REQ_060', False): 'P22', # 悬空矩形框画中画 ('REQ_084', False): 'P22', # 超宽画幅空间营造 # ────── P23 360 全景 ────── ('REQ_093', True): 'P23', # 结构锁定 x 风格迁移一体化路线 ('REQ_093', False): 'P23', # 从零构建:平面图到3D空间 # ────── P24 专业摄影级材质质感 ────── ('REQ_036', True): 'P24', # 工作室级产品摄影 ('REQ_036', False): 'P24', # 高端产品爆炸图信息图 ('REQ_057', True): 'P24', # 精准材质特写:镜头×材质×质量校验 ('REQ_057', False): 'P24', # 高端产品广告级特写 ('REQ_066', True): 'P24', # Strategy-066 (暖色调室内材质) ('REQ_077', True): 'P24', # 照片级材质生成(PBR技术) ('REQ_077', False): 'P24', # 场景级材质替换路线(AI图像生成+风格迁移) ('REQ_090', True): 'P24', # 精准还原--三要素全命中五阶段 ('REQ_090', False): 'P24', # 氛围优先路线--禅意基底 # ────── P25 人像皮肤 + 去 AI 感 ────── ('REQ_007', False): 'P25', # 结构化提示词抓拍路线 ('REQ_018', True): 'P25', # 精准嘴唇衔花特写 ('REQ_018', False): 'P25', # 创意身体部位融合多变体批量 ('REQ_056', True): 'P25', # 情绪驱动型近景肖像 # ────── P26 AI 图内文字渲染 + 排版 ────── ('REQ_011', True): 'P26', # 多模态AI指令驱动路线 ('REQ_011', False): 'P26', # AI视觉理解 + 自动标注生成 ('REQ_042', False): 'P26', # 提示词直接生成路线(从零快速起稿) ('REQ_043', False): 'P26', # 蓝图B:智能修复增强 ('REQ_078', True): 'P26', # 在线工具自动化文字叠加(Canva/CapCut) ('REQ_089', False): 'P26', # 文字主导型科技活动海报(GPT-Image 2) ('REQ_097', True): 'P26', # 暴力美学电商大字报全自动生成 ('REQ_097', False): 'P26', # AI提示词驱动全自动图文排版 # ────── P27 数据驱动模板套版 ────── ('REQ_020', True): 'P27', # AI文案生成+模板组件+数据驱动批量 ('REQ_020', False): 'P27', # 视觉规范先行+AI素材生成+参数化模板 ('REQ_047', True): 'P27', # 数据驱动型全自动报告生成 ('REQ_047', False): 'P27', # 视觉优先型 AI 图表美化 ('REQ_048', True): 'P27', # AI全自动:自然语言→语义识别→SVG/HTML ('REQ_048', False): 'P27', # 参考图逆向复刻--草图→AI→可编辑图表 ('REQ_098', False): 'P27', # AI底图生成+专项文字渲染 # ─── 补余 ─── # 占位 strategies(Phase 1 正规化的) ('REQ_004', True): 'P01', # Strategy-004: 提示词直出为主 + 细节强化 ('REQ_053', True): 'P13', # Strategy-053: 三层空间分层生成 ('REQ_066', True): 'P24', # 已归入 P24 材质类(上面已有) ('REQ_070', True): 'P15', # 已归入 P15(上面已有) # 单例余项(从 /tmp/strategy_clusters_v2.md 单例列表) ('REQ_012', True): 'P06', # 杂志报告风格图文混排--用 Lovart 类工具 ('REQ_012', False): 'P06', # 产品展示型长图生成(电商) ('REQ_027', True): 'P10', # 已有 ('REQ_035', True): 'P01', # AI图文生成+色调控制 — 归 P01 (提示词) ('REQ_035', False): 'P01', # 参数公式直出路线 ('REQ_038', True): 'P25', # 静态高动态图像流派(人像肖像) ('REQ_048', True): 'P27', # 已有 ('REQ_055', False): 'P05', # 已有 ('REQ_059', True): 'P22', # will be overridden by strategy_id ('REQ_067', True): 'P15', # 已有 ('REQ_072', True): 'P11', # 已有(将 False 改 True) — 等等,REQ_072 sel 是 P10/P11?查 ('REQ_081', False): 'P07', # 模板驱动批量生成流派 — 归 P07 (或 P13) ('REQ_092', False): 'P06', # 科普长图模板化生成路线 ('REQ_096', False): 'P19', # 霓虹粒子风暴+生物发光路线 # REQ_006 alt ('REQ_006', False): 'P05', # 结构控制+风格迁移精准路线(ControlNet 风格) # REQ_002 alt ('REQ_002', False): 'P13', # 人物×场景深度融合路线 # REQ_061 alt ('REQ_061', False): 'P01', # 多风格分层融合--风格基底×双色分层 # REQ_034 alts by strategy_id override(在上方 STRATEGY_ID_OVERRIDES) # 单例补充:REQ_072 sel ('REQ_072', True): 'P11', # 高一致性图生图局部重绘(实际是 P11) # REQ_030 sel 已有(P15) # REQ_049 sel 已有(P03) # REQ_079 sel 已有(P04) # REQ_079 sel ('REQ_079', True): 'P04', # DeepSeek + MD2Card 文本生成排版 # REQ_069 ('REQ_069', True): 'P13', # 3D卡通机器人主体+悬浮全息数据图表(分层合成) ('REQ_069', False): 'P13', # 插画场景叙事+机器人协作+数据可视化 # REQ_054(0-cap 未分配占位) ('REQ_054', True): 'P17', # Gemini分镜逻辑驱动的AI多格视频分镜 ('REQ_054', False): 'P15', # ChatGPT代码解释器驱动的精准网格图文 # REQ_062 alt 已有 # REQ_075 ('REQ_075', True): 'P19', # 戏剧性体积光四阶段流派 ('REQ_075', False): 'P21', # 冷暖双极对立光晕流派(多光源) # REQ_067 alt 已有 # ─── 最终补余(分类器验证后发现的 8 个 unmapped)─── ('REQ_016', False): 'P01', # 结构化提示词多模型并行生成(零素材快速) ('REQ_040', False): 'P10', # 精品单卡语义匹配(Midjourney 图集 + 逐张匹配)- IP 系列化 ('REQ_046', False): 'P26', # AI 提示词直出信息图:图文一体直出 (图内文字) ('REQ_073', False): 'P01', # 轻量快速路线:Midjourney提示词驱动蓝紫色调 ('REQ_074', False): 'P27', # 放射状布局+系列模板混合(模板套版) ('REQ_085', False): 'P27', # 参数化单色模板批量生成 ('REQ_086', False): 'P14', # 风格化拼贴构图路线 ('REQ_087', False): 'P20', # 莫兰迪素雅插画(色调锚定) } def classify(strategy_id: str, req_id: str, is_selected: bool) -> str: """Return pattern_id or None if unmapped.""" if strategy_id in STRATEGY_ID_OVERRIDES: return STRATEGY_ID_OVERRIDES[strategy_id] return REQ_SEL_MAPPING.get((req_id, is_selected))