Prompt Engineering:AIGC 设计师的核心竞争力
上周三,一位在火星教育学习了三个月 Midjourney 的学员发来一组图:“老师,我明明写了‘赛博朋克风格,霓虹灯光,雨夜’,为什么 AI 给我生成了一堆模糊的色块?跟我用关键词搜到的参考图完全不一样。”
我点开他的 prompt 看了一眼,发现他用的版本还是 v5.2,参数里只有 `–ar 16:9`,连 `–stylize` 和 `–chaos` 都没碰。更关键的是,他的描述停留在“形容词堆砌”阶段——把“赛博朋克”当成万能标签,却不知道这个标签背后对应的是“高对比度蓝紫调、金属反光、潮湿地面反射、故障艺术文字”。
这个案例很典型。很多设计师以为 Prompt Engineering 就是“写长句子”,结果发现 AI 根本不买账。实际上,Prompt Engineering 的本质是“需求分解 + 控制参数”,它考验的是你把视觉需求翻译成机器能理解的结构化指令的能力。今天我就拆解这个能力,从两套核心工具链入手。
一、Midjourney:从“形容词堆砌”到“参数化控制”
Midjourney 的 prompt 写作,最忌“无脑堆词”。你可以把 prompt 拆成四个功能区:
主体描述(Subject)→ 环境/氛围(Environment)→ 风格/媒介(Style)→ 参数控制(Parameters)
拿“赛博朋克雨夜”这个需求举例,错误示范是:
cyberpunk style, neon lights, rain, night, cinematic lighting, high detail --ar 16:9
这个 prompt 的问题在于:AI 不知道“赛博朋克”的具体视觉权重,也不知道“cinematic lighting”是打在主体上还是环境上。正确的做法是用具体媒介和镜头语言来锁定风格:
a woman in a transparent raincoat standing on a wet street, reflection of pink and blue neon signs on the wet asphalt, heavy rain, volumetric fog, shot on anamorphic lens, f/1.8, shallow depth of field, blade runner 2049 aesthetic, 8k, raw photo --ar 16:9 --stylize 250 --v 6.1
注意这里的关键改变:
- 主体具体化:“a woman in a transparent raincoat” 比“cyberpunk character”更可控
实操步骤:
1. 先用 `–v 6.1` 版本(当前最新版,支持更精准的文本理解)
2. 设置 `–stylize 250`(默认100,调高会让AI更“自由发挥”,但会偏离文本;调低��50-100则更忠实于描述)
3. 如果生成结果太“油腻”,加 `–style raw` 去掉Midjourney的默认美化滤镜
4. 如果你想要更暗的调子,加 `–chaos 20` 让AI在构图上有更多变化,而不是千篇一律的黄金分割
二、Stable Diffusion:用 ControlNet 实现“指哪打哪”
如果说 Midjourney 是“用文字画画”,那 Stable Diffusion(SD)就是“用文字配合骨骼和肌肉来塑造”。SD 的优势在于 ControlNet,它能让你用线稿、深度图、姿态骨架来约束生成结果,而不是完全依赖 prompt 的想象力。
案例:为一个游戏角色设计“暗黑精灵弓箭手”的站姿
你不可能靠 prompt 让 SD 理解“左脚在前、弓弦拉到耳后、身体扭转30度”这种精确姿态。这时候需要 ControlNet 的 OpenPose 功能:
1. 在 ComfyUI 或 Automatic1111 中加载一张你找好的参考姿态图(比如从 Pinterest 找的弓箭手剪影)
2. 开启 ControlNet,选择 OpenPose 预处理器(版本号 v1.1.4.2)
3. 设置权重(Weight)为 0.8-1.0(太高会完全复制姿态,忽略 prompt;太低则姿态不准确)
4. 写入 prompt:
dark elf archer, female, pale skin, white hair, red eyes, leather armor with silver trim, holding a longbow, arrow drawn, focused expression, forest background, dappled sunlight, volumetric lighting, epic fantasy, artstation style, 4k, highly detailed
5. 负面 prompt(Negative Prompt)必须写:
bad anatomy, extra fingers, deformed hands, missing limbs, disfigured, ugly, poorly drawn hands, extra limbs, blurry, low quality
关键参数说明:
你会发现,ControlNet 的作用是把“模糊的姿态描述”变成“精确的骨骼约束”,这样 prompt 只需要负责风格和细节,不需要承担“姿态控制”这个它根本做不好的任务。
三、Prompt Engineering 的进阶:多工具协同
真正高段位的设计师,不会只依赖某一个工具。他们会把 Midjourney 和 SD 串联起来,形成“创意发散 → 结构约束 → 精细调整”的流水线。
实操案例:设计一张“蒸汽朋克飞艇”概念图
阶段1:Midjourney 发散创意
airship with brass hull, giant propeller, steam engines, Victorian era design, floating above a city of gears and pipes, sunset sky with hot air balloons, intricate mechanical details, concept art, matte painting --ar 2:1 --stylize 500 --v 6.1
生成4张图,选一张构图最满意的。
阶段2:用 SD 做结构修正
Midjourney 生成的飞艇可能有“螺旋桨位置错误”或“蒸汽管道逻辑混乱”的问题。把选中的图拖进 SD,用 ControlNet Canny 边缘检测(Canny v1.1.4.2)提取线稿,然后重写 prompt:
airship, detailed mechanical structure, brass and copper materials, rivets, gears, steam pipes, realistic lighting, 8k, sharp focus, centered composition
设置 Denoising Strength(重绘幅度)为 0.4-0.6(太高会丢失原图结构,太低则无法修正细节)。
阶段3:局部重绘(Inpainting)修复细节
如果飞艇的某一处结构仍然不合理,用 SD 的 Inpainting 功能:
这样,你既保留了 Midjourney 的创意构图,又用 SD 的结构控制能力修正了逻辑问题。这是目前 AIGC 设计师最实用的工作���。
总结与进阶建议
Prompt Engineering 不是“写作文”,而是用结构化思维控制 AI 的视觉输出。核心记住三点:
1. 分解需求:把“我想要一张好看的图”拆解成“主体+环境+风格+参数”
2. 工具分工:Midjourney 负责创意发散和美学氛围,SD+ControlNet 负责结构约束和细节修正
3. 参数是杠杆:`–stylize`、`CFG Scale`、`Denoising Strength` 这些参数比任何形容词都管用
进阶建议:
常见问题 FAQ
Q1:为什么我用了很长的 prompt,结果还是不如别人短 prompt 的效果好?
A:长 prompt 不等于好 prompt。关键在于信息的优先级。把最重要的视觉元素放在最前面(前15个词),次要的放后面。Midjourney 对 prompt 前部的词权重更高。另外,去掉冗余的“beautiful”“high quality”这类词,它们几乎不产生实际作用。
Q2:Midjourney 的 `–stylize` 参数到底应该怎么调?
A:`–stylize` 控制的是 AI 的“审美自由度”。默认100,调低(50-100)让 AI 更严格遵循你的描述;调高(250-1000)让 AI 加入更多自己的“创意”。如果你想生成概念设计(需要惊喜感),调高到 300-500;如果你想生成产品图(需要精确性),保持在 50-100。
Q3:Stable Diffusion 的负面 prompt 写多少合适?
A:不要超过15个词。重点写“anatomy”(解剖错误)和“hands”(手指问题),因为这是 SD 最容易出错的地方。常见的如:`bad anatomy, extra fingers, deformed hands, missing limbs`。不用写“ugly”“low quality”这种主观词,它们几乎没效果。
Q4:ControlNet 的权重(Weight)怎么判断?
A:如果 prompt 描述的是具体的主体(比如“一个穿红裙子的女人”),权重设为 0.8-1.0;如果 prompt 更偏向氛围(比如“阳光穿过树叶”),权重降到 0.4-0.6。一个简单的测试:如果生成结果完全忽略了 prompt 的风格描述,说明权重过高;如果姿态完全走形,说明权重过低。
Q5:为什么我用同样的 prompt 在不同时间生成的结果差异很大?
A:Midjourney 和 SD 的模型会持续更新,即使是同一个版本号,后台也可能有微调。解决方法��固定使用特定版本的模型(比如 Midjourney 的 `–v 6.1`),并且开启 seed 参数(Midjourney 用 `–seed 12345`,SD 在设置里固定 seed),这样相同 prompt 和参数能得到一致的结果。

评论(0)