真人身份参考
用户给了真人照片时,下面这些规矩跨轮次、跨主题、跨抽卡和 Remix 一直有效。身份一致性的优先级高于姿势、构图、光线、场景戏剧性和风格化效果。
默认身份源是最初上传的原图
- 用户为某个人明确给出的第一批真人照片,就是这个人的默认身份源(
canonical_original_references),之后不会被自动替换 - 真人参考只决定身份,不重新设计脸
- 照片要逐张对应到人物编号,不能因为传了两张就推断「这是一对情侣」
- 参考照片只保辨识度,不代表可以照抄照片里的服装、地点或姿势,除非用户明确要求
派生图
下面这些全是派生图(derived images):美化三宫格、精修美化图、换装预览、8 宫格、单张 Shot、放大图、重绘图,以及此前任何 AI 生成的人像。
- 派生图永远不会因为更新、更清晰、刚生成就自动变成身份参考
- 派生图只能当构图、姿势、造型、风格、场景连续性的参考,而且用的时候仍要同时附上原图当身份参考
- 多轮对话、换主题、换服装、抽卡、Remix、重新出图、放大某一格,都不会把生成图升级成身份参考
显式升级
- 只有用户明确表达「以后用这张做参考」「用美化后的图当人物参考」「后面都以刚生成的这张为准」「把第 N 张设为身份参考」,才把派生图升为当前身份参考(
active_identity_references) - 「放大这张」「再出这张」「选左 / 中 / 右」「我喜欢这张」「按这个动作继续」都不算升级
- 升级后也保留原图记录,不覆盖、不删除;用户说「恢复原图」「还是按最开始那张脸」立刻恢复
- 保存工程时用入口的
identity_reference_manager.py登记、升级、恢复,见保存工程
只锁脸,不锁头发
- 原图只锁脸型、核心五官、年龄印象和辨识度
- 原图里的发长、卷直、刘海、分缝、顶部体积、两侧和后区轮廓、发色质感全部视为不绑定的信息,生成时主动忽略
- 只要当前方向有已定的正式发型,就执行正式发型,不能因为原图作为身份参考被附上就顺带继承原图头发
- 身份描述里不写「保持短发」「保持长发」「保持某发色」,除非用户明确要求保留原发型
- 用户明确说「保留原图发型」「就用原来的头发」时,才把原发型当约束
只锁身份,不锁表情
- 除非用户明确要求复刻参考图的表情,参考图里的微笑、冷脸、张嘴、视线方向和头部角度都不被整组照片继承
- 每张 Shot 按自己的动作、关系和情绪动机,重新给嘴型、笑意强弱、眼神方向、视线落点和头部角度
- 用户只给了一两张参考图时也一样:不能因为参考图只有一个表情,就让整组都是同一嘴型、同一眼神、同一笑意
多人
- 每个人稳定维护
participant_id → 原图的对应 - 任何一轮都不从更新的产物推断替换,不在人物之间换脸,不用别人的派生图顶替这个人的原图
8 宫格逐格重注入身份
宫格里同一个真人容易一格一格地漂。不能只在总提示词开头写一句「同一个人」:
- 总身份锁:总 prompt 开头放一段最高优先级的身份锁,写明每个人对应哪张身份参考(默认原图,用户升级过才用升级的)
- 逐格重置:每一格自己的 Shot 描述前,再写一句本格的身份重置 —— 本格出镜的每个人都直接、独立地从自己的身份参考恢复脸,不从别的已生成格继承
- 锁定的脸部几何:脸型和长宽比、额头比例、眼型和眼距、眉位、鼻梁鼻宽鼻尖、颧骨、嘴宽和唇比例、下颌线和下巴、年龄印象、整体辨识度。妆容、皮肤优化、发型、表情、灯光只改表面状态,不改这些几何
- 禁止:跨格平均、插值、渐变、重设计五官,逐格美颜导致漂移,换脸
- 脸要看得清:计划露脸的镜头都要让真实的脸够清楚、够大、认得出;全身、远景、行走这类高风险镜头不为了环境尺度把脸缩到认不出
- 背身回望:除非用户明确要不露脸,头和必要的上半身要转到能看清整张脸
- 倒影:真人的脸始终是主身份锚点,倒影只是次要元素,必须是同一个人且不扭曲五官
- 这些不改变「只锁脸不锁头发」:正式发型照旧执行
保存工程时 shot_board.py prepare-grid 打印的 prompt 已经把总身份锁、逐格重置和看清脸的要求写进去了。
调图片接口时
- 选身份参考的顺序固定:用户显式升级过的当前参考 > 最初上传的原图;没有显式升级,就只能用原图
- 会话里同时有原图和后来的生成图时,不因为后者更近、更清晰、更方便就优先用它;不按「最近一张图」挑
- 要用上一张生成图保持姿势、构图、场景连续时,把它标成只作构图和风格参考,同时照旧附上原图作身份参考;放大单张时同样,不继承格子里已经生成的那张脸
- 有真人参考时,最终 prompt 逐人写明
P0x → 第几张参考图,并写明禁止换脸 - 接口怎么传多张参考图见出图