Using an ancestral sampler on a batch currently yields results that can
only be reproduced at the same index in a batch of the same size. For
example, if you want to reproduce a single result from a batch
generation, you have to re-run the entire batch.
This change ensures that the same noise samples are used for every
latent in the batch, leading to consistent and reproducible results
regardless of batch size/order. In addition, the noise is now a view
of a C×H×W tensor, which uses less memory than a full B×C×H×W.