Windows'ta Bir GUI ile Yerel Olarak Kararlı Difüzyon Nasıl Çalıştırılır

Yayınlanan: 2022-09-18

Başlık görüntü. Tuhaf akbaba şey, sevimli gri kedi ve sibernetik bir medusa.

Stable Difusion'ı PC'nize yerel olarak yükleyebilirsiniz, ancak tipik işlem, yüklemek ve kullanmak için komut satırıyla çok fazla çalışma gerektirir. Neyse ki bizim için Stabil Difüzyon topluluğu bu sorunu çözdü. Grafiksel bir kullanıcı arayüzü ile yerel olarak çalışan bir Kararlı Difüzyon sürümünü nasıl kuracağınız aşağıda açıklanmıştır!

İçindekiler

Kararlı Difüzyon Nedir?
Bu Kararlı Difüzyon Sürümünü Çalıştırmak için Neye İhtiyacınız Var?
Bir GUI ile Kararlı Difüzyon Nasıl Kurulur
Önce Python'u Yükleyin
Git'i yükleyin ve GitHub Deposunu İndirin
Tüm Kontrol Noktalarını İndirin
Bir GUI ile Kararlı Difüzyon Kullanarak Görüntüler Nasıl Oluşturulur
Inpaint için Oluşturduğunuz Görüntüleri Nasıl Maskeleyebilirsiniz?
"CUDA Bellek Yetersiz" Hatası Nasıl Düzeltilir

Kararlı Difüzyon Nedir?

Stable Diffusion, metin istemlerinden görüntüler oluşturabilen veya MidJourney veya DALL-E 2 gibi bir metin istemiyle mevcut görüntüleri değiştirebilen bir AI modelidir. İlk olarak Ağustos 2022'de Stability.ai tarafından piyasaya sürüldü. Binlerce farklı kelimeyi anlar ve hayal gücünüzün oluşturabileceği hemen hemen her türlü görüntüyü oluşturmak için kullanılabilir.

Yine de, Stable Difusion'ı diğer popüler AI sanat oluşturucularının çoğundan ayıran iki kritik fark vardır:

  • PC'nizde yerel olarak çalıştırılabilir
  • Açık kaynaklı bir projedir
Stabil Difüzyon, Yerel AI Sanat Üretimini PC'nize Getiriyor
İLGİLİ Kararlı Difüzyon, Yerel Yapay Zeka Sanat Üretimini Bilgisayarınıza Getiriyor

Son nokta, burada gerçekten önemli olan konudur. Geleneksel olarak, Kararlı Dağıtım bir komut satırı arabirimi aracılığıyla kurulur ve çalıştırılır. Çalışır, ancak hantal, sezgisel olmayabilir ve aksi takdirde ilgilenecek olan insanlar için girişte önemli bir engeldir. Ancak, bu açık kaynaklı bir proje olduğundan, topluluk hızla bunun için bir kullanıcı arayüzü oluşturdu ve video ram (VRAM) kullanımını en aza indirgemek ve yükseltme ve maskeleme oluşturmak için optimizasyonlar dahil olmak üzere kendi büyütmelerini eklemeye başladı.

Bu Kararlı Difüzyon Sürümünü Çalıştırmak için Neye İhtiyacınız Var?

Stable Diffusion'ın bu sürümü, Stability.ai tarafından oluşturulan ve sürdürülen ana deponun (repo) bir çatalıdır - bir dalıdır. Grafiksel bir kullanıcı arayüzüne (GUI) sahiptir - sadece bir komut satırı arayüzüne sahip olan normal Stabil Diffusion'dan daha kolay kullanım sağlar - ve kurulumun çoğunu otomatik olarak halledecek bir yükleyici.

İLGİLİ: AI Görüntüleri Oluşturmak için Bilgisayarınızda Kararlı Difüzyon Nasıl Çalıştırılır

Uyarı: Her zaman olduğu gibi, GitHub'da bulduğunuz üçüncü taraf yazılım çatallarına dikkat edin. Bunu bir süredir sorunsuz kullanıyoruz ve binlerce başkası da var, bu yüzden güvenli olduğunu söylemeye meyilliyiz. Neyse ki, buradaki kod ve değişiklikler, bazı açık kaynaklı proje çatallarına kıyasla küçüktür.

Bu çatal aynı zamanda daha az RAM, yerleşik yükseltme ve GFPGAN, ESRGAN, RealESRGAN ve CodeFormer kullanan yüz özellikleri ve maskeleme ile PC'lerde çalışmasına izin vermesi gereken çeşitli optimizasyonlar içerir. Maskeleme çok önemli bir şeydir - AI görüntü oluşturma işlemini görüntünün belirli bölümlerine, diğer bölümleri bozmadan, tipik olarak iç boyama olarak adlandırılan bir işlem olarak uygulamanıza olanak tanır.

  • Sabit sürücünüzde en az 10 gigabayt boş
  • 6 GB RAM'e sahip bir NVIDIA GPU (4 GB'ı çalıştırabilmenize rağmen)
  • Windows 11, Windows 10, Windows 8.1 veya Windows 8 çalıştıran bir bilgisayar
  • AUTOMATIC1111 tarafından hazırlanan WebUI GitHub Repo
  • Python 3.10.6 (Daha yeni sürümler ve çoğu eski sürümler de iyi olmalıdır)
  • Kararlı Yayılma Resmi Kontrol Noktaları (Eylül sonunda v1.5 kontrol noktalarını izleyin!)
  • GFPGAN v1.3 Kontrol Noktaları (v1.4 de işe yarayabilir)
  • İstediğiniz ek ESRGAN modelleri. İstediğiniz kadar çok veya az kullanabilirsiniz.

Bir GUI ile Kararlı Difüzyon Nasıl Kurulur

Yükleme işlemi önemli ölçüde kolaylaştırıldı, ancak yükleyiciyi kullanmadan önce manuel olarak yapmanız gereken birkaç adım var.

Önce Python'u Yükleyin

Yapmanız gereken ilk şey, repo yazarı tarafından önerilen Python 3.10.6 sürümünü kurmaktır. Bu bağlantıya gidin, sayfanın en altına gidin ve “Windows Installer (64-Bit)” seçeneğini tıklayın.

İndirdiğiniz yürütülebilir dosyayı tıklayın ve istemleri gözden geçirin. Python'u zaten yüklediyseniz (ve kesinlikle yüklediyseniz), “Yükselt”e tıklamanız yeterlidir. Aksi takdirde, önerilen istemleri takip edin.

Not: Bunun için bir seçeneğiniz varsa, PATH'e Python 3.10.6 eklediğinizden emin olun.

Git'i yükleyin ve GitHub Deposunu İndirin

Stable Difüzyon yükleyicisinin çalıştırılabilmesi için Git'i Windows'a indirip yüklemeniz gerekir. Sadece 64-bit Git yürütülebilir dosyasını indirin, çalıştırın ve aklınızda belirli bir şey yoksa önerilen ayarları kullanın.

İLGİLİ: Git Windows'a Nasıl Yüklenir

Ardından, dosyaları GitHub deposundan indirmeniz gerekir. Yeşil “Kod” düğmesine tıklayın, ardından menünün altındaki “ZIP İndir” seçeneğine tıklayın.

ZIP dosyasını Dosya Gezgini'nde veya tercih ettiğiniz dosya arşivleme programında açın ve ardından içeriği istediğiniz yere çıkarın. Kararlı Difüzyon'u çalıştırmak için gitmeniz gereken yerin bu klasör olduğunu unutmayın. Bu örnek onları C:\ dizinine çıkardı, ancak bu gerekli değil.

"stabil-difusion-webui-master" klasörünü istediğiniz yere sürükleyin.

Not: “stabil-difusion-webui-master” dosyasını yanlışlıkla boş alan yerine başka bir klasöre sürüklemediğinizden emin olun; bunu yaparsanız, istediğiniz ana klasöre değil, o klasöre düşer.

Tüm Kontrol Noktalarını İndirin

Bunun çalışması için ihtiyacınız olan birkaç kontrol noktası vardır. Bunlardan ilki ve en önemlisi Kararlı Yayılma Kontrol Noktalarıdır. Kontrol noktalarını indirmek için bir hesap oluşturmanız gerekiyor, ancak hesap için fazla bir şey gerekmiyor - tek ihtiyaçları olan bir ad ve e-posta adresi ve hazırsınız.

Not: Kontrol noktalarının indirilmesi birkaç gigabayttır. Hemen yapılmasını beklemeyin.

“sd-v1-4.ckpt” dosyasını kopyalayıp önceki bölümdeki “stable-difusion-webui-master” klasörüne yapıştırın, ardından “sd-v1-4.ckpt” üzerine sağ tıklayın ve yeniden adlandır'a basın. Metin alanına “model.ckpt” yazın ve Enter'a basın. “model.ckpt” olduğundan emin olun – bu başka türlü çalışmayacaktır.

Not: Yeniden adlandırma işlevi, Windows 11'de bir simgedir.

Ayrıca GFPGAN kontrol noktalarını da indirmeniz gerekir. Kullandığımız deponun yazarı, GFPGAN v1.3 kontrol noktalarını çağırdı, ancak denemek isterseniz v1.4'ü kullanabilirsiniz. Sayfayı aşağı kaydırın, ardından “V1.3 modeli”ne tıklayın.

“GFPGANv1.3.pth” dosyasını, tıpkı “sd-v1-4.ckpt” dosyasında yaptığınız gibi “stable-difusion-webui-master” klasörüne yerleştirin, ancak yeniden adlandırmayın. "stabil-difüzyon-webui-master" klasörü artık şu dosyaları içermelidir:

Kararlı Difüzyon modelini yeniden adlandırdıktan ve GFPGAN modelini ekledikten sonra klasörün böyle görünmesi gerekir.

Ayrıca istediğiniz kadar ESRGAN kontrol noktası indirebilirsiniz. Genellikle ZIP dosyaları olarak paketlenmiş olarak gelirler. Birini indirdikten sonra, ZIP dosyasını açın ve ardından “.pth” dosyasını “ESRGAN” klasörüne çıkarın. İşte bir örnek:

ESRGAN modelleri için konum.

ESRGAN modelleri daha spesifik işlevsellik sağlama eğilimindedir, bu nedenle size hitap eden bir çift seçin.

Şimdi, birincil “stable-difusion-webui-master” klasöründe bulunan “webui-user.bat” dosyasına çift tıklamanız yeterlidir. Bir konsol Penceresi görünecek ve diğer tüm önemli dosyaları almaya, bir Python ortamı oluşturmaya ve bir web kullanıcı arayüzü kurmaya başlayacaktır. Bunun gibi görünecek:

Not: Bunu ilk çalıştırmanızın en az birkaç dakika sürmesini bekleyin. İnternetten bir sürü şey indirmesi gerekiyor. Bir adımda makul olmayan bir süre boyunca askıda kalıyor gibi görünüyorsa, konsol penceresini seçip Enter tuşuna basmayı deneyin.

WebUI istemcisi tüm varlıkları indiriyor ve kuruyor.

Tamamlandığında, konsol şunları gösterecektir:

 Yerel URL'de çalışıyor: http://127.0.0.1:7860
Genel bir bağlantı oluşturmak için, 'launch()' içinde 'share=True' değerini ayarlayın.

İLGİLİ: 127.0.0.1 IP Adresi Nedir ve Nasıl Kullanırsınız?

Bir GUI ile Kararlı Difüzyon Kullanarak Görüntüler Nasıl Oluşturulur

Pekala, Stable Difusion'ın WebUI varyantını yüklediniz ve konsolunuz bunun "yerel URL'de çalıştığını: http://127.0.0.1:7860" olduğunu size bildiriyor.

Not: Bu tam olarak ne anlama geliyor, neler oluyor? 127.0.0.1 yerel ana bilgisayar adresidir - bilgisayarınızın kendisine verdiği IP adresi. Stable Difüzyon'un bu sürümü, yerel PC'nizde kendi IP adresi aracılığıyla erişilebilen, ancak yalnızca doğru bağlantı noktası: 7860 üzerinden bağlanırsanız erişilebilen bir sunucu oluşturur.

Tarayıcınızı açın, adres çubuğuna “127.0.0.1:7860” veya “localhost:7860” yazın ve Enter'a basın. Bunu txt2img sekmesinde göreceksiniz:

Google Chrome'daki WebUI istemcisinin ön sayfası.

Daha önce Kararlı Yayılım kullandıysanız, bu ayarlar size tanıdık gelecektir, ancak burada en önemli seçeneklerin ne anlama geldiğine dair kısa bir genel bakış verilmiştir:

  • Komut istemi: Oluşturmak istediğiniz şeyin açıklaması.
  • Roll Düğmesi: İsteminize rastgele bir sanatsal stil uygular.
  • Örnekleme Adımları: Bir çıktı almadan önce görüntünün rafine edilme sayısı. Daha fazlası genellikle daha iyidir, ancak azalan getiriler vardır.
  • Örnekleme Yöntemi: Örneklemenin nasıl işlendiğini yöneten temel matematik. Bunlardan herhangi birini kullanabilirsiniz, ancak euler_a ve PLMS en popüler seçenekler gibi görünüyor. Bu yazıda PLMS hakkında daha fazla bilgi edinebilirsiniz.
  • Yüzleri Geri Yükle: Tekinsiz veya bozuk yüzleri düzeltmeye çalışmak için GFPGAN'ı kullanır.
  • Parti Sayısı: Oluşturulacak görüntü sayısı.
  • Parti Boyutu: “parti” sayısı. Çok büyük miktarda VRAM'iniz yoksa bunu 1'de tutun.
  • CFG Ölçeği: Kararlı Difüzyon, verdiğiniz istemi ne kadar dikkatli izleyecektir. Daha büyük sayılar, onu çok dikkatli takip ettiği anlamına gelirken, daha düşük sayılar ona daha fazla yaratıcı özgürlük verir.
  • Genişlik: Oluşturmak istediğiniz görüntünün genişliği.
  • Yükseklik: Oluşturmak istediğiniz görüntünün genişliği.
  • Tohum: Rastgele sayı üreteci için ilk girdi sağlayan sayı. Rastgele yeni bir tohum oluşturmak için -1'de bırakın.

Komuta dayalı beş görüntü oluşturalım: “büyülü bir ormanda bir yayla ineği, 35 mm film fotoğrafçılığı, keskin” ve PLMS örnekleyici, 50 örnekleme adımı ve 5'lik bir CFG ölçeği kullanarak ne elde ettiğimizi görün.

İpucu: İşiniz çok uzun sürüyorsa üretimi durdurmak için her zaman "Araya Gir" düğmesine basabilirsiniz.

Çıktı penceresi şöyle görünecektir:

Yayla inekleri hakkında bilgi istemi çıktısı. Beş yayla ineği, ikisi siyah beyaz.

Not: Resimleriniz farklı olacaktır.

Üst ortadaki görüntü, biraz sonra maskelemeyi denemek için kullanacağımız görüntüdür. Bu özel tercihin kişisel tercih dışında gerçekten bir nedeni yoktur. Beğendiğiniz herhangi bir resmi alın.

Bir ormandaki sevimli bir yayla ineği.

Seçin ve ardından "Inpaint'e Gönder"e tıklayın.

Inpaint için Oluşturduğunuz Görüntüleri Nasıl Maskeleyebilirsiniz?

Inpainting harika bir özelliktir. Normalde Kararlı Yayılma, bir komut isteminden tüm görüntüleri oluşturmak için kullanılır, ancak iç boyama, görüntünün parçalarını seçici olarak oluşturmanıza (veya yeniden oluşturmanıza) izin verir. Burada iki kritik seçenek vardır: inpaint maskeli, inpaint maskeli değil.

Inpaint maskeli, vurguladığınız alan içinde görüntü oluşturmak için istemi kullanır, oysa inpaint maskelenmemiş tam tersini yapar - yalnızca maskelediğiniz alan korunur.

Önce Inpaint maskeli hakkında biraz bilgi vereceğiz. Farenizi sol tıklamayı basılı tutarak resmin üzerinde sürükleyin ve resminizin üzerinde beyaz bir katmanın göründüğünü fark edeceksiniz. Değiştirmek istediğiniz alanın şeklini çizin ve tamamen doldurduğunuzdan emin olun. Bir bölgeyi çevrelemiyorsunuz, tüm bölgeyi maskeliyorsunuz.

İpucu: Varolan bir resme yalnızca bir şey ekliyorsanız, maskeli bölgeyi oluşturmaya çalıştığınız yaklaşık şekille aynı hizaya getirmeye çalışmak yararlı olabilir. Örneğin, bir daire istediğinizde üçgen şekli maskelemek ters etki yapar.

Yayla ineği örneğimizi ele alalım ve ona bir şef şapkası verelim. Yaklaşık olarak bir şef şapkası şeklinde bir bölgeyi maskeleyin ve “Parti Boyutu”nu 1'den fazla olarak ayarladığınızdan emin olun. İdeal(imsi) bir sonuç elde etmek için muhtemelen birden fazlasına ihtiyacınız olacak.

Ek olarak, “Doldur”, “Orijinal” veya “Gizli Hiçbir Şey” yerine “Gizli Gürültü”yü seçmelisiniz. Bir sahnede tamamen yeni bir nesne oluşturmak istediğinizde en iyi sonuçları üretme eğilimindedir.

Not: Şapkanın sol kenarının boynuzunun bir kısmını sildiğini fark edeceksiniz. Bunun nedeni, "Maske Bulanıklığı" ayarının biraz fazla yüksek olmasıydı. Resimlerinizde buna benzer şeyler görüyorsanız, “Maske Bulanıklığı” değerini düşürmeyi deneyin.
Şef şapkalı bir yayla ineği.
Komut istemi: Şefin şapkası Ayarlar: Inpaint Masked, Latent Difüzyon, CFG 9.5, gürültü önleme gücü 0.75, Örnekleme Adımları = 50, Örnekleme Yöntemi = Euler_A

Pekala - belki bir şefin şapkası yayla ineğiniz için doğru seçim değildir. Yayla ineğiniz daha çok 20. yüzyılın başlarından kalma, o yüzden ona bir melon şapka verelim.

Melon şapkalı bir yayla ineği.
Komut: Bwel hat Ayarlar: Inpaint Masked, Latent Difüzyon, CFG 9.5, gürültü şiddeti 0.75, Örnekleme Adımları = 50, Örnekleme Yöntemi = Euler_A

Ne kadar olumlu.

Tabii ki Inpaint Not Masked ile tam tersini de yapabilirsiniz. Tanımladığınız bölgelerin tersine çevrilmesi dışında kavramsal olarak benzerdir. Değiştirmek istediğiniz bölgeyi işaretlemek yerine korunmasını istediğiniz bölgeleri işaretlersiniz. Küçük bir nesneyi farklı bir arka plana taşımak istediğinizde genellikle kullanışlıdır.

“CUDA Bellek Yetersiz” Hatası Nasıl Düzeltilir

Yaptığınız görüntü ne kadar büyük olursa, o kadar fazla video belleği gerekir. Denemeniz gereken ilk şey, daha küçük görüntüler oluşturmaktır. Kararlı Yayılma, 256×256'da çok farklı olsa da iyi görüntüler üretir.

512×512 görüntülerle ilgili sorunları olmayan bir bilgisayarda daha büyük görüntüler oluşturmak için can atıyorsanız veya çeşitli “Bellek Yetersiz” hatalarıyla karşılaşıyorsanız, yapılandırmada yardımcı olabilecek bazı değişiklikler vardır.

“webui-user.bat” dosyasını Not Defteri'nde veya istediğiniz herhangi bir düz metin düzenleyicide açın. "webui-user.bat"a sağ tıklayın, "Düzenle"ye tıklayın ve ardından Not Defteri'ni seçin. set COMMANDLINE_ARGS= yazan satırı tanımlayın. Kararlı Yayılma'nın nasıl çalıştığını optimize etmek için komutları yerleştireceğiniz yer burasıdır.

İLGİLİ: Windows'ta Toplu Komut Dosyası Nasıl Yazılır

Yalnızca büyük resimler yapmak istiyorsanız veya GTX 10XX serisi GPU'da RAM'iniz tükeniyorsa, önce --opt-split-attention deneyin. Şöyle görünecek:

Ardından Dosya > Kaydet'e tıklayın. Alternatif olarak, klavyenizde Ctrl+S tuşlarına basabilirsiniz.

Hâlâ bellek hataları alıyorsanız, komut satırı bağımsız değişkenleri listesine --medvram eklemeyi deneyin (COMMANDLINE_ARGS).

Önceki komutlar yardımcı olmadıysa, ek bellek sorunlarını denemek ve düzeltmek için --always-batch-cond-uncond ekleyebilirsiniz. --medvram için VRAM kullanımını daha da azaltabilecek bir alternatif de var --lowvram , ancak gerçekten çalışıp çalışmayacağını onaylayamıyoruz.

Bir kullanıcı arayüzünün eklenmesi, bu tür AI güdümlü araçları herkes için erişilebilir hale getirmede önemli bir adımdır. Olasılıklar neredeyse sonsuzdur ve AI sanatına adanmış çevrimiçi topluluklara hızlı bir bakış bile, teknolojinin henüz emekleme döneminde bile ne kadar güçlü olduğunu size gösterecektir. Tabii ki, bir oyun bilgisayarınız yoksa veya kurulum hakkında endişelenmek istemiyorsanız, her zaman çevrimiçi AI sanat oluşturucularından birini kullanabilirsiniz. Girişlerinizin özel olduğunu varsayamayacağınızı unutmayın.