使用 OpenVINO™加速部署通义 Z-Image(造相)文生图模型
openlab_96bf3613
更新于 5天前
引言
【Z-Image-Turbo】(https://huggingface.co/Tongyi-MAI/Z-Image-Turbo) 是阿里巴巴通义团队最新推出的高性能文生图模型,基于 Diffusion Transformer (DiT) 架构,6B 参数量,仅需不到 10 个 steps 的采样,就能够快速生成高质量图像。本文将详细介绍如何使用 Intel® OpenVINO™ 工具套件来优化和部署 Z-Image-Turbo 模型,在 Intel 平台上上获得出色的推理性能。

内容列表
1. 环境准备
2. 模型下载和转换
3. 模型部署
第一步,环境准备
基于以下命令可以完成模型部署任务在 Python 上的环境安装。
python -m venv py_venv./py_venv/Scripts/activate.batpip uninstall -y optimum transformers optimum-intel diffuserspip install git+https://github.com/huggingface/diffuserspip install git+https://github.com/openvino-dev-samples/optimum-intel.git@zimagepip install nncfpip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cpupip install openvino==2025.4
第二步,模型下载和转换
在部署模型之前,我们首先需要将原始的 PyTorch 模型转换为 OpenVINO™的 IR 静态图格式,并对其进行压缩,以实现更轻量化的部署和最佳的性能表现。通过 Optimum 提供的命令行工具 optimum-cli,我们可以一键完成模型的格式转换和权重量化任务:
optimum-cli export openvino --model Tongyi-MAI/Z-Image-Turbo --task text-to-image Z-Image-Turbo-ov --weight-format int4 --group-size 64 --ratio 1.0其中 Tongyi-MAI/Z-Image-Turbo 为模型在 HuggingFace 上的 model id, 可用原始模型的本地路径替换;--weight-format int4 --group-size 64 --ratio 1.0 为模型量化参数,如果考虑出图质量,也可以用 --weight-format fp16 替换。
第三步,模型部署
除了利用 Optimum-cli 工具导出 OpenVINO™模型外,我们还在 Optimum-intel 中重构了 Z-Image 模型的 Pipeline,将官方示例示例中的的 ZImagePipeline 替换为 OVZImagePipeline 便可快速利用 OpenVINO™进行模型部署,完整示例可参考以下代码流程。
import torchfrom optimum.intel import OVZImagePipeline# 1. Load the pipelinepipe = OVZImagePipeline.from_pretrained("Z-Image-Turbo-ov", device="cpu")prompt = "Young Chinese woman in red Hanfu, intricate embroidery. Impeccable makeup, red floral forehead pattern. Elaborate high bun, golden phoenix headdress, red flower****eads. Holds round folding fan with lady, tree****ird. Neon lightning-bolt lamp (⚡️), bright yellow glow, above extended left palm. Soft-lit outdoor night background, silhouetted tiered pagoda (西安大雁塔), blurred colorful distant lights."# 2. Generate Imageimage = pipe(prompt=prompt,height=512,width=512,num_inference_steps=9, # This actually results in 8 DiT forwardsguidance_scale=0.0, # Guidance should be 0 for the Turbo modelsgenerator=torch.Generator("cpu").manual_seed(42),).images[0]image.save("example_zimage_ov.png")
生图结果如下:
除此以外我们在 OpenVINO™ notebook 仓库中构建了更为完整的 demo 示例,展示效果如下:

总结
本文详细介绍了如何使用 OpenVINO™ 部署通义 Z-Image-Turbo 模型,OpenVINO™为 Z-Image-Turbo 提供了显著的性能提升,作为轻量化模型的代表,Z-Image-Turbo 特别适合在 Intel CPU/GPU 上进行推理部署。
参考资源
【Z-Image-Turbo 模型卡片】https://huggingface.co/Tongyi-MAI/Z-Image-Turbo
【OpenVINO™ 官方文档】https://docs.openvino.ai/
【Optimum Intel GitHub】https://github.com/huggingface/optimum-intel
【Diffusers 库文档】https://huggingface.co/docs/diffusers