从命令行运行 Qwen-Image(兼容 AMD GPU/CPU)

この記事は約4分で読めます。
スポンサーリンク

我想做的事情

使用 stable-diffusion.cpp 从命令行运行 Qwen-Image。

它既可以在 AMD 的 GPU 上运行,也可以在 AMD 的 CPU 上运行。

スポンサーリンク

环境设置

稳定扩散.cpp

请从以下页面下载适合您环境的 Zip 文件。

Releases · leejet/stable-diffusion.cpp
Diffusion model(SD,Flux,Wan,Qwen Image,Z-Image,...) inference in pure C/C++ - leejet/stable-diffusion.cpp

如果你想在 AMD GPU 上运行它,你需要一个名称中带有vulkan或rocm 的程序。

(基本上,Vulkan 应该没问题。ROCM 可能会对可使用的 GPU 有限制。)

这适用于名称中带有CUDA 的英伟达 GPU。

AVX512、AVX2、AVX 和 NOAVX 都是基于 CPU 的指令集。请检查哪个 AVX 版本与您的 CPU 兼容并下载。(我之前弄错了,但 AMD CPU 似乎也可以使用 AVX。最简单的办法是咨询 AI 以确定哪个版本兼容。)

将下载的文件解压到你选择的文件夹后,就可以开始了。

模型

请从以下页面依次下载这三个模型。

对于由多个文件组成的文件,较大的文件大小需要更多的内存,但精度会更高。

请根据您的使用环境决定使用哪种型号。

在我的环境中(Ryzen 7 7735HS 搭配 Radeon 显卡 + 32GB 内存),Qwen_Image-Q8_0.gguf 无法正常工作,所以我改用了 Qwen_Image-Q4_K_S.gguf。

扩散模型

QuantStack/Qwen-Image-GGUF at main
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

Comfy-Org/Qwen-Image_ComfyUI at main
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

llm

mradermacher/Qwen2.5-VL-7B-Instruct-GGUF at main
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
スポンサーリンク

执行

启动命令行并导航到您解压 stable-diffusion.cpp 的文件夹。

执行以下命令。(将模型路径替换为您所使用的模型的路径。)

sd-cli.exe --diffusion-model 扩散模型路径 --vae VAE 模型路径 --llm llm 模型路径 -p a cat --cfg-scale 2.5 --sampling-method euler -v --offload-to-cpu -H 512 -W 512 --diffusion-fa --flow-shift 3

如果在 ./output.png 中生成了猫的图像,则表示该过程成功。

官方示例中,提示符用单引号括起来,例如 `-pa cat`,但这行不通。请用双引号括起来。

选项(参数)

选项汇总如下页。

stable-diffusion.cpp/examples/cli/README.md at master · leejet/stable-diffusion.cpp
Diffusion model(SD,Flux,Wan,Qwen Image,Z-Image,...) inference in pure C/C++ - leejet/stable-diffusion.cpp

以下仅列出最常用的基本功能。

-m模型路径
-p迅速的
-s种子价值
指定-1以随机生成。
请注意,如果您不指定格式,则每次都会生成相同的图像。
-H图片高度
-在图片宽度
- 脚VAE路径
步骤步骤。初始值:20
请注意,对于某些型号,较低的数值可能更好。
(Qwen Image提供的官方示例为50。)

执行速度

图像生成速度如下:(不包括模型加载时间或迭代后的时间。)

模型创建时间(s)
稳定扩散(Vulkan)36
Qwen Image(Vulkan)623

与稳定扩散相比,它的速度要慢得多。

错误

如果您遇到以下错误,则表示您的内存不足。更换当前使用的型号或关闭其他应用程序或许可以解决此问题。

[ERROR]ggml_extend.hpp:83 - alloc_tensor_range: 分配大小为 1043908608 的 Vulkan0 缓冲区失败
[ERROR]ggml_extend.hpp:1774 - qwen_image 分配运行时参数后端缓冲区失败,num_tensors = 1933
[ERROR]ggml_extend.hpp:1955 - qwen_image 参数卸载到运行时后端失败
[ERROR]stable-diffusion.cpp:1727 - 扩散模型计算失败
[ERROR]stable-diffusion.cpp:1861 - 扩散模型采样失败
[ERROR]stable-diffusion.cpp:3112 - 图像 1/1 的采样在 5.14 秒后失败

コメント

タイトルとURLをコピーしました