News for hackers. Stuff that matters.
Re:Stable Diffusion Public Release by badsectoracula on Monday August 22, 2022 @02:54PM (#32555608)
Is there any way to download this on my PC and run it offline? Something like a command-line tool like

    $ ./something "cow flying in space" > cow-in-space.png
that runs with local-only data (i.e. no internet access, no DRM, no weird API keys, etc like pretty much every AI-related application i've seen recently) would be neat.
Re:Stable Diffusion Public Release by mkaic on Monday August 22, 2022 @03:22PM (#32555978)
Yes, that's actually the biggest reason this is such a cool announcement! You just need to download the model checkpoints from HuggingFace[0] and follow the instructions on their Github repo[1] and and you should be good to go. You basically just need to clone the repo, set up a conda environment, and make the weights available to the scripts they provide.

[0] https://huggingface.co/CompVis/stable-diffusion [1] https://github.com/CompVis/stable-diffusion

Good luck!

Re:Stable Diffusion Public Release by snak on Tuesday August 23, 2022 @06:29AM (#32562765)
What's the difference between those 4 checkpoints?

From the GitHub's README:

    sd-v1-1.ckpt: 237k steps at resolution 256x256 on laion2B-en. 194k steps at resolution 512x512 on laion-high-resolution (170M examples from LAION-5B with resolution >= 1024x1024).

    sd-v1-2.ckpt: Resumed from sd-v1-1.ckpt. 515k steps at resolution 512x512 on laion-aesthetics v2 5+ (a subset of laion2B-en with estimated aesthetics score > 5.0, and additionally filtered to images with an original size >= 512x512, and an estimated watermark probability < 0.5. The watermark estimate is from the LAION-5B metadata, the aesthetics score is estimated using the LAION-Aesthetics Predictor V2).

    sd-v1-3.ckpt: Resumed from sd-v1-2.ckpt. 195k steps at resolution 512x512 on "laion-aesthetics v2 5+" and 10% dropping of the text-conditioning to improve classifier-free guidance sampling.

    sd-v1-4.ckpt: Resumed from sd-v1-2.ckpt. 225k steps at resolution 512x512 on "laion-aesthetics v2 5+" and 10% dropping of the text-conditioning to improve classifier-free guidance sampling.
Which one is the general use case checkpoint one should be using?
Re:Stable Diffusion Public Release by vintermann on Monday August 22, 2022 @03:59PM (#32556416)
You need a decent GPU, though. I suspect my 6080MiB won't cut it any longer :(
Re:Stable Diffusion Public Release by ompto on Monday August 22, 2022 @04:22PM (#32556691)
There's a version that's a bit slower but more memory efficient https://github.com/basujindal/stable-diffusion that runs on 6GB too.
Re:Stable Diffusion Public Release by miohtama on Monday August 22, 2022 @05:34PM (#32557590)
Is Apple M1 support expected soon? Because even if Apple’s chips are slower, they have plenty of RAM on laptops. I saw some weeks ago it was coming, but I am not sure where to follow the process.
Re:Stable Diffusion Public Release by bm-rf on Tuesday August 23, 2022 @10:06PM (#32574192)
looks like there is a nightly release for apple silicon, https://towardsdatascience.com/gpu-acceleration-comes-to-pyt...
Re:Stable Diffusion Public Release by neurostimulant on Monday August 22, 2022 @04:15PM (#32556617)
You're going to need at least 10GB VRAM. My SFF pc with 4GB VRAM can only run dalle mini / craiyon :(
Re:Stable Diffusion Public Release by mempko on Monday August 22, 2022 @04:36PM (#32556861)
Not if you change the precision to float16. Should work on a smaller card. Tried on a 1080 with 8GB and it works well.
Re:Stable Diffusion Public Release by krisoft on Monday August 22, 2022 @05:53PM (#32557778)
How would one do that?

-----

Sorry my bad, found the answer. One simply adds the following flags to the StableDiffusionPipeline.from_pretrained call in the example: revision="fp16", torch_dtype=torch.float16

Found it in this blogpost: https://huggingface.co/blog/stable_diffusion

mempko thank you for your hint! I was about to drop a not insignificant amount of money on a new GPU.

What does one lose by using float16 representation? Does it make the images visually less detailed? Or how can one reason about this?

Re:Stable Diffusion Public Release by ShamelessC on Monday August 22, 2022 @08:59PM (#32559304)
Zero loss. All upside. Only causes issues when training. 32-bit ships by default because it is compatible with cpu and GPU’s that might not have native fp16 support.

Edit: Just to be clear, your intuition that it could cause issues is certainly merited - and not _all_ models can be trivially converted from fp32 to fp16 without some new error accumulating (during inference). Variational autoencoders like VQGAN and GAN's are particularly prone to such issues.

But in this case, it's all upside.

Re:Stable Diffusion Public Release by tariq2388 on Monday August 22, 2022 @07:49PM (#32558813)
Can you please tell me where is the model.ckpt? I am not able to find any weight with ".ckpt" format there in the both links that you have given. There are the ".bin" file on the hugging face.
Re:Stable Diffusion Public Release by NosliwPilf on Monday August 22, 2022 @08:19PM (#32559035)
On the huggingface site, click the checkbox and then access the repository. The chkpt file is under the "files and version" tab.
Re:Stable Diffusion Public Release by IanCal on Monday August 22, 2022 @08:23PM (#32559058)
For anyone else reading you need the -original versions. The others are setup for the diffusers library and I can't find a checkpoint file in that, just the original one.
Re:Stable Diffusion Public Release by jsmith45 on Monday August 22, 2022 @03:46PM (#32556277)
I think the answer is yes, but setup is a bit complicated. I would test this myself, but I don't have an NVIDIA card with at least 10GB of VRAM.

One time:

1. Have "conda" installed.

2. clone https://github.com/CompVis/stable-diffusion

3. `conda env create -f environment.yaml`

4. activate the Venv with `conda activate ldm`

5. Download weights from https://huggingface.co/CompVis/stable-diffusion-v-1-4-origin... (requires registration).

6. `mkdir -p models/ldm/stable-diffusion-v1/`

7. `ln -s <path/to/model.ckpt> models/ldm/stable-diffusion-v1/model.ckpt`. (you can download the other version of the model, like v1-1, v1-2, and v1-3 and symlink them instead if you prefer).

To run:

1. activate venv with `conda activate ldm` (unless still in a prompt running inside the venv).

2. `python scripts/txt2img.py --prompt "a photograph of an astronaut riding a horse" --plms`.

Also there is a safety filter in the code that will black out NSFW or otherwise expected to be offensive images (presumably also including things like swastikas, gore, etc). It is trivial to disable by editing the source if you want.

Re:Stable Diffusion Public Release by entrep on Monday August 22, 2022 @05:45PM (#32557704)
Thanks for these instructions.

Unfortunately I'm getting this error message (Win11, 3080 10GB):

> RuntimeError: CUDA out of memory. Tried to allocate 3.00 GiB (GPU 0; 10.00 GiB total capacity; 5.62 GiB already allocated; 1.80 GiB free; 5.74 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CON

Edit:

>>> from GPUtil import showUtilization as gpu_usage

>>> gpu_usage()

| ID | GPU | MEM |

------------------

| 0 | 1% | 6% |

Edit 2:

Got this optimized fork to work: https://github.com/basujindal/stable-diffusion

Re:Stable Diffusion Public Release by orpheansodality on Monday August 22, 2022 @05:56PM (#32557805)
I also have a 10g card and saw the same thing - to get it working I had to pass in "--n_samples 1" to the command, which limits the number of generated images to 2 in any given run. This has been working fine for me
Re:Stable Diffusion Public Release by cypress66 on Monday August 22, 2022 @04:16PM (#32556625)
I haven't gotten around it, but I remember reading on /g/ that you can make it run on 5GB (sacrificing accuracy).

You should check their threads there, there's some good info.

Re:Stable Diffusion Public Release by bfirsh on Monday August 22, 2022 @08:02PM (#32558898)
You can run it with Cog: https://github.com/replicate/cog

    cog predict r8.im/stability-ai/stable-diffusion -i prompt="cow flying in space"
Or you can run the Docker image directly. More details under "run on your own computer" here: https://replicate.com/stability-ai/stable-diffusion
Re:Stable Diffusion Public Release by cmdr2 on Wednesday August 24, 2022 @05:04AM (#32576722)
Thanks! This worked for me finally. The conda approach suggested elsewhere was getting too complicated, and wasn't working properly (for me).

I built a simple UI around this, which installs Stable Diffusion's docker image, and lets you play with it locally in a browser-based UI. https://github.com/cmdr2/stable-diffusion-ui

Re:Stable Diffusion Public Release by digitallyfree on Monday August 22, 2022 @03:50PM (#32556313)
As an aside I wonder how performance would be like running this on CPU (with the current GPU shortage this might well be a worthwhile choice). Even something like 30 minutes to generate an image on a multicore CPU would greatly increase the number of people able to freely play with this model.
Re:Stable Diffusion Public Release by GaggiX on Monday August 22, 2022 @03:21PM (#32555959)
Re:Stable Diffusion Public Release by timmg on Monday August 22, 2022 @03:41PM (#32556211)
Garr:

> And log in on your machine using the huggingface-cli login command.

I find that annoying. I guess it is what it is.

Re:Stable Diffusion Public Release by cercatrova on Monday August 22, 2022 @03:27PM (#32556049)
Yes, clone the repo (https://github.com/CompVis/stable-diffusion), download the weights and follow the readme for setting up a conda environment. I am presently doing so on my RTX 3080.
Re:Stable Diffusion Public Release by tariq2388 on Monday August 22, 2022 @07:50PM (#32558819)
Can you please tell me where is the model.ckpt? I am not able to find any weight with ".ckpt" format there in the both links that you have given. There are the ".bin" file on the hugging face.
Re:Stable Diffusion Public Release by cercatrova on Monday August 22, 2022 @07:57PM (#32558863)
Re:Stable Diffusion Public Release by isoprophlex on Monday August 22, 2022 @03:28PM (#32556057)
I can't believe i sold my rtx2070 last month, aaargh...!
Re:Stable Diffusion Public Release by google234123 on Monday August 22, 2022 @08:55PM (#32559280)
You should have sold it a year ago when the market was better :p
Re:Stable Diffusion Public Release by naillo on Monday August 22, 2022 @05:07PM (#32557286)
This should be possible if someone just exported them to tflite or onnxruntime etc (quantization could help a ton too). Not sure why ppl haven't yet. Sure it'll come in the next few days (I might do it).
Re:Stable Diffusion Public Release by cmdr2 on Wednesday August 24, 2022 @04:59AM (#32576690)
You can try https://github.com/cmdr2/stable-diffusion-ui . It installs Stable Diffusion to your local computer, and provides a simple browser-based UI for playing with it. No need to mess with conda and other environment settings.
Re:Stable Diffusion Public Release by squeaky-clean on Monday August 22, 2022 @04:09PM (#32556533)
There's some additional discussion on running it locally here

https://old.reddit.com/r/StableDiffusion/comments/wuyu2u/how...

Re:Stable Diffusion Public Release by drexlspivey on Monday August 22, 2022 @04:41PM (#32556914)
Yes but you need a GPU with 10Gb of vRAM
Re:Stable Diffusion Public Release by simsspoons on Sunday August 28, 2022 @03:08PM (#32631085)
Re:Stable Diffusion Public Release by martopix on Tuesday August 23, 2022 @05:02PM (#32571457)
That is literally the announcement.