WorkBuddy + 本地 ComfyUI 完全使用手册:从出图到视频生成

WorkBuddy + 本地 ComfyUI 完全使用手册:从出图到视频生成

在本地 MCP 链路跑通后,WorkBuddy 能做什么?怎么做?本文用真实测试案例告诉你------从文生图、文生视频到工作流调用、多阶段管道,每个场景都有可直接复制的提示词和参数。

本系列持续更新中......

Comfy MCP 公测:把 Claude、Cursor、CodeX、Hermes 和 WorkBuddy 变成你的创意技术专家
Comfy Cloud MCP Server 抢先体验申请图文教程
QClaw 配置 Comfy Cloud MCP,只需简单几步
WorkBuddy 接入 Comfy Cloud MCP 完整实录:从 DNS 污染到 31 个工具全部启用
WorkBuddy + 本地 Comfy MCP 实战:用自然语言调生成你的第一张 AI 图片
WorkBuddy 连接本地 ComfyUI:从零到出图的保姆级教程
WorkBuddy + 本地 ComfyUI Wan2.1 文生视频实战:从连续报错到成功出片的完整踩坑记录


目录


一、能力总览

WorkBuddy 连接本地 ComfyUI 后,你拥有以下能力:

能力 说明 典型耗时
文生图 文字描述 → 图片(SDXL/SD3.5/Flux 等) 8-30 秒
文生视频 文字描述 → 视频(Wan2.1 t2v) 2-5 分钟
图生视频 图片 + 提示词 → 视频(Wan2.2 Animate) 5-15 分钟
图片放大 ESRGAN 超分辨率(2x/4x) 5-15 秒
背景移除 BiRefNet 智能抠图 10-30 秒
工作流调用 加载已保存的工作流并执行 取决于工作流
工作流分析 可视化工作流结构 即时
模型管理 列出/搜索本地模型 即时

硬件基础:RTX 3090 24GB + 320 个自定义节点 + 57 个 checkpoint + 177 个 LoRA + 45 个 ControlNet


二、使用前的准备

2.1 确保两个进程都在运行

bash

复制代码
# 终端 1:启动 ComfyUI(保持窗口开着)
cd H:\PythonProjects3\Win_ComfyUI
python main.py --enable-manager --enable-assets --enable-triton-backend --async-offload --use-flash-attention --enable-dynamic-vram

# 终端 2:启动 MCP 服务器(保持窗口开着)
npx -y comfyui-mcp --http --port 9100

2.2 在 WorkBuddy 中确认连接器状态

  • 打开 WorkBuddy → 右上角连接器管理
  • comfyui-local 开关应为绿色(已信任)
  • 显示 113 个工具已启用

2.3 验证连接

直接对 WorkBuddy 说:

"检查一下本地 ComfyUI 的系统状态"

WorkBuddy 会调用 get_system_stats 工具,返回 GPU 型号、显存、队列状态等信息。


三、场景一:文生图(SDXL)

3.1 基本用法

直接用自然语言告诉 WorkBuddy:

"用本地 ComfyUI 生成一张赛博朋克城市的图片,霓虹灯,雨天,1024x1024"

3.2 推荐参数组合

风格 模型 采样器 步数 CFG 调度器
快速测试 sdxl_lightning_4step euler 4 1.0 normal
标准生成 sd_xl_base_1.0 dpmpp_2m 20 7.5 karras
高质量 sd_xl_base_1.0 dpmpp_2m_sde 30 7.0 karras
动漫风格 (你的动漫 SDXL 模型) euler_ancestral 25 7.0 normal

3.3 实测案例

提示词:

复制代码
masterpiece, best quality, a red vintage sports car parked on a coastal 
highway at sunset, ocean waves in background, golden hour lighting, 
cinematic, highly detailed, 8k uhd

参数:sd_xl_base_1.0 / dpmpp_2m / karras / 20 步 / CFG 7.5 / 1024x1024

结果:8 秒出图,质量清晰

3.4 ⚠️ Lightning 模型避坑

SDXL Lightning 4-step 模型必须使用以下参数,否则出白图:

复制代码
采样器:euler(不是 dpmpp_2m_sde!)
调度器:normal(不是 karras!)
CFG:1.0(不是 7.5!)
步数:4

四、场景二:文生视频(Wan2.1 t2v)

4.1 基本信息

项目 值
模型 wan2.1_t2v_1.3B_fp16.safetensors
文本编码器 UMT5-XXL bf16
VAE Wan2_1_VAE_bf16.safetensors
默认分辨率 832×480
默认帧数 81 帧 @ 20fps ≈ 4 秒
采样步数 20 步
RTX 3090 生成时间 约 3 分钟

4.2 使用方法

直接告诉 WorkBuddy:

"用 Wan 生成一段猫咪追球的 4 秒视频"

或者更具体:

"用本地 ComfyUI 的 Wan2.1 t2v 模型生成一段 4 秒视频:一只橘猫在花园里追红色小球,阳光明媚,动态运动,832x480 分辨率"

4.3 实测案例

提示词:

复制代码
a cute orange cat chasing a red ball across a green garden lawn, 
running playfully, dynamic motion, sunny day, vivid colors, 4k, high quality

负面提示词:

复制代码
low quality, blurry, deformed, ugly, watermark, text, static, 
no motion, worst quality, jpeg artifacts

参数:

  • 分辨率:832×480
  • 帧数:81(@ 20fps = ~4 秒)
  • 采样器:euler
  • 步数:20
  • CFG:3.5
  • Shift:5.0
  • Seed:42

结果:174 秒生成,输出 MP4 文件 1.3MB

4.4 视频参数调整

需求 修改
更长视频 num_frames 改为 121(6 秒)/ 161(8 秒),帧数必须是 4 的倍数+1
更高分辨率 width/height 改为 1280×720(显存需求大增)
更快生成 steps 改为 15(质量略降)
更高质量 steps 改为 30(时间翻倍)
不同风格 修改 positive_prompt
固定种子 保持 seed 不变可复现结果

4.5 工作流节点结构

复制代码
LoadWanVideoT5TextEncoder ──→ WanVideoTextEncode ──→ WanVideoSampler ──→ WanVideoDecode ──→ VHS_VideoCombine
                                                      ↑                    ↑
WanVideoModelLoader ─────────────────────────────────┘                    │
WanVideoEmptyEmbeds ─────────────────────────────────→ ┘                  │
WanVideoVAELoader ──────────────────────────────────────────────────────→┘

节点说明:

节点 作用 关键参数
LoadWanVideoT5TextEncoder 加载 UMT5-XXL 文本编码器 model_name, precision, load_device
WanVideoModelLoader 加载视频扩散模型 model, base_precision, quantization
WanVideoTextEncode 编码文本提示词 positive_prompt, negative_prompt
WanVideoEmptyEmbeds 创建空图像嵌入(文生视频用) width, height, num_frames
WanVideoVAELoader 加载 VAE 解码器 model_name, precision
WanVideoSampler 核心采样器 steps, cfg, shift, seed, scheduler
WanVideoDecode 将潜空间解码为视频帧 enable_vae_tiling, tile_x/y
VHS_VideoCombine 合成视频文件 frame_rate, format

五、场景三:调用已有工作流

5.1 查看已有工作流

你本地保存了 68 个工作流。告诉 WorkBuddy:

"列出我本地 ComfyUI 的所有视频相关工作流"

5.2 可用工作流示例

工作流文件 功能
video_wan2_2_14B_animate.json Wan2.2 动作迁移视频
Wan-Animate【动作迁移】换人-高质量+高细节.json 高质量换人动画
Kandinsky 5.0 Video Lite 图生视频video_kandinsky5_i2v.json Kandinsky 图生视频
image_qwen_image_edit_2509.json 千问图片编辑
flux_kontext_dev_basic.json Flux 上下文编辑
whisper_video_subtitles_workflow.json 视频自动字幕
扩图flux_fill_outpaint.json 图片扩边

5.3 调用方式

"运行我的 Wan2.2 Animate 工作流,用这张图片作为输入"

WorkBuddy 会:

  1. list_workflows --- 找到工作流
  2. analyze_workflow --- 分析参数需求
  3. 提示你提供必要输入(如参考图片、提示词)
  4. enqueue_workflow --- 提交执行
  5. 轮询等待完成

六、场景四:多阶段管道

6.1 概念

把多个生成阶段串起来,前一步的输出作为后一步的输入。

6.2 示例管道

"生成一只猫的图 → 放大 4 倍 → 抠去背景"

WorkBuddy 会编排:

复制代码
阶段 1: generate_image("a cute cat") → output/cat.png
    ↓
阶段 2: upscale_image(cat.png, scale=4) → output/cat_4x.png
    ↓
阶段 3: remove_background(cat_4x.png) → output/cat_cutout.png

6.3 更复杂的管道

"生成一只猫 → 用 Wan2.2 Animate 做成视频 → 加上字幕"

复制代码
阶段 1: generate_image → cat.png
阶段 2: animate_image(cat.png) → cat.mp4
阶段 3: add_subtitles(cat.mp4, "A cat playing") → cat_subtitled.mp4

七、场景五:图生视频(Wan2.2 Animate)

7.1 前提条件

你有以下 Wan2.2 模型:

  • Wan2_2-Animate-14B_fp8_e4m3fn_scaled_KJ.safetensors --- 动作迁移
  • Wan2.2-Animate-14B-Q4_K_S.gguf --- GGUF 量化版
  • Wan2.2-Fun-A14B-Control_HighNoise/LowNoise-Q5_K_S.gguf --- 控制生成

7.2 使用方式

Wan2.2 Animate 需要参考视频来提取动作,然后将动作迁移到新生成的角色上。

"用 Wan2.2 Animate 把这个跳舞视频的动作迁移到一只猫身上"

7.3 注意事项

  • Wan2.2 Animate 是 14B 模型,RTX 3090 24GB 需要使用 block swap
  • 建议使用 GGUF 量化版(Q4_K_S)以减少显存占用
  • 参考视频建议 5-10 秒,分辨率不超过 720p
  • 生成时间约 10-30 分钟(取决于帧数和分辨率)

八、自然语言指令速查表

8.1 图片生成

说法 WorkBuddy 会做什么
"生成一张描述的图片" 选择合适模型,构建 txt2img 工作流
"用 SDXL 生成描述,1024x1024" 指定模型和分辨率
"用 Flux 生成描述" 切换到 Flux 模型
"换一个种子重新生成" 修改 seed 值重新提交
"把这张图放大 4 倍" 使用 ESRGAN 放大
"去掉这张图的背景" 使用 BiRefNet 抠图

8.2 视频生成

说法 WorkBuddy 会做什么
"用 Wan 生成一段描述的 4 秒视频" 构建 Wan2.1 t2v 工作流
"生成一段更长的视频(8 秒)" 增加 num_frames 到 161
"提高视频分辨率到 720p" 修改 width/height
"用我的 Wan2.2 Animate 工作流" 加载已有工作流执行

8.3 工作流操作

说法 WorkBuddy 会做什么
"列出我的所有工作流" 调用 list_workflows
"分析我的换头工作流" 调用 analyze_workflow + 可视化
"检查这个工作流用的模型" 分析节点参数
"修改这个工作流的采样步数为 30" 调用 modify_workflow

8.4 系统管理

说法 WorkBuddy 会做什么
"检查 ComfyUI 状态" 调用 get_system_stats
"查看当前队列" 调用 get_queue
"列出本地所有模型" 调用 list_local_models
"取消正在运行的任务" 调用 cancel_job

九、参数调优指南

9.1 图片生成参数

参数 作用 推荐值
steps 采样步数,越多越精细但越慢 20-30(标准)/ 4(Lightning)
cfg 提示词权重,越高越忠实提示词 7-8(标准)/ 1.0(Lightning)
sampler_name 采样算法 dpmpp_2m(通用)/ euler(Lightning)
scheduler 噪声调度 karras(通用)/ normal(Lightning)
seed 随机种子 任意整数,固定可复现
denoise 去噪强度 1.0(完整生成)/ 0.3-0.7(图生图)

9.2 视频生成参数

参数 作用 推荐值
num_frames 视频帧数(4n+1) 81(4秒)/ 121(6秒)/ 161(8秒)
frame_rate 帧率 16-24
width/height 分辨率 832×480(快速)/ 1280×720(高清)
steps 采样步数 15-25
cfg 提示词权重 3.0-5.0
shift 噪声偏移 3.0-7.0
scheduler 采样器 euler / unipc

9.3 显存优化

RTX 3090 24GB 的显存管理策略:

策略 设置 适用场景
T5 编码器卸载 load_device: offload_device 所有视频生成
VAE 分块解码 enable_vae_tiling: True 高分辨率视频
Block Swap blocks_to_swap: 20-35 14B 大模型
模型精度 bf16 或 fp8_e4m3fn 大模型省显存
force_offload True 采样后释放显存

十、常见问题与避坑

10.1 视频生成相关

Q: T5 编码器报错 "fp8 scaled is not supported"

A: LoadWanVideoT5TextEncoder 不支持 fp8 scaled 模型。使用 bf16 版本的 UMT5-XXL。

Q: VAE 加载报错 "missing precision argument"

A: WanVideoVAELoader 必须显式提供 precision 参数(如 bf16),即使文档标记为 Optional。

Q: 生成时间太长

A: 1.3B 模型 81 帧 20 步约 3 分钟。如需更快:减少步数到 15、降低分辨率到 832×480、减少帧数到 65。

Q: 视频质量模糊

A: 增加 steps 到 25-30,提高 CFG 到 4.0-5.0,使用更好的提示词描述。

10.2 图片生成相关

Q: Lightning 模型出白图

A: 必须用 euler + normal + CFG 1.0 + 4 steps。不能用 dpmpp_2m_sde 或 karras。

Q: 中文提示词效果差

A: ComfyUI 的 CLIP/T5 编码器主要训练于英文数据。建议用英文提示词。

10.3 连接相关

Q: WorkBuddy 调用 MCP 工具失败

A: 重启 MCP 服务器后,WorkBuddy 需要重新连接。去连接器页面关掉再开 comfyui-local。

Q: EADDRINUSE 端口占用

A: netstat -ano | findstr :9100 找到 PID,taskkill /PID <PID> /F 结束,再重启。


十一、视频生成工作流 JSON 模板

以下是实测成功的完整 Wan2.1 t2v 文生视频工作流 JSON,可直接通过 ComfyUI API 提交:

json

复制代码
{
  "1": {
    "class_type": "LoadWanVideoT5TextEncoder",
    "inputs": {
      "model_name": "models_eddy大佬_t5_umt5-xxl-enc-bf16_fully_uncensored.safetensors",
      "precision": "bf16",
      "load_device": "offload_device"
    }
  },
  "2": {
    "class_type": "WanVideoModelLoader",
    "inputs": {
      "model": "wan2.1_t2v_1.3B_fp16.safetensors",
      "base_precision": "bf16",
      "quantization": "disabled",
      "load_device": "main_device"
    }
  },
  "3": {
    "class_type": "WanVideoTextEncode",
    "inputs": {
      "positive_prompt": "YOUR_POSITIVE_PROMPT_HERE",
      "negative_prompt": "low quality, blurry, deformed, ugly, watermark, text, static, no motion, worst quality",
      "t5": ["1", 0],
      "force_offload": true,
      "model_to_offload": ["2", 0]
    }
  },
  "4": {
    "class_type": "WanVideoEmptyEmbeds",
    "inputs": {
      "width": 832,
      "height": 480,
      "num_frames": 81
    }
  },
  "5": {
    "class_type": "WanVideoVAELoader",
    "inputs": {
      "model_name": "Wan2_1_VAE_bf16.safetensors",
      "precision": "bf16"
    }
  },
  "6": {
    "class_type": "WanVideoSampler",
    "inputs": {
      "model": ["2", 0],
      "image_embeds": ["4", 0],
      "text_embeds": ["3", 0],
      "steps": 20,
      "cfg": 3.5,
      "shift": 5.0,
      "seed": 42,
      "force_offload": true,
      "scheduler": "euler",
      "riflex_freq_index": 0
    }
  },
  "7": {
    "class_type": "WanVideoDecode",
    "inputs": {
      "vae": ["5", 0],
      "samples": ["6", 0],
      "enable_vae_tiling": true,
      "tile_x": 256,
      "tile_y": 256,
      "tile_stride_x": 128,
      "tile_stride_y": 128
    }
  },
  "8": {
    "class_type": "VHS_VideoCombine",
    "inputs": {
      "images": ["7", 0],
      "frame_rate": 20,
      "loop_count": 0,
      "filename_prefix": "wan_video_output",
      "format": "video/h264-mp4",
      "pingpong": false,
      "save_output": true
    }
  }
}

使用方法:

  1. 将 YOUR_POSITIVE_PROMPT_HERE 替换为你的提示词
  2. 通过 ComfyUI API 提交:POST http://127.0.0.1:8188/prompt,body 为 {"prompt": <上述JSON>}
  3. 轮询 GET http://127.0.0.1:8188/history/{prompt_id} 等待完成
  4. 完成后视频保存在 output/ 目录

附录:测试记录汇总

测试 类型 模型 参数 耗时 结果
#1 文生图 sdxl_lightning_4step dpmpp_2m_sde/karras/CFG1.5/4步 8s 白图(参数错误)
#2 文生图 sdxl_lightning_4step euler/normal/CFG1.0/4步 6s 成功(偏离提示词)
#3 文生图 sd_xl_base_1.0 dpmpp_2m/karras/CFG7.5/20步 8s 成功
#4 文生视频 wan2.1_t2v_1.3B euler/20步/CFG3.5/81帧 174s 成功

写在最后:本地 ComfyUI + WorkBuddy 的组合,让你在 Claude 封禁中国账号、Comfy Cloud MCP 不可用的情况下,依然拥有完整的 AI 图像/视频生成能力。零订阅费、完全离线、全隐私------你的 RTX 3090 就是最好的云端 GPU。