M1芯片AI绘画怎么搞?实测出图技巧与避坑指南

M1芯片AI绘画怎么搞?实测出图技巧与避坑指南
M1芯片AI绘画实测场景,一台MacBook屏幕上正在本地跑Stable Diffusion出图

简单说:M1芯片AI绘画的关键是选对量化模型、把采样步数压到20-25、用MPS加速,8GB统一内存的M1也能本地出图。我实测一张512x512约30秒,比云端省心还不用排队。

M1芯片AI绘画能跑通吗?这是我当时换Mac第一个想搞明白的问题。老实讲一开始我也不信这颗轻薄本里的芯片能搞定Stable Diffusion,毕竟显卡才那点性能。直到自己实测跑通了,才知道M1的统一内存和Neural Engine是真有东西。这篇把我踩的坑和调出的参数全摊开,给同样用M1出图的人参考。

M1跑AI绘画的硬件底子

M1有8核GPU和16核Neural Engine,算力约11 TOPS,加上统一内存架构,让CPU和GPU共享同一块内存,省了数据搬运的开销,这是它能在本地跑AI绘画的根子。

维基百科 Apple M1 词条 的数据,M1芯片2020年11月发布,采用5纳米工艺,集成8核CPU(4性能核+4能效核)、最多8核GPU,以及一颗16核的Neural Engine,每秒可执行11万亿次运算(11 TOPS)。最关键的是统一内存架构——CPU、GPU、Neural Engine共用同一块内存池,不用像传统独立显卡那样把数据在显存和内存间来回搬。这一点对AI绘画特别重要,因为扩散模型推理时要在内存和显存间频繁传数据,统一内存把这个瓶颈直接消除了。

内存容量才是真门槛。8GB统一内存的M1跑512x512勉强够用,16GB才舒服,想跑1024x1024的高清图建议至少16GB。我个人用的是16GB版本,跑512x512出图约30秒一张,1024x1024约90秒,能接受。

选对工具:用对量化模型才跑得动

M1本地跑AI绘画优先用fp16或更激进的量化模型,配合支持MPS(Metal Performance Shaders)加速的推理框架,原始fp32模型内存吃不住。

工具这块我试过几个。最省心的是 AUTOMATIC1111 的 Stable Diffusion WebUI,这个开源项目现在原生支持MPS加速,M1上直接装就能跑。还有更轻量的 DiffusionBee,专门为Mac做的图形界面,装好双击就能用,对小白最友好。

模型必须量化。原始SD1.5的fp32模型要4GB多内存,M1的8GB统一内存跑起来会爆。换成fp16(约2GB)就宽松了,想要更快可以用int8量化版(约1GB),质量损失不大但出图速度能快一截。我个人用fp16,质量和速度的平衡点最好。

实测出图参数:速度和质量的平衡点

M1上我实测CFG 6.5、步数20、Euler a采样器、512x512分辨率,出图约30秒,是速度和质量的最优组合。

这套参数是我反复试出来的。步数是关键变量——默认的30步在M1上要45秒,压到20步降到30秒,质量肉眼几乎没差别。采样器选Euler a比DPM++ 2M Karras快,虽然细节略逊但够用,出头像和概念图足够。分辨率别贪高,512x512是M1的甜点区,1024x1024直接慢三倍还容易内存报警。

CFG值我固定6.5。低于5出图太软没力度,高于8容易出现过饱和和人脸崩坏。这个值是我在M1上跑了上百张总结的,比很多教程默认的7.0更稳。想搞懂这些参数原理的,先看 什么是AI绘画 把底层逻辑搞懂,再来抠M1的调参。

内存不够怎么办

8GB统一内存的M1跑AI绘画,把attention机制换成xformers或sdpa,再开CPU offload把模型分块加载,能省下近一半内存。

内存报警是M1出图最常见的崩。我那台8GB的M1 MacBook Air一开始动不动就闪退,后来做了三件事才稳住。第一,WebUI启动加--xformers参数(或新版用--opt-sdp-attention),把self-attention的内存占用砍掉六七成。第二,加--medvram或--lowvram,让模型分块加载到内存,用时间换空间。第三,出图时关掉其他吃内存的App,Safari开十几个标签页能吃掉2GB,给它腾出来。

做完这三步,8GB的M1也能稳定跑512x512,不再闪退。代价是出图慢一点,从30秒拖到50秒左右,但能跑通总比跑不了强。我个人觉得8GB是M1跑AI绘画的下限,能上16GB就别省这点钱。

Mac本地出图 vs 云端出图

M1本地出图胜在不用排队、数据不外传、长期零成本,云端胜在速度快、能跑大模型,两者按场景选。

本地出图最大的爽是不用排队。云端服务高峰期能排半小时队,本地点一下就跑,还不用担心图被服务器存下来。长期算下来也省钱,云端按张收费一个月跑几百张也是笔开销,本地电费忽略不计。

但云端有它的好。云端能跑SDXL这种大模型,M1跑SDXL内存吃紧速度也慢。云端GPU出图几秒一张,M1要30秒,要批量出图还是云端快。我的做法是日常试参数和出小图用M1本地,要批量出大图或跑SDXL时上云端。想了解云端工具怎么选的,看 AI自动生成绘画软件大盘点 把云端和本地的工具对比搞清楚。

新手最常踩的M1出图坑

不装MPS加速导致用CPU跑慢十倍、用fp32模型爆内存、分辨率拉到1024直接闪退,这三个坑占M1出图翻车的九成。

不装MPS加速是最蠢的坑。WebUI默认可能没开MPS,结果用CPU跑,出一张图要5分钟。检查启动日志里有没有"Using MPS"字样,没有就是没开。用fp32模型爆内存也好解决,换fp16量化版就行。分辨率拉到1024闪退是内存不够,要么降回512,要么开lowvram分块加载。

想从软件下载安装开始系统学的,参考 AI绘画电脑下载 把Mac端的安装流程跑顺。想做出图后调整优化的,看 AI绘画调整优化 把后期精修的工作流补上。还在纠结2D出图软件怎么选的,参考 AI平面绘画软件哪个好 的横评。

常见问题

M1 MacBook Air能跑AI绘画吗?

能,但8GB内存的版本要开lowvram和xformers优化。出512x512约30-50秒,跑SD1.5没问题,SDXL会吃力。

M1出图比云端慢多少?

差距不小。云端GPU出512x512约2-5秒,M1要30秒左右,慢六到十倍。但本地胜在不用排队和零成本,日常用够。

M1能跑ControlNet吗?

能,但要小心内存。ControlNet会额外占用内存,8GB的M1跑起来容易闪退,建议16GB以上再用,或开lowvram分块加载。

M1出图总闪退怎么办?

三步排查:确认开了MPS加速、换fp16量化模型、开lowvram分块加载。做完这三步还闪退,大概率是内存真的不够,降到512x512或换16GB以上机型。

觉得有用的话分享给朋友吧。