Ajánljatok self hosted stable diffusion AI-t

Egyik ismerősöm megkeresett, hogy szüksége lenne egy olyan képgeneráló AIra, amit zárt környezetben, saját vason tud futtatni és amit saját maga tudna tanítani.

Az ok egyszerű, az AIval, olyan képanyagokat készítenének, aminél nem opció, hogy bármiféle szerzői jogi konfliktusba keveredjenek az AI üzemeltetőjével és kizáró ok, hogy a generált tartalom 3. félhez kikerüljön. Maga a betanításhoz tudnának képanyagot előállítani.

Bónusz pontok, hogyha egy átlagos informatikus RTFM alapján be tuná állítani, scriptelhető lenne a beviteli prompt és CPUn is elfutna. 

A sebesség és a precizitás nem igény, mert a képanyag vizuális töltelékként lenne felhasználva.

Van erre valakinek ötlete?

Hozzászólások

Az AI válaszol:

Az ismerősöd igényei alapján a következő AI képgeneráló megoldásokat ajánlom, amelyek zárt környezetben, saját hardveren futtathatók és saját adatokkal is taníthatók. Ezek közül több megfelelhet a megadott követelményeknek:

  1. Stable Diffusion:

    • Leírás: Az egyik legnépszerűbb nyílt forráskódú képgeneráló modell. Könnyen testre szabható és saját adatbázissal tanítható.
    • Futtatás: CPU-n is futtatható, bár lassabb lesz, mint GPU-n.
    • Telepítés: A modellt le lehet tölteni és futtatni zárt környezetben.
    • Testreszabás: Lehetővé teszi a finomhangolást (fine-tuning) saját adatokkal.
    • Forrás: Stable Diffusion GitHub
  2. GANs (Generative Adversarial Networks):

    • Leírás: A GAN modellek különböző variánsai, mint például a StyleGAN, kiválóan alkalmasak saját képanyag generálására.
    • Futtatás: CPU-n is működnek, bár a sebesség itt is lassabb lehet.
    • Testreszabás: Könnyen tanítható saját adatokkal.
    • Forrás: StyleGAN GitHub
  3. DALL-E Mini:

    • Leírás: Egy kisebb változata az OpenAI DALL-E modelljének, amely szintén nyílt forráskódú.
    • Futtatás: CPU-n is futtatható, de a sebesség itt is korlátozott lehet.
    • Telepítés: Könnyen telepíthető és futtatható zárt környezetben.
    • Testreszabás: Támogatja a finomhangolást.
    • Forrás: DALL-E Mini GitHub

Telepítési és futtatási útmutató példa: Stable Diffusion

  1. Környezet előkészítése:

    • Telepítsd az Anaconda vagy Miniconda-t.
    • Hozz létre egy új Python környezetet:
      
       

      bash

    • 
       

      conda create -n stable-diffusion python=3.8 conda activate stable-diffusion

  • Stable Diffusion telepítése:

    • Telepítsd a szükséges csomagokat:
      
       

      bash

    • 
       

      conda install pytorch torchvision torchaudio cpuonly -c pytorch pip install -r requirements.txt

  • Modell letöltése:

    • Töltsd le a Stable Diffusion modellt és súlyokat (weights).
  • Futtatás:

    • Használj egy Python scriptet a képgeneráláshoz:
      
       

      python

    • 
       

      from stable_diffusion import StableDiffusion model = StableDiffusion("model_path") prompt = "A beautiful landscape painting" image = model.generate(prompt) image.save("output.png")

Saját adatokkal való betanítás

  1. Adatok előkészítése:

    • Gyűjts össze és előkészítsd a tanító adatokat (képek és hozzájuk tartozó címkék).
  2. Finomhangolás:

    • Használd a meglévő modelleket finomhangolásra, például a transformers könyvtárral:
      
       

      python

    • 
       

      from transformers import Trainer, TrainingArguments training_args = TrainingArguments(output_dir="./results", num_train_epochs=3, per_device_train_batch_size=4) trainer = Trainer(model=model, args=training_args, train_dataset=your_dataset) trainer.train()

Ezek a lépések segíthetnek az ismerősödnek a saját AI képgeneráló rendszer kialakításában és működtetésében zárt környezetben.

Aláírás _Franko_ miatt törölve.
neut @

4/7 gigas a huggingface modell. Egy jobb hazi nvidia gpu-n valszeg elfutkos, de ezen a szinten a T4-et szoktak "belepo" modellnek venni. Ne lepodj meg, ha esetleg a cpu-n, bar valoban jelolve van, hogy fut, "esetleg" baromi lassu lesz.

Ha lesz kis idom, kiprobalom en is, mert erdekesnek tunik.

Megneztem.

A fenti valasz durvan elavult es hibas is; az ajanlott install a stable-diffusion-webui, ami rogton egy gui-t is ad a lehetosegekkel.

Nekem egy 6GB-os nvidia a1000  (ami kb. egy rtx3050) van a laptopban, azzal kb. 5-6 masodperc alatt general egy 512x512-es kepet.

Tomoren, mukodik.

Szerkesztve: 2024. 06. 04., k – 14:19

>és CPUn is elfutna

Tudom hogy csak bónusz pont de ezt az elvárást szerintem még most felejtse el. És nem azért mert nem lehetséges, vagy tényleg lehetetlenül lassú 1-1 kép, hanem mert a promptok próbálgatása baromi sok meló már önmagában is. Igen lehet CPU-n futtatni általában ezeket de most képzeld el, hogy mondjuk 1-2-5+ perc (sampling steps növelésével szinte exponenciálisan növekszik) egy 250x250 pixeles kép generálása, és csak a 30. próbálkozásra sikerült nagyjából azt kapni amire te gondoltál. Egyszerűen túl sok szemetet kapsz általában, nem reális a cpu. Ha nem sajnálja rá az idejét akkor működni persze működhet. Ráadásul modellt tanítani ennél még sokkal, sokkal számításigényesebb. Ha tényleg tanítani is akar akkor duplán felejtse el.

Egyébként szerintem nem egy szívsebészet az AUTOMATIC1111 webui és huggingface-ről halászott modell alapján lokális instance-ot létrehozni, ráadásul ha lesz rá dedikált szervere akkor csak egyszer kell felkonfigurálni.

[insert line here]
B.C. 3500 - DIY Vehicle / A.D. 30 - DIY Religion / A.D. 1991 - DIY OS

Szerkesztve: 2024. 06. 04., k – 22:34

A Kritához van Stable Diffusion plugin, én ezt használom. 1.5 és XL szóval nem a legújabb verziók de open source és local.

https://krita.org/en/

https://github.com/Acly/krita-ai-diffusion/

https://github.com/Acly/krita-ai-diffusion/wiki/Stable-Diffusion-Versions

Ez elmegy CPU-n is de iszonyat lassú (kivéve ha egy M* Mac-ről van szó), én RTX 4070 Ti-al használom ezzel elég gyors.

GPU memória méret és annak sávszélessége ami legjobban számít. Azaz egy 3060 12GB memóriával baromi jó, egy 4070 8GB pedig meglepő módon nem annyira. 

Alma jó, de nem erre, konkrétan nagyságrendi különbség van. Bár van célzottan almára tuningolt modell, az is csak almás viszonylatban gyorsabb.

Szerk: a fenti állítás generálásra igaz, tanításra a GPU kerül nagyobb szerepbe.

És az új almák érdekessége, hogy a teljes rendszer memória elérhető az AI gyorsító számára, na ott már megfordulhat a helyzet, de m4-hez még nem volt szerencsém, így ez egyelőre csak érzés