AI绘画工作流实战:用Stable Diffusion批量生成三张Q版头像
【稿件过程】依然是三张“摸鱼大头”更新:AI 辅助头像插画批量出图与过程复盘
这次我们看一个挺有意思的话题:画师圈常见的“摸鱼大头”更新,也就是平时顺手画的 Q 版头像、单色或半成品大头插画,一次更新两三张,当作练习或者粉丝互动。很多人以为这种产出全靠手绘灵感和手感,但实际上,在 AI 绘画辅助工作流已经很成熟的现在,“摸鱼大头”也可以用 Stable Diffusion WebUI 或者 ComfyUI 做批量草图、批量构图、局部修正,甚至在保持个人画风的前提下把“随手画画”变成一套可复现、可管理的创作流程。
这个流程的核心不是让 AI 完全代笔,而是把“摸鱼”中重复性最高的部分拆出来:构图、线稿倾向、配色方案、三张一组的批量生成节奏、以及后期把 AI 草稿转化成个人完稿的步骤。这篇文章会把整套工作流拆开讲,从环境准备、模型选择、提示词设计,到三张一组的批量出图,再到出图后的局部重绘、高清修复和过程记录。读完你能知道这方案适不适合自己、本机能不能跑、批量任务怎么管理、以及最容易踩到哪些坑。
1. 核心能力速览
| 能力项 | 说明 |
|---|---|
| 项目类型 | AI 辅助头像插画创作流程,适用于“摸鱼大头”、Q 版头像、日常更新 |
| 主要功能 | 批量构图、三张一组出图、局部重绘、高清修复、画风复现、创作过程记录 |
| 底层工具 | Stable Diffusion WebUI / ComfyUI,按实际安装版本为准 |
| 启动方式 | 一键启动包或命令行启动 WebUI / ComfyUI |
| 硬件要求 | NVIDIA 显卡优先,常见 6G 以上显存可跑大部分 1.5 系列模型;8G 以上跑 XL 系列更稳妥,具体以本机测试为准 |
| CPU 推理 | 部分工作流可用 CPU 跑,但速度较慢,不建议批量出图 |
| 接口能力 | WebUI 自带 API 接口,ComfyUI 也有 API 模式,可用于批量任务调用 |
| 批量能力 | 支持,可通过参数组合一次生成多张候选图 |
| 适合场景 | 画师创作草图、头像投稿、粉丝互动更新、个人练习、风格实验 |
这里需要说明一点:显存占用和模型选择强相关,不同的底模、不同分辨率、是否开高清修复,占用差距很大。不要在没有实测前就套用别人的数字,最稳妥的做法是用自己的配置跑一次小参数测试,再逐步上调。
2. 适用场景与使用边界
“三张摸鱼大头更新”这个动作,本身有两个核心诉求:产出速度和更新节奏。手工画三张大头可能要小半天,但如果先用 AI 铺好构图、光影大概方向,画师只需要在此基础上调整线条和细节,速度会快很多。适合这些场景:
- 个人社交账号的头像更新,一次发三张不同表情或服装的 Q 版大头。
- 给朋友或粉丝画头像时,先出多种构图方案让对方选。
- 练习某个画风或者人体比例,用 AI 批量出参考草稿。
- 同人创作里的“练手”稿,快速试衣装、配色、发型的组合。
- 建立自己的“摸鱼画风库”,把每次 AI 生成的构图分门别类保存,后续用手绘或板绘继续完成。
使用边界同样重要。AI 绘画的素材来源复杂,如果打算长期创作并对外发布,这几个点必须确认:
- 使用的底模、LoRA、嵌入文件是否允许商用或公开二次创作。很多模型只允许个人学习使用。
- 如果“摸鱼大头”是某部作品的角色,需要考虑原作方的版权政策,不要用 AI 量产同人图去做未经授权的商业售卖。
- 头像涉及真人肖像时,必须获得本人明确授权,不能拿别人的照片直接做头像生成或批量换脸。
- AI 生成的草稿再手绘完稿,对外发布时是否需要标注 AI 参与,不同平台规则不同,建议按平台要求标注。
3. 本地部署 AI 绘画环境准备
先强调结论:如果只是想快速试玩,建议先装一个整合包版 WebUI;如果之后要稳定批量出图并做精细控制,再切到 ComfyUI。两个工具的依赖基本一致,都是 Python + PyTorch + CUDA 这套体系。
3.1 操作系统与显卡要求
- Windows 10 / Windows 11 是整合包最省心的环境,驱动和 CUDA 版本匹配比较直接。
- Linux 服务器更适合长时间批量任务,但需要自己装 Python 环境和 NVIDIA 驱动。
- macOS 可以跑 CPU 推理,速度不理想,不建议拿来做批量“摸鱼”。
显卡方面,NVIDIA 显卡兼容性最好。显存 6G 到 8G 是比较常见的入门区间,跑 SD 1.5 系列模型和中小分辨率批量出图问题不大。如果要用 XL 模型或者开高分修复,建议 8G 以上显存。AMD 显卡或核显需要额外配置 DirectML 或 ROCm,这里不展开,优先级低于 NVIDIA。
3.2 基础组件检查清单
| 组件 | 说明 |
|---|---|
| NVIDIA 驱动 | 建议更新到较新版本,NVIDIA 官网或显卡厂商工具安装 |
| CUDA | 不一定需要单独装全局 CUDA,PyTorch 自带运行时;但驱动必须和 PytTorch 后端兼容 |
| Python | 如果用整合包一般自带;手搓环境建议 Python 3.10/3.11 |
| PyTorch | WebUI 首次启动会检查;ComfyUI 需要手动安装 |
| 磁盘空间 | 程序本体约 3G 到 5G,模型文件每个 2G 到 7G,加上生成图片,建议预留 30G 以上 |
| 内存 | 16G 起步,32G 更安心 |
打开终端输入nvidia-smi可以看到当前驱动版本和显存总量,这是排查环境最快的命令。
3.3 端口和网络准备
WebUI 默认端口通常是 7860,ComfyUI 默认 8188。第一次启动前先确认端口没被占用:
# Windows netstat -ano | findstr 7860 netstat -ano | findstr 8188被占用就换端口启动。
4. 安装部署与启动方式
4.1 采用整合包启动 WebUI
如果没有特殊需求,先用整合包把环境跑起来是最快的。大致的目录结构是:
sd-webui/ ├── models/ # 模型目录 │ ├── Stable-diffusion/ # 大模型放这里 │ ├── Lora/ # LoRA 放这里 │ ├── VAE/ # VAE 文件 │ └── embeddings/ # 负面嵌入等 ├── outputs/ # 输出目录 ├── webui-user.bat # Windows 一键启动 └── webui.sh # Linux/macOS 启动脚本整合包的启动逻辑通常是双击webui-user.bat,脚本会自动激活虚拟环境、检查依赖并拉起服务。启动成功后终端会打印一行本地访问地址,例如:
Running on local URL: http://127.0.0.1:7860在浏览器打开这个地址,能看到 WebUI 界面就说明启动成功。这里要提醒一下:整合包版本差异大,不要照搬别人博客里的固定启动参数,最稳妥的办法是看压缩包自带的 README。
4.2 命令行安装 ComfyUI
ComfyUI 更贴近“节点化工作流”,批量任务更好复现。假设你已经安装好 Python 和 Git,可以这样做:
git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI # 创建虚拟环境 python -m venv venv # Windows 激活虚拟环境 venv\Scripts\activate # Linux/macOS 激活虚拟环境 source venv/bin/activate # 安装依赖 pip install -r requirements.txt启动 ComfyUI:
python main.py --port 8188浏览器访问http://127.0.0.1:8188,如果看到节点编辑界面,就说明部署成功。ComfyUI 会自带一个默认工作流模板,可以先用它跑通文生图,再逐步改成自己的“摸鱼大头”工作流。
5. 模型选择与提示词设计
“摸鱼大头”给人的观感通常是:大头、简练、略带草稿感、色彩比较轻。实现这种效果需要三样东西:底模、正向提示词、负面提示词。
5.1 底模选择思路
底模决定了画风起点。不同底模对“大头”的理解完全不一样,建议用同样的提示词在两个模型上各跑一批图对比:
- 偏向日系平面的模型:适合 Q 版头像、二次元同人、萌系手感。
- 偏向写实的模型:适合半写实的头像或厚涂方向。
- 特定画师风格 LoRA:如果希望复现某个画师的笔触,可以使用对应的 LoRA,但要确认授权。
不要一次性装几十个模型,先用一个自己顺手的底模跑通流程。真正影响“摸鱼感”的往往是后期处理和微调,而不是频繁换模型。
5.2 正向提示词模板
提示词不是越长越好。对“大头头像”这类任务,建议结构是:
画质词 + 主体词 + 视角/构图词 + 风格词 + 细节词一个可参考的例子:
masterpiece, best quality, chibi, head and shoulders portrait, cute girl, soft smile, simple background, warm lighting, painterly style, sketch lines, solo, looking at viewer中文意思是:杰作、最高质量、Q版、头肩肖像、可爱女孩、温柔微笑、简单背景、暖光、绘画感笔触、草图线条、单独人物、看向观众。
关于“三张摸鱼大头”的更新,可以每次固定主体,只变化表情、服装或背景:
- 第三张可以调成不同表情:
smile、slightly angry、surprised - 也可以固定角色姿势,只改配色:
red hoodie、blue dress - 还可以用“negative prompt”来控制不要出现多余元素
5.3 负面提示词模板
负面提示词的通用性比较强,可以参考:
lowres, bad anatomy, bad hands, missing fingers, extra digits, mutated hands, fused fingers, too many fingers, long neck, watermark, signature, text, logo, blurry, jpeg artifacts这里的重点是手和手指的修复:头像虽然是大头构图,但只要画面带手,手崩的概率就很高。负面提示词只能降低概率,不能完全避免,后期常用局部重绘修手。
6. 三张一组的批量出图与“摸鱼”工作流
“更新三张”这个动作,在 WebUI 里可以用“脚本”或者“固定种子 + 多批次数”实现,在 ComfyUI 里可以通过多次采样节点实现。下面分别给思路。
6.1 WebUI 批量出图方案
WebUI 的“批量大小”和“批次数”要区分开:
- Batch size:一次处理多少张,越多越吃显存。
- Batch count:一共跑几轮。
对大多数人的显卡,建议 Batch size 设为 1,Batch count 设为 3 到 6,这样一次任务能出多张图,但显存压力不大。如果想确保三张图是不同表情但构图一致,可以固定种子,只改变提示词里的表情描述,然后逐次生成。
在img2img标签下也有批量处理能力,配合“缩放模式”和“重绘幅度”,可以批量把线稿变成上色稿。对于一个简单的“三张摸鱼”工作流,操作顺序是:
- 先跑一个
txt2img,确定构图和角色设定。 - 把满意的图传到
img2img。 - 修改提示词中的表情、服装等元素。
- 保持种子不变,出第二张、第三张。
这样出来的三张图在角色一致性上会比完全随机生成高出不少。
6.2 ComfyUI 工作流思路
ComfyUI 适合保存成可复用的 json 工作流。它的批量任务逻辑更灵活:可以同时加载多个提示词文本,也可以串联多个采样节点。核心节点包括:
CheckpointLoaderSimple:加载大模型。CLIPTextEncode:正向、负向提示词。EmptyLatentImage:设定宽高和批量数量。KSampler:设置步数、CFG、采样器。VAEDecode:解码图片。SaveImage:保存图片。
如果想做“三张一批但不同表情”,可以复制一组CLIPTextEncode+KSampler子流程,然后并行输出到同一张图片网格,也可以直接写一个外部脚本循环提交任务。
6.3 批量任务的目录管理
批量出图最怕输出混乱。建议在outputs下按日期和主题建目录:
outputs/ └── 2025-06-xx_mofish_da/ ├── raw/ # 第一批 AI 原始出图 ├── selected/ # 挑出来的候选图 ├── retouched/ # 局部重绘后的图 └── final/ # 最终发布用的三张这个目录看起来简单,但实际很管用。尤其是“三张更新”需要隔几天回看半个月前的创作,没有目录规划会非常痛苦。
7. 功能测试与效果验证
部署完成、工作流搭好之后,不要一上来就跑大批量。先做一轮小规模验证,确认每个环节都稳定,再逐步扩大。
7.1 文生图基础测试
测试目的:验证环境能正常出图,底模和提示词能产生符合“大头”方向的画面。
操作步骤:
- 打开 WebUI,选择已安装的底模。
- 填入上文的正向、负向提示词。
- 分辨率先设置 512×512 或 768×768,不要一上来开 1024。
- 步数 20 到 25,CFG 7 左右。
- 点击“Generate”。
判断标准:能在合理时间生成一张图,且图中角色没有明显的脸部或结构崩坏。第一次跑出白图或黑图,多半是 VAE 或模型文件问题;如果生成时间异常长,要观察显存是否已经爆掉。
7.2 三张批量生成测试
测试目的:验证批量任务能否连续跑三张不出错。
操作步骤:
- 固定种子。
- 把三张的提示词分别整理成三个文本,或者在提示词中切换表情词。
- 用 Batch count = 3 跑一次。
判断标准:三张图都能生成,角色一致性基本保持,表情或服装有明显差异。如果第二张开始出现重复的同一张图,可能是种子没有变化,需要手动修正种子或加入random参数。
7.3 局部重绘测试
测试目的:确认 AI 生成的“翻车手”或“崩坏脸”可以被修复。
操作步骤:
- 把需要修复的图发送到
img2img的inpaint标签。 - 用画笔遮罩住崩坏区域。
- 设置重绘幅度 0.4 到 0.6。
- 点击生成。
判断标准:遮罩区域的细节被重新绘制,且整体画风没有明显变化。如果重绘后颜色断层,考虑降低重绘幅度,或加入denoising strength的阶梯测试。
7.4 高清修复测试
测试目的:验证小图放大后不会糊成一片。
操作步骤:
- 对一张 512 或 768 的图开启高清修复。
- 放大倍率选择 1.5 或 2。
- 重绘幅度控制在 0.3 到 0.5。
判断标准:放大后线条更清晰,皮肤和头发纹理自然。如果放大后画面变形,可能是重绘幅度太高,或者放大算法和模型不匹配。
8. 接口 API 与批量任务
如果“三张摸鱼大头”不只是自己玩玩,而是要做成一个定期更新的自动化流程,那 WebUI 和 ComfyUI 都提供了 HTTP API。搭建好之后,可以通过脚本批量提交任务,把产出过程从“手动点击”变成“批量脚本”。
8.1 WebUI API 调用示例
WebUI 启动时通常自带 API。文生图的接口路径一般是POST /sdapi/v1/txt2img,下面是一个 Python 调用示例,注意实际项目需要按你的 WebUI 地址和参数调整:
import requests import base64 import io from PIL import Image url = "http://127.0.0.1:7860/sdapi/v1/txt2img" # 三张大头的三个提示词变体 prompts = [ "masterpiece, best quality, chibi, head and shoulders portrait, cute girl, smile, simple background", "masterpiece, best quality, chibi, head and shoulders portrait, cute girl, angry, simple background", "masterpiece, best quality, chibi, head and shoulders portrait, cute girl, surprised, simple background", ] for idx, prompt in enumerate(prompts): payload = { "prompt": prompt, "negative_prompt": "lowres, bad anatomy, bad hands, watermark, text", "steps": 25, "cfg_scale": 7, "width": 768, "height": 768, "batch_size": 1, } response = requests.post(url, json=payload, timeout=120) data = response.json() image_data = base64.b64decode(data["images"][0]) image = Image.open(io.BytesIO(image_data)) image.save(f"output_{idx}.png") print(f"第 {idx + 1} 张生成完成")这个脚本只是最简版本。实际使用时建议增加失败重试和超时控制,因为批量任务里偶发的显卡 OOM 或者 API 超时会直接中断整个循环。
8.2 ComfyUI API 思路
ComfyUI 启动后访问http://127.0.0.1:8188,可以在“工作流”菜单中把节点图导出为 json,提交到 API 时把这个 json 作为请求体发送。
大致调用结构是:
import requests import json workflow = json.load(open("mofish_workflow.json")) url = "http://127.0.0.1:8188/prompt" response = requests.post(url, json={"prompt": workflow}, timeout=60) print(response.json())ComfyUI API 是异步提交,真正的出图结果需要通过 WebSocket 或轮询任务状态获取,比 WebUI 的同步请求要复杂。如果用 ComfyUI 做批量,建议先跑通一个任务再写循环,避免节点参数不对导致重复空跑。
8.3 批量任务的错误处理
批量任务最容易遇到的问题依次是:显卡显存不足、API 连接中断、某一张图崩坏导致整个流程不继续。对应做法:
- 每次任务前先检查显存剩余量,必要时
nvidia-smi --query-gpu=memory.used,memory.total --format=csv看一下占用。 - 给脚本加超时和重试机制,单张图失败不要影响整个批次。
- 每个批次把图片保存到带时间戳的子目录,方便失败后定位是哪一批产生的。
9. 资源占用与性能观察
关于显存占用,我不能给你一个“三张图 = 多少 G”的固定结论,因为参数组合太多。但可以通过一套方法快速了解你机器能跑多大。
9.1 观察工具
在生成图片的同时,打开另一个终端窗口运行:
nvidia-smi -l 2这会每 2 秒刷新一次显存和利用率。重点观察生成过程中的峰值显存,而不是空闲值。
9.2 影响性能的主要参数
| 参数 | 影响 |
|---|---|
| 分辨率 | 512×512 和 1024×1024 的显存消耗差距很大 |
| Batch size | 一次生成多张会明显增加峰值显存 |
| 高清修复 | 放大阶段会在原图基础上叠加一次采样,额外消耗显存 |
| 步数 steps | 对显存影响不大,主要影响生成时间 |
| 模型类型 | SDXL 系列通常比 SD 1.5 更吃显存 |
| ControlNet / LoRA 数量 | 数量越多,显存和耗时都可能上升 |
如果发现显存不足,优先降低 Batch size 和分辨率,其次减少高清修复的重绘幅度;再不行就换更轻量的大模型。
9.3 关于 CPU 推理
CPU 可以实现同样的生成,但速度慢很多倍,只适合验证流程,不适合“每次三张”的批量更新。如果只有核显或者 AMD 集显,可以考虑先在线平台试跑,不要勉强本地部署。
10. 常见问题与排查方法
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 启动后页面打不开 | 端口被占用或服务没起来 | 看终端日志,netstat查端口 | 换端口重启,或关掉占用端口的进程 |
| 首次启动卡在“Installing requirements” | 网络原因或 Python 环境异常 | 看日志中的具体报错 | 使用国内镜像源安装依赖,或换整合包 |
| 出图全黑 | VAE 缺失或模型加载失败 | 查看命令行错误信息 | 下载合适的 VAE 并放到指定目录,重新勾选 |
| 出图全是噪点 | 模型文件损坏或采样器参数异常 | 换一个模型测试 | 重新下载模型,恢复默认采样参数 |
| 人脸崩坏 | 模型本身限制或提示词不够具象 | 换底模或增加人脸相关正面词 | 使用局部重绘修复,或加入 face detail LoRA |
| 手部崩坏 | 小分辨率下生成手部本来就难 | 降低重绘幅度,只遮罩手部区域 | 用inpaint重新画手,或者后期手动修 |
| 批量任务跑到一半 OOM | 显存峰值超限 | 观察nvidia-smi峰值 | 减小 Batch size,关掉其他占用显存的程序 |
| API 请求超时 | 单张生成时间过长 | 检查日志,观察是否卡在采样阶段 | 增加超时时间,或降低当前任务的复杂度 |
| 同一批次出图几乎一样 | 种子或提示词没有变化 | 检查脚本中种子和 prompt 变量 | 手动修改种子,或对提示词增加变化量 |
| 生成图片有官方水印痕迹 | 模型文件被打包者二次加工 | 查看模型来源和使用说明 | 更换来源明确的模型文件 |
以上是通用排查思路。碰到具体报错时,第一件事是看 WebUI 或 ComfyUI 终端的完整堆栈信息,把报错贴到搜索框里查,而不是凭感觉乱改参数。
11. 最佳实践与使用建议
11.1 先小后大
第一次跑工作流,先设置 512×512、步数 20、Batch count 1,跑通后再逐步增加分辨率和批量数量。小参数能快速验证“环境没问题、模型没问题、提示词方向基本对”,这是批量前的必要步骤。
11.2 保留最小可运行工作流
在 ComfyUI 里把一套能稳定出“三张摸鱼大头”的工作流导出成 json,并放在项目目录里。以后换机器或者复现时,直接加载 json 就能恢复,不需要重新从零开始搭节点。
11.3 分目录管理素材与输出
模型文件、输入素材、输出结果建议分开放。原始 AI 出图不要直接覆盖,同一张图的不同修图版本用_v1、_v2后缀区分。三张最终稿统一放到final目录。
11.4 批量任务要加日志和重试
如果写了批量脚本,每一张图生成后都打一行日志,记录时间、参数、输出路径。失败时要有重试机制,连续失败超过三次就自动停止并发通知,避免脚本空转几个小时产出全是崩图。
11.5 接口服务要限制访问范围
如果打开了 API 服务,默认绑定地址建议设为127.0.0.1,不要暴露到公网。公网访问意味着任何人都可能调用你的显卡跑图,既占用资源也有可能产生不合规内容。需要远程使用时,建议加一层带密码的反向代理。
11.6 涉及版权和肖像的合规要求
这句话值得单独强调:如果“摸鱼大头”是对某个动画角色的二创,需要确认原作方的同人创作许可范围。如果是给真人朋友画头像,必须拿到对方授权。如果之后要接约稿、开橱窗或者把成品做成周边出售,还要进一步确认底模、LoRA 的商用条款,否则后续很容易产生版权纠纷。
11.7 发布前做效果复核
AI 批量出图虽然快,但不代表成品可以直接发布。发布前至少检查三件事:脸部细节是否自然、手部结构是否合理、画面中有没有多余的文字或者水印残留。这一步不能省。
11.8 建立自己的画风偏好库
跑多了之后,把所有“被选中”的图按风格标签归档,标注好当时用了哪个底模、哪组提示词、哪个种子。时间久了,就可以在自己偏好的参数区间内快速生成稳定风格的大头图,而不是每次从零试。
12. 总结与下一步
“三张摸鱼大头更新”看起来只是画手日常,但真要把这个动作做成稳定产出,其实非常依赖流程化。用 AI 铺构图、批量出候选图、局部修复、高清放大、最终手绘或板绘收尾,这套链路先跑通,再谈量产。最容易踩的坑是前面提到的三件:不给模型确认授权就公开使用、批量任务不设失败重试、出图之后不检查直接发布。
建议先做的第一件事:装好 WebUI 或 ComfyUI,用一个你喜欢的底模,跑通一张 512×512 的“Q 版大头”。确认单张能出,再试三张批量。确认批量能跑,再考虑 API 和目录管理。确认整个链路稳定后,这台机器的角色就是一个“摸鱼流水线车间”。
后续可以继续扩展的方向不少:往工作流里加入 ControlNet 控制构图,做人脸相似度高的固定角色;用 LoRA 固定自己的画风;把三张头像输出拼成一张九宫格发布图;再往后,可以接本地相册系统,让输出图片自动归档到 Obsidian 或者 Notion。工具是基础,真正有价值的是你用它沉淀下来的那一套“自己画风”的工作流。
