简介:《Stable Diffusion 提示词指南书》是一份面向AI绘画创作者与数字艺术爱好者的实用PDF文档,重点解决提示词撰写无章法、生成效果不可控的问题。内容围绕OpenArt平台展开,从提示词的基本格式与句子结构讲起,系统梳理各类修饰词在风格、色彩、氛围、情感等层面的应用方式,并延伸至特殊词汇与参数微调技巧,帮助读者逐步掌握从主题表达到细节控制的完整方法。资源包共1个PDF文件,大小约15.15MB,结构清晰、便于按章节查阅学习。目前已有3550人学习下载,适合希望提升出图质量、建立提示词体系的初中级用户参考。书中还结合OpenArt平台数百万条提示词实例,鼓励读者借鉴与实验,将创意构想更精准地转化为图像作品。
1. 从一份 OpenArt 提示词指南 PDF 说起:为什么你写的提示词总出废图
你大概率遇到过这种场景:打开 Stable Diffusion,输入 "a beautiful girl, masterpiece, best quality",跑出来一张五官扭曲、手指六根、背景糊成一团的图。然后你开始加词——"ultra detailed, 8k, photorealistic, cinematic lighting"——结果画面更崩了。问题不在模型,在于提示词的写法本身就没有结构。
OpenArt 那份提示词指南 PDF 之所以在圈子里被反复传阅,核心原因是它把提示词从"堆词玄学"拉回到了可拆解的工程结构:主体、风格、构图、光照、镜头、画质修饰,每一层有明确的权重逻辑和位置逻辑。这份指南不是某个模型的专属说明书,而是一套跨模型的提示词组织方法论。不管你是用 SD 1.5、SDXL 还是基于 SD 的在线生成工具,这套结构都能直接套用。
这篇文章面向两类人:一是刚接触 Stable Diffusion、面对空白提示词框不知道从哪下笔的新手;二是已经能出图但稳定性差、想系统化提升出图率的从业者。我会把这份指南的核心框架拆开,配上可直接复现的参数配置和踩坑记录,让你从"碰运气出图"过渡到"按流程出图"。
2. 提示词的结构化拆解:从 OpenArt 指南里提取的六层框架
2.1 为什么"堆词"必然翻车:注意力机制的分配逻辑
Stable Diffusion 的文本编码器(CLIP)对提示词的处理不是等权重的。它会把整段提示词映射到一个固定长度的 token 序列上,通常上限是 77 个 token(SD 1.5)或 77×N(SDXL 支持多段)。当你塞进去 30 个修饰词时,每个词分到的注意力被稀释,模型无法判断哪个是主体、哪个是修饰。
更关键的是,CLIP 对词序敏感。排在前面的词权重天然更高,排在后面的词容易被截断或忽略。OpenArt 指南里反复强调的一点是:主体必须放在最前面,风格和画质词往后排。这不是审美建议,是编码器的物理限制。
我一般把提示词分成六层,按优先级从高到低排列:
| 层级 | 作用 | 示例 | 建议词数 |
|---|---|---|---|
| 主体 | 画面核心对象 | a young woman in red dress | 3-6 |
| 动作/姿态 | 主体在做什么 | sitting on a wooden chair | 2-4 |
| 环境 | 背景与场景 | in a sunlit cafe, window light | 3-5 |
| 风格 | 艺术风格或媒介 | oil painting style, artstation trending | 2-4 |
| 光照/镜头 | 光影与视角 | soft rim light, 85mm lens, bokeh | 2-4 |
| 画质修饰 | 技术质量词 | highly detailed, sharp focus | 2-3 |
总词数控制在 20-30 个有效 token 以内,超过这个范围边际收益急剧下降。
2.2 主体描述的最小可用写法
新手最容易犯的错是把主体写得太抽象。"a girl" 和 "a 25-year-old woman with short black hair, wearing a denim jacket" 出来的结果完全不同。前者模型自由发挥,后者约束了年龄、发型、服装三个维度。
但也不是越细越好。我试过写 "a 25-year-old woman with shoulder-length wavy auburn hair, hazel eyes, freckles on nose, wearing a vintage Levi's denim jacket with copper buttons"——结果模型把注意力分散到了 freckles 和 copper buttons 上,脸部反而崩了。
最小可用写法是:年龄/性别 + 发型/发色 + 服装 + 一个辨识特征。四个维度足够锁定主体,再多就是浪费 token。
# 推荐的主体写法(正面提示词开头) a 25-year-old woman, short black hair, wearing a red turtleneck sweater, slight smile # 不推荐的写法(信息过载) a 25-year-old woman with shoulder-length wavy auburn hair, hazel eyes, freckles, wearing a vintage Levi's denim jacket with copper buttons, slight smile, looking at camera第一段用 12 个 token 锁定了主体,第二段用了 30+ token 但关键特征互相竞争。实际跑图时,第一段的出图率明显更高。
2.3 风格词的选择:不要同时用互斥风格
风格层是最容易出问题的地方。很多人会写 "anime style, photorealistic, oil painting, watercolor"——这四个风格互相矛盾,模型只能随机选一个或者混合出四不像。
OpenArt 指南的建议是:风格词只选一个主风格,最多加一个辅助修饰。比如 "anime style, studio ghibli" 是兼容的,"photorealistic, cinematic" 也是兼容的。但 "anime" 和 "photorealistic" 放在一起就是灾难。
# 兼容的风格组合 anime style, studio ghibli, soft colors photorealistic, cinematic, film grain digital painting, artstation trending, concept art # 互斥的风格组合(不要这样写) anime style, photorealistic, oil painting如果你不确定两个风格词是否兼容,一个简单的判断方法是:这两个风格在现实中是否可能出现在同一张图上?动画风格和写实摄影不可能,但写实摄影和电影感可以。
2.4 负面提示词的工程化写法
负面提示词不是"把不想要的东西写上去"这么简单。它的作用是在采样过程中降低某些概念的激活概率。写得好的负面提示词能显著提升出图稳定性,写得差等于没写。
我常用的基础负面模板:
# 通用负面提示词模板(适用于 SD 1.5 / SDXL) worst quality, low quality, normal quality, lowres, blurry, jpeg artifacts, bad anatomy, bad hands, extra fingers, missing fingers, extra limbs, deformed, ugly, duplicate, watermark, text, signature这段模板覆盖了三类问题:画质问题(lowres, blurry, jpeg artifacts)、解剖问题(bad anatomy, bad hands, extra fingers)、水印问题(watermark, text, signature)。
参数上,负面提示词的 CFG 权重不需要单独调,它跟随正面提示词的 CFG 值。但有一个细节:负面提示词里的词也会消耗 token,所以不要写太长。15-25 个 token 的负面提示词足够覆盖 90% 的常见问题。
2.5 权重语法:括号和数字到底怎么用
Stable Diffusion 支持通过括号调整词权重。语法有三种:
# 语法 1:圆括号 + 数字(最常用) (red dress:1.3) # 权重提升到 1.3 倍 (red dress:0.7) # 权重降低到 0.7 倍 # 语法 2:多层圆括号(每层 ×1.1) ((red dress)) # 权重约 1.21 倍 (((red dress))) # 权重约 1.33 倍 # 语法 3:方括号(降低权重) [red dress] # 权重约 0.9 倍实际使用中,我建议只用语法 1,因为数字直观可控。语法 2 的多层括号容易记错倍率,语法 3 的降权效果不如直接写 0.7。
权重的安全范围是 0.5-1.5。超过 1.5 容易导致画面过饱和或结构崩坏,低于 0.5 基本等于没写。如果你发现某个词怎么加权重都不生效,大概率是它和前面的词冲突了,而不是权重不够。
2.6 一套可直接复用的提示词模板
把上面五节的内容串起来,我常用的模板结构是这样的:
# 正面提示词模板 [主体描述], [动作/姿态], [环境描述], [风格词], [光照/镜头], [画质修饰] # 实际示例 a 30-year-old man, short beard, wearing a black trench coat, standing on a rainy city street, looking at camera, cinematic style, neon reflections, 85mm lens, shallow depth of field, highly detailed, sharp focus # 负面提示词 worst quality, low quality, blurry, bad anatomy, bad hands, extra fingers, deformed, watermark, text, signature这套模板在 SD 1.5 和 SDXL 上都能直接用。SDXL 因为支持更长的 token 序列,可以适当增加环境描述和风格词的细节,但六层结构不变。
3. 参数配置与出图流程:从提示词到成图的完整链路
3.1 采样器与步数的搭配逻辑
提示词写好了,参数不对照样出废图。采样器(Sampler)和步数(Steps)是最容易配错的两个参数。
常见采样器我按出图风格分三类:
| 采样器 | 适合场景 | 推荐步数 | 特点 |
|---|---|---|---|
| Euler a | 通用、快速预览 | 20-30 | 速度快,细节一般 |
| DPM++ 2M Karras | 写实、精细出图 | 25-35 | 细节好,速度中等 |
| DPM++ SDE Karras | 艺术风格、插画 | 30-40 | 质感强,速度慢 |
| DDIM | 快速迭代 | 15-25 | 最快,适合批量筛选 |
我一般的工作流是:先用 Euler a + 20 步快速跑 4 张看构图,选定构图后用 DPM++ 2M Karras + 30 步出精细图。这样比直接上高步数采样器省一半时间。
步数不是越高越好。超过 40 步后,画面改善微乎其微,但时间线性增加。SDXL 因为模型更大,推荐步数比 SD 1.5 高 5-10 步。
3.2 CFG Scale 的甜点区在哪里
CFG Scale 控制提示词的遵循程度。太低(<5)模型自由发挥,太高(>15)画面过饱和、结构僵硬。
甜点区在 7-12 之间。具体取值取决于你的提示词质量:
- 提示词结构清晰、主体明确:CFG 7-9
- 提示词较简短、需要模型补全:CFG 10-12
- 负面提示词较长:CFG 适当降低 1-2
# 我常用的参数组合(SD 1.5) Sampler: DPM++ 2M Karras Steps: 30 CFG Scale: 8 Resolution: 512x768 Seed: -1 (随机) # SDXL 推荐参数 Sampler: DPM++ 2M Karras Steps: 35 CFG Scale: 7 Resolution: 1024x1024 Seed: -1注意 CFG 和负面提示词是联动的。CFG 越高,负面提示词的影响也越大。如果你发现画面颜色过饱和,先降 CFG,而不是改提示词。
3.3 分辨率与宽高比的匹配规则
分辨率设置有一个硬性规则:宽和高必须是 64 的倍数。512×768 可以,500×768 不行。不是 64 倍数的分辨率会导致画面出现网格状伪影。
更重要的是宽高比要和构图匹配。SD 1.5 在 512×512 上训练,所以正方形构图最稳定。如果你要出竖构图人像,用 512×768;横构图风景用 768×512。SDXL 的原生分辨率是 1024×1024,对应比例类推。
# 常用分辨率对照 人像竖构图:512x768 (SD1.5) / 832x1216 (SDXL) 风景横构图:768x512 (SD1.5) / 1216x832 (SDXL) 正方形:512x512 (SD1.5) / 1024x1024 (SDXL)如果你需要更高分辨率,不要直接拉高数值,而是用 Hires Fix(高清修复)先出低分辨率图再放大。直接出 1024×1024 的 SD 1.5 图会出现人物重复、结构崩坏的问题。
3.4 种子固定与批量筛选的实操流程
种子(Seed)是复现一张图的关键。Seed 为 -1 时随机生成,固定 Seed 后同样的提示词和参数会出同样的图。
我的批量筛选流程是这样的:
第一步:Seed = -1,跑 8 张图,步数 20,Euler a 第二步:选出构图最好的 2-3 张,记下它们的 Seed 第三步:固定 Seed,换 DPM++ 2M Karras,步数 30,出精细图 第四步:如果精细图有局部问题,用 Inpainting 局部重绘这个流程比直接跑高步数快得多。第一轮 8 张图大概 2 分钟,第二轮 3 张精细图 3 分钟,总共 5 分钟能出一张可用的图。如果直接上 30 步跑 8 张,需要 8 分钟,而且大部分是废图。
4. 避坑与排查:提示词写对了但图还是崩的五个原因
4.1 画面出现文字或水印
现象:生成的图上出现乱码文字、签名或水印。
原因:训练数据里包含大量带水印的图片,模型学到了这个特征。负面提示词里没有排除 text 和 watermark。
解决:在负面提示词里加入text, watermark, signature, copyright, logo。如果仍然出现,把 CFG 降到 7 以下,或者换一个更干净的基础模型。
4.2 人物手指数量异常
现象:手指六根、七根,或者手指融合在一起。
原因:手部在训练数据中占比小,模型对指关节的结构理解不足。分辨率过低时尤其明显。
解决:负面提示词加bad hands, extra fingers, missing fingers, fused fingers。分辨率至少 512×768。如果仍然崩,用 Inpainting 单独重绘手部区域,提示词写perfect hands, five fingers。
4.3 画面过饱和或颜色失真
现象:颜色异常鲜艳,皮肤发红或发紫。
原因:CFG Scale 过高(>12),或者提示词里权重词过多。
解决:CFG 降到 7-9。检查提示词里是否有超过 1.3 权重的词,如果有,降到 1.1-1.2。VAE 也可能导致颜色问题,换一个标准 VAE 试试。
4.4 构图与提示词不符
现象:写了 "close-up portrait" 但出来的是全身照。
原因:构图词的位置太靠后,被前面的风格词和画质词稀释了注意力。
解决:把构图词移到主体描述之后、风格词之前。比如a woman, close-up portrait, soft light, oil painting style。构图词的权重可以适当提高到 1.2。
4.5 同一 Seed 换模型后出图完全不同
现象:在 SD 1.5 上跑出一张好图,换 SDXL 后同样的 Seed 和提示词出图完全不一样。
原因:不同模型的潜在空间(Latent Space)不同,Seed 只在同一模型内有复现性。
解决:换模型后不要指望 Seed 复现,重新筛选。提示词结构可以复用,但 Seed 必须重新随机。
5. 进阶技巧:用提示词矩阵做系统性出图测试
当你已经能稳定出图后,下一步是提升出图效率。我常用的方法是提示词矩阵(Prompt Matrix),用脚本批量测试不同提示词组合的效果。
# 提示词矩阵测试脚本(伪代码,适用于 AUTOMATIC1111 WebUI 的 X/Y/Z Plot) # 在 Script 中选择 X/Y/Z Plot # X 轴类型选 Prompt S/R(搜索替换) # X 轴值填写:red dress, blue dress, green dress # Y 轴类型选 CFG Scale # Y 轴值填写:7, 8, 9, 10 # 这样一次跑图就能得到 3×4=12 张对比图 # 快速看出哪个服装颜色和 CFG 组合效果最好这个方法的优势是一次跑图就能看出多个变量的影响。我一般用 X 轴测提示词变体,Y 轴测 CFG 或步数。跑完一轮后,选定最佳组合,再固定下来做精细出图。
另一个技巧是提示词权重的时间调度(Prompt Scheduling)。在 AUTOMATIC1111 里可以用[word1:word2:0.5]的语法,表示前 50% 步数用 word1,后 50% 步数用 word2。这个技巧适合做风格渐变或光照变化的效果。
# 前 40% 步数用 "daylight",后 60% 步数用 "sunset" [daylight:sunset:0.4], a city street, cinematic style # 前 30% 步数用 "sketch",后 70% 步数用 "oil painting" [sketch:oil painting:0.3], a portrait of a woman这个语法在 SD 1.5 和 SDXL 上都支持,但 SDXL 因为步数更多,调度点的精度更高。
最后说一个我自己的习惯:每次出图后,把提示词、参数、Seed 和出图结果截图保存在一个文件夹里。积累到 50-100 张后,你会发现自己常用的提示词结构、参数组合和风格词就那么几套。把这些固化成模板,出图效率会翻倍。提示词工程不是玄学,是可以用数据优化的工程问题。希望帮到你。
本文还有配套的精品资源,点击获取