
AI绘画这两年在圈子里火得一塌糊涂尤其是Midjourney和Stable Diffusion这两套工具几乎成了每个想入行或者想搞副业的人绕不开的两座大山。我自己从最早在Discord里蹲着等MJ出图到后来本地部署SD折腾显卡驱动、模型权重、ControlNet踩过的坑少说也有几十个。这次借着“知乎知学堂-AI绘画MJSD课程”这个项目标题我想把整套AI绘画的学习路径、核心工具链、实操细节和常见翻车点从头到尾捋一遍。不管你是完全没碰过AI绘画的小白还是已经能出图但总觉得效果不稳定的半新手这篇内容都能让你少走至少两三个月的弯路。我会重点讲清楚MJ和SD各自适合什么场景、课程里通常会覆盖哪些核心模块、本地部署SD时那些没人告诉你的细节以及提示词到底该怎么写才能稳定出好图。1. 课程定位与AI绘画工具选型拆解1.1 为什么MJ和SD要放在一起学很多人一开始会纠结我到底学Midjourney还是Stable Diffusion这个问题本身就问错了。MJ和SD不是二选一的关系它们更像是两种不同性格的画笔。MJ是那种你给它一句话它就能给你一张审美在线、构图讲究的图出图速度快、风格统一、上手门槛低但你对细节的控制力很弱改一个局部可能要反复抽卡。SD则是那种你让它往东它不敢往西的工具配合ControlNet、LoRA、Inpainting你可以精确控制人物姿势、画面构图、光影方向甚至把一张草图变成成品但代价是学习曲线陡峭环境配置烦琐参数多到让人头大。知乎知学堂这类课程把MJ和SD放在一起讲逻辑是对的。因为实际工作流里很多人是先用MJ快速出概念图和风格参考再用SD做精细化控制和局部重绘。比如做电商产品图MJ负责出氛围感场景SD负责把产品精确合成进去做游戏原画MJ出风格探索SD配合ControlNet锁定线稿和姿态。你只学一个要么被控制力卡住要么被配置门槛劝退。两个都学才能形成完整的工作流。1.2 课程通常覆盖的核心模块从市面上这类AI绘画课程的通用结构来看一个完整的MJSD课程一般会包含以下几个板块。第一块是AI绘画基础认知讲清楚扩散模型的基本原理不用深入到数学公式但至少要理解“噪声逐步去噪”这个核心逻辑否则后面调参数就是瞎调。第二块是MJ实操包括账号注册、Discord机器人交互、提示词结构、参数指令--ar、--v、--style、--chaos等、垫图、混图、局部重绘。第三块是SD本地部署涉及硬件选型、环境配置、模型下载与管理、WebUI和ComfyUI两种界面的使用。第四块是SD进阶控制ControlNet的各类预处理器、LoRA训练与调用、Embedding、Hypernetwork、Inpainting和Outpainting。第五块是工作流整合把MJ和SD串起来用再加上后期处理工具如Photoshop、Topaz Gigapixel等。注意不同课程侧重点差异很大有的偏商业变现有的偏技术深度。选课之前先看大纲里SD进阶部分占多少比例如果只讲基础文生图那基本等于没讲SD。1.3 学习路径的合理排序我个人的建议是不要一上来就啃SD。先花一周时间把MJ玩熟建立对提示词和画面审美的直觉。你知道什么样的词能出什么样的效果这个感觉在SD里同样适用。MJ阶段重点练三件事一是提示词的结构化表达二是垫图控制构图三是用--chaos和--stylize理解随机性和风格强度的平衡。等MJ能稳定出图了再转SD。SD先搞定本地部署确保WebUI能跑起来然后从文生图开始逐步加入ControlNet和LoRA。这个顺序的好处是你在MJ阶段积累的提示词经验可以直接迁移而SD的复杂参数不会一开始就把你劝退。2. MJ核心操作与提示词工程细节2.1 MJ的提示词结构到底该怎么写MJ的提示词没有SD那么严格的语法要求但有一个被验证过无数次的有效结构主体描述 环境场景 风格参考 构图与镜头 画质修饰。举个例子“a young woman in a red dress”是主体“standing on a rainy Tokyo street at night”是环境“cinematic style, blade runner aesthetic”是风格“medium shot, shallow depth of field”是构图“ultra detailed, 8k, photorealistic”是画质修饰。这五段拼起来出图的稳定性会明显高于只写一句话。但这里有个坑很多人堆砌太多风格词结果画面元素互相打架。比如同时写“cyberpunk”和“ancient chinese temple”MJ会试图融合出来的东西往往四不像。我的经验是风格词最多保留两个而且要有主次。主风格决定整体调性次风格只做局部影响。另外MJ对词序敏感越靠前的词权重越高。所以把最重要的主体和风格放在前面画质修饰放最后。2.2 参数指令的实战用法MJ的参数指令是控制出图行为的关键。--ar控制宽高比--v控制模型版本--style控制风格化程度--chaos控制四张图的差异度--stylize控制艺术化强度--seed固定随机种子--no排除某些元素。这些参数单独用不难难的是组合使用时的取舍。比如你要出一张适合做手机壁纸的图--ar 9:16是必须的。但如果你同时加了--chaos 50四张图差异会很大可能只有一张构图合适。这时候更好的策略是先用--chaos 0出一组稳定的选中最满意的那张拿到seed再用--seed固定微调提示词。--stylize的值我一般设在100到250之间太低画面太平淡太高会过度艺术化细节丢失。--v目前主流用6或6.1v6对光影和材质的表现明显优于v5但对提示词的遵循度略有下降需要写得更具体。2.3 垫图和混图的实操技巧垫图是MJ里控制构图最直接的手段。你上传一张参考图把链接放在提示词最前面后面跟--iw参数控制参考权重。--iw的范围是0到2默认是1。如果你想让MJ严格遵循参考图的构图把--iw设到1.5以上如果只想借用大致氛围设到0.5左右。实测下来--iw超过1.8之后MJ会几乎照搬原图创意空间很小适合做风格迁移而不是重新创作。混图则是用/blend命令把2到5张图融合。这个功能适合做风格探索比如把一张水墨画和一张赛博朋克城市混在一起看看能碰撞出什么。但混图的结果随机性很大通常要跑好几轮才能出一张能用的。我的建议是混图只用来找灵感不要指望直接出成品。2.4 MJ出图不稳定的常见原因很多人抱怨MJ出图“时好时坏”其实大部分问题出在提示词的一致性上。你今天写“a beautiful landscape”明天写“a gorgeous scenery”MJ理解成两个不同的东西出图风格自然不统一。解决办法是建立自己的提示词模板把固定的风格词、画质词、构图词做成一个基础串每次只替换主体和场景部分。这样出图风格会稳定很多。另一个常见问题是忽略了--seed的作用。MJ每次出图都是随机的但如果你固定了seed同样的提示词会出同样的图。所以当你抽到一张满意的图第一时间记下seed后面微调时用同一个seed只改你想改的部分这样能把变化控制在最小范围。3. SD本地部署与环境配置全流程3.1 硬件选型的真实建议SD本地部署对硬件有硬性要求核心是显卡。NVIDIA显卡是首选因为CUDA生态成熟WebUI和ComfyUI对N卡的支持最好。显存方面6GB能跑基础文生图但分辨率受限ControlNet一开就爆显存。8GB是入门甜点能跑512x512到768x768的图轻度ControlNet可用。12GB以上才能比较舒服地跑高分辨率和多ControlNet叠加。AMD显卡不是不能用但配置麻烦很多预编译包不支持新手不建议碰。Apple Silicon的Mac能用但速度慢而且部分插件兼容性差。CPU和内存方面CPU不用太强但内存建议32GB起步。SD在加载模型和处理大图时很吃内存16GB会频繁触发虚拟内存速度骤降。硬盘建议NVMe SSD模型文件动辄几个GB机械硬盘加载一次要等好几分钟。3.2 环境配置的两种路线SD本地部署有两条主流路线一是用整合包二是手动配置。整合包适合新手国内有几位大佬做的包解压即用内置了常用模型和插件。但整合包的缺点是版本更新慢而且你搞不清楚里面装了什么出问题很难排查。手动配置适合想深入折腾的人用Python虚拟环境加Git克隆WebUI仓库每一步都清楚。我的建议是第一遍用整合包快速跑通建立信心第二遍手动配一遍理解依赖关系。这样后面装插件、更新版本、排查报错都不会抓瞎。手动配置的核心步骤是安装Python 3.10.x不要用3.11或3.12很多依赖不兼容安装Git克隆WebUI仓库创建虚拟环境安装torch注意CUDA版本要匹配显卡驱动安装依赖下载模型放入指定目录启动webui-user.bat。整个过程最容易被卡住的地方是torch安装因为CUDA版本、Python版本、torch版本三者必须匹配。我的经验是先去NVIDIA控制面板看驱动支持的CUDA版本然后去PyTorch官网找对应的安装命令不要自己瞎猜。3.3 模型下载与管理的避坑指南SD的模型主要分几类基础模型Checkpoint、微调模型LoRA、嵌入Embedding、超网络Hypernetwork、VAE。基础模型决定整体风格LoRA决定特定角色或画风Embedding影响提示词权重VAE影响色彩和对比度。模型文件通常放在models/Stable-diffusion、models/Lora、embeddings等目录下。下载模型时要注意几点。第一模型有版本兼容性SD1.5的LoRA不能用在SDXL上反之亦然。第二模型文件很大下载时容易损坏下完最好校验一下文件大小和哈希值。第三不要一次性下载几十个模型硬盘扛不住而且你会陷入选择困难。我的做法是基础模型保留两到三个一个写实、一个二次元、一个通用LoRA按需下载用完就删。提示模型下载站很多但质量参差不齐。优先选下载量大、有预览图、有参数说明的模型。下之前先看评论区有没有人反馈出图崩坏或者文件损坏。3.4 WebUI和ComfyUI的选择WebUIAutomatic1111是SD最经典的界面功能全、插件多、教程多适合新手入门。它的操作逻辑是填参数、点生成直观易懂。ComfyUI则是节点式工作流每个步骤是一个节点连线决定数据流向。ComfyUI的学习曲线更陡但灵活性和可复现性极强适合做复杂工作流和批量处理。我的建议是先用WebUI把基础操作跑熟理解每个参数的作用。等你需要做多ControlNet叠加、批量生成、自动化处理的时候再转ComfyUI。不要一上来就啃ComfyUI节点连错一个地方你连报错都看不懂。4. SD进阶控制与工作流整合4.1 ControlNet的核心用法ControlNet是SD从“玩具”变成“生产力工具”的关键。它通过额外的预处理器提取参考图的结构信息然后引导SD按照这个结构生成图像。常用的ControlNet类型包括Canny边缘检测、Depth深度图、OpenPose人体姿态、Scribble涂鸦、Lineart线稿、IP-Adapter图像提示。每种类型对应不同的预处理器和模型文件。实际使用中Canny适合把线稿变成成品Depth适合控制场景的空间关系OpenPose适合固定人物姿势IP-Adapter适合做风格迁移。参数方面Control Weight控制控制强度一般设在0.6到1.0之间Starting/Ending Control Step控制控制介入的时机比如设成0到0.7意思是前70%的步数受ControlNet影响后30%让SD自由发挥。这个参数很关键设得太满画面会僵硬设得太松控制效果不明显。4.2 LoRA的调用与权重调节LoRA是一种轻量级的微调模型文件小、加载快、可以叠加使用。调用LoRA的语法是在提示词里写lora:模型名:权重权重范围通常是0到1。权重太高画面会过度偏向LoRA的风格丢失基础模型的多样性权重太低LoRA的效果出不来。我的经验是角色LoRA权重设在0.7到0.9画风LoRA设在0.5到0.7多个LoRA叠加时总权重不要超过1.5否则画面容易崩。还有一个细节是LoRA的触发词。很多LoRA需要特定的触发词才能激活比如某个角色LoRA的触发词是“sks person”。你不写触发词LoRA的效果会大打折扣。所以下载LoRA时一定要看说明把触发词记下来。4.3 图生图与局部重绘的实操图生图img2img是在参考图的基础上生成新图Denoising Strength控制变化程度。设成0.3出图和原图很像设成0.7出图会有较大变化但保留构图设成1.0基本等于重新生成。局部重绘Inpainting则是只修改画面的某个区域适合修手、换背景、加元素。操作时用画笔涂抹要修改的区域然后写提示词描述你想在这个区域生成什么。这里有个常见问题局部重绘的边缘衔接不自然。解决办法是适当扩大涂抹区域让SD有足够的过渡空间另外Denoising Strength不要设太高0.5到0.7比较合适太高会导致重绘区域和原图风格脱节。4.4 MJ与SD的串联工作流把MJ和SD串起来用能发挥各自的优势。一个典型的工作流是用MJ快速出概念图和风格参考选中最满意的一张导入SD做图生图配合ControlNet锁定构图再用LoRA调整风格细节最后局部重绘修正瑕疵。这个流程比纯MJ或纯SD效率高很多因为MJ负责创意发散SD负责精确执行。另一个工作流是用SD生成基础图导入MJ做风格化处理。MJ的--style参数和--stylize参数能快速给画面加上艺术感适合做封面图或海报。但要注意MJ对输入图的尺寸有限制太大或太小的图需要先调整。5. 常见问题排查与避坑经验实录5.1 SD启动报错的排查思路SD启动报错是新手最头疼的问题。常见的报错类型有几类一是torch和CUDA版本不匹配报错信息里会出现“CUDA error”或“no kernel image is available”。解决办法是卸载torch重新安装匹配的版本。二是缺少依赖库报错信息里会出现“ModuleNotFoundError”。解决办法是pip install对应的库。三是显存不足报错信息里会出现“CUDA out of memory”。解决办法是降低分辨率、减少批次数、关闭不必要的插件。排查报错的核心思路是先看报错信息的最后几行那里通常有具体的错误原因然后去搜索引擎搜报错关键词大概率有人遇到过同样的问题最后检查自己的环境配置Python版本、torch版本、CUDA版本是否匹配。5.2 出图质量差的常见原因出图质量差通常有以下几个原因。第一模型选错了。用二次元模型出写实图或者用写实模型出二次元图效果肯定不好。第二提示词太笼统。“a beautiful girl”这种提示词SD不知道你要什么风格、什么构图、什么光线出图自然随机。第三采样器和步数设置不当。Euler a适合快速出图DPM 2M Karras适合高质量出图步数一般设在20到30之间太低细节不足太高收益递减。第四CFG Scale设置不当。CFG太低SD不遵循提示词CFG太高画面会过饱和、崩坏。一般设在7到12之间。5.3 模型下载与管理的常见坑模型下载的坑很多。第一下载到一半断网文件损坏SD加载时报错。解决办法是用支持断点续传的下载工具。第二模型版本不兼容SD1.5的模型放在SDXL的目录里加载时报错。解决办法是看清楚模型说明确认版本。第三模型文件命名混乱时间久了不知道哪个是哪个。解决办法是建立命名规范比如“写实_真实感_v1.safetensors”一看就知道是什么。5.4 提示词被忽略或效果不明显的处理有时候你写了很详细的提示词但SD好像没看到出图跟提示词关系不大。这种情况通常有几个原因。第一提示词权重不够。SD对靠前的词权重高靠后的词权重低。你可以用括号加权重比如(red dress:1.3)让SD更关注这个词。第二提示词冲突。比如同时写“day”和“night”SD会困惑。第三CFG太低SD不重视提示词。第四模型本身对某些概念的理解有限比如一些小众的风格或角色基础模型可能没见过。5.5 常见问题速查表问题现象可能原因排查方法解决方案SD启动报CUDA错误torch与CUDA版本不匹配查看报错信息中的CUDA版本号卸载torch安装匹配版本出图模糊、细节不足步数太低、模型质量差检查采样步数和模型步数调到25以上换高质量模型画面过饱和、崩坏CFG太高检查CFG Scale值降到7到10之间局部重绘边缘不自然涂抹区域太小、Denoising太高检查涂抹范围和参数扩大涂抹区域Denoising降到0.5到0.7LoRA效果不明显权重太低、缺少触发词检查LoRA权重和触发词权重调到0.7以上补上触发词显存不足报错分辨率太高、批次数太多查看显存占用降分辨率、减批次、关插件MJ出图风格不统一提示词结构不一致对比多次提示词建立固定模板只替换主体模型加载失败文件损坏或版本不兼容检查文件大小和版本重新下载确认版本匹配5.6 独家避坑经验分享第一个经验是SD的模型目录不要放在C盘。模型文件动辄几个GBC盘很快就会被塞满而且系统盘读写频繁影响SD加载速度。建议单独挂一块SSD放模型。第二个经验是MJ的订阅费用不低如果你只是偶尔出图可以考虑按需订阅用完就取消。但如果你要做商业项目建议保持订阅因为MJ的出图速度和审美稳定性确实值这个价。第三个经验是不要迷信“一键出图”的教程。AI绘画的核心是控制变量你需要理解每个参数的作用才能在不同场景下灵活调整。那些告诉你“只要写这句话就能出神图”的教程要么是运气好要么是隐藏了关键参数。第四个经验是建立自己的素材库和提示词库。每次出到好图把提示词、参数、seed、模型信息都记下来。时间久了你会有一套自己的“配方”出图效率和稳定性都会大幅提升。第五个经验是SD的插件不要装太多。每个插件都会占用显存和启动时间装十几个插件SD启动要等好几分钟出图速度也受影响。只装常用的比如ControlNet、ADetailer、Image Browser其他的按需装。6. 学习资源与持续进阶建议6.1 课程之外的自学路径课程能帮你快速入门但AI绘画这个领域变化太快课程更新往往跟不上工具迭代。所以自学能力很重要。我的建议是关注几个核心信息源一是SD的官方GitHub仓库看更新日志和issue二是Civitai这类模型分享站看热门模型和用户作品三是Reddit的StableDiffusion板块和国内的AI绘画社区看别人的工作流和参数分享。每天花半小时刷一刷比闷头看教程有用得多。6.2 从出图到变现的路径思考很多人学AI绘画是为了变现。目前常见的变现路径有几条一是接商单做电商产品图、游戏原画、插画封面二是做自媒体发AI绘画作品和教程靠流量和广告变现三是卖提示词和模型在相关平台上架四是做定制化服务比如头像定制、壁纸定制。每条路径的门槛和收益不同商单单价高但竞争激烈自媒体起量慢但长期收益稳定卖提示词和模型需要持续产出定制化服务适合兼职。我的建议是先不要想着变现先把出图质量提上去。你的作品足够好机会自然会来找你。反过来出图质量不行再怎么营销也留不住客户。6.3 保持技术敏感度的方法AI绘画工具每个月都在更新新的模型、新的插件、新的工作流层出不穷。保持技术敏感度的方法有几个一是定期更新WebUI和插件但不要追最新版等稳定版出来再更二是加入几个高质量的交流群看别人在讨论什么三是自己动手试新东西不要只看别人说好不好用自己跑一遍才知道。最后再分享一个小技巧如果你在SD里出了一张特别满意的图但想微调某个细节不要直接改提示词重新生成。正确的做法是把这张图导入图生图Denoising设到0.3左右只改你想改的那部分提示词这样能在保留原图优点的同时做微调。这个技巧我用了无数次比重新抽卡效率高得多。