huggingface / huggingface/diffusers

stabilityai/stable-diffusion-2-base DDIM config is not compatible with current DDIM implementation

Aperta
#7,217 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug needs-code-example stale
Lingua principale
Python
Stelle
34.5k
Fork
7.3k
Merge medio
3g 3h
PR unite (30g)
91

Descrizione

### Describe the bug

Assume 30 inference steps.

There are two 925, and the number of inference steps is 31.
tensor([958, 925, 925, 892, 859, 826, 793, 760, 727, 694, 661, 628, 595, 562,
529, 496, 463, 430, 397, 364, 331, 298, 265, 232, 199, 166, 133, 100,
67, 34, 1], device='cuda:0')
```
{
"_class_name": "DDIMScheduler",
"_diffusers_version": "0.8.0",
"beta_end": 0.012,
"beta_schedule": "scaled_linear",
"beta_start": 0.00085,
"clip_sample": false,
"num_train_timesteps": 1000,
"set_alpha_to_one": false,
"skip_prk_steps": true,
"steps_offset": 1,
"trained_betas": null
}
```

The correct one should be.
tensor([958, 925, 892, 859, 826, 793, 760, 727, 694, 661, 628, 595, 562, 529,
496, 463, 430, 397, 364, 331, 298, 265, 232, 199, 166, 133, 100, 67,
34, 1], device='cuda:0')
```

{
"_class_name": "DDIMScheduler",
"_diffusers_version": "0.25.0",
"beta_end": 0.012,
"beta_schedule": "scaled_linear",
"beta_start": 0.00085,
"clip_sample": false,
"clip_sample_range": 1.0,
"dynamic_thresholding_ratio": 0.995,
"num_train_timesteps": 1000,
"prediction_type": "epsilon",
"rescale_betas_zero_snr": false,
"sample_max_value": 1.0,
"set_alpha_to_one": false,
"steps_offset": 1,
"thresholding": false,
"timestep_spacing": "leading",
"trained_betas": null
}
```

### Reproduction

See above

### Logs

_No response_

### System Info

Version: 0.26.3

### Who can help?

_No response_

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start with the DDIMScheduler implementation and the supplied scheduler configurations, comparing timestep setup for 30 inference steps. Reproduce the two tensor outputs against the stable-diffusion-2-base configuration; done means the current implementation produces the expected 30-step sequence without breaking the stated scheduler behavior.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python, pytorch
Ambito
machine-learning
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.