-
Notifications
You must be signed in to change notification settings - Fork 56
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
Implement DPM Solver Singlestep Scheduler #25
base: main
Are you sure you want to change the base?
Implement DPM Solver Singlestep Scheduler #25
Conversation
Looks nice thanks, how much of the code is actually duplicated from the multi-step bit? If it's almost all of it, maybe it could be an option of the multi-step version so as to avoid the duplication? |
The main differences are in
HF has them separated, and other implementations seem to also keep them separated. I am not comfortable to be sure to properly implement that. There are some types and enums that could be moved out and unified, though. I am working on some further changes in the step function that I didn't port over fully. |
Updated to use the different It works except for a bug with the get_order_list doesn't produce the correct number of results for 15 (but fine for 10 and 16). I triple checked my code, but I'm not exactly sure what's causing it not to line up to the number of steps and double checked the HF. I added a bunch of tests to cover the various conditions. Using 16 steps does seem to work correctly. |
Refactored out the common bits into |
880290b
to
223c21f
Compare
Ok, good go to. The bug was due to
|
I think I need to fall back on the trait as we may be changing it with a more generic |
This reverts commit 83b28b3.
b8271d9
to
41e0286
Compare
Reverted trait changes and should be good to go now. |
Mostly a copy of #22 though walked through the HF implementation. Requires the same changes to the stable diffusion example to run.