Hur man kör stabil diffusion på din dator för att generera AI-bilder

En AI-genererad magisk gopher, konstnärlig egyptisk gam och dramatisk månuppgång över en öken. Rubrikbild.

För att köra Stable Diffusion lokalt på din PC, ladda ner Stable Diffusion från GitHub och de senaste kontrollpunkterna från HuggingFace.co och installera dem. Kör sedan Stable Diffusion i en speciell pythonmiljö med Miniconda.

Läs mer

Artificiell intelligens (AI) konst är för närvarande på modet, men de flesta AI-bildgeneratorer körs i molnet. Stabil diffusion är annorlunda — du kan köra det på din egen dator och generera så många bilder du vill. Så här kan du installera och använda Stable Diffusion på Windows.

Vad är stabil diffusion?

Stable Diffusion är en maskininlärningsmodell med öppen källkod som kan generera bilder från text, modifiera bilder baserat på text eller fylla i detaljer om lågupplösta eller låga detaljerade bilder. Den har tränats på miljarder bilder och kan ge resultat som är jämförbara med de du skulle få från DALL-E 2 och MidJourney. Den är utvecklad av Stabilitet AI och var först offentligt släppt på augusti 22, 2022.

Stable Diffusion har inte ett snyggt användargränssnitt (ännu) som vissa AI-bildgeneratorer, men det har en extremt tillåtande licens, och – bäst av allt – det är helt gratis att använda på din egen PC (eller Mac.)

Låt dig inte skrämmas av det faktum att Stable Diffusion för närvarande körs i ett kommandoradsgränssnitt (CLI). Att få igång det är ganska enkelt. Om du kan dubbelklicka på en körbar fil och skriva i en ruta kan du köra den på några minuter.

Vad behöver du för att köra stabil diffusion på din dator?

Stable Diffusion kommer inte att köras på din telefon eller de flesta bärbara datorer, men den kommer att köras på den genomsnittliga speldatorn 2022. Här är kraven:

Om du inte har hårdvaran, överväg med hjälp av en webbaserad AI-bildgenerator. Du kan till och med springa en demo av Stable Diffusion på webben.

Hur man installerar och kör Stable Diffusion på Windows

Det finns två programvaror du behöver: Git och Miniconda3.

Notera: Git och Miniconda3 är båda säkra program producerade av välrenommerade organisationer. Du behöver inte oroa dig för skadlig programvara med dem förutsatt att du laddar ner dem från de officiella källorna som länkas till i den här artikeln.

Installera Git

är ett verktyg som låter utvecklare hantera olika versioner av programvaran de utvecklar. De kan underhålla flera versioner av programvaran de arbetar med i ett centralt arkiv samtidigt och tillåta andra utvecklare att bidra till projektet.

Om du inte är en utvecklare, ger ett bekvämt sätt att komma åt och ladda ner dessa projekt, och det är så vi kommer att använda det i det här fallet. ladda ner Windows x64 installationsprogram från Git-webbplatsen och kör den sedan till installera Git.

Det finns flera alternativ som du kommer att bli ombedd att välja medan installationsprogrammet körs - lämna dem på sina standardinställningar. En alternativsida, "Justera din PATH-miljö", är särskilt viktig. Den måste ställas in på "Git från kommandoraden och även från programvara från tredje part."

Se till att "Git från kommandoraden och även från programvara från tredje part" är valt.

Installerar Miniconda3

Stabil Diffusion bygger på några olika Python-bibliotek. Om du inte kan mycket om Python, oroa dig inte för detta - det räcker med att säga att biblioteken bara är programvarupaket som din dator kan använda för att utföra specifika funktioner, som att transformera en bild eller göra komplex matematik.

Miniconda3 är i grunden ett bekvämlighetsverktyg. Den låter dig ladda ner, installera och hantera alla bibliotek som krävs för att stabil spridning ska fungera utan särskilt mycket manuellt ingrepp. Det kommer också att vara hur vi faktiskt använder Stable Diffusion.

Chef över till nedladdningssidan för Miniconda3 och klicka på "Miniconda3 Windows 64-bitars” för att få det senaste installationsprogrammet.

miniconda3 64 bit

Dubbelklicka på den körbara filen när den har laddats ner för att starta installationen. Miniconda3s installation innebär mindre klickning genom sidor än vad Git gjorde, men du måste se upp för det här alternativet:

Kryssa i rutan där det står

Se till att du väljer "Alla användare" innan du klickar på nästa och avslutar installationen.

Du kommer att uppmanas att starta om din dator efter att du har installerat Git och Miniconda3. Vi tyckte inte att det var nödvändigt, men det skadar inte om du gör det.

Ladda ner Stable Diffusion GitHub Repository och den senaste kontrollpunkten

Nu när vi har installerat den nödvändiga programvaran är vi redo att ladda ner och installera Stable Diffusion.

Ladda ner den senaste checkpointen först — version 1.4 är nästan 5 GB, så det kan ta ett tag. Du måste skapa ett konto för att ladda ner checkpointen, men de kräver bara ett namn och en e-postadress. Allt annat är valfritt.

Notera: I skrivande stund (2 september 2022) är den senaste kontrollpunkten version 1.4. Om det finns en nyare version, ladda ner den istället.

modellåtkomst

Klicka på "sd-v1-4.ckpt" för att starta nedladdningen.

Notera: Den andra filen, "sd-v1-4-full-ema.ckpt", kanske ger bättre resultat, men den är ungefär dubbelt så stor. Du kan använda antingen.

klicka på sd v1 4

Då behöver du ladda ner Stable Diffusion från GitHub. Klicka på den gröna "Kod"-knappen och klicka sedan på "Ladda ner ZIP." Alternativt kan du använda den här direktladdningslänken.

klicka kod klicka ladda ner ZIP

Nu måste vi förbereda några mappar där vi packar upp alla Stable Diffusions filer. Klicka på Start-knappen och skriv "miniconda3" i startmenyns sökfält, klicka sedan på "Öppna" eller tryck på Enter.

börja klicka öppna

Vi kommer att skapa en mapp som heter "stable-diffusion" med hjälp av kommandoraden. Kopiera och klistra in kodblocket nedan i Miniconda3-fönstret och tryck sedan på Enter.

cd C:/ mkdir stable-broadcast cd stabil-broadcast

Notera: Nästan varje gång du klistrar in ett kodblock i en terminal, som Miniconda3, måste du trycka på Enter i slutet för att köra det sista kommandot.

Om allt gick bra kommer du att se något så här:

Minoconda3-terminalen visar kommandon som körs framgångsrikt.

Håll Miniconda3-fönstret öppet, vi behöver det igen om en minut.

Öppna ZIP-filen, "stable-diffusion-main.zip", som du laddade ner från GitHub i din favoritprogram för filarkivering. Alternativt, Windows kan också öppna ZIP-filer själv om du inte har en. Håll ZIP-filen öppen i ett fönster och öppna sedan ett annat File Explorer fönstret och navigera till mappen "C:stable-diffusion" vi just skapade.

Dra och släpp mappen i ZIP-filen, "stable-diffusion-main", till mappen "stable-diffusion".

Dra och släpp innehållet i ZIP-filen till mappen stabil-diffusion.

Gå tillbaka till Miniconda3, kopiera och klistra sedan in följande kommandon i fönstret:

cd C:stable-diffusionstable-diffusion-main conda env create -f environment.yaml conda activate ldm mkdir modelsldmstable-diffusion-v1

Vänta tills nedladdningen är klar.

Avbryt inte denna process. Vissa av filerna är större än en gigabyte, så det kan ta lite tid att ladda ner. Om du av misstag avbryter processen måste du ta bort miljömappen och köra conda env create -f environment.yaml om igen. Om det händer, navigera till “C:Users(Your User Account).condaenvs” och ta bort mappen “ldm” och kör sedan föregående kommando.

Notera: Så vad gjorde vi just? Python låter dig sortera kodningsprojekt i "Environments". Varje miljö är separat från andra miljöer, så du kan ladda olika Python-bibliotek till olika miljöer utan att behöva oroa dig för motstridiga versioner. Det är ovärderligt om du arbetar med flera projekt på en dator.

Raderna vi körde skapade en ny miljö med namnet "ldm", laddades ner och installerades alla nödvändiga Python-bibliotek för att stabil diffusion ska fungera, aktiverade sedan ldm-miljön ändrade katalogen till en ny mapp.

Vi är på det sista steget i installationen. Navigera till "C:stable-diffusionstable-diffusion-mainmodelsldmstable-diffusion-v1" i Filutforskaren, kopiera och klistra sedan in kontrollpunktsfilen (sd-v1-4.ckpt) i mappen.

Kopiera modellfilen till mappen stable-diffuse-v1.

Vänta tills filen har slutförts överföringen, högerklicka på "sd-v1-4.ckpt" och klicka sedan på "Byt namn". Skriv "model.ckpt" i den markerade rutan och tryck sedan på Enter för att ändra filnamnet.

Notera: Om du kör Windows 11, kommer du inte att se "byt namn" i högerklicksmenyn. Det finns en ikon som ser ut som ett miniatyrtextfält istället.

Byt namn på modellfilen

Och det är allt - vi är klara. Vi är redo att faktiskt använda Stable Diffusion nu.

Hur man använder stabil diffusion

ldm-miljön vi skapade är viktig, och du måste aktivera den när du vill använda Stable Diffusion. Stiga på conda activate ldm i Miniconda3-fönstret och tryck på "Enter". (ldm) på vänster sida anger att ldm-miljön är aktiv.

Notera: Du behöver bara ange det kommandot när du öppnar Miniconda3. ldm-miljön förblir aktiv så länge du inte stänger fönstret.

Aktivera ldm-miljön.

Sedan måste vi ändra katalogen (därav kommandotcd) till "C:stable-diffusionstable-diffusion-main" innan vi kan generera några bilder. Klistra cd C:stable-diffusionstable-diffusion-main i kommandoraden.

Hur man gör en bild med stabil diffusion

Vi kommer att kalla ett skript, txt2img.py, som låter oss konvertera textmeddelanden till 512×512 bilder. Här är ett exempel. Testa detta för att se till att allt fungerar korrekt:

python scripts/txt2img.py --prompt "ett närbildsporträtt av en katt av pablo picasso, levande, abstrakt konst, färgstark, levande" --plms --n_iter 5 --n_samples 1

Din konsol kommer att ge dig en framstegsindikator när den producerar bilderna.

Stabil diffusionsgenererande bilder.

Det kommandot kommer att producera fem kattbilder, alla placerade på "C:stable-diffusionstable-diffusion-mainoutputstxt2img-samplesamples".

En katt i stil med Pablo Picasso.

Det är inte perfekt, men det liknar tydligt Pablo Picassos stil, precis som vi angav i prompten. Dina bilder ska se likadana ut men inte nödvändigtvis identiska.

Varje gång du vill ändra vilken bild som genereras behöver du bara ändra texten i de dubbla citattecken som följer --prompt.

Dricks: Skriv inte om hela raden varje gång. Använd piltangenterna för att flytta runt textmarkören och ersätt bara prompten.

python scripts/txt2img.py --prompt"DIN, BESKRIVNINGAR, GÅ HÄR" --plms --n_iter 5 --n_samples 1

Säg att vi ville skapa en realistisk gopher i en magisk skog med en trollkarlhatt. Vi kan prova kommandot:

python scripts/txt2img.py --prompt "ett fotografi av en gopher som bär en trollhatt i en skog, levande, fotorealistisk, magisk, fantasy, 8K UHD, fotografi" --plms --n_iter 5 --n_samples 1

En gopher med en lila trollkarlhatt.

Det är verkligen så enkelt - beskriv bara vad du vill så specifikt du kan. Om du vill ha något fotorealistiskt, se till att inkludera termer som rör en realistisk bild. Om du vill ha något inspirerat av en specifik konstnärs stil, ange konstnären.

Stabil Diffusion är inte heller begränsad till porträtt och djur, den kan också producera slående landskap.

En lugn sjö med berg runt omkring och en dramatisk himmel.

Vad betyder argumenten i kommandot?

Stabil Diffusion har ett enormt antal inställningar och argument som du kan tillhandahålla för att anpassa dina resultat. De fåtal som ingår här är i princip nödvändiga för att säkerställa att Stable Diffusion körs på en genomsnittlig speldator.

  • –plms — Anger hur bilderna ska samplas. Det finns ett papper om det, om du vill kolla in matematiken.
  • –n_iter — anger antalet iterationer du vill generera för varje prompt. 5 är en anständig siffra för att se vilken typ av resultat du får.
  • –n_samples — anger antalet sampel som kommer att genereras. Standard är 3, men de flesta datorer har inte tillräckligt med VRAM för att stödja det. Håll dig till 1 om du inte har en specifik anledning att ändra den.

Naturligtvis har Stable Diffusion massor av olika argument som du kan implementera för att justera dina resultat. Springa python scripts/txt2img.py --help för att få en uttömmande lista över argument som du kan använda.

Det finns massor av försök och misstag involverat i att få bra resultat, men det är åtminstone hälften av det roliga. Se till att du skriver ner eller sparar argument och beskrivningar som ger resultat du gillar. Om du inte vill göra alla experiment själv, det växer gemenskaper på Reddit (och på andra ställen) dedikerade till att utbyta bilder och de uppmaningar som genererade dem.

Ursprungliga artikel

Relaterade inlägg