Buckets:
OvisImageTransformer2DModel
モデルは、以下のコードスニペットで読み込むことができます。
from diffusers import OvisImageTransformer2DModel
transformer = OvisImageTransformer2DModel.from_pretrained("AIDC-AI/Ovis-Image-7B", subfolder="transformer", dtype=torch.bfloat16)
OvisImageTransformer2DModel[[diffusers.OvisImageTransformer2DModel]]
diffusers.OvisImageTransformer2DModel[[diffusers.OvisImageTransformer2DModel]]
diffusers.OvisImageTransformer2DModel(patch_size: int = 1, in_channels: int = 64, out_channels: int | None = 64, num_layers: int = 6, num_single_layers: int = 27, attention_head_dim: int = 128, num_attention_heads: int = 24, joint_attention_dim: int = 2048, axes_dims_rope: tuple[int, int, int] = (16, 56, 56))
パラメータ:
patch_size (int、デフォルトは1) : 入力データを小さなパッチに変換するためのパッチサイズ。
in_channels (int、デフォルトは64) : 入力におけるチャネル数。
out_channels (int、任意、デフォルトは None) : 出力のチャネル数です。指定しない場合、デフォルトで in_channels になります。
num_layers (int、デフォルトは6) : 使用するデュアルストリームDiTブロックの層数。
num_single_layers (int、デフォルトは27) : 使用する単一ストリームDiTブロックの層数。
attention_head_dim (int、デフォルトは128) : 各アテンションヘッドに使用する次元数。
num_attention_heads (int、デフォルトは24) : 使用するアテンションヘッドの数。
joint_attention_dim (int、デフォルトは2048) : 結合アテンションに使用する次元数(encoder_hidden_statesの埋め込み/チャネル次元)。
axes_dims_rope (tuple[int]、デフォルトは(16, 56, 56)) : 回転位置埋め込みに使用する次元数。
Ovis-Image で導入された Transformer モデル。
参考: https://github.com/AIDC-AI/Ovis-Image
forward[[diffusers.OvisImageTransformer2DModel.forward]]
forward(hidden_states: Tensor, encoder_hidden_states: Tensor = None, timestep: LongTensor = None, img_ids: Tensor = None, txt_ids: Tensor = None, joint_attention_kwargs: dict[str, typing.Any] | None = None, return_dict: bool = True)
パラメータ:
hidden_states (torch.Tensor、形状 (batch_size, image_sequence_length, in_channels)) : 入力 hidden_states。
encoder_hidden_states (torch.Tensor、shape (batch_size, text_sequence_length, joint_attention_dim)) : 使用する条件埋め込み(プロンプトなどの入力条件から計算される埋め込み)。
timestep (torch.LongTensor) : デノイジングステップを示すために使用されます。
img_ids : (torch.Tensor): 画像トークンの位置 ID。
txt_ids (torch.Tensor) : テキストトークンの位置IDです。
joint_attention_kwargs (dict, 任意) : 指定された場合、diffusers.models.attention_processor の self.processor で定義されている AttentionProcessor に渡される kwargs の辞書です。
return_dict (bool、任意、デフォルトはTrue) : プレーンなタプルではなく~models.transformer_2d.Transformer2DModelOutputを返すかどうか。
戻り値:
return_dict が True の場合、~models.transformer_2d.Transformer2DModelOutput が返され、それ以外の場合は、最初の要素がサンプルテンソルである tuple が返されます。
OvisImageTransformer2DModelのforwardメソッドです。
Xet Storage Details
- Size:
- 4.09 kB
- Xet hash:
- 78c97c72459e5f1fcf27ffde00cde6edfd1f31737a102494cc87522535dcc712
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.