|
UNet2DModel( |
|
(conv_in): Conv2d(3, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_proj): Timesteps() |
|
(time_embedding): TimestepEmbedding( |
|
(linear_1): LoRACompatibleLinear(in_features=128, out_features=512, bias=True) |
|
(act): SiLU() |
|
(linear_2): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
) |
|
(down_blocks): ModuleList( |
|
(0-1): 2 x DownBlock2D( |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=128, bias=True) |
|
(norm2): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
(downsamplers): ModuleList( |
|
(0): Downsample2D( |
|
(conv): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(2, 2)) |
|
) |
|
) |
|
) |
|
(2): DownBlock2D( |
|
(resnets): ModuleList( |
|
(0): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(128, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(128, 256, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(1): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
(downsamplers): ModuleList( |
|
(0): Downsample2D( |
|
(conv): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(2, 2)) |
|
) |
|
) |
|
) |
|
(3): DownBlock2D( |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
(downsamplers): ModuleList( |
|
(0): Downsample2D( |
|
(conv): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(2, 2)) |
|
) |
|
) |
|
) |
|
(4): AttnDownBlock2D( |
|
(attentions): ModuleList( |
|
(0-1): 2 x Attention( |
|
(group_norm): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(to_q): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_k): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_v): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_out): ModuleList( |
|
(0): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(1): Dropout(p=0.0, inplace=False) |
|
) |
|
) |
|
) |
|
(resnets): ModuleList( |
|
(0): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(256, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(256, 512, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(1): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
(downsamplers): ModuleList( |
|
(0): Downsample2D( |
|
(conv): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(2, 2)) |
|
) |
|
) |
|
) |
|
(5): DownBlock2D( |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
) |
|
) |
|
(up_blocks): ModuleList( |
|
(0): UpBlock2D( |
|
(resnets): ModuleList( |
|
(0-2): 3 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 1024, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(1024, 512, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
(upsamplers): ModuleList( |
|
(0): Upsample2D( |
|
(conv): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
(1): AttnUpBlock2D( |
|
(attentions): ModuleList( |
|
(0-2): 3 x Attention( |
|
(group_norm): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(to_q): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_k): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_v): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_out): ModuleList( |
|
(0): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(1): Dropout(p=0.0, inplace=False) |
|
) |
|
) |
|
) |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 1024, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(1024, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(1024, 512, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(2): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 768, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(768, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(768, 512, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
(upsamplers): ModuleList( |
|
(0): Upsample2D( |
|
(conv): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
(2): UpBlock2D( |
|
(resnets): ModuleList( |
|
(0): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 768, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(768, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(768, 256, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(1-2): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(512, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(512, 256, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
(upsamplers): ModuleList( |
|
(0): Upsample2D( |
|
(conv): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
(3): UpBlock2D( |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(512, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(512, 256, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(2): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 384, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(384, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=256, bias=True) |
|
(norm2): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(384, 256, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
(upsamplers): ModuleList( |
|
(0): Upsample2D( |
|
(conv): LoRACompatibleConv(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
(4): UpBlock2D( |
|
(resnets): ModuleList( |
|
(0): ResnetBlock2D( |
|
(norm1): GroupNorm(32, 384, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(384, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=128, bias=True) |
|
(norm2): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(384, 128, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
(1-2): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(256, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=128, bias=True) |
|
(norm2): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(256, 128, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
(upsamplers): ModuleList( |
|
(0): Upsample2D( |
|
(conv): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
) |
|
) |
|
(5): UpBlock2D( |
|
(resnets): ModuleList( |
|
(0-2): 3 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 256, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(256, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=128, bias=True) |
|
(norm2): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
(conv_shortcut): LoRACompatibleConv(256, 128, kernel_size=(1, 1), stride=(1, 1)) |
|
) |
|
) |
|
) |
|
) |
|
(mid_block): UNetMidBlock2D( |
|
(attentions): ModuleList( |
|
(0): Attention( |
|
(group_norm): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(to_q): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_k): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_v): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(to_out): ModuleList( |
|
(0): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(1): Dropout(p=0.0, inplace=False) |
|
) |
|
) |
|
) |
|
(resnets): ModuleList( |
|
(0-1): 2 x ResnetBlock2D( |
|
(norm1): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(conv1): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(time_emb_proj): LoRACompatibleLinear(in_features=512, out_features=512, bias=True) |
|
(norm2): GroupNorm(32, 512, eps=1e-06, affine=True) |
|
(dropout): Dropout(p=0.0, inplace=False) |
|
(conv2): LoRACompatibleConv(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
(nonlinearity): SiLU() |
|
) |
|
) |
|
) |
|
(conv_norm_out): GroupNorm(32, 128, eps=1e-06, affine=True) |
|
(conv_act): SiLU() |
|
(conv_out): Conv2d(128, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1)) |
|
) |
|
|