一江山水的随笔

当前位置:首页 - 技术 - 正文

Enjoy life!

先说结论

Mac Mini M4(尤其是M4 Pro)跑AI完全可行,Ollama跑7B模型流畅,Stable Diffusion用Diffusers + MPS加速出图速度接近中端N卡。本文手把手教你从零搭建环境,全程实操,无废话。

准备工作

硬件要求

  • Mac Mini M4(建议16GB以上内存,M4 Pro更佳)
  • macOS Sequoia(当前最新)
  • 至少50GB空闲硬盘空间

第一步:配置Homebrew和Conda环境

Homebrew是Mac的包管理器,Conda用于管理Python环境。打开终端,依次执行:

# 安装Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装Miniforge(M芯片专用Conda)
brew install miniforge

# 初始化conda
conda init zsh
# 重启终端或 source ~/.zshrc

# 创建AI专用环境
conda create -n ai python=3.11 -y
conda activate ai

注意:Miniforge比Anaconda更轻量,且原生支持ARM架构。

第二步:安装Ollama并拉取模型

安装Ollama

# 使用Homebrew安装
brew install ollama

# 启动Ollama服务(后台运行)
ollama serve &

# 验证安装
ollama --version

拉取模型

推荐两个模型:Mistral 7B(通用)和qwen2.5(中文强)。

# 拉取Mistral 7B(约4GB)
ollama pull mistral

# 拉取qwen2.5(7B版本,约4GB)
ollama pull qwen2.5

# 测试运行
ollama run mistral "Hello, what is your name?"

实测M4 Pro 24GB内存,Mistral 7B生成速度约30 tokens/s,qwen2.5稍慢但中文理解更好。

第三步:Stable Diffusion + Metal加速

安装依赖

# 确保在ai环境中
pip install diffusers transformers accelerate torch torchvision torchaudio

# 安装Apple Metal支持(MPS)
pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu

注意:PyTorch nightly版对MPS支持最好。

编写生成脚本

创建一个文件 sd_generate.py

import torch
from diffusers import StableDiffusionPipeline

# 使用MPS加速(M芯片的Metal API)
device = "mps" if torch.backends.mps.is_available() else "cpu"

# 加载模型(第一次会下载,约2GB)
pipe = StableDiffusionPipeline.from_pretrained(
    "runwayml/stable-diffusion-v1-5",
    torch_dtype=torch.float32
).to(device)

# 生成图像
prompt = "a beautiful landscape with mountains and lake, digital art"
image = pipe(prompt, num_inference_steps=20).images[0]
image.save("output.png")
print("图像已保存到 output.png")

运行:

python sd_generate.py

M4 Pro 24GB生成512x512图像约需10秒,比CPU快5倍以上。

第四步:进阶优化

使用更快的模型

推荐 stabilityai/sd-turbo,只需1-4步即可生成高质量图像:

from diffusers import StableDiffusionXLPipeline

pipe = StableDiffusionXLPipeline.from_pretrained(
    "stabilityai/sd-turbo",
    torch_dtype=torch.float16
).to(device)

image = pipe("cat in space", num_inference_steps=4).images[0]

批量生成

prompts = ["dog", "cat", "bird"]
for i, p in enumerate(prompts):
    image = pipe(p).images[0]
    image.save(f"output_{i}.png")

常见问题

  • Ollama报错"无法连接到服务":确保先运行 ollama serve 再拉取模型。
  • Stable Diffusion报"MPS not available":检查PyTorch版本,需安装nightly版。
  • 内存不足:减少 batch_size 或使用更小的模型(如1.5版本)。

总结

Mac Mini M4完全能胜任本地AI任务,Ollama跑LLM流畅,Stable Diffusion借助MPS加速也足够日常使用。如果你是开发者或AI爱好者,这套配置性价比极高。下一步可以尝试运行Llama 3.1 8B或Fine-tune小模型,期待你的探索。

本文来源:一江山水的随笔

本文地址:https://blog.298.name/post/210.html

主要内容:Mac Mini M4本地跑AI完整攻略:从Ollama到Stable Diffusion

版权声明:如无特别注明,转载请注明本文地址!

想找什么搜索会更快哦!
站点信息
  • 文章总数:171
  • 页面总数:1
  • 分类总数:4
  • 标签总数:170
  • 评论总数:61
  • 浏览总数:1643341
控制面板
您好,欢迎到访网站!
  查看权限
Top