当前位置:AIGC资讯 > AIGC > 正文

本地部署stable diffusion

计划本地部署stable diffusion,然后将其软件化为exe(始终认为用gradio属于原型开发,而不是部署落地)

1 一键安装包

目前比较主流的有秋叶包,提取码:xvro

2 代码开发

安装xformer

pip install xformers==0.0.20

环境

torch 2.0.1+cu118
python 3.10.13
cuda 11.8

整个代码


import torch
import requests
from PIL import Image
from io import BytesIO
from matplotlib import pyplot as plt

# We'll be exploring a number of pipelines today!
from diffusers import (
    StableDiffusionPipeline,
    StableDiffusionImg2ImgPipeline,
    StableDiffusionInpaintPipeline,
    StableDiffusionDepth2ImgPipeline
    )

# Set device
device = (
    "mps"
    if torch.backends.mps.is_available()
    else "cuda"
    if torch.cuda.is_available()
    else "cpu"
)

# Load the pipeline
model_id = "stabilityai/stable-diffusion-2-1-base"
pipe = StableDiffusionPipeline.from_pretrained(model_id).to(device)

# Set up a generator for reproducibility
generator = torch.Generator(device=device).manual_seed(42)

# Run the pipeline, showing some of the available arguments
pipe_output = pipe(
    prompt="A passionate couple, Asia boy and girl, ", # What to generate
    negative_prompt="Oversaturated, blurry, low quality", # What NOT to generate
    height=480, width=640,     # Specify the image size
    guidance_scale=8,          # How strongly to follow the prompt
    num_inference_steps=35,    # How many steps to take
    generator=generator        # Fixed random seed
)

# View the resulting image:
image = pipe_output.images[0]
image.show()

SDXL_DEMO
SDXLSourceCode

更新时间 2023-12-09