Diffusers documentation
JoyImageEditPlusTransformer3DModel
JoyImageEditPlusTransformer3DModel
다음 코드 스니펫으로 모델을 로드할 수 있습니다.
from diffusers import JoyImageEditPlusTransformer3DModel
transformer = JoyImageEditPlusTransformer3DModel.from_pretrained("jdopensource/JoyAI-Image-Edit-Plus-Diffusers", subfolder="transformer", dtype=torch.bfloat16)JoyImageEditPlusTransformer3DModel
class diffusers.JoyImageEditPlusTransformer3DModel
< source >( patch_size: list = [1, 2, 2]in_channels: int = 16out_channels: int | None = Nonehidden_size: int = 3072num_attention_heads: int = 24text_dim: int = 4096mlp_width_ratio: float = 4.0num_layers: int = 20rope_dim_list: list = [16, 56, 56]rope_type: str = 'rope'theta: int = 256 )
매개변수
- patch_size (
list, 기본값[1, 2, 2]) —(t, h, w)차원을 따라 latent 입력을 patchify할 때 사용할 patch 크기입니다. - in_channels (
int, 기본값16) — 입력 latent의 채널 수입니다. - out_channels (
int, 선택 사항, 기본값None) — 출력의 채널 수입니다. 지정하지 않으면 기본값으로in_channels가 사용됩니다. - hidden_size (
int, 기본값3072) — 숨겨진 표현의 차원입니다. - num_attention_heads (
int, 기본값24) — Attention head의 수입니다. - text_dim (
int, 기본값4096) — 텍스트 인코더 출력의 차원입니다. - mlp_width_ratio (
float, 기본값4.0) —hidden_size에 대한 MLP 은닉 차원의 비율입니다. - num_layers (
int, 기본값20) — 더블 스트림 트랜스포머 블록의 개수입니다. - rope_dim_list (
list[int], 기본값[16, 56, 56]) —(t, h, w)방향의 3D 회전 위치 임베딩 차원입니다. - rope_type (
str, 기본값"rope") — 회전 위치 임베딩의 유형입니다. - theta (
int, 기본값256) — 회전 임베딩의 기본 주파수입니다.
멀티 이미지 편집을 위한 JoyImage Edit Plus Transformer
각 참조 이미지와 대상 노이즈를 독립적으로 패치화(patchify)한 뒤 패딩(padding)을 적용하여 평탄한 패치 시퀀스로 연결하는 방식을 사용합니다. 가변 해상도의 참조 이미지를 지원합니다.
입력 형식: [B, max_patches, C, pt, ph, pw] (6D 패딩 패치).
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorencoder_hidden_states_mask: typing.Optional[torch.Tensor] = Noneshape_list: list = Nonereturn_dict: bool = True )
매개변수
- hidden_states — [B, max_patches, C, pt, ph, pw] - 패치화된 잠재 입력.
- timestep — [B] - diffusion timestep.
- encoder_hidden_states — [B, L, D] - 텍스트 인코더 출력.
- encoder_hidden_states_mask — [B, L] - 텍스트 토큰에 대한 어텐션 마스크.
- shape_list — 각 컴포넌트(target + references)에 대해 샘플별 (t, h, w) 튜플 목록
- return_dict — dict 또는 tuple을 반환할지 여부.
Transformer2DModelOutput
클래스 diffusers.models.modeling_outputs.Transformer2DModelOutput
< source >( sample: torch.Tensor )
매개변수
- sample (
torch.Tensor, shape(batch_size, num_channels, height, width)또는 Transformer2DModel이 discrete인 경우(batch size, num_vector_embeds - 1, num_latent_pixels)) —encoder_hidden_states입력에 조건부인 hidden states 출력입니다. discrete인 경우, 노이즈가 제거된 latent 픽셀에 대한 확률 분포를 반환합니다.
Transformer2DModel의 출력입니다.