Z-Image-Base 作为阿里开源Z-Image系列中唯一未蒸馏的基础模型,60亿参数规模保留了完整的语义表达能力与微调潜力。它不像Turbo那样追求极致速度,也不像Edit那样专精图像编辑——它的核心价值,在于可塑性:是开发者构建专属风格、适配垂直场景、落地企业定制需求的“原始画布”。而LoRA(Low-Rank Adaptation)正是解锁这张画布最轻量、最高效、最适合本地开发者的钥匙。
本文不讲抽象原理,不堆复杂公式,只聚焦一件事:如何在Z-Image-ComfyUI镜像中,用消费级显卡(如RTX 4070 Ti / 3090),从零完成一次完整、可复现、能出图的LoRA训练全流程。你会看到:环境怎么配、数据怎么准备、训练怎么启动、效果怎么验证、模型怎么集成进ComfyUI工作流——每一步都附带真实命令、关键参数说明和避坑提示。
很多人第一反应是:“Turbo快,Edit强,Base是不是过时了?”恰恰相反,Base是目前Z-Image生态中唯一支持LoRA微调的官方基础模型。原因很实在:
更重要的是,Base的6B参数并非负担,而是优势:
rank=8、alpha=4的轻量配置,也能稳定收敛;一句话总结:Turbo适合拿来就用,Edit适合拿来就改,Base才真正适合“拿来就训”。
Z-Image-ComfyUI镜像预装了CUDA 12.1、PyTorch 2.3、xformers及ComfyUI核心环境,但默认不包含LoRA训练所需组件。我们需在Jupyter中补全以下三项:
进入Jupyter Lab,新建终端,依次执行:
cd /root
git clone https://github.com/bmaltais/kohya_ss.git
cd kohya_ss
pip install -r requirements.txt
# 修复torch版本冲突(镜像中已装2.3,kohya要求≥2.1)
pip install torch==2.3.1+cu121 torchvision==0.18.1+cu121 --extra-index-url https://download.pytorch.org/whl/cu121
验证:运行
python train_network.py --help不报错即成功。该脚本是Kohya SS的核心训练入口。
Z-Image-Base官方发布为.safetensors格式,但Kohya SS默认读取.ckpt。我们使用convert_diffusers_to_original_stable_diffusion.py进行无损转换:
# 进入ComfyUI模型目录
cd /root/ComfyUI/models/checkpoints
# 下载Base权重(假设已上传或wget获取)
# wget https://huggingface.co/ali-vilab/z-image-base/resolve/main/z_image_base.safetensors
# 转换为diffusers格式(Kohya兼容)
cd /root/kohya_ss
python convert_diffusers_to_original_stable_diffusion.py
--model_path "/root/ComfyUI/models/checkpoints/z_image_base.safetensors"
--output_path "/root/ComfyUI/models/checkpoints/z_image_base_converted"
注意:转换后生成的是文件夹(含
unet/,text_encoder/,vae/子目录),不是单个.ckpt。Kohya SS会自动识别此结构。
Z-Image-Base单卡训练对显存压力大。在启动训练前,务必设置以下环境变量:
export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
export CUDA_VISIBLE_DEVICES=0
# 启用梯度检查点,节省30%显存
export ACCELERATE_USE_FSDP=false
实测提示:RTX 4090(24GB)可跑
batch_size=2, resolution=512x512, rank=16;RTX 3090(24GB)建议降为rank=8, batch_size=1;RTX 4070 Ti(12GB)必须启用--gradient_checkpointing且rank=4。
LoRA训练成败,七分靠数据。Z-Image-Base对数据质量极为敏感——它不会“强行拟合噪声”,而是忠实放大你给它的特征信号。因此,我们坚持三个原则:
我们准备了24张高清敦煌壁画局部图(人物姿态、飘带、纹样清晰),全部裁切为512×512,保存在 /root/lora_data/dunhuang/ 目录下。
对应提示词(caption.txt)内容如下(每行对应一张图):
a flying apsara from dunhuang mural, flowing ribbons, serene expression, traditional chinese color palette, intricate patterns, ancient grotto background
a flying apsara from dunhuang mural, holding lotus, golden halo, blue and green pigments, cave wall texture
...
关键技巧:
- 所有提示词以
a flying apsara from dunhuang mural开头,锚定主体;- 后续描述聚焦视觉可辨特征(飘带、金环、青绿设色),而非抽象概念(“神圣”、“庄严”);
- 避免出现Z-Image不支持的词汇(如“photorealistic”、“DSLR”),防止干扰学习方向。
Kohya SS内置--random_crop和--flip_aug,但我们发现对壁画类数据,关闭翻转、仅开启随机裁切更稳妥(避免破坏对称构图):
# 在训练命令中加入
--random_crop
--crop_random_aspect_ratio
--crop_aspect_ratio_list "1.0,0.8,1.25"
一切就绪后,进入/root/kohya_ss目录,执行以下完整训练命令(已适配Z-Image-Base):
accelerate launch train_network.py
--pretrained_model_name_or_path="/root/ComfyUI/models/checkpoints/z_image_base_converted"
--train_data_dir="/root/lora_data/dunhuang"
--output_dir="/root/loras/dunhuang_lora"
--logging_dir="/root/loras/dunhuang_lora/logs"
--network_module="networks.lora"
--network_dim=16
--network_alpha=8
--max_train_steps=1200
--learning_rate=1e-4
--lr_scheduler="cosine_with_restarts"
--lr_warmup_steps=100
--train_batch_size=1
--resolution="512,512"
--mixed_precision="fp16"
--save_every_n_epochs=1
--save_last_n_epochs=3
--seed=42
--caption_extension=".txt"
--cache_latents
--enable_xformers_memory_efficient_attention
--gradient_checkpointing
--no_token_padding
--clip_skip=2
--v2
--network_dim168~32均有效,16是平衡点--network_alpha8dim的一半,控制LoRA影响强度--max_train_steps120024张×50轮≈1200步,避免过拟合--clip_skip2--v2True0.15以下,之后缓慢收敛;若300步后仍高于0.25,检查图片是否模糊或提示词是否失配;18.2GB,无波动;若接近23GB,立即加--gradient_checkpointing;step 1000: loss=0.082类信息,忽略WARNING: ...类无关提示。实测耗时:RTX 4090约2小时完成1200步;训练完成后,生成
dunhuang_lora.safetensors(仅12MB),可直接用于推理。
训练完成的LoRA不能只看loss,必须放进真实工作流验证。以下是Z-Image-ComfyUI中加载与测试的标准化流程:
cp /root/loras/dunhuang_lora/dunhuang_lora.safetensors
/root/ComfyUI/models/loras/
打开ComfyUI网页 → 点击左侧“Load Workflow” → 选择z_image_base.json工作流 → 在文本编辑器中找到CLIPTextEncode节点(负责提示词编码),在其上游插入LoRA加载节点:
{
"class_type": "LoraLoader",
"inputs": {
"lora_name": "dunhuang_lora.safetensors",
"strength_model": 0.8,
"strength_clip": 0.6,
"model": ["1", 0],
"clip": ["2", 0]
}
}
参数说明:
strength_model=0.8控制LoRA对图像生成的影响强度;strength_clip=0.6控制对提示词理解的影响强度;二者分离调节,避免风格覆盖语义。
输入提示词:
masterpiece, best quality, a flying apsara, flowing ribbons, serene expression, ancient grotto background
判定标准:不是“像不像照片”,而是“像不像敦煌壁画”——LoRA成功将模型的“知识库”从通用图像,精准迁移到特定艺术体系。
训练只是起点,真正发挥价值在于工程化应用。以下是我们在实践中验证有效的三条技巧:
Z-Image-Base支持同时加载多个LoRA。例如:
dunhuang_lora.safetensors(风格)apsara_pose_lora.safetensors(姿态)mineral_pigment_lora.safetensors(材质)在ComfyUI中按顺序串联LoraLoader节点,调节各strength_model(如0.7, 0.5, 0.6),即可生成“敦煌飞天+特定手势+青绿设色”的精准结果。无需重新训练,组合即生效。
Z-Image-Base对中文提示词理解强,但LoRA需明确触发。推荐写法:
masterpiece, (a flying apsara from dunhuang mural:1.3), intricate patterns, cave wall texture
其中(xxx:1.3)表示将权重提升30%,显著提升LoRA响应率。
修改/root/ComfyUI/models/loras/下的LoRA文件后,无需重启服务。在ComfyUI界面点击右上角“Refresh”按钮,或按Ctrl+R刷新页面,新LoRA即时生效。极大提升调试效率。
Z-Image-Base的LoRA训练,本质是一次可控的知识注入:它不改变模型底层能力,只在关键路径上施加微小扰动,让60亿参数的巨兽,学会你指定的那一种表达方式。
本文带你走完了从环境配置、数据准备、命令训练、效果验证到工程应用的全链路。你不需要理解SVD分解,不需要手写反向传播,甚至不需要离开浏览器——所有操作都在Z-Image-ComfyUI镜像内完成。
下一步,你可以:
Z-Image-Base的价值,正在于它把曾经属于大厂研究院的模型定制能力,交到了每一个有想法的创作者手中。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。