Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Img AI #1

Open
8 of 19 tasks
parsehex opened this issue Dec 31, 2023 · 3 comments
Open
8 of 19 tasks

Img AI #1

parsehex opened this issue Dec 31, 2023 · 3 comments

Comments

@parsehex
Copy link
Owner

parsehex commented Dec 31, 2023

This is image-generating AI, initially supporting Stable Diffusion and then probably DALL-E 3 afterwards.

To use SD models I'll be using the Diffusers library.

  • Txt2Img
  • Img2Img
  • Inpainting
  • Outpainting
  • SD (non-XL)
  • SDXL
  • SD(XL) Turbo
  • Getting / Listing models
  • (Multiple) Samplers - Support all the good new samplers
    • It seems that they're called Schedulers in the Diffusers lib. See here for a table listing (some?) available schedulers and their corresponding name in Automatic1111. So, we'll probably make a map of schedulers and pass the keys as the sampler list.
    • Listing samplers
    • Using samplers
  • Support changing Seed
  • Support Textual Inversions (e.g. easynegative)
  • Support LoRAs
  • StableDiffusionCpp client https://github.com/leejet/stable-diffusion.cpp
  • Return the used generation parameters
    • And infotext
  • Support batching
  • Prompt weights (example)
@parsehex
Copy link
Owner Author

parsehex commented Jan 4, 2024

Basic SDXL support, haven't tried the refiner but results from base model alone were disappointing, reasonable speed.

Note dump

@parsehex
Copy link
Owner Author

parsehex commented Jan 5, 2024

Trying to switch sampler/scheduler... Why is it this kind of difficult? It seems to be that the only way to change the thing is to re-load the model with a different sampler. How in the the world do all of these webuis let you hot-swap the damn sampler???

I'm skeptical that changing the pipeline.scheduler even works despite it being all over the docs (here). See last comment here -- someone saying that setting the pipeline.scheduler can lead to errors and not to encourage it. And yet this is what the docs say to do.

@parsehex
Copy link
Owner Author

parsehex commented Jan 5, 2024

Okay, I think I got there with changing the scheduler. The main thing:

Re-create the AutoPipelineForText2Image after changing the scheduler (so set self.model)

Also still setting default_config to pipeline.scheduler.config before initially setting the default sampler. Then, use this default config to initialize later samplers (should we cache samplers to avoid re-making?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant