Come eseguire la diffusione stabile in locale con una GUI su Windows

0
211

Puoi installare Stable Diffusion localmente sul tuo PC, ma il processo tipico prevede molto lavoro con la riga di comando da installare e utilizzare. Fortunatamente per noi, la comunità di Stable Diffusion ha risolto il problema. Ecco come installare una versione di Stable Diffusion che viene eseguita localmente con un'interfaccia utente grafica!

Sommario

Che cos'è la diffusione stabile?
Di cosa hai bisogno per eseguire questa versione di Diffusione stabile?
Come installare la diffusione stabile con una GUI
    Installa Python First
    Installa Git e scarica il repository GitHub
&nbsp ;   Scarica tutti i checkpoint
Come generare immagini utilizzando la diffusione stabile con una GUI
Come mascherare le immagini che crei per dipingere
Come correggere l'errore “CUDA fuori memoria”

Cos'è Stable Diffusion?

Stable Diffusion è un modello di intelligenza artificiale in grado di generare immagini da prompt di testo o modificare immagini esistenti con un prompt di testo, proprio come MidJourney o DALL-E 2. È stato rilasciato per la prima volta nell'agosto 2022 da Stabilità.ai. Capisce migliaia di parole diverse e può essere utilizzato per creare quasi tutte le immagini che la tua immaginazione può evocare in quasi tutti gli stili.

Tuttavia, ci sono due differenze critiche che distinguono Stable Diffusion dalla maggior parte degli altri popolari generatori di arte dell'IA:

  • Può essere eseguito localmente sul tuo PC
  • È un progetto open source

RELATED Stable Diffusion porta la generazione artistica locale dell'IA sul tuo PC

L'ultimo punto è davvero la questione importante qui. Tradizionalmente, Stable Diffusion viene installato ed eseguito tramite un'interfaccia della riga di comando. Funziona, ma può essere goffo, non intuitivo ed è una barriera significativa all'ingresso per le persone che altrimenti sarebbero interessate. Tuttavia, poiché si tratta di un progetto open source, la community ha rapidamente creato un'interfaccia utente per esso e ha iniziato ad aggiungere i propri potenziamenti, comprese le ottimizzazioni per ridurre al minimo l'utilizzo di video ram (VRAM) e creare upscaling e mascheramento.

Di cosa hai bisogno per eseguire questa versione di Stable Diffusion?

Questa versione di Stable Diffusion è un fork — una propaggine — del repository principale (repo) creato e mantenuto da Stability.ai. Ha un'interfaccia utente grafica (GUI) — rendendolo più facile da usare rispetto alla normale Diffusione stabile, che ha solo un'interfaccia a riga di comando — e un programma di installazione che gestirà automaticamente la maggior parte della configurazione.

RELAZIONATO: Come eseguire la diffusione stabile sul PC per generare immagini AI

Attenzione: come sempre, fai attenzione ai fork di software di terze parti che trovi su GitHub. Lo usiamo da un po' di tempo senza problemi, e così ne abbiamo migliaia di altri, quindi siamo inclini a dire che è sicuro. Fortunatamente, il codice e le modifiche qui sono piccole rispetto ad alcuni fork di progetti open source.

Questo fork contiene anche varie ottimizzazioni che dovrebbero consentirgli di funzionare su PC con meno RAM, upscaling integrato e funzionalità facciali utilizzando GFPGAN, ESRGAN, RealESRGAN e CodeFormer e mascheramento. Il mascheramento è un grosso problema — ti consente di applicare selettivamente la generazione dell'immagine AI a determinate parti dell'immagine senza distorcere altre parti, un processo generalmente chiamato inpainting.

  • Un minimo di 10 gigabyte liberi sul tuo disco rigido
  • Una GPU NVIDIA con 6 GB di RAM (anche se potresti riuscire a far funzionare 4 GB)
  • Un PC con Windows 11, Windows 10, Windows 8.1 o Windows 8
  • WebUI GitHub Repo, di AUTOMATIC1111
  • Python 3.10.6 (anche le versioni più recenti e la maggior parte delle versioni precedenti dovrebbero andare bene)
  • The Stable Diffusion Official Checkpoints (Guarda i checkpoint v1.5 a fine settembre!)
  • I checkpoint GFPGAN v1.3 (anche v1.4 potrebbe funzionare)
  • Qualsiasi modello ESRGAN aggiuntivo che potresti desiderare. Puoi usarne quanti ne vuoi.

Come installare Stable Diffusion con una GUI

Il processo di installazione è stato notevolmente semplificato, ma ci sono ancora alcuni passaggi da eseguire manualmente prima di poter utilizzare il programma di installazione.

Installa Python First

La prima cosa da fare è installare la versione di Python, 3.10.6, consigliata dall'autore del repository. Vai a quel link, scorri verso la parte inferiore della pagina e fai clic su “Programma di installazione di Windows (64-Bit).”

Fai clic sull'eseguibile che hai scaricato e segui le istruzioni. Se hai già installato Python (e sicuramente lo fai), fai clic su “Aggiorna.” Altrimenti segui le istruzioni consigliate.

Nota: assicurati di aggiungere Python 3.10.6 al PATH se ottieni un'opzione per questo.

Installa Git e scarica GitHub Repo

Devi scaricare e installare Git su Windows prima di poter eseguire il programma di installazione di Stable Diffusion. Basta scaricare l'eseguibile Git a 64 bit, eseguirlo e utilizzare le impostazioni consigliate a meno che tu non abbia in mente qualcosa di specifico.

RELAZIONATO: Come installare Git su Windows

Successivamente, devi scaricare i file dal repository GitHub. Fare clic sul “Codice” verde pulsante, quindi fare clic su “Scarica ZIP” nella parte inferiore del menu.

Apri il file ZIP in Esplora file o nel tuo programma di archiviazione file preferito, quindi estrai il contenuto ovunque desideri. Tieni presente che la cartella è dove devi andare per eseguire Stable Diffusion. Questo esempio li ha estratti nella directory C:, ma non è essenziale.

Nota:Assicurati di non trascinare accidentalmente “stable-diffusion-webui-master” in un'altra cartella anziché in uno spazio vuoto — se lo fai, verrà scaricato in quella cartella, non nella cartella principale che volevi.

Scarica tutti i checkpoint

Ci sono alcuni checkpoint necessari per farlo funzionare. Il primo e il più importante sono i checkpoint di diffusione stabile. Devi creare un account per scaricare i checkpoint, ma non c'è molto richiesto per l'account — tutto ciò di cui hanno bisogno è un nome e un indirizzo e-mail e sei a posto.

Nota: il download dei checkpoint è di diversi gigabyte. Non aspettarti che avvenga all'istante.

Copia e incolla “sd-v1-4.ckpt” nel “stable-diffusion-webui-master” cartella dalla sezione precedente, quindi fare clic con il pulsante destro del mouse su “sd-v1-4.ckpt” e premi Rinomina. Digita “model.ckpt” nel campo di testo e premi Invio. Assicurati che sia “model.ckpt” — altrimenti non funzionerà.

Nota: la funzione di ridenominazione è un'icona su Windows 11.

Devi anche scaricare i checkpoint GFPGAN. L'autore del repository che stiamo utilizzando ha richiesto i checkpoint di GFPGAN v1.3, ma potresti essere in grado di utilizzare la v1.4 se vuoi provarlo. Scorri la pagina verso il basso, quindi fai clic su “Modello V1.3.”

Inserisci quel file, “GFPGANv1.3.pth,” nel “stable-diffusion-webui-master” cartella proprio come hai fatto con “sd-v1-4.ckpt” file, ma non rinominalo. Il “stable-diffusion-webui-master” cartella dovrebbe ora contenere questi file:

Puoi anche scaricare tutti i checkpoint ESRGAN che desideri. In genere vengono confezionati come file ZIP. Dopo averne scaricato uno, apri il file ZIP, quindi estrai il file “.pth” file nella cartella “ESRGAN” cartella. Ecco un esempio:

I modelli ESRGAN tendono a fornire di più funzionalità specifica, quindi scegline un paio che ti piacciono.

Ora devi solo fare doppio clic su “webui-user.bat” file, che si trova nel principale “stable-diffusion-webui-master” cartella. Apparirà una finestra della console e inizierà a recuperare tutti gli altri file importanti, creare un ambiente Python e configurare un'interfaccia utente web. Si presenterà così:

Nota:Aspettati che la prima volta che lo esegui richieda almeno alcuni minuti. Ha bisogno di scaricare un sacco di cose da Internet. Se sembra che si blocchi per un tempo irragionevolmente lungo in un solo passaggio, prova a selezionare la finestra della console e premere il tasto Invio.

Al termine, la console visualizzerà:

In esecuzione su URL locale: http://127.0.0.1:7860 Per creare un collegamento pubblico, impostare `share=True` in `launch()`

RELAZIONATO: Che cos'è l'indirizzo IP 127.0.0.1 e come lo usi?

Come generare immagini utilizzando Stable Diffusion con una GUI

Ok, hai installato la variante WebUI di Stable Diffusion e la tua console ti ha fatto sapere che è in esecuzione su URL locale: http://127.0.0.1:7860.”

Nota:Cosa significa esattamente, cosa sta succedendo? 127.0.0.1 è l'indirizzo localhost — l'indirizzo IP fornito dal tuo computer. Questa versione di Stable Diffusion crea un server sul tuo PC locale accessibile tramite il proprio indirizzo IP, ma solo se ti connetti tramite la porta corretta: 7860. 

Apri il browser, inserisci “ 127.0.0.1:7860” o “localhost:7860” nella barra degli indirizzi e premi Invio. Lo vedrai nella scheda txt2img:

Se hai già utilizzato Stable Diffusion, queste impostazioni ti risulteranno familiari, ma ecco una breve panoramica del significato delle opzioni più importanti:

  • Richiesta:

    • Richiesta: La descrizione di ciò che desideri creare.
    • Pulsante Roll: applica uno stile artistico casuale al tuo prompt.
    • Passaggi di campionamento: il numero di volte in cui l'immagine verrà perfezionata prima di ricevere un output. Di più è generalmente meglio, ma ci sono rendimenti decrescenti.
    • Metodo di campionamento: La matematica sottostante che regola il modo in cui viene gestito il campionamento. Puoi usare uno qualsiasi di questi, ma euler_a e PLMS sembrano essere le opzioni più popolari. Puoi leggere ulteriori informazioni sul PLMS in questo documento.
    • Ripristina volti: utilizza GFPGAN per cercare di correggere volti inquietanti o distorti.
    • Numero batch : Il numero di immagini da generare.
    • Dimensioni batch: Il numero di “batch”. Mantieni questo a 1 a meno che tu non abbia un'enorme quantità di VRAM.
    • Scala CFG: Con quanta attenzione Stable Diffusion seguirà il prompt che gli dai. Numeri più grandi indicano che lo segue con molta attenzione, mentre numeri più bassi danno maggiore libertà creativa.
    • Larghezza: La larghezza dell'immagine che desideri generare.
    • Altezza: La larghezza dell'immagine che desideri generare.
    • Seed: Il numero che fornisce un input iniziale per un generatore di numeri casuali. Lasciarlo a -1 per generare casualmente un nuovo seme.

    Generiamo cinque immagini in base al prompt: “una mucca degli altipiani in una foresta magica, fotografia su pellicola 35mm, nitida” e guarda cosa otteniamo utilizzando il campionatore PLMS, 50 passaggi di campionamento e una scala CFG di 5.

    Suggerimento: puoi sempre raggiungere &#8220 ;Interruzione” pulsante per interrompere la generazione se il tuo lavoro sta impiegando troppo tempo.

    La finestra di output sarà simile a questa:

    Nota: le tue immagini saranno diverse.

    L'immagine in alto al centro è quella che proveremo per mascherare un un po 'tardi. Non c'è davvero un motivo per questa scelta specifica se non le preferenze personali. Prendi qualsiasi immagine che ti piace.

    Selezionala e quindi fai clic su “Invia a Inpaint.”

    Come mascherare le immagini che crei per dipingere

    La pittura è una funzionalità fantastica. Normalmente la diffusione stabile viene utilizzata per creare intere immagini da un prompt, ma l'inpainting consente di generare (o rigenerare) parti dell'immagine selettivamente. Ci sono due opzioni critiche qui: inpaint mascherato, inpaint non mascherato.

    Inpaint mascherato utilizzerà il prompt per generare immagini all'interno dell'area evidenziata, mentre inpaint non mascherato farà l'esatto opposto — verrà preservata solo l'area che mascheri.

    Prima tratteremo un po' di Inpaint mascherato. Trascina il mouse sull'immagine tenendo premuto il tasto sinistro del mouse e noterai uno strato bianco che appare sopra l'immagine. Disegna la forma dell'area che desideri sostituire e assicurati di riempirla completamente. Non stai girando intorno a una regione, stai mascherando l'intera regione.

    Suggerimento:Se stai solo aggiungendo qualcosa a un'immagine esistente, può essere utile provare ad allineare la regione mascherata con la forma approssimativa che stai cercando di creare. Mascherare una forma triangolare quando vuoi un cerchio, ad esempio, è controproducente.

    Prendiamo l'esempio della nostra mucca delle Highlands e diamogli un cappello da chef. Maschera una regione approssimativamente a forma di cappello da chef e assicurati di impostare “Batch Size” a più di 1. Probabilmente avrai bisogno di più per ottenere un risultato ideale.

    Inoltre, dovresti selezionare “Rumore latente” anziché “Riempi,” “Originale,” o “Nulla latente.” Tende a produrre i risultati migliori quando vuoi generare un oggetto completamente nuovo in una scena.

    Nota:Noterai che il bordo sinistro del cappello ha cancellato parte del suo corno. Ciò è accaduto perché “Mask Blur” l'impostazione era un po' troppo alta. Se vedi cose del genere nelle tue immagini, prova a ridurre la “Sfocatura maschera” valore.

    Prompt : Cappello da cuoco Impostazioni: Inpaint Masked, Latent Diffusion, CFG 9.5, Denoise force 0.75, Sampling Steps = 50, Sampling Method = Euler_A

    Va bene — forse un cappello da chef non è la scelta giusta per la tua mucca dell'altopiano. La tua mucca dell'altopiano è più coinvolta nelle vibrazioni dell'inizio del XX secolo, quindi diamogli una bombetta.

    Prompt: Bwel hat Settings: Inpaint Mascherato, Diffusione latente, CFG 9,5, forza di denoise 0,75, Fasi di campionamento = 50, Metodo di campionamento = Eulero_A

    Come positivamente azzimato.

    Naturalmente, puoi anche fare l'esatto contrario con Inpaint Not Masked. È concettualmente simile, tranne per il fatto che le regioni definite sono invertite. Invece di contrassegnare la regione che desideri modificare, contrassegni le regioni che desideri preservare. Spesso è utile quando vuoi spostare un piccolo oggetto su uno sfondo diverso.

    Come risolvere il problema “CUDA Out Of Memory&#8221 ; Errore

    Più grande è l'immagine che crei, maggiore è la memoria video richiesta. La prima cosa che dovresti provare è generare immagini più piccole. La diffusione stabile produce un buon — anche se molto diverso — immagini a 256×256.

    Se hai voglia di fare immagini più grandi su un computer che non ha problemi con 512×512 immagini, o stai riscontrando vari “Memoria insufficiente” errori, ci sono alcune modifiche alla configurazione che dovrebbero aiutare.

    Apri “webui-user.bat” in Blocco note o qualsiasi altro editor di testo normale che desideri. Basta fare clic con il pulsante destro del mouse su “webui-user.bat,” fare clic su “Modifica,” e quindi selezionare Blocco note. Identificare la riga che legge set COMMANDLINE_ARGS=. È qui che posizionerai i comandi per ottimizzare il modo in cui Stable Diffusion viene eseguito.

    RELAZIONATO: Come scrivere uno script batch su Windows

    Se vuoi solo fare foto di grandi dimensioni o stai esaurendo la RAM su una GPU della serie GTX 10XX, prova prima –opt-split-attention . Sembrerà così:

    Quindi fai clic su File > Salva. In alternativa, puoi premere Ctrl+S sulla tastiera.

    Se continui a ricevere errori di memoria, prova ad aggiungere –medvram all'elenco degli argomenti della riga di comando (COMMANDLINE_ARGS).

    Puoi aggiungere –always-batch-cond-uncond per provare a risolvere problemi di memoria aggiuntivi se i comandi precedenti non sono stati d'aiuto. Esiste anche un'alternativa a –medvram che potrebbe ridurre ulteriormente l'utilizzo della VRAM, –lowvram, ma non possiamo attestare se funzionerà o meno.

    L'aggiunta di un'interfaccia utente è un passo avanti fondamentale nel rendere accessibili a tutti questi tipi di strumenti basati sull'intelligenza artificiale. Le possibilità sono quasi infinite e anche una rapida occhiata alle comunità online dedicate all'arte dell'IA ti mostrerà quanto sia potente la tecnologia, anche quando è nella sua infanzia. Ovviamente, se non hai un computer da gioco o non vuoi preoccuparti della configurazione, puoi sempre utilizzare uno dei generatori di arte dell'IA online. Tieni presente che non puoi presumere che le tue voci siano private.

    LEGGI SUCCESSIVO

    • › Il nuovo monitor di Gigabyte è per entrambi i PC da scrivania
    • › Come scattare foto in 16:9 su iPhone
    • › Come rimappare qualsiasi tasto o collegamento su Windows 11
    • › Non riesci ad attivare il tuo iPhone 14? Ecco cosa fare
    • › Come disattivare il display sempre attivo di iPhone 14 Pro
    • › Come utilizzare un modello Microsoft per la firma di Outlook