生成结果总带着旧设定残留,通常不是模型本身变差,而是全局记忆里还挂着上一场次、甚至上几集的内容,同时资产库里堆了大量一次性素材。建议的顺序是:先清一次全局记忆,再决定资产去留,最后才开新场次。顺序反过来做,新场次仍会被残留设定二次污染,清理效果也看不出来。
先清全局记忆、再开新场次,比先删素材更稳妥:全局记忆决定每场戏默认带着什么设定,资产库决定它能引用什么。建议按角色、场景、道具、临时素材四类先盘点规模,用「是否跨场次复用、是否被角色锚点引用、是否可重新生成」判断去留;清理前把记忆文件、锚点描述和配置整体备份并回读校验;清完用一场三到五镜的短戏复验角色外观、已有场景和常用道具;最后把检查动作固定到每集交付后与新场次开机前。来源不明的资产先保留并标注,不要凭印象删。
按集数和场次盘点当前资产
清理的第一个动作不是删,而是数。先知道自己有多少资产、分别属于哪一类、最近哪些场次真正用过,后面的取舍才有依据。盘点维度建议固定成四类:角色、场景、道具、临时素材,并给每一类记下文件数量和最后被引用的集号与场次号。
如果资产以目录形式存放,可以在项目根目录先跑一遍扫描,把规模打印出来。下面这段只是通用骨架,目录名按你的项目实际情况替换。
# 1. 看资产目录结构
find ./assets -maxdepth 2 -type d | sort
# 2. 按类别统计文件数量
for d in character scene prop temp; do
printf "%-10s %s\n" "$d" "$(find ./assets/$d -type f | wc -l)"
done
# 3. 看全局记忆与会话目录的体量
ls -la ./memory ./sessions
wc -l ./memory/global_memory.* 2>/dev/null
数字出来后重点看两类偏差:某一类的条目数明显多于它被使用的场次数,说明一次性素材混进了长期库;临时素材目录持续增长且没有按集归档,说明上一轮清理没有收尾。角色与场景的数量通常应接近你实际立项时规划的数量,超出很多就先别急着删,回到下一节的判断标准逐条过。
区分长期资产和一次性素材
确定删除范围时,最容易误伤的是角色锚点——那张定义主角发型、服装、配色的参考图或描述文本,一旦删掉,后续场次的角色一致性会直接崩掉。建议用三个问题筛:这个资产会不会在别的场次被再次引用;它是否被某个角色锚点或场景索引指向;它是否可以从已有的提示词或参考素材重新生成。三个都是否,才进入可清理名单。
实际操作中,判断容易走偏的是这几类:
- 只出现过一次、但定义了主角服装细节的参考图。出场次数低不等于不重要,它被锚点引用,应当保留。
- 重复出现在很多场次的群众角色。出场多不代表要留,它通常没有绑定锚点,可以从模板重新生成,属于可清理对象。
- 已经废弃的旧版场景图,但里面含唯一的光照或构图参考。直接删会丢掉唯一的参考来源,建议先把有用部分提取成新条目,再删旧图。
拿不准的条目建议先移到 assets/_review/ 这类待定目录,并在文件名或索引里标注来源集数,而不是直接删除。这样既不污染正式库,也保留了回查的余地。
清理前先备份一份可用状态
误删能否回退,取决于备份是不是「可用状态」,而不只是有没有拷走文件。建议备份四样东西:全局记忆文件、角色锚点描述与参考图索引、场景与道具库索引、当前生效的配置文件。备份要放在项目目录之外的独立路径,或者版本库的独立分支,避免被同一套清理脚本再次扫到。
ts=$(date +%Y%m%d-%H%M%S)
mkdir -p ../oiioii-backup/$ts
cp -r ./memory ./assets ./config ../oiioii-backup/$ts/
# 生成清单与校验文件
find ../oiioii-backup/$ts -type f | sort | xargs sha256sum \
> ../oiioii-backup/$ts/MANIFEST.sha256
确认备份可用,不能只看文件数量。建议做两件事:一是用校验清单回读一遍,确认没有读写错误;二是从备份目录加载一次全局记忆与锚点索引,确认角色列表和场景列表都能正常列出。只有加载这一步通过,才算是一份可回退的备份。
sha256sum -c ../oiioii-backup/$ts/MANIFEST.sha256 | grep -v OK
清完后开一场短戏做复验
清理之后不要直接开正式场次,先开一场三到五镜的短戏。它的作用是暴露「记忆清了、锚点还在不在」这类问题,成本低、发现问题早。开戏时建议明确写清引用方式,例如让角色通过锚点 ID 引用,而不是在提示词里重新描述外观。
场次:复验-短戏-01(3 镜)
角色:引用已有锚点 ID,不新写外观描述
场景:引用场景库中已存在的一项
道具:挑选 1 件常用道具
限制:不新增任何角色设定
复验按三个检查项逐条看:角色外观是否与清理前一致,重点看发型、服装、配色有没有漂移;已有场景能否被正常引用,而不是提示找不到;常用道具是否仍在库中且可调用。任何一项异常,先停下正式场次,用上一节的备份回退到清理前状态,再重新核对是哪些条目被误清。
把清理节奏固定成开机前动作
资产再次堆积到失控,通常是因为清理只在「感觉乱」的时候做一次。把它变成固定动作更省事,触发条件可以按两种粒度设:按集触发,在单集交付通过后,清掉这一集产生的临时素材并归档记忆;按场次触发,在创建新场次前先比对全局记忆,看是否还残留上一场次的临时设定,确认干净了再开戏。
此外可以设一个自己可接受的规模阈值,比如临时素材目录的条目数超过某个你定的数量、或某类资产数量明显偏离立项规划时,触发一次完整盘点。阈值定多少取决于你的项目节奏,需要结合环境确认,重点是这个触发条件要写进团队的操作清单,而不是靠个人记忆。
每次清理前后各保留一次备份,并简单记下清理日期、清理范围和复验结论。这样下一次出现「生成结果带着旧设定」时,能快速判断是记忆没清干净,还是资产被误删或误留。