# StableCascadeUNet

Модель UNet из [конвейера Stable Cascade](../pipelines/stable_cascade).

## StableCascadeUNet[[diffusers.models.StableCascadeUNet]]

#### diffusers.models.StableCascadeUNet[[diffusers.models.StableCascadeUNet]]

```python
diffusers.models.StableCascadeUNet(in_channels: int = 16, out_channels: int = 16, timestep_ratio_embedding_dim: int = 64, patch_size: int = 1, conditioning_dim: int = 2048, block_out_channels: tuple[int, ...] = (2048, 2048), num_attention_heads: tuple[int, ...] = (32, 32), down_num_layers_per_block: tuple[int, ...] = (8, 24), up_num_layers_per_block: tuple[int, ...] = (24, 8), down_blocks_repeat_mappers: tuple[int] | None = (1, 1), up_blocks_repeat_mappers: tuple[int] | None = (1, 1), block_types_per_layer: tuple[tuple[str]] = (('SDCascadeResBlock', 'SDCascadeTimestepBlock', 'SDCascadeAttnBlock'), ('SDCascadeResBlock', 'SDCascadeTimestepBlock', 'SDCascadeAttnBlock')), clip_text_in_channels: int | None = None, clip_text_pooled_in_channels = 1280, clip_image_in_channels: int | None = None, clip_seq = 4, effnet_in_channels: int | None = None, pixel_mapper_in_channels: int | None = None, kernel_size = 3, dropout: float | tuple[float] = (0.1, 0.1), self_attn: bool | tuple[bool] = True, timestep_conditioning_type: tuple[str, ...] = ('sca', 'crp'), switch_level: tuple[bool] | None = None)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/unets/unet_stable_cascade.py#L136)

#### forward[[diffusers.models.StableCascadeUNet.forward]]

```python
forward(sample, timestep_ratio, clip_text_pooled, clip_text = None, clip_img = None, effnet = None, pixels = None, sca = None, crp = None, return_dict = True)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/unets/unet_stable_cascade.py#L538)

**Параметры:**

sample (`torch.Tensor`) : Шумовой входной образец.

timestep_ratio (`torch.Tensor`) : Коэффициент шага, используемый для вычисления эмбеддинга шага.

clip_text_pooled (`torch.Tensor`) : Пул-эмбеддинги текста CLIP.

clip_text (`torch.Tensor`, *необязательный*) : Векторные представления текста CLIP на уровне последовательности.

clip_img (`torch.Tensor`, *необязательный*) : Встраивания изображений CLIP.

effnet (`torch.Tensor`, *необязательный*) : Карта признаков EfficientNet, используемая в качестве дополнительного условия.

pixels (`torch.Tensor`, *необязательный*) : Тензор пиксельного уровня для условного управления. Если `None`, используется тензор нулей.

sca (`torch.Tensor`, *необязательный*) : Необязательное скалярное значение `sca`, используемое для построения эмбеддинга временного шага.

crp (`torch.Tensor`, *необязательный*) : Необязательное значение `crp`, используемое для построения эмбеддинга временного шага.

return_dict (`bool`, *необязательный*, по умолчанию `True`) : Возвращать ли `StableCascadeUNetOutput` вместо обычного кортежа.

**Возвращает:**

Если `return_dict` равно True, возвращается `StableCascadeUNetOutput`, иначе — `tuple`, первым элементом которого является тензор сэмпла.

