Git Product home page Git Product logo

diffusers-sampler's Introduction

diffusers-sampler

このリポジトリは、diffusersで使えるサンプラーの簡易実装をまとめたものです。

方針は以下のような感じです。

  1. 共通コードをまとめた親クラスの実装
  2. 一般的に使われない条件分岐や引数を省略
from diffusers import StableDiffusionPipeline
import torch

model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to("cuda")

# replace scheduler
from ddpm import SimpleDDPMScheduler
pipe.scheduler = SimpleDDPMScheduler(v_prediction=False)

seed = 4545
prompt = "a photo of an astronaut riding a horse on mars"
image = pipe(prompt, num_inference_steps=20, generator = torch.Generator("cuda").manual_seed(seed)).images[0]  
    
image.save("astronaut_rides_horse.png")

サンプラー一覧

サンプラー名 argument1 Diffusers 結果
ddpm.SimpleDDPMScheduler DDPMScheduler 同一
ddpm.SimpleDDIMScheduler DDIMScheduler 同一
euler.SimpleEulerDiscreteScheduler EulerDiscreteScheduler 同一
euler.SimpleEulerDiscreteScheduler ancestral=True EulerAncestralDiscreteScheduler ほぼ同一
euler.SimpleHeunDiscreteScheduler HeunDiscreteScheduler 同一
dpm.SimpleDPMScheduler order=2 KDPM2DiscreteScheduler 同一
dpm.SimpleDPMScheduler order=2, mode="dpm-solver++", multi_step=True DPMSolverMultistepScheduler ほぼ同一

diffusers-sampler's People

Contributors

laksjdjf avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.