使用 CPU 运行 Z-Image 模型

阿里新发布的 Z-Image 模型,生成图片效果不错,但是显存需求要至少16G好像,本文介绍如何使用 CPU 运行 Z-Image 模型。


一、环境准备

首先创建 Conda 虚拟环境:

conda create -n zimage python=3.12
conda activate zimage

然后安装依赖:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130
pip install git+https://github.com/huggingface/diffusers
pip install transformers
pip install modelscope

接下来用modelscope下载模型到指定文件夹,注意,接下来将模型下载到了 ~/Z-Image-Turbo/ 这个目录,后面代码也存在这个路径下,就可以使用同一目录下 'Z-Image-Turbo' 这个文件夹当中的模型了。 官方文档的参考代码是用hunggingface下载的,会有网络访问问题。这个模型大概有34G,要注意硬盘空间得足够。

cd ~/ # 进入工作目录
modelscope download --model Tongyi-MAI/Z-Image-Turbo --local_dir 'Z-Image-Turbo'

二、运行代码

运行下面的代码:

import torch
from diffusers import ZImagePipeline

pipe = ZImagePipeline.from_pretrained(
    "Z-Image-Turbo",
    torch_dtype=torch.bfloat16,
    low_cpu_mem_usage=True, # 这里开启了低内存模式,能够在32G以内运行Z-Image模型。
)
pipe.to("cpu") # 这里改用CPU,避免显存不足

prompt = "一只熊猫拿着报纸,报纸上的文字是“中国队勇夺世界杯”,熊猫特别高兴"
# 2. Generate Image
image = pipe(
    prompt=prompt, # 提示词
    height=1024, # 图片高度
    width=1024,  # 图片宽度
    num_inference_steps=9,  # This actually results in 8 DiT forwards
    guidance_scale=0.0,     # Guidance should be 0 for the Turbo models
    generator=torch.Generator("cpu").manual_seed(42), # 这里也改成了CPU
).images[0]

image.save("result.png")

运行上面的代码,会出现下面的进度显示:

Loading pipeline components...:   0%|                                      | 0/5 [00:00<?, ?it/s]`torch_dtype` is deprecated! Use `dtype` instead!
Loading checkpoint shards: 100%|██████████████████████████████████| 3/3 [00:00<00:00, 185.14it/s]
Loading checkpoint shards: 100%|███████████████████████████████████| 3/3 [00:01<00:00,  1.52it/s]
Loading pipeline components...: 100%|██████████████████████████████| 5/5 [00:02<00:00,  2.26it/s]
100%|██████████████████████████████████████████████████████████████| 9/9 [04:41<00:00, 31.24s/it]

由于咱们用的是CPU,速度会慢一些。我在AMD Ryzen 9 7945HX+128G RAM的笔记本上运行,占用内存不超过30G,运行时间大概280秒,效果还行。

图片就会保存出一个result.png文件了。

Category: AI
Category
Tagcloud
Science 耳机 音频 Mac Algorithm LLM Visualization Junck Code Generation OSX-KVM Poem Game ChromeBook AI Microscope Hackintosh FckZhiHu Radio Complexity Windows11 Data History Qwen3 AIGC Photography Turing Lens QGIS AdamW RX590 Photo HBase Story PHD Code Agent AI,Data Science University Linux ML Simulation Discuss Ollama Computability Camera Cursor Hardware PVE TUNA Cellular Automata OpenWebUI QEMU 蓝牙 VM Translate Remote LTFS GIS Learning NixOS Tool Muon Programming Mathematical Modeling Virtualization Book Data Science Life Mount&Blade Tape VirtualMachine Optimization Windows Prompt Ventoy Kivy C GlumPy Communicate Hack LTO Geology CUDA Python Math LlamaFactory Nvidia Pyenv Ubuntu AMD Tools Scholar n8n SandBox GPT-OSS Memory RTL-SDR Hadoop Virtual Machine SKill