吹竹笛的若城头像
关注
【SenseNova U1.5 Lite实战】从单张出图到 5 段短SenseNova U1.5 Lite 在 ComfyUI 中的完整实战视频封面图

【SenseNova U1.5 Lite实战】从单张出图到 5 段短SenseNova U1.5 Lite 在 ComfyUI 中的完整实战视频

前言

说实话,跑通一张图并不难,难的是把它变成一条能稳定交付的生产链路:角色不能每个镜头换一张脸,某个分镜不满意时不能牵一发动全身,图片还要顺利交给视频模型继续生成。

这篇文章不只跑官方示例,而是 通过一个角色图为主 生成5 段视频为例,把 SenseNova U1.5 Lite、ComfyUI 和 Wan2.1 串起来,完整走一遍从环境配置、角色定妆、分镜生成到图生视频的流程。

文中使用优云智算平台的纯净版 ComfyUI 容器。不同平台的 GPU、磁盘和 Python 环境可能不同,命令中的目录以 /root/ComfyUI 为例,使用其他平台时请按实际路径调整。

先看效果节选

这里截取一小段的最终产出展示

在这里插入图片描述

相关工作流的 json 文件已上传到 gitcode

背景

官方示例主要展示两种能力:文生图和图像编辑。它们适合验证模型能不能运行,却没有回答实际项目里更麻烦的几个问题:

  • 如何生成一张可以反复使用的角色标准图?
  • 如何让多个分镜尽量保持人物身份、服装和场景一致?
  • 某个分镜需要重做时,如何只改当前画面而不影响其他分镜?
  • 如何把静态分镜交给视频模型,生成连续的动作片段?
  • 如何记录每次任务的耗时、显存和输出文件,方便后续做成本评估?

这篇文章采用的核心思路很简单:

用 SenseNova U1.5 Lite 负责“确定画面”,用角色参考图稳定人物身份,再把每张分镜图作为 Wan2.1 的起始帧,最后用短动作提示词驱动视频生成。

环境配置

准备 ComfyUI 容器

本次使用的容器配置如下:

image

配置不必完全照搬,关键是确认显存和磁盘空间能够同时容纳 SenseNova U1.5 Lite、Wan2.1 及其相关组件。Wan2.1 的主模型体积较大,下载前最好先确认磁盘余量。

检查 GPU、磁盘和 CUDA

购买服务器后,通过 JupyterLab 打开终端,执行下面的命令:

# 查看显卡型号和显存
nvidia-smi --query-gpu=name,memory.total --format=csv,noheader

# 查看 /root 所在磁盘的空间
df -hl /root

# 检查 PyTorch 是否能使用 CUDA
python -c "import torch; print(torch.__version__, torch.cuda.is_available())"

如果最后一条命令返回的 CUDA 状态为 True,基本可以确认 Python 环境能够识别 GPU。

image

配置 Hugging Face 镜像

Wan2.1 的部分文件从 Hugging Face 下载。网络较慢时,可以先设置镜像地址:

echo 'export HF_ENDPOINT=https://hf-mirror.com' >> ~/.bashrc
source ~/.bashrc

image

这条配置只对当前用户的 Shell 环境生效。新开终端后如果没有加载,可以再次执行 source ~/.bashrc。

先把性能记录工具准备好

生成图片和视频的等待时间都比较长。如果不记录数据,最后很容易只剩下一句“感觉挺慢”。这里用一个简单的 Bash 脚本记录任务耗时、显存采样和新增产物,后面可以用它对比不同参数的效果。

在 /root 下创建 /root/bench.sh:

cat > /root/bench.sh << 'SCRIPT_EOF'
#!/usr/bin/env bash
# bench.sh —— 自动采集耗时、峰值显存和产物清单
set -u

LOG="${BENCH_LOG:-/root/ComfyUI/bench_log.md}"
TMP=/tmp/bench
GPU_LOG="${GPU_LOG:-/root/ComfyUI/output}"
mkdir -p "$TMP"

slug() { echo "$1" | tr -c 'A-Za-z0-9_.-' '_'; }

usage() {
  cat <<'USAGE'
用法:
  ./bench.sh start  <标签>   # 在浏览器点 Run 之前执行
  ./bench.sh stop   <标签>   # 出图或出片完成后执行
  ./bench.sh report          # 查看完整日志
  ./bench.sh table           # 只打印 Markdown 表格
  ./bench.sh reset           # 清空日志

标签示例:
  char-standard   角色标准图
  s01-turbo-on    分镜 1,开启 Turbo
  s01-turbo-off   分镜 1,关闭 Turbo
  vid01           视频第 1 段
USAGE
}

cmd_start() {
  local tag="$1" s; s=$(slug "$tag")
  date +%s > "$TMP/$s.start"
  : > "$TMP/$s.mem"
  (
    while true; do
      nvidia-smi --query-gpu=memory.used --format=csv,noheader,nounits \
        >> "$TMP/$s.mem" 2>/dev/null
      sleep 1
    done
  ) & echo $! > "$TMP/$s.pid"
  echo "[bench] 开始计时: $tag"
  echo "[bench] 显存采样已启动(1 秒/次),现在去浏览器点 Run"
}

cmd_stop() {
  local tag="$1" s; s=$(slug "$tag")
  [ -f "$TMP/$s.start" ] || {
    echo "[bench] 没找到 start 记录: $tag"
    exit 1
  }

  local st en dur peak base mm ss
  st=$(cat "$TMP/$s.start")
  en=$(date +%s)
  dur=$((en - st))
  kill "$(cat "$TMP/$s.pid")" 2>/dev/null

  peak=$(sort -n "$TMP/$s.mem" 2>/dev/null | tail -1)
  [ -z "$peak" ] && peak=0
  base=$(head -1 "$TMP/$s.mem" 2>/dev/null)
  [ -z "$base" ] && base=0
  mm=$((dur / 60))
  ss=$((dur % 60))

  local files
  files=$(find "$GPU_LOG" -type f -newermt "@$st" \
    \( -name '*.png' -o -name '*.mp4' -o -name '*.webp' \) \
    -printf '%f ' 2>/dev/null | tr ' ' '\\n' | grep -v '^$' | paste -sd ', ' -)
  [ -z "$files" ] && files="(未检测到新产物)"

  local ts; ts=$(date '+%Y-%m-%d %H:%M:%S')
  {
    echo "| $tag | ${mm}分${ss}秒 | ${peak} MB | ${base} MB | $((peak - base)) MB | $files | $ts |"
  } >> "$LOG"

  echo "[bench] 完成: $tag"
  echo "[bench] 耗时 ${mm}分${ss}秒 | 峰值显存 ${peak} MB | 增量 $((peak - base)) MB"
  echo "[bench] 产物: $files"
  echo "[bench] 已写入 $LOG"
}

cmd_report() {
  [ -f "$LOG" ] || {
    echo "还没有日志,先执行 start/stop"
    exit 0
  }
  cat "$LOG"
}

cmd_table() {
  [ -f "$LOG" ] || {
    echo "还没有日志"
    exit 0
  }
  grep '^|' "$LOG" | grep -v '^| :' | grep -v '^| 标签'
}

case "${1:-}" in
  start)  [ $# -eq 2 ] || { usage; exit 1; }; cmd_start "$2" ;;
  stop)   [ $# -eq 2 ] || { usage; exit 1; }; cmd_stop "$2" ;;
  report) cmd_report ;;
  table)  cmd_table ;;
  reset)  rm -f "$LOG"; echo "日志已清空" ;;
  *)      usage ;;
esac
SCRIPT_EOF

chmod +x /root/bench.sh
echo "bench.sh 已生成"

验证脚本是否正常

先做一次空跑测试:

cd /root
./bench.sh start "测试"
sleep 5
./bench.sh stop "测试"
./bench.sh report

能够看到耗时、显存和产物记录,就说明脚本可以正常工作。

image

验证完成后清除测试日志:

./bench.sh reset

后面每次点击 ComfyUI 的 Run 前执行 start,任务完成后执行 stop。要注意,脚本只能记录从开始采样到结束采样期间产生的文件,手动上传或之前已经存在的文件不会被当作新产物。

image

创建 ComfyUI 工作目录

为了避免模型和输入文件混在一起,先创建所需目录:

mkdir -p /root/ComfyUI/models/{diffusion_models,text_encoders,clip_vision,vae,loras,sensenova,gguf,TTS}
mkdir -p /root/ComfyUI/{custom_nodes,input,output}

image

安装 SenseNova U1 节点

从代码仓库获取官方 ComfyUI 节点,并复制到 custom_nodes:

cd /root
git clone https://gitcode.com/SenseNova/SenseNova-U1.git
cp -r /root/SenseNova-U1/apps/comfyui \
  /root/ComfyUI/custom_nodes/ComfyUI-SenseNova-U1

复制后检查目录:

ls /root/ComfyUI/custom_nodes/ComfyUI-SenseNova-U1

如果能看到节点代码和相关配置文件,说明复制成功。

image

下载 SenseNova U1.5 Lite 主模型

这里通过 ModelScope 下载 SenseNova-U1.5-8B-MoT:

pip install modelscope
modelscope download --model SenseNova/SenseNova-U1.5-8B-MoT \
  --local_dir /root/ComfyUI/models/sensenova/SenseNova-U1.5-8B-MoT

几个参数的作用如下:

命令或参数作用
pip install modelscope安装 ModelScope 命令行工具
modelscope download --model <id>根据模型 ID 下载权重
--local_dir <路径>指定模型保存目录
行尾的 \Bash 命令换行续写,执行时仍是一条命令

模型目录需要指向 models/sensenova/SenseNova-U1.5-8B-MoT,不要只下载到 models/sensenova 这一层,否则 ComfyUI 可能无法找到完整模型。

image

下载完成后,先检查关键文件:

test -f /root/ComfyUI/models/sensenova/SenseNova-U1.5-8B-MoT/config.json \
  && echo "模型 OK" \
  || echo "config.json 缺失,加载必失败"

image

如果 config.json 缺失,不要急着启动工作流,优先检查下载是否中断、--local_dir 是否写错,以及目标目录下是否存在多套嵌套目录。

下载 8 步加速 LoRA

这个 LoRA 不是用来改变画风的普通 LoRA,而是面向推理加速的 8 步 LoRA。可以把原模型理解成一位需要反复刻画细节的画师,而加速 LoRA 更像一套速写技巧:用更少的采样步骤快速抓住画面大体效果,代价是极致细节可能有所下降。

下载命令如下:

mkdir -p /root/ComfyUI/models/loras
wget -c "https://www.modelscope.cn/models/SenseNova/SenseNova-U1.5-8B-MoT-LoRAs/resolve/master/SenseNova-U1.5-8B-MoT-LoRA-8step.safetensors" \
  -P /root/ComfyUI/models/loras/

ls -lh /root/ComfyUI/models/loras/

文件大小约为 778M 时,通常可以判断文件已经完整下载。

image

如果更看重画面细节,可以用原始采样步数生成;如果需要批量出图或测试吞吐量,再切换到 8 步加速方案。两种方案最好使用相同的提示词、尺寸和随机种子进行对比。

下载 Wan2.1 图生视频模型

为了把分镜图转换成视频,需要准备 Wan2.1 的四个组件:扩散模型、文本编码器、VAE 和 CLIP Vision。

cd /root/ComfyUI/models
BASE="https://hf-mirror.com/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files"

wget -c "$BASE/diffusion_models/wan2.1_i2v_480p_14B_fp16.safetensors" -P diffusion_models/
wget -c "$BASE/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors" -P text_encoders/
wget -c "$BASE/vae/wan_2.1_vae.safetensors" -P vae/
wget -c "$BASE/clip_vision/clip_vision_h.safetensors" -P clip_vision/

四个文件的作用可以简单理解为:

文件作用
wan2.1_i2v_480p_14B_fp16.safetensors视频扩散主模型,负责生成视频内容
umt5_xxl_fp8_e4m3fn_scaled.safetensors文本编码器,负责理解动作提示词
wan_2.1_vae.safetensorsVAE,负责图像与潜空间之间的转换
clip_vision_h.safetensors视觉编码器,帮助模型理解起始图像

image

主模型和文本编码器体积较大,下载过程可能需要较长时间。若下载中断,wget -c 可以尝试继续下载,但仍建议下载完成后检查文件大小和 ComfyUI 的加载日志。

可选:安装 TTS 节点

如果希望在 ComfyUI 内继续完成配音,可以安装 TTS-Audio-Suite:

apt-get update && apt-get install -y \
  portaudio19-dev libsamplerate0-dev ffmpeg

git clone https://github.com/diodiogod/TTS-Audio-Suite.git \
  /root/ComfyUI/custom_nodes/TTS-Audio-Suite
cd /root/ComfyUI/custom_nodes/TTS-Audio-Suite
python install.py

TTS 不是本文的核心步骤。它的价值主要在于把“画面生成—视频生成—配音”进一步串成自动化流程;如果只是验证图生视频效果,完全可以先跳过,生成视频后再用剪映等工具配音。

下载官方示例工作流

官方示例工作流可以直接拖入 ComfyUI 画布使用:

cd /root
WF=https://raw.githubusercontent.com/OpenSenseNova/SenseNova-U1/main/apps/comfyui/example_workflows

wget -c "$WF/sensenova_text_to_image.json"
wget -c "$WF/sensenova_image_editing.json"

两个文件分别对应文生图和图像编辑流程。

image

下载完成后,可以在 /root 目录看到这两个 JSON 文件:

image

重启 ComfyUI

节点和模型准备好后,重启 ComfyUI,让新安装的节点被加载:

pkill -f "python main.py"; sleep 2
cd /root/ComfyUI
nohup python main.py --listen 0.0.0.0 --port 8188 > comfy.log 2>&1 &
sleep 30
curl -s -o /dev/null -w "%{http_code}\n" http://127.0.0.1:8188

返回 200,说明服务已经能够正常响应。

image

如果没有返回 200,先查看日志:

tail -n 100 /root/ComfyUI/comfy.log

常见原因包括模型目录不正确、节点依赖缺失、端口已经被占用,以及显存不足。

先跑通第一张图

不要一上来就生成五个分镜。先用官方文生图工作流跑通一张图,确认模型、节点和显存都没有问题,后面排查会轻松很多。

加载文生图工作流

在浏览器打开 ComfyUI,把 sensenova_text_to_image.json 拖进画布。

image

完成下面的配置:

  1. 在 SenseNovaU1ModelLoader 的 model_weights 中选择 Local | SenseNova-U1.5-8B-MoT。
  2. 在 SenseNovaU1LocalTextToImage 中填入下面的提示词。
  3. 将 size 设置为 2720x1536|16:9。
  4. 将 seed 设置为 12345。
生成一张高级科技感海报,主题为“SenseNova U1.5 Lite 创意灵感类别”。画面中心突出展示 SenseNova U1.5 Lite 字样,字体清晰、现代、具有品牌科技感。整体视觉表达轻量、高效、智能、灵感涌现的产品特质。

画面中可融入多种创意灵感元素:发光的思维节点、抽象灵感火花、流动的数据光线、漂浮的创意卡片、AI 生成的图像碎片、设计草图、色彩灵感板、文字生成片段等,表现 SenseNova U1.5 Lite 能够帮助用户快速激发创意、生成想法、拓展灵感。

风格:未来科技感、简洁高级、商业发布会视觉、AI 产品宣传海报。
构图:中心聚焦 SenseNova U1.5 Lite,周围环绕创意灵感元素,层次清晰,留有适当空间。
色彩:深色科技背景,搭配蓝紫色、青色、银白色光效,整体明亮但不过度杂乱。
画质:超清细节,高级质感,专业广告设计,适合产品官网、发布会大屏、社交媒体宣传。
避免:杂乱文字、低质感卡通风、过多无意义装饰、模糊品牌名。

配置完成后,在 JupyterLab 新建一个终端,启动性能记录:

cd /root
./bench.sh start "first-image"

然后回到 ComfyUI 点击 Run。生成完成后,再回到终端执行:

cd /root
./bench.sh stop "first-image"

生成结果如下:

image

生成角色标准图

接下来生成短剧主角的角色标准图。角色标准图不需要复杂动作,重点是把脸型、发型、服装、年龄感和整体气质固定下来。

写实摄影风格角色定妆照,一位 22 岁左右的东亚年轻女子,
鹅蛋脸,大眼睛,双眼皮,皮肤白皙透亮,齐刘海,深棕色短发及肩,
身材娇小纤细,身穿蓝色建筑工地施工服(胸前有反光条),头戴黄色安全帽,
半身正面,腰部以上,面部位于画面中央,五官清晰,表情俏皮,带一点懵懂感,
室内暖色日光,光线均匀柔和,浅景深,高清人像。

建议固定下面两个参数:

参数建议值
size2720x1536,16:9
seed固定,例如 123456

image

这里固定 seed 的目的不是保证每次都得到完全一样的图片,而是方便后续复现和调整。真正需要保持角色一致时,还要结合角色参考图、服装描述和稳定的构图信息。

生成后,将角色图重命名为 char_standard.png,通过 JupyterLab 文件管理器上传到:

/root/ComfyUI/input/

image

用图像编辑生成 5 个分镜

为什么要使用角色参考图

如果每个镜头都从零开始文生图,即使提示词写得很像,人物的脸型、发型和衣服也可能发生变化。短剧里观众对角色身份非常敏感,这种变化会直接破坏连续性。

本次的做法是:

image   ← char_standard.png
prompt  ← 固定场景前缀 + 当前分镜动作 + 角色一致性约束

把 char_standard.png 作为图像编辑工作流的参考图,每个分镜只修改动作、表情和镜头景别。

在 ComfyUI 中加载 sensenova_image_editing.json:

image

固定场景风格

为了让五个镜头像发生在同一个房间,先准备一段固定的场景前缀。每次生成都保留这段内容,只替换后面的分镜动作。

写实摄影风格,电影感构图,室内暖色日光,画面清晰,细节丰富,自然肤质。
陈旧的出租房单间,斑驳的墙面挂着小幅装饰画,房间里有旧沙发和木质茶几,
茶几上散落着遥控器和杂物,茶几旁边放着一个塑料垃圾桶,
午后暖色阳光从窗口斜射进来。

每个分镜的提示词可以按下面的顺序拼接:

完整场景前缀
+ 角色身份和服装描述
+ 当前分镜的动作、表情和景别
+ 人物一致性约束

每段提示词末尾追加下面这句,帮助模型减少人物身份漂移:

人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

分镜 1:轻松吃面

【完整场景前缀】主角(参考图人物:身穿蓝色建筑工地施工服、头戴黄色安全帽的东亚年轻女子)
坐在旧沙发上,茶几上放着一大碗热气腾腾的面条。她右手拿筷子拌面,
左手举着手机阅读,表情轻松惬意。写实摄影,中景,暖色调。
人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

image

分镜 2:表情突然变震惊

【完整场景前缀】主角(参考图人物:身穿蓝色建筑工地施工服、头戴黄色安全帽的东亚年轻女子)
坐在沙发上,左手举着手机,表情从轻松突然变成震惊,眼睛瞪大,嘴巴微张,
手机屏幕亮着。写实摄影,近景特写,暖色调。
人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

image

分镜 3:把面条倒进垃圾桶

【完整场景前缀】主角(参考图人物:身穿蓝色建筑工地施工服、头戴黄色安全帽的东亚年轻女子)
站在茶几旁,双手端起大面碗,把整碗面条往旁边的塑料垃圾桶里倾倒,
面条正在倾泻而下,表情决绝又滑稽。写实摄影,中景,动作瞬间。
人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

image

分镜 4:后悔并捡回面条

【完整场景前缀】主角(参考图人物:身穿蓝色建筑工地施工服、头戴黄色安全帽的东亚年轻女子)
僵在原地,表情呆滞愣住。一只手把手机放在茶几上,另一只手伸进垃圾桶里,
把面条往碗里捡,姿态狼狈。写实摄影,中景,喜剧感。
人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

image

分镜 5:哭笑不得的收尾

【完整场景前缀】主角(参考图人物:身穿蓝色建筑工地施工服、头戴黄色安全帽的东亚年轻女子)
蹲在垃圾桶旁,手里端着捡回来的面碗,低头看着手机屏幕,
表情哭笑不得,带着生无可恋的感觉。写实摄影,近景,喜剧氛围。
人物长相、五官、脸型必须与参考图保持一致,不要改变人物身份。

image

五个分镜生成后,逐张下载并保存。建议按照 shot_01.png 到 shot_05.png 统一命名,这样交给后续视频工作流时不容易弄混。

这一阶段的几个经验

  • 角色标准图尽量选择正面、光线均匀、五官清楚的半身图。
  • 固定场景前缀,不要每个镜头都重新描述房间。
  • 一个分镜只表达一个主要动作,动作太多时模型更容易失控。
  • 只重做不满意的分镜,不要为了改一张图重新生成整组素材。
  • seed、提示词和输入图都要记录,后续复现时缺一不可。

用 Wan2.1 把分镜变成视频

静态分镜确认无误后,再进入图生视频。这里不再重新描述人物长相和房间风格,视频提示词主要描述“人物怎么动”和“镜头怎么动”。

加载图生视频工作流

图生视频工作流如下:

image

工作流文件会上传到 Git。加载工作流后,先确认四个模型下拉框:

节点模型
Load Diffusion Modelwan2.1_i2v_480p_14B_fp16.safetensors
Load CLIPumt5_xxl_fp8_e4m3fn_scaled.safetensors
Load VAEwan_2.1_vae.safetensors
Load CLIP Visionclip_vision_h.safetensors

参数设置如下:

节点参数
WanImageToVideowidth=832、height=480、length=81
KSamplersteps=30、cfg=6、sampler=euler、scheduler=normal、denoise=1.0
SaveVideofps=16,格式 mp4

width 和 height 建议设置为能够被 16 整除的值,832×480 是本次使用的安全配置。不同 Wan2.1 工作流对尺寸和参数的要求可能不同,最终以工作流节点说明为准。

五段动作提示词

在写实项目中,静态图已经确定了人物和画面风格,因此视频提示词不需要继续堆叠风格词,专注描述动作和镜头就够了。

分镜动作提示词
1young woman mixing noodles with chopsticks in right hand, holding phone in left hand, slight body movement, static camera, warm light, realistic
2facial expression changes from relaxed to shocked, eyes widen, head tilts back slightly, slow camera push in, realistic
3young woman stands up, lifts bowl with both hands and flips it, noodles pour into trash bin, exaggerated fast motion, static medium shot, realistic
4young woman freezes, slowly places phone on table, bends down and reaches into trash bin to grab noodles back into bowl, slow awkward motion, realistic
5young woman squats on floor, looks down at phone screen, shoulders slump, shakes head slightly, slow camera push in, realistic

每个分镜都使用对应的静态图作为输入图,再执行视频任务。五个任务可以连续提交,但显存紧张时建议逐个执行,避免多个任务同时加载模型导致 OOM。

提交任务前,可以这样记录数据:

cd /root
./bench.sh start "vid01"

视频生成完成后执行:

./bench.sh stop "vid01"

五个视频任务开始执行:

image

视频生成时间通常会明显长于单张图片,尤其是首次加载 Wan2.1 时。耐心等待任务完成,不要因为页面长时间没有变化就重复点击 Run,否则可能产生重复任务和额外显存占用。

最终生成结果如下:

image

最容易出问题的地方

1. 模型下载成功,但 ComfyUI 找不到

优先检查三件事:模型目录是否放对、文件是否下载完整、ComfyUI 是否在安装节点后重启。尤其是 --local_dir,路径多一层或少一层都可能导致模型列表中没有目标模型。

2. 五个分镜的人物不像同一个人

单纯重复角色描述通常不够。应该使用同一张角色标准图作为参考输入,同时固定服装、发型、年龄感和场景前缀。近景和动作幅度较大的镜头仍可能出现变化,需要人工挑选或局部重做。

3. 图片风格一致,但视频动作不自然

视频提示词不要写成一段完整的剧情介绍,而要拆成清楚的动作和镜头。例如“站起、抬碗、翻转、面条落入垃圾桶”比“她做出一系列滑稽动作”更容易被模型执行。

4. 显存不足或任务卡住

先降低视频分辨率、减少同时执行的任务数量,再检查是否有其他进程占用 GPU。可以用下面的命令实时查看显存:

watch -n 1 nvidia-smi

如果容器没有 watch,也可以直接重复执行 nvidia-smi。另外,首次运行模型时会发生权重加载,峰值显存和后续任务可能不同,性能比较时要尽量保持运行环境一致。

5. 记录脚本没有发现新产物

确认 GPU_LOG 指向的是 ComfyUI 实际输出目录,并且 start 的时间早于点击 Run 的时间。如果输出文件被保存到了其他目录,脚本自然无法列出来。

总结

SenseNova U1.5 Lite 适合做“画面确定”和“分镜迭代”,Wan2.1 负责把静态画面继续向动态内容推进。两者组合后,短剧、信息图、产品演示和批量素材生产都可以沿用这套思路。
当然,这套方案还谈不上完全自动化。角色一致性、动作连贯性和最终剪辑仍然需要人工检查,但相比每个镜头从零开始生成,参考图加工作流的方式已经能明显降低返工成本。

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/2301_78784268/article/details/164725124

文章来源转载

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--