Diffusers documentation
HiDreamImageTransformer2DModel
HiDreamImageTransformer2DModel
HiDream-I1의 이미지형 데이터용 Transformer 모델입니다.
다음 코드 스니펫으로 모델을 로드할 수 있습니다.
from diffusers import HiDreamImageTransformer2DModel
transformer = HiDreamImageTransformer2DModel.from_pretrained("HiDream-ai/HiDream-I1-Full", subfolder="transformer", dtype=torch.bfloat16)HiDream-I1의 GGUF 양자화 체크포인트 로드
HiDreamImageTransformer2DModel의 GGUF 체크포인트는 ~FromOriginalModelMixin.from_single_file를 사용하여 로드할 수 있습니다.
import torch
from diffusers import GGUFQuantizationConfig, HiDreamImageTransformer2DModel
ckpt_path = "https://huggingface.co/city96/HiDream-I1-Dev-gguf/blob/main/hidream-i1-dev-Q2_K.gguf"
transformer = HiDreamImageTransformer2DModel.from_single_file(
ckpt_path,
quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
dtype=torch.bfloat16
)HiDreamImageTransformer2DModel
class diffusers.HiDreamImageTransformer2DModel
< source >( patch_size: int | None = Nonein_channels: int = 64out_channels: int | None = Nonenum_layers: int = 16num_single_layers: int = 32attention_head_dim: int = 128num_attention_heads: int = 20caption_channels: list = Nonetext_emb_dim: int = 2048num_routed_experts: int = 4num_activated_experts: int = 2axes_dims_rope: tuple = (32, 32)max_resolution: tuple = (128, 128)llama_layers: list = Noneforce_inference_output: bool = False )
forward
< source >( hidden_states: Tensortimesteps: LongTensor = Noneencoder_hidden_states_t5: Tensor = Noneencoder_hidden_states_llama3: Tensor = Nonepooled_embeds: Tensor = Noneimg_ids: typing.Optional[torch.Tensor] = Noneimg_sizes: list[tuple[int, int]] | None = Nonehidden_states_masks: typing.Optional[torch.Tensor] = Noneattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True )
매개변수
- hidden_states (
torch.Tensor, shape(batch_size, in_channels, height, width)또는(batch_size, patch_height * patch_width, patch_size * patch_size * channels)) — 입력hidden_states. - timesteps (
torch.LongTensor) — 디노이징 단계를 나타내는 데 사용됩니다. - encoder_hidden_states_t5 (
torch.Tensor) — T5 텍스트 인코더에서 계산된 조건부 임베딩입니다. - encoder_hidden_states_llama3 (
torch.Tensor) — Llama3 텍스트 인코더에서 계산된 조건부 임베딩입니다. - pooled_embeds (
torch.Tensor) — 추가 조건화에 사용되는 풀링된 텍스트 임베딩. - img_ids (
torch.Tensor, 선택 사항) — 패치된 숨겨진 상태(hidden states)에 대한 이미지 위치 ID입니다. - img_sizes (
listoftupleofint, 선택 사항) — 출력을 언패치파하기 위해 사용되는 샘플별 패치 그리드 크기입니다. - hidden_states_masks (
torch.Tensor, 선택 사항) — 패치된hidden_states에 대한 마스크입니다. - attention_kwargs (
dict, 선택 사항) — 지정된 경우 diffusers.models.attention_processor의self.processor에서 정의된AttentionProcessor로 전달되는 kwargs 사전입니다. - return_dict (
bool, 선택 사항, 기본값True) — 단순 tuple 대신~models.transformer_2d.Transformer2DModelOutput를 반환할지 여부.
HiDreamImageTransformer2DModel의 forward 메서드입니다.
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의 출력입니다.