Z-Image 微调教程|几十张图定制你的专属角色与风格

文章围绕通义新发布的非蒸馏文生图基础模型 Z-Image,深入讲解了如何通过 LoKr(Low-Rank Kronecker)技术进行高效微调。Z-Image 凭借其完整的 Transformer 架构,在提示词遵循和美学可控性上表现优异。教程详细规定了从硬件准入门槛(推荐 24GB 显存以上)、数据集构建规范(20-50 张高质量图片及自然语言标注)到核心训练参数(如学习率、时间步采样、混合精度)的设置。此外,文章还提供了基于 HHyTuner 的实战脚本、训练监控方法以及针对过拟合和显存不足等常见问题的调优建议,旨在帮助开发者以低成本实现专业级的图像生成定制。




Z-Image 微调教程|几十张图定制你的专属角色与风格

昨天,我们正式开源并发布了全新一代文生图基础模型Z-Image —— 一个为高度创作自由度而生的、未经蒸馏的完整 Transformer 模型。

不同于追求推理速度的轻量版本(Z-Image-Turbo),Z-Image 专为高质量生成、强提示词遵循能力、极致美学多样性以及专业级可控性而设计。它完整保留了训练信号,支持完整的无分类器引导(CFG),能精准响应复杂提示与负面控制,在超写实摄影、电影级数字艺术、精细动漫与风格化插画等多领域均展现出卓越表现。更重要的是,其非蒸馏架构使其成为社区微调、ControlNet 集成和高级提示工程的理想基座。

z-image

为了帮助你快速上手这一强大能力,我们同步推出 LoKr 微调实战教程,仅需少量数据,即可让 Z-Image “学会”你的专属角色、艺术风格或视觉概念,获得高度可控的个性化生成效果。

为什么选择 LoKr 微调

你可能听说过 LoRA,而 LoKr(Low-Rank Kronecker) 是它的“进阶版”:在保持低显存占用、小文件体积的同时,通过更高效的参数分解方式,让模型学得更快、更准。

用 LoKr 微调 Z-Image,只需要几十张图 + 一张消费级显卡(如 RTX 3090),就能训练出仅几百 MB 的轻量权重,加载灵活,效果精准。

Z-Image 微调教程|几十张图定制你的专属角色与风格

在开始训练前,先看看 LoKr 微调能为你带来什么:

只需 30–50 张样图,Z-Image 就能学会特定艺术风格;还能精准记住角色的面部特征、发型、服装等细节,实现高一致性生成;更重要的是,训练后的模型能高度还原素材中的关键视觉元素,让输出既可控又真实。

Z-Image 微调教程|几十张图定制你的专属角色与风格

Z-Image 微调教程|几十张图定制你的专属角色与风格

滑动查看训练后效果

Z-Image 微调教程|几十张图定制你的专属角色与风格

硬件要求

  • GPU推荐配置 NVIDIA 4090 (48GB VRAM) 或更高,最低配置 NVIDIA RTX 3090 / 4090 (24GB VRAM) 

  • 内存推荐配置 64 GB,最低配置 32GB

  • 存储推荐配置 SSD 500GB+,最低配置 100GB 可用空间

软件与依赖

本教程使用 HHyTuner 训练器,它已内置完整的 Python 3.12 + PyTorch + Diffusers 环境,无需手动安装依赖,开箱即用。

下载基础模型

可以通过 Hugging Face 或魔搭社区下载Z-Image 基础模型,模型选择:Tongyi-MAI/Z-Image。

Z-Image 微调教程|几十张图定制你的专属角色与风格

目录结构

创建一个名为 train_data 的文件夹,内部结构如下:

    •  train_data/                    # 训练数据根目录
    •    ├── image1.jpg              # 训练图片
    •    ├── image1.txt              # 对应的描述文本
    •    ├── image2.png
    •    ├── image2.txt
    •    └── ...

    💡提示:每张图片必须有一个 .txt 同名文件,用于描述图像内容。

    图片要求

    数量:10–100 张(新手建议 20–50 张)

    格式:JPG、PNG、WEBP 均可

    分辨率:建议 ≥1024×1024(模型原生支持 1024 分辨率)

    质量:清晰、无模糊、无严重压缩

    一致性:所有图片应围绕同一角色或风格

    多样性:包含不同角度、光照、背景(避免过拟合)

    编写 Caption(描述文本)

    Caption 是对图片内容的文字描述,是模型学习的关键依据,非常重要!每张训练图片都应配有一个同名的  .txt 文件。例如:图片文件 image1.jpg对应描述:image1.txt

    在编写 Caption 时,需要遵循以下原则: 

    • 使用自然语言,像你在向别人描述这张图一样; 

    • 包含主体、风格、细节(如人物特征、服装、场景、光照、画风等); 

    • 长度建议 20–100 字,既不要太简略,也不要堆砌无意义的细节。

    ✅ 好的示例: "一个美丽的年轻女孩,长发披肩,穿着白色连衣裙,站在花海中,阳光明媚,高清摄影,细节丰富,自然光,柔焦效果"

    ❌ 不好的示例: 

    "女孩" (太简单,缺乏细节)

    "一个女孩,有眼睛,有鼻子,有嘴巴..." (过于冗长)

    💡提示:如果某些图片未提供 .txt 文件,系统会使用 default_caption 作为默认描述。你可以在配置中按需设置它(如“动漫插画,精细线条”或“写实人像,自然光”),以保证训练一致性。

    Z-Image 微调教程|几十张图定制你的专属角色与风格

    在开始训练前,你需要创建一个配置文件(或直接在脚本中定义),指定模型、数据、训练策略等关键参数。以下是基于 HHyTuner 的完整配置说明:

    基础参数

    Z-Image 微调教程|几十张图定制你的专属角色与风格

    检查点设置

    • checkpoint_every_n_steps: 每 N 步保存一次检查点(默认 500)

    • checkpoints_total_limit: 最多保留几个检查点(默认 3)

    • 自动删除旧检查点,节省空间。

    Caption 设置

    • use_caption: 是否使用 caption(默认 True)

    • caption_ext: caption 文件扩展名 (默认 ".txt")

    • default_caption: 默认 caption 文本

    • prompt_dropout_prob: dropout 概率(默认 0.1)

    训练模式

    • full_training: 训练模式选择

    • False: LoKr 微调 (推荐,默认)

    • True: 全量训练(需要大量显存)

    高级参数

    • 时间步采样(控制训练哪个噪声范围)

      • timestep_type: "sigmoid" (推荐)或 "uniform"

      • min_timestep: 最小时间步 (None=0)

      • max_timestep: 最大时间步 (None=1000)

    • 优化相关

      • lr_warmup_steps: 学习率预热步数(默认 100)

      • gradient_accumulation_steps: 梯度累积(默认 1)

      • max_grad_norm: 梯度裁剪(默认 1.0)

      • mixed_precision: 混合精度(默认 "bf16")

    Z-Image 微调教程|几十张图定制你的专属角色与风格

    接下来,我们将通过一个完整的训练脚本来启动 LoKr 微调。请在 hhytuner 项目根目录下新建一个名为 train.py 的文件,并填入以下代码:

      # -*- coding: utf-8 -*-
      import os
      import sys
      sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'hhytuner_diffusers'))


      from zimage_trainer import ZImageTrainer, ZImageConfig


      # ==================== 训练配置 ====================
      config = ZImageConfig(
          # ---------- 必填参数 ----------
          image_folder="./train_data",      # 修改为你的图片路径
          output_dir="./output",            # 输出目录

          # ---------- 模型设置 ----------
          model_id="Tongyi-MAI/Z-Image",  # 基础模型

          # ---------- 训练设置 ----------
          num_train_steps=1500,
          batch_size=1,
          learning_rate=1e-4,
          resolution=1024,

          # ---------- Caption 设置 ----------
          use_caption=True,
          caption_ext=".txt",
          default_caption="高质量,细节丰富,摄影作品",
          prompt_dropout_prob=0.1,

          # ---------- 检查点设置 ----------
          checkpoint_every_n_steps=500,
          checkpoints_total_limit=3,

          # ---------- 训练模式 ----------
          full_training=False,              # ← 关键!必须为 False

          # ---------- 高级设置 ----------
          cache_latents=True,
          gradient_accumulation_steps=1,
          lr_warmup_steps=100,
          max_grad_norm=1.0,
          mixed_precision="bf16",
          seed=42,
          use_tensorboard=True,
      )


      # ==================== 开始训练 ====================
      print("=" * 60)
      print(" ZImage LoKr 训练 ")
      print("=" * 60)
      print(f" 数据集: {config.image_folder}")
      print(f" 输出目录: {config.output_dir}")
      print(f" 训练步数: {config.num_train_steps}")
      print(f" 批次大小: {config.batch_size}")
      print(f" 分辨率: {config.resolution}")
      print("=" * 60)
      print()


      trainer = ZImageTrainer(config)
      trainer.train()


      print()
      print("=" * 60)
      print(" 训练完成!")
      print("=" * 60)
      print(f" 模型已保存到: {config.output_dir}")
      print("=" * 60)

      一切准备就绪后,在 hhytuner 目录下运行以下命令即可开始训练:

        python\python.exe train.py

        Z-Image 微调教程|几十张图定制你的专属角色与风格

        训练分为初始化正式训练监控三个阶段,系统会自动处理所有流程,你只需确保配置正确并留足显存。

        初始化阶段,系统会先加载 Z-Image 模型、VAE 和 Qwen 文本编码器,并将 LoKr 模块注入到 Transformer 层中。首次运行时还会缓存所有图片的潜变量和文本嵌入(这一步较慢,但后续训练会明显提速)。

        正式训练时,每个 step 会自动读取一张图片及其 .txt 描述,编码后与噪声一起输入模型,仅更新 LoKr 参数。整个过程无需干预,系统会按配置定期保存检查点。

        你可以通过 TensorBoard 实时监控训练状态:

          python -m tensorboard --logdir=./output/logs

          访问 http://localhost:6006 即可查看 loss 曲线、学习率和训练速度。

          Z-Image 微调教程|几十张图定制你的专属角色与风格

          使用推理脚本

          训练完成后,可以运行推理脚本:

            run_zimage_lokr_inference.bat

            或者直接运行 Python:

              python\python.exe inference\zimage_lokr_inference.py

              推理配置

              • 按提示输入以下信息

              • GPU 设备编号 (如果有多个 GPU)

              • ZImage 模型路径 (基础模型)

              • LoKr 权重路径 (训练输出的 .safetensors 文件)

              • 提示词 (描述想要生成的图片)

              • 负面提示词 (可选)

              • CFG 强度 (推荐 5.0)

              • 推理步数 (推荐 50)

              • 图像宽度 (如 1024)

              • 图像高度 (如 1024)

              实用技巧在提示输入 LoKr 权重路径时,直接按回车跳过,系统会用原模型生成对照图,让你直观看到微调前后的差异。

              Z-Image 微调教程|几十张图定制你的专属角色与风格

              在实际训练中,你可能会遇到显存不足、效果不佳或过拟合等问题。以下是一些常见情况及应对建议:

              • CUDA 显存不足:将分辨率从 1024 降至 768 或 512,并确保 batch_size=1;

              • 训练效果不理想:常因为数据量太少(可增加训练图片数量)、Caption 描述太简略(优化描述文本 )、学习率不当尝试 5e-5 或 2e-4)或训练步数不足(建议增加步数);

              • 过拟合(只能复现训练图,无法泛化):可通过增加图片多样性、使用更多样化的 caption、提高 prompt_dropout_prob 或减少训练步数缓解;

              • 推理报错:需检查模型路径是否正确LoKr 权重文件是否完整lokr_config.json 是否存在使用的模型是否与训练时一致;

              • 训练中断恢复:可使用 resume_from_checkpoint 参数。

                config = ZImageConfig(
                    ...
                    resume_from_checkpoint="./output/checkpoints/checkpoint-1000",
                    ... 
                )

                以下是关于 LoKr 的最佳实践整理:

                • 数据准备使用高分辨率、清晰无压缩的图片;确保内容高度一致(如同一角色或画风),同时覆盖多角度、多光照和多场景;每张图配 20–100 字的详细 Caption。 

                  • 数量建议:人物 30–50 张,艺术风格 50–100 张

                • 训练参数: 

                  • 训练步数 ≥ 图片数量 × 2000 

                  • 学习率保持默认 1e-4

                  • 分辨率优先用 1024,显存不足可降至 768

                • 效果评估定期用不同检查点生成测试图,与原模型对比效果,并尝试不同提示词验证泛化能力。

                我们期待看到你用 LoKr 创作出的独特作品!如遇问题,请检查训练日志输出、TensorBoard loss 曲线和生成图片质量。

                项目地址 https://github.com/white-2023/whitetuner/

                Z-Image地址 https://github.com/Tongyi-MAI/Z-Image

                模型下载(Hugging Face)https://huggingface.co/Tongyi-MAI/Z-Image

                模型体验(魔搭)https://modelscope.cn/models/Tongyi-MAI/Z-Image

                💬 你的创作,值得被看见

                Z-Image 的强大,不仅在于模型本身,更在于你赋予它的独特灵魂。无论你是训练了专属角色、复刻了经典画风,还是探索出全新的视觉语言——我们都期待看到你的作品

                欢迎将你的微调成果、创意应用场景、训练经验或踩坑总结投稿至通义大模型,优秀案例将有机会在官方账号展示,并获得专属礼盒。

                感兴趣的小伙伴,可以文末留言哦~


                AI 前线

                Karpathy 盛赞,啥都没有的创业公司刚融了 1.8 亿美元,要用小数据造强智能

                2026-1-31 18:26:51

                AI 前线

                世界模型混战,蚂蚁炸出开源牌

                2026-1-31 18:27:00

                0 条回复 A文章作者 M管理员
                  暂无讨论,说说你的看法吧
                个人中心
                购物车
                优惠劵
                今日签到
                有新私信 私信列表
                搜索