Execute o Qwen-Image a partir da linha de comando (compatível com GPU/CPU AMD)

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

Coisas que eu quero fazer

Execute o Qwen-Image a partir da linha de comando usando o arquivo stable-diffusion.cpp.

Ele pode ser executado tanto em GPUs quanto em CPUs da AMD.

スポンサーリンク

Configuração do ambiente

difusão-estável.cpp

Faça o download do arquivo Zip apropriado para o seu ambiente na página seguinte.

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

Se você quiser executá-lo em uma GPU AMD, precisará de algo com ‘vulkan’ ou ‘rocm’ no nome.

(Basicamente, o Vulkan deve funcionar bem. O ROCM provavelmente terá limitações quanto às GPUs que podem ser usadas.)

Isso se aplica às GPUs da NVidia que têm CUDA em seu nome.

AVX512, AVX2, AVX e NOAVX são baseados na CPU. Verifique qual versão do AVX é compatível com sua CPU e faça o download. (Eu estava enganado, mas parece que as CPUs da AMD também podem usar AVX. É mais fácil perguntar a um especialista em IA qual versão é compatível.)

Depois de extrair o arquivo baixado para uma pasta de sua escolha, você estará pronto para começar.

Modelo

Faça o download dos três modelos, um de cada vez, nas páginas seguintes.

Para arquivos compostos por múltiplos arquivos, tamanhos maiores exigem mais memória e resultam em maior precisão.

Por favor, decida qual modelo usar após considerar seu ambiente.

No meu ambiente (Ryzen 7 7735HS com placa gráfica Radeon + 32 GB de RAM), o arquivo Qwen_Image-Q8_0.gguf não funcionou, então usei o Qwen_Image-Q4_K_S.gguf em seu lugar.

modelo de difusão

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.
スポンサーリンク

execução

Abra a linha de comando e navegue até a pasta onde você extraiu o arquivo stable-diffusion.cpp.

Execute o seguinte comando. (Substitua o caminho do modelo pelo caminho do modelo que você está usando.)

sd-cli.exe --diffusion-model Caminho do modelo de difusão --vae Caminho do modelo VAE --llm Caminho do modelo llm -p a cat --cfg-scale 2.5 --sampling-method euler -v --offload-to-cpu -H 512 -W 512 --diffusion-fa --flow-shift 3

Se uma imagem de um gato for gerada em ./output.png, o processo foi bem-sucedido.

O exemplo oficial inclui o comando entre aspas simples, como -pa cat, mas isso não funcionará. Por favor, coloque-o entre aspas duplas.

Opções (argumentos)

As opções estão resumidas na página seguinte.

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

Abaixo estão listados apenas os modelos básicos mais comuns.

-mCaminho do modelo
-pincitar
-sValor inicial
Especifique -1 para gerar aleatoriamente.
Observe que, se você não especificar um formato, a mesma imagem será gerada todas as vezes.
-HAltura da imagem
-EMLargura da imagem
--pévia VAE
--passosEtapa. Valor inicial: 20
Note que, para alguns modelos, um número menor pode ser melhor.
(O exemplo oficial da Qwen Image era 50.)

Velocidade de execução

A velocidade de geração de imagens é a seguinte: (Isso não inclui o tempo de carregamento do modelo nem o tempo após a iteração.)

ModeloTempo de Criação (s)
difusão estável (Vulkan)36
Imagem da Rainha (Vulkan)623

É consideravelmente mais lento em comparação com StableDiffusion.

erro

Se você se deparar com o seguinte erro, significa que está com memória insuficiente. Alterar o modelo que está usando ou fechar outros aplicativos pode resolver o problema.

[ERROR]ggml_extend.hpp:83 - alloc_tensor_range: falha ao alocar buffer Vulkan0 de tamanho 1043908608
[ERROR]ggml_extend.hpp:1774 - qwen_image falha ao alocar parâmetros de tempo de execução no buffer de backend, num_tensors = 1933
[ERROR]ggml_extend.hpp:1955 - falha ao descarregar parâmetros qwen_image para o backend de tempo de execução
[ERROR]stable-diffusion.cpp:1727 - falha no cálculo do modelo de difusão
[ERROR]stable-diffusion.cpp:1861 - Falha na amostragem do modelo de difusão
[ERROR]stable-diffusion.cpp:3112 - a amostragem para a imagem 1/1 falhou após 5,14s

コメント

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