Skip to content

Local Installation

Ben Rugg edited this page Oct 24, 2022 · 25 revisions

Instructions for running Stable Diffusion locally

Intro

"Local Installation" means that you are running Stable Diffusion on your own machine, instead of using a 3rd party service like DreamStudio. Running locally gives you the ability to create unlimited images for free, but it also requires some advanced setup and a good gpu.

Currently, AI Render only integrates with Automatic1111's Stable Diffusion Web UI. And their code is changing almost daily, so you will need to update it to the latest version.

Disclaimer

Setting up Stable Diffusion locally is for advanced users. There are a number of steps, and you may have to do some serious troubleshooting! You will also need to know your way around a Terminal, or be willing to do a lot of googling.

Instructions

  1. Get this version of AI Render (not publicly released yet). Install it and restart Blender.

  2. If you DON'T have the Automatic1111 Stable Diffusion Web UI installed:

    1. Install the Automatic1111 Stable Diffusion Web UI. Follow all the installation instructions on their page, and make sure you can see it successfully running in a web browser. (You can then close the web browser).
    2. In the Automatic1111 terminal window, quit the web server and keep the terminal window open.
  3. If you DO already have the Automatic1111 Stable Diffusion Web UI installed:

    1. Open a terminal window and cd to the web ui directory (wherever you previously installed it).
    2. Make sure the web ui is not running.
  4. In the terminal window, in the Automatic1111 directory, run this command to make sure you've got the latest version: git pull

    Note: If this doesn't run successfully, you'll need to do a fresh reinstall Automatic1111. (Copy the 4gb model weights file out first, so you don't have to download it again)

  5. In the terminal window, update the Automatic1111 config so it starts its API:

    • On Windows:

      1. Run notepad.exe .\webui.bat
      2. In Notepad, change set COMMANDLINE_ARGS= to set COMMANDLINE_ARGS=--api webui-user screenshot
      3. Save the file and close Notepad
    • On Mac:

      1. Run vi run_webui_mac.sh
      2. Find the line that starts with python webui.py and add --api right after it. (In vim (the text editor), type a to enter edit mode. Then add --api to the right place) run_webui_mac screenshot
      3. Save the file by hitting the ESC key, then typing ZZ (holding Shift)
    • On Linux:

      1. Run vi webui-user.sh
      2. Change export COMMANDLINE_ARGS="" to export COMMANDLINE_ARGS="--api" (In vim (the text editor), type a to enter edit mode. Then add --api to the right place) webui-user screenshot
      3. Save the file by hitting the ESC key, then typing ZZ (holding Shift)
  6. Start the Automatic1111 server, using the user script you just edited:

    • On Windows: Run .\webui-user.bat
    • On Mac: Run ./run_webui_mac.sh
    • On Linux: Run ./webui-user.sh
  7. In Blender, in the add-on preferences for AI Render, enable Local Stable Diffusion. Make sure the settings match what you saw in Automatic1111. AI-Render Preferences

You're ready to go!

When you render, you should see the progress in the Automatic1111 terminal, and the output image should be pulled in to Blender when it's done.

Contributing

The way I integrated Automatic1111 is pretty brittle. As far as I can tell, they don't have an actual API yet for img2img. If anyone knows otherwise, please tell me! And if you have the python/Blender skills to help me get all the API calls running asynchronously, I would LOVE that help, too.

Clone this wiki locally