Paano Magpatakbo ng Stable Diffusion Lokal na Gamit ang isang GUI sa Windows


Maaari mong i-install nang lokal ang Stable Diffusion sa iyong PC, ngunit ang karaniwang proseso ay nagsasangkot ng maraming trabaho sa command line para i-install at gamitin. Sa kabutihang palad para sa amin, nalutas ng komunidad ng Stable Diffusion ang problemang iyon. Narito kung paano mag-install ng bersyon ng Stable Diffusion na lokal na tumatakbo gamit ang graphical na user interface!

Ano ang Stable Diffusion?

Ang Stable Diffusion ay isang modelo ng AI na maaaring bumuo ng mga larawan mula sa mga text prompt, o baguhin ang mga kasalukuyang larawan gamit ang isang text prompt, katulad ng MidJourney o DALL-E 2. Una itong inilabas noong Agosto 2022 ng Stability.ai. Nauunawaan nito ang libu-libong iba't ibang salita at maaaring magamit upang lumikha ng halos anumang imahe na maaaring ilarawan ng iyong imahinasyon sa halos anumang istilo.

Mayroong dalawang kritikal na pagkakaiba na nagtatakda ng Stable Diffusion bukod sa karamihan ng iba pang sikat na AI art generators, bagaman:

  • Maaari itong patakbuhin nang lokal sa iyong PC
  • Ito ay isang open-source na proyekto

Ang huling punto ay talagang ang mahalagang isyu dito. Ayon sa kaugalian, ang Stable Diffusion ay naka-install at tumatakbo sa pamamagitan ng isang command-line interface. Gumagana ito, ngunit maaari itong maging clunky, hindi intuitive, at ito ay isang malaking hadlang sa pagpasok para sa mga taong kung hindi man ay interesado. Ngunit, dahil isa itong open source na proyekto, mabilis na gumawa ang komunidad ng user interface para dito at nagsimulang magdagdag ng sarili nilang mga augmentation, kabilang ang mga pag-optimize para mabawasan ang paggamit ng video ram (VRAM) at bumuo sa upscaling at masking.

Ano ang Kailangan Mo upang Patakbuhin ang Bersyon na Ito ng Stable Diffusion?

Ang bersyon na ito ng Stable Diffusion ay isang fork — isang offshoot — ng pangunahing repositoryo (repo) na ginawa at pinapanatili ng Stability.ai. Mayroon itong graphical user interface (GUI) — na ginagawang mas madaling gamitin kaysa sa regular na Stable Diffusion, na mayroon lamang command-line interface — at isang installer na awtomatikong hahawak sa karamihan ng setup.

Naglalaman din ang fork na ito ng iba't ibang mga pag-optimize na dapat magpapahintulot sa mga ito na tumakbo sa mga PC na may mas kaunting RAM, built-in na upscaling at facial na mga kakayahan gamit ang GFPGAN, ESRGAN, RealESRGAN, at CodeFormer, at masking. Napakalaking deal ang masking — binibigyang-daan ka nitong piliing ilapat ang pagbuo ng imahe ng AI sa ilang bahagi ng larawan nang hindi binabaluktot ang iba pang bahagi, isang prosesong karaniwang tinatawag na inpainting.

  • Hindi bababa sa 10 gigabytes ang libre sa iyong hard drive
  • Isang NVIDIA GPU na may 6 GB ng RAM (bagama't maaari mong gawin ang 4 GB na gumana)
  • Isang PC na nagpapatakbo ng Windows 11, Windows 10, Windows 8.1, o Windows 8
  • Ang WebUI GitHub Repo, ni AUTOMATIC1111
  • Python 3.10.6 (Ang mga mas bagong bersyon at karamihan sa mga mas lumang bersyon ay dapat ding maayos)
  • Ang Stable Diffusion Official Checkpoints (Abangan ang v1.5 checkpoints!)
  • Ang GFPGAN v1.4 Mga Checkpoint
  • Anumang karagdagang mga modelo ng ESRGAN na maaaring gusto mo. Maaari mong gamitin ang marami o kakaunti hangga't gusto mo.

Paano Mag-install ng Stable Diffusion gamit ang isang GUI

Ang proseso ng pag-install ay na-streamline nang malaki, ngunit mayroon pa ring ilang mga hakbang na kailangan mong gawin nang manu-mano bago magamit ang installer.

I-install muna ang Python

Ang unang bagay na dapat mong gawin ay i-install ang bersyon ng Python, 3.10.6, na inirerekomenda ng may-akda ng repo. Tumungo sa link na iyon, mag-scroll patungo sa ibaba ng pahina, at i-click ang Windows Installer (64-Bit).

I-click ang executable na na-download mo at dumaan sa mga prompt. Kung mayroon ka nang na-install na Python (at tiyak na mayroon ka), i-click lamang ang I-upgrade. Kung hindi, sundin ang mga inirerekomendang prompt.

I-install ang Git at I-download ang GitHub Repo

Kailangan mong i-download at i-install ang Git sa Windows bago patakbuhin ang Stable Diffusion installer. I-download lang ang 64-bit na Git executable, patakbuhin ito, at gamitin ang mga inirerekomendang setting maliban na lang kung mayroon kang partikular na iniisip.

Susunod, kailangan mong i-download ang mga file mula sa GitHub repo. I-click ang berdeng Code na buton, pagkatapos ay i-click ang I-download ang ZIP sa ibaba ng menu.

Buksan ang ZIP file sa File Explorer o ang iyong gustong programa sa pag-archive ng file, at pagkatapos ay i-extract ang mga nilalaman kahit saan mo gusto. Tandaan lamang na ang folder ay kung saan kailangan mong pumunta upang patakbuhin ang Stable Diffusion. Kinuha ng halimbawang ito ang mga ito sa direktoryo ng C:\, ngunit hindi iyon mahalaga.

I-download ang Lahat ng Mga Checkpoint

Mayroong ilang mga checkpoint na kailangan mo para gumana ito. Ang una at pinakamahalaga ay ang Stable Diffusion Checkpoints. Kailangan mong gumawa ng account para ma-download ang mga checkpoint, ngunit hindi gaanong kailangan para sa account — ang kailangan lang nila ay pangalan at email address, at handa ka nang umalis.

Kopyahin at i-paste ang sd-v1-4.ckpt sa folder na C:\stable-diffusion-webui-master\models\Stable-diffusion, pagkatapos ay i-right-click ang sd-v1-4.ckpt at pindutin ang rename . I-type ang “model.ckpt” sa text field at pindutin ang Enter. Siguraduhing ito ay model.ckpt — hindi ito gagana kung hindi man.

Kailangan mo ring i-download ang mga checkpoint ng GFPGAN. Ang may-akda ng repo na ginagamit namin ay tinawag para sa mga checkpoint ng GFPGAN v1.4. Mag-scroll pababa sa page, pagkatapos ay i-click ang “V1.4 model.”

Ilagay ang file na iyon, “GFPGANv1.4.pth,” sa folder na “stable-diffusion-webui-master,” ngunit huwag palitan ang pangalan nito. Ang folder na stable-diffusion-webui-master ay dapat na maglaman ng mga file na ito:

Maaari ka ring mag-download ng maraming checkpoint ng ESRGAN hangga't gusto mo. Karaniwang naka-package ang mga ito bilang mga ZIP file. Pagkatapos mag-download ng isa, buksan ang ZIP file, at pagkatapos ay i-extract ang .pth na file sa folder na models/ESRGAN. Narito ang isang halimbawa:

Ang mga modelo ng ESRGAN ay may posibilidad na magbigay ng mas partikular na pagpapagana, kaya pumili ng isang mag-asawang kaakit-akit sa iyo.

Ngayon, kailangan mo lang i-double click ang webui-user.bat na file, na matatagpuan sa pangunahing folder na stable-diffusion-webui-master. May lalabas na console Window at magsisimulang kunin ang lahat ng iba pang mahahalagang file, pagbuo ng Python environment, at pag-set up ng web user interface. Magiging ganito ang hitsura:

Kapag tapos na ito, ipapakita ng console ang:

Running on local URL: http://127.0.0.1:7860
To create a public link, set `share=True` in `launch()`

Paano Bumuo ng Mga Larawan Gamit ang Stable Diffusion gamit ang isang GUI

Okay, na-install mo ang WebUI variant ng Stable Diffusion, at ipinaalam sa iyo ng iyong console na ito ay tumatakbo sa lokal na URL: http://127.0.0.1:7860.

Buksan ang iyong browser, ilagay ang “127.0.0.1:7860” o “localhost:7860” sa address bar, at pindutin ang Enter. Makikita mo ito sa tab na txt2img:

Kung nagamit mo na dati ang Stable Diffusion, magiging pamilyar sa iyo ang mga setting na ito, ngunit narito ang isang maikling pangkalahatang-ideya kung ano ang ibig sabihin ng pinakamahalagang opsyon:

  • Prompt: Ang paglalarawan ng kung ano ang gusto mong gawin.
  • Painter’s Pallete Button: Naglalapat ng random na artistikong istilo sa iyong prompt.
  • Mga Hakbang sa Pagsa-sample: Ang dami ng beses na mapipino ang larawan bago ka makatanggap ng output. Sa pangkalahatan, mas marami ang mas mahusay, ngunit may mga lumiliit na pagbalik.
  • Paraan ng Sampling: Ang pinagbabatayan na matematika na namamahala sa kung paano pinangangasiwaan ang sampling. Maaari mong gamitin ang alinman sa mga ito, ngunit mukhang ang euler_a at PLMS ang pinakasikat na mga opsyon. Maaari kang magbasa ng higit pa tungkol sa PLMS sa papel na ito.
  • I-restore ang Mga Mukha: Gumagamit ng GFPGAN upang subukang ayusin ang mga kakaiba o baluktot na mukha.
  • Bilang ng Batch: Ang bilang ng mga larawang bubuuin.
  • Laki ng Batch: Ang bilang ng mga “batch”. Panatilihin ito sa 1 maliban kung mayroon kang napakalaking halaga ng VRAM.
  • CFG Scale: Gaano kaingat na susundin ng Stable Diffusion ang prompt na ibibigay mo dito. Nangangahulugan ang mas malalaking numero na sinusundan ito nang maingat, samantalang ang mas mababang mga numero ay nagbibigay dito ng higit na kalayaan sa pagkamalikhain.
  • Lapad: Ang lapad ng larawang gusto mong buuin.
  • Taas: Ang lapad ng larawang gusto mong buuin.
  • Seed: Ang numerong nagbibigay ng paunang input para sa isang random-number generator. Iwanan ito sa -1 upang random na makabuo ng bagong binhi.

Bumuo tayo ng limang larawan batay sa prompt: isang highland cow sa isang mahiwagang kagubatan, 35mm film photography, matalas at tingnan kung ano ang makukuha natin gamit ang PLMS sampler, 50 sampling na hakbang, at isang CFG na sukat na 5.

Ang output window ay magiging ganito:

Ang nasa itaas-gitnang larawan ang gagamitin namin para subukan ang pag-mask sa ibang pagkakataon. Wala talagang dahilan para sa partikular na pagpipiliang ito maliban sa personal na kagustuhan. Kunin ang anumang larawan na gusto mo.

Piliin ito, at pagkatapos ay i-click ang Ipadala sa Inpaint.

Paano I-mask ang Mga Larawang Ginawa Mo para Mapintura

Ang inpainting ay isang kamangha-manghang tampok. Karaniwan ang Stable Diffusion ay ginagamit upang lumikha ng mga buong larawan mula sa isang prompt, ngunit ang inpainting ay nagbibigay-daan sa iyong piliing bumuo (o muling buuin) ang mga bahagi ng larawan. Mayroong dalawang kritikal na opsyon dito: inpaint masked, inpaint not masked.

Gagamitin ng inpaint masked ang prompt para bumuo ng imagery sa loob ng lugar na iyong iha-highlight, samantalang ang inpaint na hindi naka-mask ay gagawa ng eksaktong kabaligtaran — tanging ang lugar na iyong na-mask ang papanatilihin.

Tatalakayin muna natin ang tungkol sa Inpaint masked. I-drag ang iyong mouse sa paligid ng larawan na may hawak na kaliwang pag-click at mapapansin mo ang isang puting layer na lumilitaw sa ibabaw ng iyong larawan. Iguhit ang hugis ng lugar na gusto mong palitan, at siguraduhing punan ito nang buo. Hindi ka umiikot sa isang rehiyon, naka-mask ka sa buong rehiyon.

Kunin natin ang ating highland cow na halimbawa at bigyan siya ng chef's hat. I-mask out ang isang rehiyon sa humigit-kumulang na hugis ng sumbrero ng Chef, at tiyaking itakda ang Laki ng Batch sa higit sa 1. Malamang na kailangan mo ng maramihan upang makakuha ng ideal(ish) na resulta.

Bukod pa rito, dapat mong piliin ang Latent Noise sa halip na Fill, Original, o Latent Nothing. Ito ay may posibilidad na makagawa ng pinakamahusay na mga resulta kapag gusto mong bumuo ng isang ganap na bagong bagay sa isang eksena.

Okay — baka ang chef's hat ay hindi ang tamang piliin para sa iyong highland cow. Ang iyong highland cow ay mas nasa early-20th century vibes, kaya bigyan natin siya ng bowler hat.

Paano positibong matamis.

Siyempre, maaari mo ring gawin ang eksaktong kabaligtaran sa Inpaint Not Masked. Ito ay magkatulad sa konsepto, maliban sa mga rehiyon na iyong tinukoy ay binaligtad. Sa halip na markahan ang rehiyon na gusto mong baguhin, markahan mo ang mga rehiyon na gusto mong mapanatili. Madalas itong kapaki-pakinabang kapag gusto mong ilipat ang isang maliit na bagay sa ibang background.

Paano Ayusin ang Error na CUDA Out Of Memory.

Kung mas malaki ang larawang gagawin mo, mas maraming memory ng video ang kinakailangan. Ang unang bagay na dapat mong subukan ay ang pagbuo ng mas maliliit na larawan. Ang Stable Diffusion ay gumagawa ng magandang — kahit na ibang-iba — mga larawan sa 256×256.

Kung nangangati kang gumawa ng mas malalaking larawan sa isang computer na walang mga isyu sa 512×512 na larawan, o nakakaranas ka ng iba't ibang error na Out of Memory, may ilang pagbabago sa configuration na dapat makatulong.

Buksan ang webui-user.bat sa Notepad, o anumang iba pang simpleng text editor na gusto mo. I-right-click lang ang “webui-user.bat,” i-click ang “Edit,” at pagkatapos ay piliin ang Notepad. Tukuyin ang linyang may nakasulat na set COMMANDLINE_ARGS=. Doon mo ilalagay ang mga utos para ma-optimize kung paano tumatakbo ang Stable Diffusion.

Kung gusto mo lang gumawa ng malalaking larawan, o nauubusan ka ng RAM sa isang GTX 10XX series GPU, subukan muna ang --opt-split-attention . Magiging ganito ang hitsura:

Pagkatapos ay i-click ang File > I-save. Bilang kahalili, maaari mong pindutin ang Ctrl+S sa iyong keyboard.

Kung nakakakuha ka pa rin ng mga error sa memorya, subukang magdagdag ng --medvram sa listahan ng mga argumento ng command line (COMMANDLINE_ARGS).

Maaari kang magdagdag ng --always-batch-cond-uncond upang subukan at ayusin ang mga karagdagang isyu sa memory kung hindi nakatulong ang mga nakaraang command. Mayroon ding alternatibo sa --medvram na maaaring mabawasan pa ang paggamit ng VRAM, --lowvram, ngunit hindi namin mapapatunayan kung ito ay talagang gagana o hindi. .

Ang pagdaragdag ng user interface ay isang kritikal na hakbang pasulong sa paggawa ng mga ganitong uri ng AI-driven na tool na naa-access ng lahat. Ang mga posibilidad ay halos walang katapusan, at kahit na ang isang mabilis na sulyap sa mga online na komunidad na nakatuon sa AI art ay magpapakita sa iyo kung gaano kalakas ang teknolohiya, kahit na sa simula pa lamang. Siyempre, kung wala kang gaming computer, o ayaw mong mag-alala tungkol sa pag-setup, maaari mong palaging gamitin ang isa sa mga online na AI art generator. Tandaan lamang na hindi mo maaaring ipagpalagay na ang iyong mga entry ay pribado.