同一角色第二张换姿势后脸型、发型走样,通常不是模型不具备一致性能力,而是每次提交的描述里,角色固定项被重新讲了一遍:用词换了、顺序换了、有的被省略了。稳妥的处理是把固定项与变量拆开写——固定项每次逐字重复,姿势和机位每次只改一处,再拿两张图逐项对照,确认差异是被哪一句描述带走的。这种做法不需要额外接口,在提示词层和文件命名层就能落地,代价是前期要花时间把角色固定项写清楚。
处理换姿势走样的方向是把角色描述分层:发型、脸型、服装、配饰作为固定项,每次生成原样复制;姿势词、视角词作为唯一变量,一轮只替换一处。验证方式是同角色同画风下生成两张图,按发际线、脸型轮廓、服饰配色逐项比对,并用带字段名的文件名留存。边界在于:固定项写得越细,模型对自由发挥的抑制越强,画面可能偏僵硬;具体效果需要结合所用模型版本和自己的提示词权重设置确认,不能指望一份角色文本在所有模型上表现一致。
先把角色的固定项单独列出来
固定项的判断标准很简单:这句话描述的是角色本身,换个姿势、换个机位也不该变,就属于固定项。发型、脸型、服装、配饰四类最容易在换姿势时漂移,建议每一类都用「形状+颜色+位置」写死,不要只写形容词。以下是一段可直接替换字段的写法示例,放在提示词最前面或单独一段。
角色固定项(每次原样复制)
发型:齐耳短发,发尾内扣,中分,无刘海,深棕色
脸型:鹅蛋脸,下巴略尖,颧骨平缓,单眼皮细长眼,眉毛平直
服装:深灰工装外套,立领,胸前两个方形贴袋,腰部同色布腰带
配饰:左耳银色小圆环耳钉,右腕黑色织物表带手表
可变量(每轮只改一处)
姿势:站立,双手垂在身侧
机位:正面平视,腰部以上
替换时要避免的写法是「短发」「年轻女性」这类模糊词,模糊词每次都会被模型重新解释一遍,解释结果不同,脸型和发际线就跟着变。服装和配饰是最容易被省略的两类,省略一次,下一张就可能出现领口形状变化或耳饰消失。写完先用一次生成确认固定项本身能被稳定画出来,再进入下一步。
把姿势和机位设为唯一的变量
一致性排查最怕一次改两处。建议每轮生成只动一个变量,姿势词和视角词分开写,不要合并成一句话。姿势词尽量用动作+身体朝向的句式,视角词用机位高度+距离+朝向的句式,示例:
姿势词示例:站立,双手垂在身侧,肩膀放松
坐在椅子上,身体略前倾,双手放在膝上
视角词示例:正面平视,腰部以上
侧前方低角度,全身
背面平视,肩部以上
替换规则是:这一轮只换姿势词,机位词和固定项一个字都不动;下一轮只换机位词,姿势词保持上一轮的值。如果两处同时改,第二张图走样时就无法判断是姿势描述带来的构图变化,还是机位描述带来的景别变化。生成前把本轮提示词连同上一轮一起贴在草稿里,逐行确认只有一行不同,再提交。
让参考图只负责画风不负责细节
参考图在换姿势场景里最常见的副作用,是把参考图里的角色特征带进本次角色。判断标准可以先按用途分:参考图应当提供笔触质感、光影风格、色调倾向、背景处理方式;不该提供具体人物的脸型、发型长度、配饰数量、服装款式。选参考图时,优先挑角色面貌特征不明显、或与目标角色差异较大的图;如果参考图里正好是一个齐刘海长发人物,而目标角色是中分短发,发型很可能被参考图拉回去。
验证方法也简单:先只用参考图跑一张不带角色固定项的空镜或半身图,看画风是否符合预期,再叠上角色固定项重跑一次。两次结果如果只有画风接近、人物特征按文字走,说明参考图的职责划分是清楚的;如果人物特征跟着参考图走,就换一张参考图,或者降低参考图的参考强度(具体参数名和取值范围需要结合所用平台的页面或接口文档确认)。
两次生成结果逐项比对
比对的目的不是判断哪张好看,而是定位差异来源。建议固定三个比对项,按从上到下的顺序看:发际线与刘海分缝、脸型轮廓(下颌宽度与下巴形状)、服饰配色(主色、辅色、配饰颜色)。每一项只记录「与基准图一致」或「不一致并写明怎么变」,不要写模糊评价。
- 发际线:分缝位置、刘海有无、鬓角长度是否与基准图一致
- 脸型:下颌线条、下巴尖圆、颧骨高低三项分别对照
- 服饰配色:外套主色、口袋与腰带颜色、耳饰与手表是否存在且位置正确
记录方式建议落到文件名和一张对照表里。文件名带角色 ID、姿势、机位三段,例如 cleaner_a__stand__front_waist.png、cleaner_a__sit__front_waist.png,两张图放在同一目录,按文件名排序就能看出这一轮只改了姿势。对照表可以是一行一次生成,列出本轮改动的字段、三项比对结论,以及是否回退。
轮次 | 本轮改动字段 | 发际线 | 脸型 | 服饰配色 | 处理
02 | pose=sit | 一致 | 不一致,下颌偏宽 | 一致 | 调整脸型描述顺序后重跑
03 | pose=sit | 一致 | 一致 | 一致 | 保留
如果三项同时不一致,问题多半不在姿势词,而在固定项被压缩或参考图干扰,应回退到固定项和参考图两节重新检查,而不是继续加形容词。
把稳定的一组描述固化成角色文本
比对通过后,把这一组描述存成可复用的角色文本,后续每次生成只做字段替换,不再凭记忆重写。字段结构建议拆成固定项、可变量、参考图三块,固定项按发型、脸型、服装、配饰四个键分开,方便单点修改。
role_id: cleaner_a
version: v3
fixed:
hair: 齐耳短发,发尾内扣,中分,无刘海,深棕色
face: 鹅蛋脸,下巴略尖,颧骨平缓,单眼皮细长眼,眉毛平直
outfit: 深灰工装外套,立领,胸前两个方形贴袋,腰部同色布腰带
accessory: 左耳银色小圆环耳钉,右腕黑色织物表带手表
variable:
pose: 站立,双手垂在身侧
camera: 正面平视,腰部以上
style_ref: ref_style_01.png
notes: v3 起脸型描述前置,下颌偏宽问题未复现
保存位置按团队习惯选:放进代码仓库的 roles/ 目录用版本控制管理,或在提示词管理页面里存为固定片段,两种方式都要求带版本号和变更说明。生成时把固定项整段原样粘贴,只改 variable 下的值,角色文本本身不动。角色需要调整时新建版本号,保留上一版,方便回退比对。需要说明的是,角色文本只能约束描述层面的一致性,模型对长描述的处理能力受版本影响,换模型或换画风参考图后建议重新跑一次两图比对。