角色和场景对不上,重新生成几次结果又各不相同,通常不是生成端坏了,而是需求里缺了两类信息:外观描述(角色本身长什么样)和状态描述(角色在这个场景里处在什么位置、朝哪、在做什么)。前者决定跨场景的一致性,后者决定同一角色放进不同场景后是否还对得上。处理顺序建议是先分类差异,再补字段,最后用同一段描述连续生成几次,看哪些特征稳定、哪些属于随机波动,再决定哪些写死、哪些放宽。
判断方向:先把「对不上」拆成风格、比例、场景关系三类,只补对应段落,不要整段重写。外观补到颜色、轮廓、材质、随身物件、体型比例;状态补到位置、朝向、动作、与场景物件的关系。验证方式是用同一段描述连续生成多次,逐项记录取值是否一致。边界在于:生成本身带随机,描述只能收敛取值范围,不能保证每次逐像素相同。
把「对不上」拆成三类差异
笼统地把描述重写一遍,往往既没定位问题,也丢掉了原本正确的部分。先把偏差归类,再决定回到模板的哪一段补写。
- 风格差异:整体画风、光照、材质调性不符,例如想要扁平插画却出来厚涂写实,或场景从白天变成夜晚。对应补写位置是描述里的风格、材质、光照段,不要动体型和位置。
- 比例差异:头身比、道具相对大小、角色占画面的比例不符,例如角色比椅子矮、帽子比头还大。对应补写位置是体型比例段与镜头景别段。
- 场景关系差异:角色悬空、脚没踩到台阶、手穿进栏杆、朝向与场景动线相反。对应补写位置是状态描述段,也就是位置、朝向、接触与遮挡关系。
一个可操作的判定动作:把角色单独放进纯色背景生成一次。如果单独角色也不符合预期,问题在风格或比例;如果单独角色是对的,放进场景才错,那要补的是状态描述而不是外观描述。
外观描述补到可观察的特征
外观描述最容易写成主观印象,比如「看起来很酷」「有点复古」。这类词每个人理解不同,生成端也很难对齐。建议把外观拆成五个字段,每个字段都用能对照的写法。
- 颜色:模糊写法「蓝色外套」;具体写法「上装藏青、内衬米白、袖口与上装同色」。
- 轮廓:模糊写法「版型好看的外套」;具体写法「落肩厚外套,衣长盖过髋部,外轮廓平直没有明显收腰」。
- 材质:模糊写法「有质感」;具体写法「哑光棉质,表面无明显反光,布料有横向自然褶皱」。
- 随身物件:模糊写法「背个包」;具体写法「左肩挎帆布包,包体垂在左髋外侧,不遮挡胸口」。
- 体型比例:模糊写法「身材修长」;具体写法「约七头身,肩宽接近两个头宽,手脚比例正常」。
写法上没有绝对标准,判断依据是:这行字能不能让你在生成结果上做「是 / 否」的对照。能逐项打勾的,就是可观察特征;只能凭感觉评价的,还需要再改写一次。
补上状态描述:角色在不同场景下的姿态与朝向
同一角色在不同场景里表现不一致,多数时候不是外观描述没写好,而是每个场景只写了场景、没写角色在该场景中的状态。状态描述要逐场景单独写,不建议跨场景复用同一段。
场景:雨后的石阶广场
角色位置:画面右三分之一,站在石阶下数第二级
朝向:身体朝画面左前方约 45 度,头部略转向镜头
动作:右手扶住栏杆,重心落在右腿,左腿略靠后
与场景物件关系:帆布包垂在左髋外侧,不遮挡胸口;鞋底与台阶面接触
景别:中景,取到膝盖以上四个必填项是位置、朝向、动作、与场景物件的关系。其中「与场景物件的关系」最容易被漏掉,而穿模、悬空、脚不落地基本都出在这一项。写完后,把这段状态与上一节的外观描述拼在一起,作为该场景的完整输入,不要只换场景词、保留别人的状态句。
同一段描述连续生成多次,记录稳定与随机项
描述补齐后仍需验证:哪些特征是被描述固定的,哪些无论怎么写都会抖动。做法是保持输入完全不变,连续生成多次(次数自己定,通常 5 次以上更容易看出规律),逐项记录。
- 特征项:写你关心的具体项,如「上装颜色」「头身比」「帆布包位置」「脚与地面接触」。
- 多次生成结果:把每次的实际取值填进去,而不是「对 / 不对」。
- 是否稳定:同一特征在多次结果里取值一致记为稳定,出现两种以上取值记为不稳定。
稳定率的统计方式很直接:某特征在 N 次生成里出现同一取值的次数为 M,M/N 就是这项在该描述下的稳定率。没有具体阈值可套,判断思路是——稳定率低且你在意的项,回到描述里改写得更具体;稳定率低但你不在意的项,归入可接受范围,不再加词。
固定稳定特征,给随机部分留出可接受范围
收敛的目标是让同一段描述可复用,而不是每轮重新写一遍。几条可用的原则:每轮只改一到两处,改多了无法归因;连续多次都稳定但你不想要的特征,属于被描述本身写死的项,要改描述而不是改随机参数;反复改写仍抖动的项,继续加形容词通常收效有限,可以考虑接受一个范围,或在生成后处理。
一份可复用的最终描述可以按下面的方式标注:
必须写死(写错就重来):
- 上装藏青 / 内衬米白
- 落肩外套,衣长过髋
- 约七头身,肩宽接近两个头宽
- 左肩挎帆布包,垂在左髋外侧
- 角色位置、朝向、脚与地面接触关系
可只给范围(允许每轮不同):
- 布料褶皱的走向与数量
- 手势的具体角度与幅度
- 背景中的次要元素数量与分布
- 光照方向,只要与场景整体一致即可把这套清单固化成模板后,换场景时只替换场景名与状态段,外观段保持原样,这样更容易判断新出现的偏差是场景引入的,还是描述本身还不完整。