@@ -131,6 +131,79 @@ class DreamLitePipelineFastTests(PipelineTesterMixin, unittest.TestCase):
131131 test_layerwise_casting = False
132132 test_group_offloading = False
133133
134+ def test_legacy_block_type_aliases (self ):
135+ unet = DreamLiteUNetModel (
136+ sample_size = 8 ,
137+ in_channels = 4 ,
138+ out_channels = 4 ,
139+ down_block_types = (
140+ "CrossAttnDownRemoveSelfAttnBlock2D" ,
141+ "CrossAttnDownRemoveSelfAttnBlock2D" ,
142+ "CrossAttnDownBlock2D" ,
143+ ),
144+ mid_block_type = "UNetMidBlock2DCrossAttn" ,
145+ up_block_types = (
146+ "CrossAttnUpBlock2D" ,
147+ "CrossAttnUpRemoveSelfAttnBlock2DV1" ,
148+ "UpBlock2D" ,
149+ ),
150+ block_out_channels = (16 , 32 , 64 ),
151+ cross_attention_dim = _CROSS_ATTN_DIM ,
152+ attention_head_dim = 8 ,
153+ layers_per_block = 1 ,
154+ norm_num_groups = 8 ,
155+ transformer_layers_per_block = 1 ,
156+ )
157+
158+ self .assertEqual (
159+ [block .__class__ .__name__ for block in unet .down_blocks ],
160+ [
161+ "DreamLiteCrossAttnNoSelfAttnDownBlock2D" ,
162+ "DreamLiteCrossAttnNoSelfAttnDownBlock2D" ,
163+ "DreamLiteCrossAttnDownBlock2D" ,
164+ ],
165+ )
166+ self .assertEqual (unet .mid_block .__class__ .__name__ , "DreamLiteUNetMidBlock2DCrossAttn" )
167+ self .assertEqual (
168+ [block .__class__ .__name__ for block in unet .up_blocks ],
169+ [
170+ "DreamLiteCrossAttnUpBlock2D" ,
171+ "DreamLiteCrossAttnNoSelfAttnUpBlock2D" ,
172+ "DreamLiteUpBlock2D" ,
173+ ],
174+ )
175+
176+ unet_with_non_v1_up_alias = DreamLiteUNetModel (
177+ sample_size = 8 ,
178+ in_channels = 4 ,
179+ out_channels = 4 ,
180+ down_block_types = (
181+ "CrossAttnDownRemoveSelfAttnBlock2D" ,
182+ "CrossAttnDownRemoveSelfAttnBlock2D" ,
183+ "CrossAttnDownBlock2D" ,
184+ ),
185+ mid_block_type = "UNetMidBlock2DCrossAttn" ,
186+ up_block_types = (
187+ "CrossAttnUpBlock2D" ,
188+ "CrossAttnUpRemoveSelfAttnBlock2D" ,
189+ "UpBlock2D" ,
190+ ),
191+ block_out_channels = (16 , 32 , 64 ),
192+ cross_attention_dim = _CROSS_ATTN_DIM ,
193+ attention_head_dim = 8 ,
194+ layers_per_block = 1 ,
195+ norm_num_groups = 8 ,
196+ transformer_layers_per_block = 1 ,
197+ )
198+ self .assertEqual (
199+ [block .__class__ .__name__ for block in unet_with_non_v1_up_alias .up_blocks ],
200+ [
201+ "DreamLiteCrossAttnUpBlock2D" ,
202+ "DreamLiteCrossAttnNoSelfAttnUpBlock2D" ,
203+ "DreamLiteUpBlock2D" ,
204+ ],
205+ )
206+
134207 def get_dummy_components (self ):
135208 torch .manual_seed (0 )
136209 unet = DreamLiteUNetModel (
0 commit comments