#
# Apache Lisansı, 2.0 Sürümü ("Lisans") altında lisanslanmıştır;
# bu dosyayı, Lisansa uygun olarak kullanabilirsiniz.
# Lisansın bir kopyasını şu adresten edinebilirsiniz
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Uygulanabilir yasa gerektirmedikçe veya yazılı olarak anlaşılmadıkça, yazılım
# Lisans kapsamında dağıtılan, "OLDUĞU GİBİ" esasına göre dağıtılır,
# HİÇBİR TÜR AÇIK VEYA ZIMMİ GARANTİ VEYA ŞART İÇERMEZ.
# İzinleri ve
# lisans kapsamındaki kısıtlamalar. -->

# HunyuanVideo-1.5

HunyuanVideo-1.5, yalnızca 8,3 milyar parametreyle son derece yüksek görsel kalite ve hareket tutarlılığına ulaşan, tüketici sınıfı GPU'larda verimli çıkarım yapılmasını sağlayan hafif ama güçlü bir video üretim modelidir. Bu başarı; titiz veri kürasyonu, seçici ve kayan karolalı dikkat (SSTA) içeren gelişmiş bir DiT mimarisi, glif duyarlı metin kodlaması yoluyla geliştirilmiş iki dilli anlama, kademeli ön eğitim ve son eğitim ile verimli bir video süper çözünürlük ağı gibi çeşitli temel bileşenlere dayanmaktadır. Bu tasarımlardan yararlanarak, birden fazla süre ve çözünürlükte yüksek kaliteli metinden videoya ve görüntüden videoya üretim yapabilecek birleşik bir çerçeve geliştirdik. Kapsamlı deneyler, bu kompakt ve yetkin modelin açık kaynaklı modeller arasında yeni bir son teknoloji (state-of-the-art) standardı belirlediğini göstermektedir.

Tüm orijinal HunyuanVideo checkpoint'lerini [Tencent](https://huggingface.co/tencent) kuruluşu altında bulabilirsiniz.

> [!TIP]
> Daha fazla video üretme görevi örneği için sağ kenar çubuğundaki HunyuanVideo modellerine tıklayın.
>
> Aşağıdaki örnekler, ağırlıkların Diffusers ile uyumlu bir düzeninde saklandığı için [hunyuanvideo-community](https://huggingface.co/hunyuanvideo-community) kontrol noktasını kullanır.

Aşağıdaki örnek, bellek veya çıkarım hızı için optimize edilmiş bir video üretmenin nasıl yapılacağını gösterir.

Çeşitli bellek tasarrufu teknikleri hakkında daha fazla ayrıntı için [Bellek kullanımını azaltma](../../optimization/memory) kılavuzuna bakın.

```py
import torch
from diffusers import AutoModel, HunyuanVideo15Pipeline
from diffusers.utils import export_to_video

pipeline = HunyuanVideo15Pipeline.from_pretrained(
    "HunyuanVideo-1.5-Diffusers-480p_t2v",
    dtype=torch.bfloat16,
)

# model-offloading and tiling
pipeline.enable_model_cpu_offload()
pipeline.vae.enable_tiling()

prompt = "A fluffy teddy bear sits on a bed of soft pillows surrounded by children's toys."
video = pipeline(prompt=prompt, num_frames=61, num_inference_steps=30).frames[0]
export_to_video(video, "output.mp4", fps=15)
```

## Notlar

- HunyuanVideo1.5, değişken uzunluklu dizilerde dikkat maskeleri kullanır. En iyi performans için, dolguyu (padding) verimli bir şekilde işleyen bir dikkat (attention) arka ucunun (backend) kullanılmasını öneririz.

    - **H100/H800:** `_flash_3_hub` veya `_flash_3_varlen_hub`
    - **A100/A800/RTX 4090:** `flash_hub` veya `flash_varlen_hub`
    - **Diğer GPU'lar:** `sage_hub`

Farklı bir arka uç kullanma hakkında daha fazla ayrıntı için [Dikkat arka uçları](../../optimization/attention_backends) kılavuzuna başvurun.

```py
pipe.transformer.set_attention_backend("flash_hub")  # or your preferred backend
```

- [HunyuanVideo15Pipeline](/docs/diffusers/main/tr/api/pipelines/hunyuan_video15#diffusers.HunyuanVideo15Pipeline) guider kullanır ve çalışma zamanında `guidance_scale` parametresini kabul etmez.

Varsayılan guider yapılandırmasını `pipe.guider` kullanarak kontrol edebilirsiniz:

```py
>>> pipe.guider 
ClassifierFreeGuidance {
  "_class_name": "ClassifierFreeGuidance",
  "_diffusers_version": "0.36.0.dev0",
  "enabled": true,
  "guidance_rescale": 0.0,
  "guidance_scale": 6.0,
  "start": 0.0,
  "stop": 1.0,
  "use_original_formulation": false
}

State:
  step: None
  num_inference_steps: None
  timestep: None
  count_prepared: 0
  enabled: True
  num_conditions: 2
```

Guider yapılandırmasını güncellemek için `pipe.guider = pipe.guider.new(...)` komutunu çalıştırabilirsiniz.

```py
pipe.guider = pipe.guider.new(guidance_scale=5.0)
```

Guider hakkında daha fazla bilgi için [buraya](../../using-diffusers/guiders) bakın.

## HunyuanVideo15Pipeline[[diffusers.HunyuanVideo15Pipeline]]

#### diffusers.HunyuanVideo15Pipeline[[diffusers.HunyuanVideo15Pipeline]]

```python
diffusers.HunyuanVideo15Pipeline(text_encoder: Qwen2_5_VLTextModel, tokenizer: Qwen2Tokenizer, transformer: HunyuanVideo15Transformer3DModel, vae: AutoencoderKLHunyuanVideo15, scheduler: FlowMatchEulerDiscreteScheduler, text_encoder_2: T5EncoderModel, tokenizer_2: ByT5Tokenizer, guider: ClassifierFreeGuidance)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5.py#L166)

**Parametreler:**

transformer ([HunyuanVideo15Transformer3DModel](/docs/diffusers/main/tr/api/models/hunyuan_video15_transformer_3d#diffusers.HunyuanVideo15Transformer3DModel)) : Kodlanmış video latentlerini gürültüden arındırmak için kullanılan Koşullu Transformer (MMDiT) mimarisi.

scheduler ([FlowMatchEulerDiscreteScheduler](/docs/diffusers/main/tr/api/schedulers/flow_match_euler_discrete#diffusers.FlowMatchEulerDiscreteScheduler)) : Kodlanmış video latentlerini gürültüden arındırmak için `transformer` ile birlikte kullanılacak bir zamanlayıcı.

vae ([AutoencoderKLHunyuanVideo15](/docs/diffusers/main/tr/api/models/autoencoder_kl_hunyuan_video15#diffusers.AutoencoderKLHunyuanVideo15)) : Videoları latent temsillere kodlamak ve latent temsillerden çözmek için kullanılan Varyasyonel Oto-Kodlayıcı (VAE) Modeli.

text_encoder (`Qwen2.5-VL-7B-Instruct`) : [Qwen2.5-VL-7B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-7B-Instruct), özellikle [Qwen2.5-VL-7B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-7B-Instruct) varyantı.

tokenizer (`Qwen2Tokenizer`) : [Qwen2Tokenizer] sınıfının tokenizer'ı.

text_encoder_2 (`T5EncoderModel`) : [T5EncoderModel](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5EncoderModel) varyantı.

tokenizer_2 (`ByT5Tokenizer`) : [ByT5Tokenizer] sınıfının tokenizer'ı

guider ([ClassifierFreeGuidance](/docs/diffusers/main/tr/api/modular_diffusers/guiders#diffusers.ClassifierFreeGuidance)) : [ClassifierFreeGuidance]sınıflandırıcıdan bağımsız yönlendirme için.

HunyuanVideo1.5 kullanılarak metinden videoya üretim için Pipeline.

Bu model [DiffusionPipeline](/docs/diffusers/main/tr/api/pipelines/overview#diffusers.DiffusionPipeline) sınıfından devralınmıştır. Tüm pipeline'lar için uygulanan genel yöntemlerin (indirme, kaydetme, belirli bir cihazda çalıştırma vb.) belgelerini üst sınıfın dokümantasyonunda bulabilirsiniz.

#### __call__[[diffusers.HunyuanVideo15Pipeline.__call__]]

```python
__call__(prompt: str | list[str] = None, negative_prompt: str | list[str] = None, height: int | None = None, width: int | None = None, num_frames: int = 121, num_inference_steps: int = 50, sigmas: list = None, num_videos_per_prompt: int | None = 1, generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = None, latents: typing.Optional[torch.Tensor] = None, prompt_embeds: typing.Optional[torch.Tensor] = None, prompt_embeds_mask: typing.Optional[torch.Tensor] = None, negative_prompt_embeds: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_mask: typing.Optional[torch.Tensor] = None, prompt_embeds_2: typing.Optional[torch.Tensor] = None, prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_2: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None, output_type: str | None = 'np', return_dict: bool = True, attention_kwargs: dict[str, typing.Any] | None = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5.py#L542)

**Parametreler:**

prompt (`str` veya `list[str]`, *isteğe bağlı*) : Görsel üretimi yönlendirmek için istem veya istemler. Tanımlanmamışsa, bunun yerine `prompt_embeds` geçirilmelidir.

negative_prompt (`str` veya `list[str]`, *isteğe bağlı*) : Görsel üretimi yönlendirmemek için kullanılan istem veya istemler. Tanımlanmamışsa, bunun yerine `negative_prompt_embeds` geçirilmelidir.

height (`int`, *isteğe bağlı*) : Üretilen videonun piksel cinsinden yüksekliği.

width (`int`, *isteğe bağlı*) : Üretilen videonun piksel cinsinden genişliği.

num_frames (`int`, varsayılan `121`) : Üretilen videodaki kare sayısı.

num_inference_steps (`int`, varsayılan `50`) : Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir videoya yol açar.

sigmas (`list[float]`, *isteğe bağlı*) : `set_timesteps` metodunda `sigmas` argümanını destekleyen zamanlayıcılarla gürültü azaltma süreci için kullanılacak özel sigmalar. Tanımlanmamışsa, `num_inference_steps` geçirildiğinde varsayılan davranış kullanılacaktır.

num_videos_per_prompt (`int`, *isteğe bağlı*, varsayılan 1) : Her istem için üretilecek video sayısı.

generator (`torch.Generator` veya `list[torch.Generator]`, *isteğe bağlı*) : Üretimi deterministik hale getirmek için bir [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html).

latents (`torch.Tensor`, *isteğe bağlı*) : Video üretimi için girdi olarak kullanılacak, Gauss dağılımından örneklenen önceden oluşturulmuş gürültülü latentler. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgele `generator` kullanılarak örneklem yoluyla bir latent tensörü oluşturulur.

prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini (istek ağırlıklandırması) kolayca ayarlamak için kullanılabilir. Sağlanmazsa, metin gömme değerleri `prompt` girdi argümanından üretilir.

prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Prompt gömme (embedding) için önceden oluşturulmuş maske.

negative_prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Ön oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, `negative_prompt` girdi argümanından oluşturulur.

negative_prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Negatif prompt gömmelemeleri için önceden oluşturulmuş maske.

prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından üretilmiş önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir.

prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından gelen prompt gömme değerleri için önceden oluşturulmuş maske.

negative_prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından önceden oluşturulmuş negatif metin gömme değerleri.

negative_prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından gelen negatif istem gömme değerleri için önceden oluşturulmuş maske.

output_type (`str`, *isteğe bağlı*, varsayılan `"np"`) : Üretilen videonun çıktı biçimi. "np", "pt" veya "latent" arasında seçim yapın.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `HunyuanVideo15PipelineOutput` döndürülecek mi?

attention_kwargs (`dict`, *isteğe bağlı*) : Belirtilirse, [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py) içinde `self.processor` altında tanımlanan `AttentionProcessor`'a iletilen bir kwargs sözlüğü.

**Dönüş:** `~HunyuanVideo15PipelineOutput` veya `tuple`

`return_dict` `True` ise `HunyuanVideo15PipelineOutput` döndürülür, aksi halde ilk öğesi üretilen videoları içeren bir liste olan bir `tuple` döndürülür.

Üretim için pipeline'ın çağrı fonksiyonu.

Örnekler:
```python
>>> import torch
>>> from diffusers import HunyuanVideo15Pipeline
>>> from diffusers.utils import export_to_video

>>> model_id = "hunyuanvideo-community/HunyuanVideo-1.5-480p_t2v"
>>> pipe = HunyuanVideo15Pipeline.from_pretrained(model_id, torch_dtype=torch.float16)
>>> pipe.vae.enable_tiling()
>>> pipe.to("cuda")

>>> output = pipe(
...     prompt="A cat walks on the grass, realistic",
...     num_inference_steps=50,
... ).frames[0]
>>> export_to_video(output, "output.mp4", fps=15)
```

#### encode_prompt[[diffusers.HunyuanVideo15Pipeline.encode_prompt]]

```python
encode_prompt(prompt: str | list[str], device: typing.Optional[torch.device] = None, dtype: typing.Optional[torch.dtype] = None, batch_size: int = 1, num_videos_per_prompt: int = 1, prompt_embeds: typing.Optional[torch.Tensor] = None, prompt_embeds_mask: typing.Optional[torch.Tensor] = None, prompt_embeds_2: typing.Optional[torch.Tensor] = None, prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5.py#L334)

**Parametreler:**

prompt (`str` veya `list[str]`, *isteğe bağlı*) : kodlanacak istem

device : (`torch.device`): torch cihazı

batch_size (`int`) : istemlerin batch boyutu, varsayılan olarak 1

num_videos_per_prompt (`int`) : her istem için oluşturulacak görsel sayısı

prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin gömme değerleri. Sağlanmazsa, metin gömme değerleri `prompt` girdi argümanından oluşturulur.

prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin maskesi. Sağlanmazsa, metin maskesi `prompt` girdi argümanından oluşturulur.

prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : ByT5'ten önceden oluşturulmuş glif metin gömme değerleri. Sağlanmazsa, `prompt` girdi argümanından self.tokenizer_2 ve self.text_encoder_2 kullanılarak oluşturulur.

prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : ByT5 tarafından önceden oluşturulmuş glif metin maskesi. Sağlanmazsa, `prompt` girdi argümanından self.tokenizer_2 ve self.text_encoder_2 kullanılarak oluşturulur.

#### prepare_cond_latents_and_mask[[diffusers.HunyuanVideo15Pipeline.prepare_cond_latents_and_mask]]

```python
prepare_cond_latents_and_mask(latents, dtype: typing.Optional[torch.dtype], device: typing.Optional[torch.device])
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5.py#L508)

**Parametreler:**

latents : Ana latents tensörü (B, C, F, H, W)

**Dönüş:** `tuple`

(cond_latents_concat, mask_concat) - ikisi de t2v için sıfır tensörlerdir

t2v üretimi için koşullu latentleri ve maskeyi hazırlar.

## HunyuanVideo15ImageToVideoPipeline[[diffusers.HunyuanVideo15ImageToVideoPipeline]]

#### diffusers.HunyuanVideo15ImageToVideoPipeline[[diffusers.HunyuanVideo15ImageToVideoPipeline]]

```python
diffusers.HunyuanVideo15ImageToVideoPipeline(text_encoder: Qwen2_5_VLTextModel, tokenizer: Qwen2Tokenizer, transformer: HunyuanVideo15Transformer3DModel, vae: AutoencoderKLHunyuanVideo15, scheduler: FlowMatchEulerDiscreteScheduler, text_encoder_2: T5EncoderModel, tokenizer_2: ByT5Tokenizer, guider: ClassifierFreeGuidance, image_encoder: SiglipVisionModel, feature_extractor: SiglipImageProcessorPil)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5_image2video.py#L193)

**Parametreler:**

transformer ([HunyuanVideo15Transformer3DModel](/docs/diffusers/main/tr/api/models/hunyuan_video15_transformer_3d#diffusers.HunyuanVideo15Transformer3DModel)) : Kodlanmış video latentlerini gürültüden arındırmak için kullanılan Koşullu Transformer (MMDiT) mimarisi.

scheduler ([FlowMatchEulerDiscreteScheduler](/docs/diffusers/main/tr/api/schedulers/flow_match_euler_discrete#diffusers.FlowMatchEulerDiscreteScheduler)) : Kodlanmış video latentlerini gürültüden arındırmak için `transformer` ile birlikte kullanılacak bir zamanlayıcı.

vae ([AutoencoderKLHunyuanVideo15](/docs/diffusers/main/tr/api/models/autoencoder_kl_hunyuan_video15#diffusers.AutoencoderKLHunyuanVideo15)) : Videoları latent temsillere kodlamak ve latent temsillerden çözmek için kullanılan Varyasyonel Oto-Kodlayıcı (VAE) Modeli.

text_encoder (`Qwen2.5-VL-7B-Instruct`) : [Qwen2.5-VL-7B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-7B-Instruct), özellikle [Qwen2.5-VL-7B-Instruct](https://huggingface.co/Qwen/Qwen2.5-VL-7B-Instruct) varyantı.

tokenizer (`Qwen2Tokenizer`) : [Qwen2Tokenizer] sınıfının tokenizer'ı.

text_encoder_2 (`T5EncoderModel`) : [T5EncoderModel](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5EncoderModel) varyantı.

tokenizer_2 (`ByT5Tokenizer`) : [ByT5Tokenizer] sınıfının tokenizer'ı

guider ([ClassifierFreeGuidance](/docs/diffusers/main/tr/api/modular_diffusers/guiders#diffusers.ClassifierFreeGuidance)) : [ClassifierFreeGuidance]sınıflandırıcıdan bağımsız yönlendirme için.

image_encoder (`SiglipVisionModel`) : [SiglipVisionModel](https://huggingface.co/docs/transformers/en/model_doc/siglip#transformers.SiglipVisionModel) varyantı.

feature_extractor (`SiglipImageProcessor`) : [SiglipImageProcessor](https://huggingface.co/docs/transformers/en/model_doc/siglip#transformers.SiglipImageProcessor) varyantı.

HunyuanVideo1.5 kullanarak görüntüden videoya üretim için Pipeline.

Bu model [DiffusionPipeline](/docs/diffusers/main/tr/api/pipelines/overview#diffusers.DiffusionPipeline) sınıfından devralınmıştır. Tüm pipeline'lar için uygulanan genel yöntemlerin (indirme, kaydetme, belirli bir cihazda çalıştırma vb.) belgelerini üst sınıfın dokümantasyonunda bulabilirsiniz.

#### __call__[[diffusers.HunyuanVideo15ImageToVideoPipeline.__call__]]

```python
__call__(image: Image, prompt: str | list[str] = None, negative_prompt: str | list[str] = None, num_frames: int = 121, num_inference_steps: int = 50, sigmas: list = None, num_videos_per_prompt: int | None = 1, generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = None, latents: typing.Optional[torch.Tensor] = None, prompt_embeds: typing.Optional[torch.Tensor] = None, prompt_embeds_mask: typing.Optional[torch.Tensor] = None, negative_prompt_embeds: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_mask: typing.Optional[torch.Tensor] = None, prompt_embeds_2: typing.Optional[torch.Tensor] = None, prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_2: typing.Optional[torch.Tensor] = None, negative_prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None, output_type: str | None = 'np', return_dict: bool = True, attention_kwargs: dict[str, typing.Any] | None = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5_image2video.py#L650)

**Parametreler:**

image (`PIL.Image.Image`) : Video üretimini koşullandırmak için girdi olarak kullanılan görüntü.

prompt (`str` veya `list[str]`, *isteğe bağlı*) : Video üretimini yönlendirmek için istem veya istemler. Tanımlanmamışsa, bunun yerine `prompt_embeds` geçirilmelidir.

negative_prompt (`str` veya `list[str]`, *isteğe bağlı*) : Video üretimini yönlendirmemek için kullanılan istem veya istemler. Tanımlanmazsa, bunun yerine `negative_prompt_embeds` geçirilmelidir.

num_frames (`int`, varsayılan `121`) : Üretilen videodaki kare sayısı.

num_inference_steps (`int`, varsayılan `50`) : Gürültü azaltma adım sayısı. Daha fazla gürültü azaltma adımı genellikle daha yavaş çıkarım pahasına daha yüksek kaliteli bir videoya yol açar.

sigmas (`list[float]`, *isteğe bağlı*) : `set_timesteps` metodunda `sigmas` argümanını destekleyen zamanlayıcılarla gürültü azaltma süreci için kullanılacak özel sigmalar. Tanımlanmamışsa, `num_inference_steps` geçirildiğinde varsayılan davranış kullanılacaktır.

num_videos_per_prompt (`int`, *isteğe bağlı*, varsayılan 1) : Her istem için üretilecek video sayısı.

generator (`torch.Generator` veya `list[torch.Generator]`, *isteğe bağlı*) : Üretimi deterministik hale getirmek için bir [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html).

latents (`torch.Tensor`, *isteğe bağlı*) : Video üretimi için girdi olarak kullanılacak, Gauss dağılımından örneklenen önceden oluşturulmuş gürültülü latentler. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgele `generator` kullanılarak örneklem yoluyla bir latent tensörü oluşturulur.

prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin gömme değerleri. Metin girdilerini (istek ağırlıklandırması) kolayca ayarlamak için kullanılabilir. Sağlanmazsa, metin gömme değerleri `prompt` girdi argümanından üretilir.

prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Prompt gömme (embedding) için önceden oluşturulmuş maske.

negative_prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Ön oluşturulmuş negatif metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, negative_prompt_embeds, `negative_prompt` girdi argümanından oluşturulur.

negative_prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Negatif prompt gömmelemeleri için önceden oluşturulmuş maske.

prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından üretilmiş önceden oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir.

prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından gelen prompt gömme değerleri için önceden oluşturulmuş maske.

negative_prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından önceden oluşturulmuş negatif metin gömme değerleri.

negative_prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : İkinci metin kodlayıcısından gelen negatif istem gömme değerleri için önceden oluşturulmuş maske.

output_type (`str`, *isteğe bağlı*, varsayılan `"np"`) : Üretilen videonun çıktı biçimi. "np", "pt" veya "latent" arasında seçim yapın.

return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `HunyuanVideo15PipelineOutput` döndürülecek mi?

attention_kwargs (`dict`, *isteğe bağlı*) : Belirtilirse, [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py) içinde `self.processor` altında tanımlanan `AttentionProcessor`'a iletilen bir kwargs sözlüğü.

**Dönüş:** `~HunyuanVideo15PipelineOutput` veya `tuple`

`return_dict` `True` ise `HunyuanVideo15PipelineOutput` döndürülür, aksi halde ilk öğesi üretilen videoları içeren bir liste olan bir `tuple` döndürülür.

Üretim için pipeline'ın çağrı fonksiyonu.

Örnekler:
```python
>>> import torch
>>> from diffusers import HunyuanVideo15ImageToVideoPipeline
>>> from diffusers.utils import export_to_video

>>> model_id = "hunyuanvideo-community/HunyuanVideo-1.5-480p_i2v"
>>> pipe = HunyuanVideo15ImageToVideoPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
>>> pipe.vae.enable_tiling()
>>> pipe.to("cuda")

>>> image = load_image("https://huggingface.co/datasets/YiYiXu/testing-images/resolve/main/wan_i2v_input.JPG")

>>> output = pipe(
...     prompt="Summer beach vacation style, a white cat wearing sunglasses sits on a surfboard. The fluffy-furred feline gazes directly at the camera with a relaxed expression. Blurred beach scenery forms the background featuring crystal-clear waters, distant green hills, and a blue sky dotted with white clouds. The cat assumes a naturally relaxed posture, as if savoring the sea breeze and warm sunlight. A close-up shot highlights the feline's intricate details and the refreshing atmosphere of the seaside.",
...     image=image,
...     num_inference_steps=50,
... ).frames[0]
>>> export_to_video(output, "output.mp4", fps=24)
```

#### encode_prompt[[diffusers.HunyuanVideo15ImageToVideoPipeline.encode_prompt]]

```python
encode_prompt(prompt: str | list[str], device: typing.Optional[torch.device] = None, dtype: typing.Optional[torch.dtype] = None, batch_size: int = 1, num_videos_per_prompt: int = 1, prompt_embeds: typing.Optional[torch.Tensor] = None, prompt_embeds_mask: typing.Optional[torch.Tensor] = None, prompt_embeds_2: typing.Optional[torch.Tensor] = None, prompt_embeds_mask_2: typing.Optional[torch.Tensor] = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5_image2video.py#L422)

**Parametreler:**

prompt (`str` veya `list[str]`, *isteğe bağlı*) : kodlanacak istem

device : (`torch.device`): torch cihazı

batch_size (`int`) : istemlerin batch boyutu, varsayılan olarak 1

num_videos_per_prompt (`int`) : her istem için oluşturulacak görsel sayısı

prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin gömme değerleri. Sağlanmazsa, metin gömme değerleri `prompt` girdi argümanından oluşturulur.

prompt_embeds_mask (`torch.Tensor`, *isteğe bağlı*) : Önceden oluşturulmuş metin maskesi. Sağlanmazsa, metin maskesi `prompt` girdi argümanından oluşturulur.

prompt_embeds_2 (`torch.Tensor`, *isteğe bağlı*) : ByT5'ten önceden oluşturulmuş glif metin gömme değerleri. Sağlanmazsa, `prompt` girdi argümanından self.tokenizer_2 ve self.text_encoder_2 kullanılarak oluşturulur.

prompt_embeds_mask_2 (`torch.Tensor`, *isteğe bağlı*) : ByT5 tarafından önceden oluşturulmuş glif metin maskesi. Sağlanmazsa, `prompt` girdi argümanından self.tokenizer_2 ve self.text_encoder_2 kullanılarak oluşturulur.

#### prepare_cond_latents_and_mask[[diffusers.HunyuanVideo15ImageToVideoPipeline.prepare_cond_latents_and_mask]]

```python
prepare_cond_latents_and_mask(latents: Tensor, image: Image, batch_size: int, height: int, width: int, dtype: dtype, device: device)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_hunyuan_video1_5_image2video.py#L594)

**Parametreler:**

latents : Ana latents tensörü (B, C, F, H, W)

**Dönüş:** `tuple`

(cond_latents_concat, mask_concat) - ikisi de t2v için sıfır tensörlerdir

t2v üretimi için koşullu latentleri ve maskeyi hazırlar.

## HunyuanVideo15PipelineOutput[[diffusers.pipelines.hunyuan_video1_5.pipeline_output.HunyuanVideo15PipelineOutput]]

#### diffusers.pipelines.hunyuan_video1_5.pipeline_output.HunyuanVideo15PipelineOutput[[diffusers.pipelines.hunyuan_video1_5.pipeline_output.HunyuanVideo15PipelineOutput]]

```python
diffusers.pipelines.hunyuan_video1_5.pipeline_output.HunyuanVideo15PipelineOutput(frames: Tensor)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video1_5/pipeline_output.py#L9)

**Parametreler:**

frames (`torch.Tensor`, `np.ndarray` veya list[list[PIL.Image.Image]]) : Video çıktıları listesi - `batch_size,` uzunluğunda iç içe geçmiş bir liste olabilir; her alt liste, `num_frames.` uzunluğunda gürültüsü azaltılmış PIL görüntü dizileri içerir. Ayrıca `(batch_size, num_frames, channels, height, width)` biçiminde bir NumPy dizi veya Torch tensörü de olabilir.

HunyuanVideo1.5 pipeline'leri için çıktı sınıfı.

