Diffusers documentation
TransformerTemporalModel
TransformerTemporalModel
비디오와 유사한 데이터를 위한 Transformer 모델.
TransformerTemporalModel
클래스 diffusers.TransformerTemporalModel
< source >( num_attention_heads: int = 16attention_head_dim: int = 88in_channels: int | None = Noneout_channels: int | None = Nonenum_layers: int = 1dropout: float = 0.0norm_num_groups: int = 32cross_attention_dim: int | None = Noneattention_bias: bool = Falsesample_size: int | None = Noneactivation_fn: str = 'geglu'norm_elementwise_affine: bool = Truedouble_self_attention: bool = Truepositional_embeddings: str | None = Nonenum_positional_embeddings: int | None = None )
매개변수
- num_attention_heads (
int, 선택 사항, 기본값 16) — 멀티헤드 어텐션에 사용할 헤드의 수입니다. - attention_head_dim (
int, 선택 사항, 기본값 88) — 각 헤드당 채널 수입니다. - in_channels (
int, 선택 사항) — 입력과 출력의 채널 수(입력이 연속형인 경우 지정). - num_layers (
int, 선택 사항, 기본값 1) — 사용할 Transformer 블록의 레이어 수입니다. - dropout (
float, 선택 사항, 기본값 0.0) — 사용할 dropout 확률입니다. - cross_attention_dim (
int, 선택 사항) — 사용할encoder_hidden_states차원의 수입니다. - attention_bias (
bool, 선택 사항) —TransformerBlock의 attention에 bias 매개변수를 포함할지 구성합니다. - sample_size (
int, 선택 사항) — 잠재 이미지의 너비(입력이 discrete인 경우 지정). 위치 임베딩의 수를 학습하는 데 사용되므로 학습 중에 고정됩니다. - activation_fn (
str, 선택 사항, 기본값"geglu") — 피드포워드에서 사용할 활성화 함수입니다. 지원되는 활성화 함수는diffusers.models.activations.get_activation를 참조하세요. - norm_elementwise_affine (
bool, 선택 사항) —TransformerBlock이 정규화에 학습 가능한 elementwise affine 매개변수를 사용할지 구성합니다. - double_self_attention (
bool, 선택 사항) — 각TransformerBlock에 두 개의 self-attention 레이어를 포함할지 구성합니다. - positional_embeddings — (
str, 선택 사항): use로 전달하기 전에 시퀀스 입력에 적용할 위치 임베딩의 유형입니다. - num_positional_embeddings — (
int, 선택 사항): 위치 임베딩을 적용할 시퀀스의 최대 길이입니다.
비디오와 유사한 데이터를 위한 Transformer 모델.
forward
< source >( hidden_states: Tensorencoder_hidden_states: typing.Optional[torch.LongTensor] = Nonetimestep: typing.Optional[torch.LongTensor] = Noneclass_labels: LongTensor = Nonenum_frames: int = 1cross_attention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → TransformerTemporalModelOutput or tuple
매개변수
- hidden_states (
torch.LongTensor, shape(batch size, num latent pixels)(discrete인 경우),torch.Tensor, shape(batch size, channel, height, width)(continuous인 경우)) — 입력 hidden_states. - encoder_hidden_states (
torch.LongTensor, shape(batch size, encoder_hidden_states dim), 선택 사항) — 크로스 어텐션 레이어에 사용되는 조건부 임베딩입니다. 지정되지 않으면 크로스 어텐션은 기본적으로 셀프 어텐션으로 동작합니다. - timestep (
torch.LongTensor, 선택 사항) — 디노이징 단계를 나타내는 데 사용됩니다.AdaLayerNorm에서 임베딩으로 적용될 선택적 timestep입니다. - class_labels (
torch.LongTensor, shape(batch size, num classes), 선택 사항) — 클래스 레이블 조건화를 나타내는 데 사용됩니다.AdaLayerZeroNorm에서 임베딩으로 적용될 선택적 클래스 레이블입니다. - num_frames (
int, 선택 사항, 기본값 1) — 배치당 처리할 프레임 수입니다. 이는 hidden states를 reshape하는 데 사용됩니다. - cross_attention_kwargs (
dict, 선택 사항) — 지정된 경우 diffusers.models.attention_processor의self.processor에서 정의된AttentionProcessor로 전달되는 kwargs 사전입니다. - return_dict (
bool, 선택 사항, 기본값True) — 단순 튜플 대신 TransformerTemporalModelOutput를 반환할지 여부.
반환값
TransformerTemporalModelOutput 또는 tuple
return_dict가 True이면 TransformerTemporalModelOutput이 반환되고, 그렇지 않으면 첫 번째 요소가 샘플 텐서인 tuple이 반환됩니다.
TransformerTemporal의 forward 메서드입니다.
TransformerTemporalModelOutput
class diffusers.models.transformers.transformer_temporal.TransformerTemporalModelOutput
< source >( sample: Tensor )
TransformerTemporalModel의 출력입니다.