UNet2DConditionModel  
A conditional 2D UNet model that takes a noisy sample, conditional state, and a timestep and returns a sample
shaped output.  
This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented
for all models (such as downloading or saving).  
Parameters:
sample_size (`int` or `Tuple[int, int]`, *optional*, defaults to `None`):
Height and width of input/output sample.