Diffusers documentation

NucleusMoE-Image

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

NucleusMoE-Image

NucleusMoE-Image, tek akışlı bir DiT'yi Mixture-of-Experts ileri besleme katmanları, Qwen3-VL metin kodlayıcısına çapraz dikkat ve flow-matching Euler ayrık zamanlayıcı ile eşleştiren bir metinden görüntüye modelidir.

Scheduler'lar kılavuzunu inceleyerek scheduler hızı ve kalitesi arasındaki ödünleşimi nasıl keşfedebileceğinizi öğrenin ve aynı bileşenleri birden fazla pipeline'a nasıl verimli bir şekilde yükleyebileceğinizi öğrenmek için pipeline'lar arasında bileşenleri yeniden kullanma bölümüne göz atın.

NucleusMoEImagePipeline

sınıf diffusers.NucleusMoEImagePipeline

< >

( transformer: NucleusMoEImageTransformer2DModelscheduler: FlowMatchEulerDiscreteSchedulervae: AutoencoderKLQwenImagetext_encoder: Qwen3VLForConditionalGenerationprocessor: Qwen3VLProcessor )

Parametreler

  • transformer (NucleusMoEImageTransformer2DModel) — Kodlanmış görüntü latentlerini gürültüden arındırmak için kullanılan Koşullu Transformer (MMDiT) mimarisi.
  • scheduler (FlowMatchEulerDiscreteScheduler) — Kodlanmış görüntü latentlerini gürültüden arındırmak için transformer ile birlikte kullanılacak bir zamanlayıcı.
  • vae (AutoencoderKLQwenImage) — Görselleri latent temsillere kodlamak ve bu temsillerden çözmek için kullanılan Varyasyonel Oto-Kodlayıcı (VAE) Modeli.
  • text_encoder (Qwen3VLForConditionalGeneration) — İstem gömme hesaplamaları için metin kodlayıcı.
  • processor (Qwen3VLProcessor) — Metin girdilerini belirteçleştirmek için işleyici.

NucleusMoE kullanılarak metinden görüntüye üretim için Pipeline.

Bu pipeline, tek akışlı bir DiT, Mixture-of-Experts ileri besleme katmanları, Qwen3-VL metin kodlayıcısına çapraz dikkat ve bir flow-matching Euler ayrık zamanlayıcı kullanır.

__call__

< >

( prompt: str | list[str] = Nonenegative_prompt: str | list[str] = Noneguidance_scale: float = 4.0height: int | None = Nonewidth: int | None = Nonenum_inference_steps: int = 50sigmas: list[float] | None = Nonenum_images_per_prompt: int = 1max_sequence_length: int | None = Nonereturn_index: int | None = Nonegenerator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds_mask: typing.Optional[torch.Tensor] = Noneoutput_type: str | None = 'pil'return_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = Nonecallback_on_step_end: typing.Optional[typing.Callable[[int, int, dict], NoneType]] = Nonecallback_on_step_end_tensor_inputs: list = ['latents'] ) → NucleusMoEImagePipelineOutput or tuple

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmadıysa prompt_embeds parametresinin geçirilmesi gerekir.
  • negative_prompt (str veya list[str], isteğe bağlı) — Görsel üretimini yönlendirmemesi istenen istem veya istemler. Tanımlanmamışsa, true_cfg_scale > 1 olduğunda boş bir dize kullanılır.
  • guidance_scale (float, isteğe bağlı, varsayılan 4.0) — Sınıflandırıcı-ücretsiz yönlendirme ölçeği. 1'den büyük değerler CFG'yi etkinleştirir.
  • return_index (int, isteğe bağlı) — İstem gömmelemeleri için kullanılacak metin kodlayıcı çıktısının katman indeksi.
  • height (int, isteğe bağlı, varsayılan self.default_sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden yüksekliği.
  • width (int, isteğe bağlı, varsayılan self.default_sample_size * self.vae_scale_factor) — Oluşturulan görüntünün piksel cinsinden genişliği.
  • num_inference_steps (int, isteğe bağlı, varsayılan 50) — Gürültü azaltma adım sayısı.
  • sigmas (list[float], isteğe bağlı) — Gürültü azaltma zamanlaması için özel sigmalar. Tanımlanmamışsa, doğrusal bir zamanlama kullanılır.
  • num_images_per_prompt (int, isteğe bağlı, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • generator (torch.Generator veya list[torch.Generator], isteğe bağlı) — Üretimi deterministik hale getirmek için bir veya birden fazla torch üreteci.
  • latents (torch.Tensor, isteğe bağlı) — Görsel üretimde girdi olarak kullanılacak önceden oluşturulmuş gürültülü latensler.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömme değerleri.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — Önceden oluşturulan metin gömme vektörleri için dikkat maskesi.
  • negative_prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme değerleri.
  • negative_prompt_embeds_mask (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş negatif metin gömme vektörleri için dikkat maskesi.
  • output_type (str, isteğe bağlı, varsayılan "pil") — Oluşturulan görüntünün çıktı biçimi. "pil", "np" veya "latent" arasında seçim yapın.
  • return_dict (bool, isteğe bağlı, varsayılan True) — Düz bir tuple yerine NucleusMoEImagePipelineOutput döndürülüp döndürülmemesi.
  • attention_kwargs (dict, isteğe bağlı) — Dikkat işlemcisine aktarılan kwargs.
  • callback_on_step_end (Callable, isteğe bağlı) — Her gürültü azaltma adımının sonunda çağrılan bir işlev.
  • callback_on_step_end_tensor_inputs (list, isteğe bağlı) — callback_on_step_end işlevi için girdi tensörleri.
  • max_sequence_length (int, varsayılan 512) — Metin istemi için maksimum dizi uzunluğu.

Dönüş değeri

NucleusMoEImagePipelineOutput veya tuple

return_dict True ise NucleusMoEImagePipelineOutput, aksi halde ilk öğesi üretilen görüntülerin listesi olan bir tuple.

Üretim için pipeline çağrıldığında tetiklenen işlev.

Örnekler:

>>> import torch
>>> from diffusers import NucleusMoEImagePipeline

>>> pipe = NucleusMoEImagePipeline.from_pretrained("NucleusAI/NucleusMoE-Image", torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> prompt = "A cat holding a sign that says hello world"
>>> image = pipe(prompt, num_inference_steps=50).images[0]
>>> image.save("nucleus_moe.png")

encode_prompt

< >

( prompt: str | list[str] = Nonedevice: typing.Optional[torch.device] = Nonenum_images_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_embeds_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int | None = Nonereturn_index: int | None = None )

Parametreler

  • prompt (str veya list[str], isteğe bağlı) — Kodlanacak istem veya istemler.
  • device (torch.device, isteğe bağlı) — Sonuç olarak elde edilen tensörler için Torch cihazı.
  • num_images_per_prompt (int, varsayılan 1) — Her istem için oluşturulacak görsel sayısı.
  • prompt_embeds (torch.Tensor, isteğe bağlı) — Önceden oluşturulmuş metin gömümleri. Sağlandığında kodlamayı atlar.
  • prompt_embeds_mask (torch.Tensor, isteğe bağlı) — Önceden oluşturulan gömme vektörleri için dikkat maskesi.
  • max_sequence_length (int, varsayılan 1024) — Kodlanmış istem için maksimum jeton uzunluğu.

Qwen3-VL metin kodlayıcısını kullanarak metin istemlerini gömme (embedding) olarak kodlayın.

NucleusMoEImagePipelineOutput

sınıf diffusers.pipelines.nucleusmoe_image.pipeline_output.NucleusMoEImagePipelineOutput

< >

( images: list[PIL.Image.Image] | numpy.ndarray )

Parametreler

  • images (list[PIL.Image.Image] veya np.ndarray) — Uzunluğu batch_size olan gürültüsü azaltılmış PIL görüntülerinin listesi veya (batch_size, height, width, num_channels) biçiminde bir numpy dizisi. PIL görüntüleri veya numpy dizisi, difüzyon hattının gürültüsü azaltılmış görüntülerini temsil eder.

NucleusMoE Görsel boru hatları için çıktı sınıfı.

Update on GitHub