第一次把Stable Diffusion拉到本地的时候,我一度怀疑是电脑坏了:命令行闪退、模型下到一半断连、好不容易跑起来又弹“No module named torch”。后来才明白,问题基本不在机器,而是“环境”没搭干净。直到改用社区里流传度很高的整合包,我才把折腾环境的时间从一下午缩到了十几分钟。今天这篇就围绕整合包和它带出来的三件主力功能——文生图、图生图、局部重绘——把操作流程和参数细节讲透,再列一份真正适合上手的模型清单。刚接触本地AI绘图、想省事出片的人,可以直接按这条路径走;已经玩过一段的老手,重点看后半段关于参数控制和局部重绘的使用逻辑。
1. 整合包是所有人绕不开的第一道选型题
1.1 自己装和用整合包,差距具体在哪
原生安装Stable Diffusion并不是双击一个exe就行,它牵扯到Python虚拟环境、PyTorch/CUDA驱动、WebUI前端、模型文件放置路径、各种扩展插件依赖。对普通用户来说,光是搞懂pip install和git clone的区别就够劝退一大批人了。整合包的思路很简单:把这些依赖全部预先打好,解压后启动脚本即可运行。我早期自己手动搭过一套,和后来换整合包对比,主要差距体现在三处:
- 依赖版本匹配不同:手动装经常遇到torch版本和GPU算力不匹配,整合包则内置了验证过的组合。
- 模型管理规范不同:整合包通常把
models/Stable-diffusion、models/Lora、models/VAE这些目录预设好了,下载完丢进去就能识别。 - 出问题时的排查成本不同:整合包报错大多是网络或配置项的偏差,手动安装则可能从显卡驱动就崩起。
社区里常见的整合包分两类:一类是WebUI向的“秋叶系”,主打开箱即用和界面友好;另一类是ComfyUI向的“节点工作流”,适合做批量出图和精准控制。新手推荐从WebUI整合包入手,因为它把文生图、图生图、局部重绘都做成了可视化页面,功能可见性最高。
1.2 挑整合包时的几个判断标准
下载整合包最怕的是“来路不明”。我的习惯是先看三样东西:发布者是否长期维护、更新日志是否连续、解压后是否带启动器或一键启动脚本。那种压缩包十几GB、里面却没有论证环境的整合包,大概率是把模型和程序混在一起“包饺子”,换到别人机器上容易出幺蛾子。
还要注意版本问题。很多整合包基于SD1.5训练生态,也有基于SDXL的新整合包。如果你主要想玩偏写实或摄影感强的图,SD1.5生态下的整合包更稳定;如果想直出高清图和更细腻的光影,可以看SDXL或Pony系列的整合包。另外,ComfyUI整合包的兴起是因为它在显存利用率和批量任务上更优,但代价是学习曲线陡一些。我的建议是:WebUI整合包跑通基础,ComfyUI等熟练后再作为补充,不要一开始就两线作战。
2. 文生图从提示词到参数:出图的骨架都在这一步
2.1 提示词的基本结构
文生图的核心原料是提示词,它由“正向提示词”和“反向提示词”两部分组成。正向提示词描述你想要的内容,反向提示词描述你不想要的内容。第一次跑图的人,经常把想表达的元素全部塞进一句话里,结果画面元素互相打架。比较顺手的方式是分段:主体在前,场景在中,画质标签最后。
举个例子,想要“一位穿着红色外套的女性站在雨夜街道上,远处有霓虹灯”,类似这样组织正向词:
masterpiece, best quality, 1girl, solo, red jacket, standing, street, night, rain, wet road, neon lights, cinematic lighting反向提示词常用:
lowres, bad anatomy, bad hands, extra fingers, missing fingers, watermark, signature, jpeg artifacts这套写法的逻辑是:先给模型一个“画面能量等级”的基调标签,然后是主体描述,最后是环境和光影。写完正向词后,用反向词过滤掉常见画崩点,比如手指数量不对、结构畸形、多余肢体。模型不是理解句子,而是在标签空间里检索概率分布,所以“标签化”比“造句化”更有效。
2.2 关键参数要盯哪几个
文生图的参数面板通常有采样器、步数、CFG、宽高比、种子这几个核心项。
- 采样器(Sampler):目前使用频率较高的是
DPM++ 2M Karras和Euler a。前者细节感强,后者速度快。追求默认稳妥可以直接选DPM++ 2M Karras。 - 步数(Steps):SD1.5模型跑30步左右已经足够,SDXL类模型可以跑到35-40步。步数太高不会让画面变好,只会让显存占用和耗时变得更难看。
- CFG(提示词相关性):7左右是多数模型的甜点区。CFG过低画面会忽视提示词,过高则色彩过浓、边缘发硬。
- 种子(Seed):固定种子让同一套参数生成同一张图。这个参数特别适合做微调对比——换一批提示词或换一个模型,但控制变量。
- 分辨率:SD1.5原生图常跑512×512或512×768;SDXL原生图通常跑1024×1024。分辨率拉太高而模型没跟上,容易出现结构崩坏。
我第一次跑图时把步数拉到了150,CFG拉到18,结果出来的图又脏又暗。问题不是模型不够好,而是参数溢出了。后来背了这个默认启动公式:30步 + DPM++ 2M Karras + CFG 7 + 原生气数分辨率,几乎不会被开屏雷击。
2.3 跑通第一张图的实际操作
用整合包启动WebUI之后,选一个合适的底模(具体模型推荐见第5节),然后在正向提示词框里粘入上面的示例,反向提示词保持默认,点击生成。这里有一个很多人忽略的操作:把种子固定下来,再用同一提示词换一个风格接近的底模对比,能明显看出每个模型对提示词的响应差异。这比盲选模型高效得多。
如果显存小于等于8GB,建议打开“优化”里的xformers或者显存优化选项,生图速度会有肉眼可见的提升。千万别同时开太多后台程序,第一次出图时我被Windows更新占着资源,一张512图跑了近一分钟,后来关了后台再跑,十几秒就出来了。
3. 图生图要控制的其实是“变化幅度”,想通这一点就不难
3.1 图生图能做什么
图生图的入口是:把一张既有图片作为输入,让模型参考它生成新图片。常见用途包括线稿上色、照片改画风、角色换装、草图精修等。它的本质不是“复制原图”,而是“理解原图的内容之后重新渲染”。因此图生图并不适合想把某个细节完全保留的需求,它更适合“从参考图出发去再创造”。
理解这个定位之后,很多疑惑就解开了。图生图不是要保住画面的每一个像素,而是要留住构图、颜色倾向或主体属性,然后按照提示词画出新版本。
3.2 Denoising strength才是真正的控制器
图生图面板有一个非常关键但容易被当成摆设的参数:重绘幅度。字面叫法可能是Denoising strength或重绘幅度,它决定了模型对原图的改动程度。这个值通常在0到1之间:
- 0.1-0.3:基本保持原图构图,只对细节做微调,适合修复画面瑕疵、改善光影。
- 0.4-0.6:中等程度改动,保留主体和大致结构,但会大幅改变画风、材质、氛围,是照片转绘最常见的区间。
- 0.7-1.0:彻底重构画面,原图只承担构图或色彩参考,甚至会被完全打破重建。
实际使用时,我见过有人上来就设0.75,结果原图的五官、衣纹全部被冲散,生成结果和原图只剩色调相似。把值降到0.5后,角色特征才稳定下来。这里的经验是:想让画面“更像原图”,值就往0.4以下调;想让画面“有原图的影子但彻底换一种表达”,值就往0.6以上调。
3.3 用图生图提升出图质量的一套组合拳
图生图还有一个经典用途是“二轮精修”:先用文生图快速出一个构图满意的初稿,然后把它拖进图生图,设置重绘幅度0.25-0.35,加上更高的画质提示词,让它把细节重绘得更干净。这个操作比直接生成一张大图要稳得多,因为初稿的结构、透视、人物比例已经确定,二轮重绘只是在已有结构上做细节打磨。
如果配合ControlNet插件使用,还能用线稿提取、姿态骨架等功能把画面结构锁得更死。但对于只看整合包内置功能的用户,单靠重绘幅度也能完成大部分精修需求。记住:图生图的本质是“用提示词引导一次有限度的翻新”,重绘幅度就是翻新力度。
4. 局部重绘:遮到哪,改到哪,不再整张图推倒重来
4.1 蒙版机制是什么逻辑
局部重绘解决的问题是“我只想改画面的某一块,别的地方不要动”。以前没这个功能时,想改一个背景里的污渍就得整张图重新生成,连带把人物也弄崩了。局部重绘通过在画面上拉出一块蒙版(可理解为选定区域),让模型只针对被遮住或明确指定的区域重新推理。
WebUI里的局部重绘通常有两种模式:重绘蒙版区域和重绘非蒙版区域。前者只重绘你涂抹过的地方,后者则重绘除涂抹区域之外的全部。95%的场景只需要前者:涂哪里,改哪里。
4.2 羽化和蒙版模糊两个容易被忽视的数值
局部重绘界面里的“蒙版羽化”或者“模糊蒙版”参数,直接决定了交接处的过渡是否自然。如果羽化值设为0,生成的替换区域和原图交界处会有很硬的接缝,像贴了一块补丁。我实际操作时,一般把羽化设在10-30之间,小区域修复用低值,涉及大面积背景替换则用高值。
另一个重要的选择是“仅重绘蒙版区域”和“整张图重绘”。局部重绘逻辑初看简单,实际操作里却容易有一个误会:选了仅重绘蒙版区域后,有时候会发现替换内容因为缺少上下文而“画蛇添足”。这时候可以切换到“整张图重绘”模式,让模型参考全图信息后在蒙版范围内重新推理,融合度通常会更好。这个切换是最容易踩的一项,我自己也是试了多次才找到规律。
4.3 局部重绘的实操场景举例
我经常遇到两类需求,一是换背景杂物,比如把照片里的路人甲P掉,二是改人物细节,比如把衣服颜色从红色改成蓝色。前者适合用“涂抹蒙版+较高重绘幅度+提示词描述地面或天空”,后者适合用“精确涂抹衣服轮廓+提示词单独描述新颜色+低重绘幅度”。
关键是要控制好提示词的范围。局部重绘不是把整段提示词原样复制进去,而是用尽可能精简的提示词描述你期望的局部内容,例如:
blue dress, fabric texture, soft shading, detailed clothing反向提示词可以保留通用的画质过滤项。如果局部重绘结果反复出现色彩偏移,可以把重绘幅度往下降0.05-0.1,或者把蒙版区域缩小一点。因为重绘幅度偏高导致模型把相邻区域也顺手改了,很常见。
5. 热门模型到底该装哪些:从底模到LoRA的一手清单
5.1 底模类型决定画面风格走向
模型文件一般放在整合包的models/Stable-diffusion目录下,后缀常见.safetensors或.ckpt两类,优先选.safetensors,因为这种格式不带可执行代码,更安全。底模是整个画面的“地基”,它决定你的出图是偏写实、偏二次元还是偏厚涂。
目前的底模生态可以粗略分成三个梯队:
- SD1.5系列:轻量、加载快、生态成熟。适合写实和半写实方向,一些知名写实模型基本都在这个范围内稳定运行。
- SDXL系列:原生分辨率高,直出图细节多,适合光感强、构图复杂的画面,但对显存和生成时间的要求更高。
- Pony系列:在特定审美细分领域(比如角色设计、艺术风格化)很强,但提示词习惯和一般模型不太一样,需要额外适应。
5.2 上手阶段值得留意的几类模型
这里不谈具体下载链接,只讲按场景怎么挑。以我长期使用的感受来说,通用场景可以直接找社区评分高的大模型,通常作者会在简介里把“适用画风”写明。比如偏写实人像的方向,可以找那些训练集以摄影图为主的模型,出图倾向于肤色自然、光影柔和;偏二次元的方向,就找以插画和动画数据集为主的模型。
LoRA是另一类重要文件,体积比大模型小很多,一般放在models/Lora目录下。它的作用是给底模叠加特定风格、特定角色或特定概念。比如你有一个非常喜欢的人物形象,就可以用对应的LoRA配合任意底模来实时注入。
初学者的合理路径是:只装一个大模型、一个通用VAE、两三个LoRA,先用最少的变量跑图。模型装太多不会让图变好,反而会在切换时搞不清某张好图到底是怎么调出来的。我的仓库里现在大模型不超过五个,但每个都是精挑的特定用途。
5.3 模型下载后别忘检查配置文件
整合包要求模型名称和提示词无关,但文件名最好保持清晰可读,比如realistic_photov1.safetensors,不要存成model_sd_v1这种无意义名。换模型后在WebUI右上角刷新模型列表,确认已加载。
VAE文件负责画面的色彩空间解码,有的模型自带了VAE,有的需要单独放置到models/VAE。直接跑图如果发现“灰蒙蒙”、颜色溢出像褪色照片,多半是VAE没挂上。这个坑我遇到过好几次,尤其是从SD1.5换到其他底模后,画面发灰往往不是提示词问题,而是VAE没匹配。
6. 整合包日常使用会碰到的报错与养护技巧
6.1 启动失败的几种典型情况
整合包报错是常态,但很多问题其实是共通的。先说一个在macOS系统里相当典型的报错:启动时报importerror: dlopen ... libomp。这类问题的原因通常是PyTorch依赖的原生库缺失,不少整合包默认是针对Windows环境打包的,在Mac上跑时会缺libomp或openmp运行时库。解决思路不是重装整合包,而是先补原生依赖,比如用系统包管理器安装libomp,再看WebUI后端是否能正常加载torch。我的经验是:Mac跑整合包本身很吃内存,8GB内存机型建议加设虚拟内存,不然前端起来了,出图瞬间也会被系统杀掉。
Windows下最常见的问题是启动器弹窗提示“显存不足”或“CUDA out of memory”。这通常不是启动阶段的问题,而是加载底模时显存被占满。处理方式是在启动参数里加上显存优化级别的参数,或者直接把分辨率下调几个档位,比如SDXL模型用1024分辨率,SD1.5模型用512的整数倍。
6.2 模型加载慢、出图慢的排查顺序
出图慢的原因要从上往下查。第一步看底模文件大小,7GB左右的SDXL模型和2GB左右的SD1.5模型再速度上完全不是一回事。第二步看采样器步数,之前提到30步是常态,如果某采样器默认就是50步,耗时自然会上去。第三步看是否同时开了太多扩展,局部预览、提示词补全这类插件的后台解析也会占用显存。
还有一个容易被忽略的因素是“生成批次”。有人为了找灵感一次性把批量设为8,同一提示词垫底,出图慢先不说,显存往往在第二批就爆掉。正确做法是一次一张或一次两张,用固定种子快速遍历,确定构图后再扩大分辨率精修。
6.3 管理模型和清理缓存
整合包用久了,缓存目录会积累大量临时文件,其中包括每次生成时保存的过程图和历史缩略图。我基本每周清一次,把生成目录里不满意的缩略图直接删掉,可以保持前端页面干净,避免模型切换时缩略图加载卡顿。模型文件本身不用频繁移动,只要固定在models目录下,重装整合包时还能单独备份这些目录来复用。
7. 玩了一段时间后,我最想留下来的几点经验
7.1 出图流程要分级而不是一步到位
很多新手一上来就追求“1000×1280高清大图”,结果慢、卡、崩都是常事。我的流程是:先用512分辨率和低步数快速出缩略图,确认构图和提示词方向,再换目标分辨率、加画质提示词,做最终精修。这种方式最直观的好处是试错成本低很多,一张小图崩了不心疼,从失败中调整提示词的速度也快得多。
7.2 提示词要建自己的“词汇库”
我写提示词不靠完全记忆,而是维护一个本地文本文件,里面按“人物”“场景”“光线”“画质标签”分类存放平时验证有效的关键词。比如场景类我会记录“rainy street、neon lights、sakura、desert road”,画质类我会记录“masterpiece、best quality、ultra detailed、8k wallpaper”。当你想复现某天的好效果时,这套词汇库可以直接拼出一段符合当时风格描述的命令。
7.3 组合牌比一张牌好使
文生图出初稿、图生图做重绘、局部重绘修局部,这三个功能不是独立的,而是能组合成一条稳定生产线。我常用的组合是:文生图拿到构图,图生图二轮定画风,局部重绘修细节,再交给放大模型做后处理。整套流程下来,单张成图的成功率远比单独靠文生图硬抽卡要高。Stable Diffusion看上去功能零散,但只要把工具之间的衔接逻辑想明白,它就能从一个玩具变成工作流的一环。