# BriaFibo2Transformer2DModel

[Bria](https://huggingface.co/briaai)のFibo 2.0における単一ストリーム型Transformerは、Z-Imageブロックを基盤として構築されています。テキスト条件付けはQwen3-VLから2つの方法で得られます。1つ目は、Perceiver resamplerによってテキストエンコーダーの隠れ状態をgistトークンに変換し、画像トークンと同一のストリームで共有させることです。2つ目は、5つのブロックが、それぞれが持つQwen3-VLレイヤーのバンドルに対してゲート付きクロスアテンションを追加することです。編集を行う場合、編集対象の画像の潜在変数はクリーンなトークンとしてストリームに結合され、各画像は独自のRoPEプレーン上で処理されます。

## BriaFibo2Transformer2DModel[[diffusers.BriaFibo2Transformer2DModel]]

#### diffusers.BriaFibo2Transformer2DModel[[diffusers.BriaFibo2Transformer2DModel]]

```python
diffusers.BriaFibo2Transformer2DModel(in_channels: int = 32, patch_size: int = 2, dim: int = 3584, n_layers: int = 44, n_refiner_layers: int = 2, n_heads: int = 28, norm_eps: float = 1e-05, cap_feat_dim: int = 7680, injection_layer_ids: tuple[int, ...] = (6, 14, 22, 30, 38), perceiver_num_layers: int = 2, min_num_gist_tokens: int = 256, max_num_gist_tokens: int = 512, gist_step: int = 64, gist_min_text_len: int = 256, gist_max_text_len: int = 2048, rope_theta: float = 256.0, t_scale: float = 1000.0, axes_dims: tuple[int, ...] = (32, 48, 48), axes_lens: tuple[int, ...] = (2048, 512, 512))
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_bria_fibo2.py#L430)

#### forward[[diffusers.BriaFibo2Transformer2DModel.forward]]

```python
forward(hidden_states: Tensor, timestep: Tensor, encoder_hidden_states: Tensor, encoder_attention_mask: typing.Optional[torch.Tensor] = None, context_latents: list[torch.Tensor] | None = None, return_dict: bool = True)
```

[ソース](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/models/transformers/transformer_bria_fibo2.py#L500)

**パラメータ:**

hidden_states (`torch.Tensor`、形状 `(batch_size, in_channels, height, width)`) : 生成対象の画像の正規化された VAE 潜在変数。

timestep (`torch.Tensor`、shape `(batch_size,)`) : `[0, 1]` 範囲のノイズレベルです。1 は純粋なノイズ、0 はノイズのない画像を表します。

encoder_hidden_states (`torch.Tensor`、shape `(batch_size, 1 + len(injection_layer_ids), text_len, cap_feat_dim)`) : テキストエンコーダーの特徴量: Perceiver のバンドルが先頭に来て、その後、各インジェクションブロックごとに1つのバンドルが続きます。

encoder_attention_mask (`torch.Tensor`、shape `(batch_size, text_len)`、*任意*) : 同一長さにパディングされたプロンプトのバッチにおける、実際のテキストトークンの Bool マスクです。パディングがない場合は `None` のままにしてください。

context_latents (`list[torch.Tensor]`, *optional*) : 編集対象の画像の正規化された VAE 潜在変数。画像ごとに `(batch_size, in_channels, height, width)` の形状を持つテンソルが、順序どおり含まれます。各画像は独自のサイズを持つことができます。これらのトークンはクリーンなトークンとして生成を条件付け、予測の対象にはなりません。

return_dict (`bool`、デフォルトは`True`) : タプルではなく[Transformer2DModelOutput](/docs/diffusers/v0.43.0/ja/api/models/cogview3plus_transformer2d#diffusers.models.modeling_outputs.Transformer2DModelOutput)を返すかどうか。

**戻り値:** [Transformer2DModelOutput](/docs/diffusers/v0.43.0/ja/api/models/cogview3plus_transformer2d#diffusers.models.modeling_outputs.Transformer2DModelOutput) または `tuple`

`hidden_states` と同じ形状を持つ予測速度。`return_dict` が `False` の場合、そのテンソルを最初の要素とするタプル。

