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.
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

pé

llm

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.
Abaixo estão listados apenas os modelos básicos mais comuns.
| -m | Caminho do modelo |
| -p | incitar |
| -s | Valor inicial Especifique -1 para gerar aleatoriamente. Observe que, se você não especificar um formato, a mesma imagem será gerada todas as vezes. |
-H | Altura da imagem |
| -EM | Largura da imagem |
--pé | via VAE |
--passos | Etapa. 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.)
| Modelo | Tempo 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


コメント