# Pika H3 Flex

  
    
  

[Pika H3 Flex](https://huggingface.co/Pika-Labs/Pika-H3-Flex), [MiniMax-H3](./minimax_h3)'ün altı adımlı bir video ve ses üreticisine dönüştürülmesi için Pika tarafından yapılan eğitim sonrası (post-training) işlemidir. MiniMax-H3'ün sıkıştırılmış dizisini (packed sequence), Qwen3-VL koşullandırıcısını (conditioner) ve iki VAE'sini korur; iki şeyi değiştirir: örnekleyici (sampler), Euler güncellemesi yerine her adımda temiz tahmini yerinde yeniden gürültüleyen (re-noise) sabit bir altı adımlık zaman çizelgesi ve ağırlıklar, iki MiniMax-H3 dönüştürücü (transformer) bölümü üzerinde bir çift rank-128 LoRA adaptörü. Video ve onun senkronize stereo ses bandı, aynı altı ileri geçişten (forward pass) çıkar.

Sürüm, adaptörlerdir: FL2VA adaptörü (`fl2va/adapter.safetensors`), metin ve uç kare koşullandırması için `transformer/` bölümünü sürerken, Ref2VA adaptörü (`ref2va/adapter.safetensors`), çok modlu referanslar için `transformer_ref/` bölümünü sürer. Temel bileşenler [MiniMaxAI/MiniMax-H3](https://huggingface.co/MiniMaxAI/MiniMax-H3)'e aittir ve değiştirilmemiştir; ayrıca depoda, kendi başına yüklenebilmesi için bu bileşenlerin bir kopyası da yer almaktadır.

Pika H3 Flex, MiniMax-H3 gibi yalnızca [Modular Diffusers](../../modular_diffusers/overview) blokları olarak entegre edilir: bloklar ve [PikaH3FlexModularPipeline](/docs/diffusers/main/tr/api/pipelines/pika_h3_flex#diffusers.PikaH3FlexModularPipeline) tüm entegrasyonu oluşturur ve `DiffusionPipeline` tarafı yoktur.

## Yükleniyor

Bir pipeline iki adımda oluşturulur: bileşenler, MiniMax-H3 temel bileşenlerini ve iki zamanlayıcı yapılandırmasını adlandıran `modular_model_index.json` üzerinden yüklenir, ardından seçilen iş akışının adaptörü [load_lora_weights()](/docs/diffusers/main/tr/api/loaders/lora#diffusers.loaders.MiniMaxH3LoraLoaderMixin.load_lora_weights) ile üzerine yüklenir. Adaptörler, diffusers modül adlarının düz PEFT dökümleridir ve eğitim ölçeklerinde yüklenir (`alpha == rank`, 1.0).

| İş Akışı | Girdiler | Dönüştürücü bölme | Uyarlama |
|---|---|---|---|
| `t2va` | `prompt` | `transformer/` | `fl2va/adapter.safetensors` |
| `fl2va` | `prompt` ve `image` ve/veya `last_image` | `transformer/` | `fl2va/adapter.safetensors` |
| `ref2va` | `prompt` ve `references` | `transformer_ref/` | `ref2va/adapter.safetensors` |

```py
import torch
from diffusers import ModularPipeline

pipe = ModularPipeline.from_pretrained("Pika-Labs/Pika-H3-Flex", workflow="fl2va")
pipe.load_components(dtype={"vae": torch.float32, "audio_vae": torch.float32, "default": torch.bfloat16})
pipe.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="fl2va/adapter.safetensors")
```

Workflow parametresinin geçirilmesi, blokları o göreve göre budar; böylece yalnızca kendi transformer bölümü alınır, adaptör mevcut tek bölüme yönlendirilir ve pipeline yalnızca o görevin isteklerini kabul eder — `fl2va` pipeline'ı bir anahtar kare gerektirirken, `t2va` pipeline'ı hiçbir şey almaz. Her iki bölümü de barındıran (bir `workflow=` olmadan yüklenen) bir pipeline için, Ref2VA adaptörünün nereye gideceği belirtilmelidir: `pipe.load_lora_weights(..., weight_name="ref2va/adapter.safetensors", load_into_transformer_ref=True)`. İki VAE, yayınlanan paketin yaptığı gibi float32 olarak yayınlanır ve float32'de çözümlenir; her şey bfloat16'da çalışır.

> [!TIP]
> `pipe.doc`, önünüzdeki hattın ne aldığını ve ne döndürdüğünü gösterir: varsayılanlarıyla birlikte her girdi, beklediği bileşenler ve ürettiği çıktılar.

### Yüklenen MiniMax-H3'ün yeniden kullanımı

Temel bileşenler MiniMax-H3'e aittir; bu nedenle zaten yüklenmiş bir MiniMax-H3 hattı, iki zamanlayıcı ve adaptörler dışında her şeyi barındırır. Bu bölüm, yüklenmiş bu bileşenlerden bir Pika H3 Flex hattı oluşturur ve her iki hattı yan yana hazır tutar: tek bir [ComponentsManager](/docs/diffusers/main/tr/api/modular_diffusers/pipeline_components#diffusers.ComponentsManager), her bileşeni bir kez tutar ve her iki hat için de dışa aktarır; Pika H3 Flex hattı yalnızca kendi iki zamanlayıcısını ekler ve adaptörler, paylaşılan dönüştürücülerin iki modelden hangisini çalıştıracağını belirler.

```py
import torch
from diffusers import ComponentsManager, ModularPipeline

dtype = {"vae": torch.float32, "audio_vae": torch.float32, "default": torch.bfloat16}
manager = ComponentsManager()
manager.enable_auto_cpu_offload(device="cuda")

# The MiniMax-H3 pipeline already in use, with every workflow loaded. `collection` registers its components in the
# manager under that name, so they can be fetched by it later.
minimax = ModularPipeline.from_pretrained("MiniMaxAI/MiniMax-H3", components_manager=manager, collection="minimax-h3")
minimax.load_components(dtype=dtype)

# The Pika H3 Flex pipeline, in its own collection. Only its own components are loaded: the two schedulers.
pika = ModularPipeline.from_pretrained("Pika-Labs/Pika-H3-Flex", components_manager=manager, collection="pika-h3-flex")
pika.load_components(names=["scheduler", "audio_scheduler"])

# The rest comes from the MiniMax-H3 collection, and `update_components` puts it in the Pika H3 Flex pipeline.
shared = ["text_encoder", "tokenizer", "processor", "vae", "audio_vae", "transformer", "transformer_ref"]
pika.update_components(**{name: manager.get_one(name=name, collection="minimax-h3") for name in shared})

# The adapters go into the shared transformers.
pika.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="fl2va/adapter.safetensors")
pika.load_lora_weights(
    "Pika-Labs/Pika-H3-Flex", weight_name="ref2va/adapter.safetensors", load_into_transformer_ref=True
)
```

`print(manager)` sonucu şu şekilde gösterilir: her paylaşılan bileşen bir kez listelenir ve her iki koleksiyona da aittir, Pika H3 Flex koleksiyonu iki zamanlayıcısını ekler ve iki dönüştürücü bir adaptör taşır.

```text
Models:
Name_ID               | Class                           | Size (GB) | Collection
transformer_1397...   | MiniMaxH3Transformer3DModel     | 63.02     | minimax-h3
                      |                                 |           | pika-h3-flex
transformer_ref_13... | MiniMaxH3Transformer3DModel     | 63.02     | minimax-h3
                      |                                 |           | pika-h3-flex
text_encoder_1397...  | Qwen3VLForConditionalGeneration | 62.13     | minimax-h3
                      |                                 |           | pika-h3-flex
vae_1397...           | AutoencoderKLMiniMaxH3          | 9.70      | minimax-h3
                      |                                 |           | pika-h3-flex
audio_vae_1397...     | AutoencoderKLMiniMaxH3Audio     | 0.56      | minimax-h3
                      |                                 |           | pika-h3-flex

Other Components:
ID                        | Class              | Collection
scheduler_1397...         | MiniMaxH3Scheduler | minimax-h3
audio_scheduler_1397...   | MiniMaxH3Scheduler | minimax-h3
scheduler_1397...         | MiniMaxH3Scheduler | pika-h3-flex
audio_scheduler_1397...   | MiniMaxH3Scheduler | pika-h3-flex
tokenizer_1397...         | Qwen2Tokenizer     | minimax-h3
                          |                    | pika-h3-flex
processor_1397...         | Qwen3VLProcessor   | minimax-h3
                          |                    | pika-h3-flex

Additional Component Info:
transformer_1397...:
  Adapters: ['default_0']
transformer_ref_13...:
  Adapters: ['default_0']
```

Adaptörler, paylaşılan dönüştürücülerin hangi model olduğunu belirler. MiniMax-H3'e geri dönmek için `pika.disable_lora()` çağrısı yapmanız yeterlidir: sonraki `minimax(...)` isteği temel modeli çalıştırır. `pika.enable_lora()` Pika H3 Flex'i yeniden etkinleştirir. Arada hiçbir şey yeniden yüklenmez; yönetici, her iki deyiş hattı da ilgili bileşene ulaştığında her bir bileşeni hızlandırıcı üzerinde açıp kapatır.

## MiniMax-H3'ten farklı olan

- **Altı adım, `num_inference_steps` yok.** Her iki [MiniMaxH3Scheduler](/docs/diffusers/main/tr/api/schedulers/minimax_h3#diffusers.MiniMaxH3Scheduler) örneği de (video için `shift=12.0`, ses için `shift=3.0`), pipeline'ın `denoising_step_list` yapılandırması üzerinden `stochastic_sampling` ile çalışır; yayınlanan zaman çizelgesi `[1000, 750, 500, 250, 100, 40, 0]`'dir: her adım temiz örneği tahmin eder ve sondan bir önceki adım hariç tüm adımlar, onu bir sonraki sigma değerine kadar taze gürültüyle yeniden gürültüler. Adım sayısı, adaptörün sözleşmesidir ve bir girdi değildir.
- **Her adımda taze gürültü.** Bir istek, `generator` içinden sabit bir sırayla çekim yapar: koşullandırma gürültüsü için her anahtar kare veya görsel referans için bir çekim, video gürültüsü, ses gürültüsü ve ardından ilk beş adımın her birindeki video ve ses yeniden gürültüleme çekimleri. `latents` veya `audio_latents` geçirildiğinde, ilk iki çekim değiştirilir ve geri kalanı olduğu gibi kalır.
- **Keyframe'lar kırpılır, uzatılmaz.** Bir `fl2va` keyframe'ı, kendi çözünürlüğünde tuvalin en-boy oranına göre merkezden kırpılır ve tuvale yeniden boyutlandırılır.
- **Referanslar tuvalin çözünürlük katmanını takip eder.** Pika H3 Flex, bir sepet tablosu üzerinde üretim yapar — 480p ve 768p katmanları, her biri on bir en-boy oranı içerir — ve bir `ref2va` isteği, tuvalinin katmanına göre koşullandırılır: bir görüntü referansı, 768 katmanının altında 1024 piksel kısa kenar ve bu katmandan yukarıda 2048 piksel olarak kodlanır; bir video referansı ise katmanın kendi tuval kuralına göre yerleştirilir. Her video veya bağımsız ses referansı 2 ila 15 saniye arasında sürer ve video süreleri ile bağımsız ses süreleri ayrı ayrı en fazla 15 saniyeyi bulur.

## Üretim

Yayınlanan kovalar, Pika H3 Flex'in doğrulandığı tuval boyutlarıdır. Bunlardan birini `height` ve `width` olarak geçirin:

| | 21:9 | 16:9 | 3:2 | 4:3 | 5:4 | 1:1 | 4:5 | 3:4 | 2:3 | 9:16 | 9:21 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 480p | 960x416 | 832x480 | 704x480 | 640x480 | 608x480 | 480x480 | 480x608 | 480x640 | 480x704 | 480x832 | 416x960 |
| 768p | 1536x672 | 1344x768 | 1152x768 | 1024x768 | 960x768 | 768x768 | 768x960 | 768x1024 | 768x1152 | 768x1344 | 672x1536 |

```py
import torch
from diffusers import ComponentsManager, ModularPipeline
from diffusers.utils import load_image
from diffusers.utils.export_utils import encode_video

# 61.7GB of transformer and 62.1GB of conditioner do not sit on one accelerator, so the components are
# registered in a manager that moves each one on and off as the blocks reach it.
manager = ComponentsManager()
manager.enable_auto_cpu_offload(device="cuda")  # or "mps", "xpu", "cpu"

# Create one pipeline for all supported workflows, then load the `fl2va` workflow's components, which is
# enough to run both the fl2va and t2va requests below.
pipe = ModularPipeline.from_pretrained("Pika-Labs/Pika-H3-Flex", components_manager=manager)
pipe.load_components(
    workflow="fl2va", dtype={"vae": torch.float32, "audio_vae": torch.float32, "default": torch.bfloat16}
)
pipe.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="fl2va/adapter.safetensors")

prompt = (
    "integrated_multimodal_description: A cinematic close shot of a red ceramic cup on a wooden table beside an "
    "open window. A soft breeze moves a linen curtain. The camera slowly pushes toward the cup as warm morning "
    "light crosses the table.\n"
    "overall_soundscape: Gentle wind through the window and faint birdsong outside. No speech.\n"
    "non_diegetic_music: None.\n"
)
outputs = ["videos", "audio", "sampling_rate"]

# Text to video + audio on the 480p 16:9 bucket, 5 seconds.
results = pipe(
    prompt=prompt, 
    height=480, 
    width=832, 
    num_frames=124, 
    generator=torch.Generator("cuda").manual_seed(42), 
    output=outputs
)

# First frame (and optionally `last_image`) to video + audio. The keyframe is center-cropped onto the canvas and
# held as the first frame, so the prompt describes the keyframe and what happens from it.
image = load_image(
    "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/astronaut.jpg"
)
i2va_prompt = (
    "For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.\n\n"
    "integrated_multimodal_description: [Shot 1] Begin with the supplied image of a small toy astronaut figurine "
    "standing on a grey rocky moon surface, holding a white egg-shaped object. Preserve the figurine, its orange "
    "visor and the rocks. The astronaut slowly turns its helmet toward the camera and lifts the egg a little; fine "
    "dust drifts up around its boots. The camera slowly pushes in in one continuous shot. By the end the astronaut "
    "stands still, egg held up.\n\n"
    "overall_soundscape: Soft low wind and faint crunch of dust under the boots. No speech.\n\n"
    "non_diegetic_music: N/A\n"
)
results = pipe(
    prompt=i2va_prompt, 
    image=image, 
    height=480, 
    width=832, 
    num_frames=124,
    generator=torch.Generator("cuda").manual_seed(42), 
    output=outputs,
)

encode_video(
    results["videos"][0],
    fps=24,
    output_path="pika_h3_flex_fl2va.mp4",
    audio=results["audio"][0],
    audio_sample_rate=results["sampling_rate"],
)
```

`ref2va` iş akışı, MiniMax-H3’ün yaptığı gibi, sıralı bir referans listesi alır — en fazla 9 görüntü, 3 video ve 3 ses kliği, toplamda 12 — her modallite için bir referans sınıfı ile. Ayrıca en çok bellek gerektiren istektir: referanslar dizinin kendi satırlarını ekler ve 768p’de yalnızca transformer 80 GB’lık bir kartı doldurur. Bu nedenle aşağıdaki örnek, transformer’ın bloklarını CPU belleğinden birer birer akış olarak işlerken, yönetici diğer bileşenleri önceki gibi cihaz üzerinde ve dışında taşır. Tek bir 80 GB’lık kart üzerinde 768p referans isteği çalıştırır; akış olmadan 480p’de kalın.

```py
import torch
from diffusers import ComponentsManager, ModularPipeline
from diffusers.modular_pipelines.pika_h3_flex import (
    PikaH3FlexAudioReference,
    PikaH3FlexImageReference,
    PikaH3FlexVideoReference,
)

manager = ComponentsManager()
manager.enable_auto_cpu_offload(device="cuda")  # or "mps", "xpu", "cpu"

pipe = ModularPipeline.from_pretrained(
    "Pika-Labs/Pika-H3-Flex", workflow="ref2va", components_manager=manager
)
pipe.load_components(dtype={"vae": torch.float32, "audio_vae": torch.float32, "default": torch.bfloat16})
pipe.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="ref2va/adapter.safetensors")

# Keep the transformer in CPU memory and bring in one block at a time while it runs.
pipe.transformer_ref.enable_group_offload(
    onload_device=torch.device("cuda"),
    offload_device=torch.device("cpu"),
    offload_type="block_level",
    num_blocks_per_group=1,
    use_stream=True,
)

results = pipe(
    prompt="subject_definitions: <Subject 1> is the woman in <Picture 1>. summary: [reference generation] <Subject 1> waves at the camera.",
    references=[
        PikaH3FlexImageReference.from_file("subject.png"),
        PikaH3FlexVideoReference.from_file("motion_ref.mp4"),  # frames, their `fps` and the soundtrack
        PikaH3FlexAudioReference.from_file("voice.wav"),  # waveform and its `sample_rate`
    ],
    height=768,
    width=1344,
    num_frames=124,
    generator=torch.Generator("cuda").manual_seed(42),
    output=["videos", "audio", "sampling_rate"],
)
```

## PikaH3FlexModularPipeline[[diffusers.PikaH3FlexModularPipeline]]

#### diffusers.PikaH3FlexModularPipeline[[diffusers.PikaH3FlexModularPipeline]]

```python
diffusers.PikaH3FlexModularPipeline(blocks: diffusers.modular_pipelines.modular_pipeline.ModularPipelineBlocks | None = None, pretrained_model_name_or_path: str | os.PathLike | None = None, components_manager: diffusers.modular_pipelines.components_manager.ComponentsManager | None = None, collection: str | None = None, workflow: str | None = None, modular_config_dict: dict[str, typing.Any] | None = None, config_dict: dict[str, typing.Any] | None = None, **kwargs)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/modular_pipeline.py#L211)

Pika H3 Flex ile ortak video + ses üretimi için bir ModularPipeline, post-trained altı adımlı MiniMax-H3: `t2va` (yalnızca metin) ve `fl2va` (ilk ve/veya son ana kare) iş akışları, `transformer/` checkpoint bölümüne karşı `fl2va` adaptörüyle; ve `ref2va` (omni-reference) iş akışı, `transformer_ref/` bölümüne karşı `ref2va` adaptörüyle.

Temel bileşenler MiniMax-H3'ünkilerdir ve Pika H3 Flex sürümü, iki transformer bölmesinin üzerine yerleştirilen bir çift rank-128 LoRA adaptörüdür; bu nedenle bir pipeline iki adımda oluşturulur: bileşenler, temel bileşenleri ve iki zamanlayıcıyı adlandıran bir `modular_model_index.json` üzerinden yüklenir ve seçilen iş akışının adaptörü [load_lora_weights()](/docs/diffusers/main/tr/api/loaders/lora#diffusers.loaders.MiniMaxH3LoraLoaderMixin.load_lora_weights) ile yüklenir.

```py
import torch
from diffusers import ModularPipeline

pipe = ModularPipeline.from_pretrained("Pika-Labs/Pika-H3-Flex", workflow="fl2va")
pipe.load_components(dtype={"vae": torch.float32, "audio_vae": torch.float32, "default": torch.bfloat16})
pipe.load_lora_weights("Pika-Labs/Pika-H3-Flex", weight_name="fl2va/adapter.safetensors")
```

MiniMax-H3 gibi, Pika H3 Flex; metin koşullandırma, anahtar kare veya referans koşullandırma latentleri, ses latentleri ve video latentlerini aynı anda barındıran **tek bir paketlenmiş diziyi** gürültüden arındırır. Bu nedenle bloklar, modalite başına tensörler yerine bir satır düzenini (row layout) devreder ve pipeline, tek bir transformer çağrısı içinde adım atılan iki zamanlayıcıyı (`shift = 12.0` video için, `shift = 3.0` ses için) taşır. MiniMax-H3'ten farklı olarak, bu iki zamanlayıcı; sabit altı adımlık `denoising_step_list` üzerinde `stochastic_sampling` kullanan [MiniMaxH3Scheduler](/docs/diffusers/main/tr/api/schedulers/minimax_h3#diffusers.MiniMaxH3Scheduler) örnekleridir: `num_inference_steps` yoktur ve her adım, isteğin üretecinden (generator) taze gürültü çeker.

Uyarlama katmanları, taban modelleri gibi rehberlik damıtılmıştır: bir rehber, `negative_prompt` veya `guidance_scale` yoktur ve her adım tam olarak bir ileri geçiş çalıştırır.

Bu modül, her bloğun dayandığı model bilgilerini taşır — yapılandırma türevli geometri özellikler olarak, tuval, katman ve kare sayısı aritmetiği işlevler olarak — ve koşullandırma, kodlama ve gürültü sözleşmeleri blokların kendisinde yaşar.

## PikaH3FlexBlocks[[diffusers.PikaH3FlexBlocks]]

#### diffusers.PikaH3FlexBlocks[[diffusers.PikaH3FlexBlocks]]

```python
diffusers.PikaH3FlexBlocks()
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/modular_blocks_pika_h3_flex.py#L668)

Pika H3 Flex ile ortak video + ses üretimi için Auto Modular pipeline blokları: `references` ve ana kare girdilerine göre seçilen `t2va` (yalnızca metin), `fl2va` (ilk ve/veya son ana kare) ve `ref2va` (omni-referans) iş akışları. `t2va` ve `fl2va` iş akışları `transformer` bölümünü `fl2va` adaptörüyle çalıştırırken, `ref2va` `transformer_ref` bölümünü `ref2va` adaptörüyle çalıştırır; bu nedenle isteğin izlediği iş akışının adaptörünü yükleyin. `workflow=` parametresi verilmediğinde, bileşenlerin yüklenmesi **her iki** 61,7 GB’lık transformer bölümünü de çeker — görevin gerektirdiği şeyi yüklemek için birini belirtin.

Desteklenen iş akışları:
- `t2va`: `prompt` gerektirir
- `fl2va`: `prompt`, `image` veya `prompt`, `last_image` gerektirir
- `ref2va`: `prompt` ve `references` gerektirir

Bileşenler: image_processor (`VaeImageProcessor`) text_encoder (`Qwen3VLForConditionalGeneration`) tokenizer (`Qwen2Tokenizer`) processor (`Qwen3VLProcessor`) vae (`AutoencoderKLMiniMaxH3`) audio_vae (`AutoencoderKLMiniMaxH3Audio`) scheduler (`MiniMaxH3Scheduler`) audio_scheduler (`MiniMaxH3Scheduler`) transformer_ref (`MiniMaxH3Transformer3DModel`) transformer (`MiniMaxH3Transformer3DModel`) video_processor (`VideoProcessor`)

Yapılandırmalar: canvas_short_edge (varsayılan: 768) canvas_max_pixels (varsayılan: 1032192) denoising_step_list (varsayılan: [1000, 750, 500, 250, 100, 40, 0])

Girdiler: references (`list`, *isteğe bağlı*): Koşullandırılacak referanslar, **modelin onları okuması gereken sırayla**: sıralama, istem sunumunda onları etiketler ve paylaşımlı döner saat üzerinde yerleştirir, bu nedenle farklı bir sıra farklı bir istemektir. Her modallite için bir veri sınıfı, hepsi bellek içi medya tutar — en fazla 9 adet `PikaH3FlexImageReference`, kendi `fps` değerinde en fazla 3 adet `PikaH3FlexVideoReference` (kendi `audio` ses bandı da koşullandırılır) veya kendi `sample_rate` değerinde en fazla 3 adet `PikaH3FlexAudioReference` — toplamda en fazla 12 referans ve ses referansları tek başına olamaz. Her video veya bağımsız ses referansı 2 ila 15 saniye sürer ve video süreleri ile bağımsız ses süreleri ayrı ayrı en fazla 15 saniyeye eşitlenir. Bu bloklar asla bir medya dosyası açmaz: her sınıfın `from_file` sınıf metodunu kullanarak çözümlenir, bu işlem oranları da beraberinde getirir. height (`int`, *isteğe bağlı*): Üretilen videonun piksel cinsinden yüksekliği, 32'nin katı. width (`int`, *isteğe bağlı*): Üretilen videonun piksel cinsinden genişliği, 32'nin katı. num_frames (`int`, *isteğe bağlı*): Sabit 24 fps'de üretilecek kare sayısı: 120 ila 360, yani 5 ila 15 saniye, video VAE'nin çözebileceği bir sonraki `17 * n + 5` değerine yukarı yuvarlanır. Referans ses bandı kadar uzun bir video üretmek için `round(samples / sample_rate * 24)` geçirin. image (`Image`, *isteğe bağlı*): Videonun başladığı anahtar kare. Tuvalin en-boy oranına göre merkezden kırpılır ve üzerine yeniden boyutlandırılır; tuval varsayılan olarak kendi en-boy oranından türetilir. last_image (`Image`, *isteğe bağlı*): Videonun bittiği anahtar kare. *bir kareye kadar* üretmek için tek başına geçirilebilir. `image` gibi, tuvalin en-boy oranına göre merkezden kırpılır ve üzerine yeniden boyutlandırılır. prompt (`str`): Üretimi yönlendirmek için istem, tek bir dize. normalized_references (`list`, *isteğe bağlı*): Kurulum adımı tarafından normalize edilen referanslar, paketlenmiş sırayla. keyframes (`list`, *isteğe bağlı*): Hedef tuvale yerleştirilen anahtar kareler, paketlenmiş sırayla. condition_latents (`list`, *isteğe bağlı*): Kodlanmış video koşullandırma latentleri, paketlenmiş sırayla her görüntü ve video referansı için bir adet. Şekilleri, her referans bloğunun geometrisinin kaynağıdır. audio_condition_latents (`list`, *isteğe bağlı*): Kodlanmış ses koşullandırma satırları, paketlenmiş sırayla ses içeren her referans için bir adet. generator (`Generator`, *isteğe bağlı*): İstemin üreteci. Koşullandırma gürültüsü, üretilen satırların gürültüsünden önce, her koşul için bir çekimle ondan çekilir. latents (`Tensor`): `(1, 24, num_latent_frames, latent_height, latent_width)` şekline sahip, çekim yerine kullanılan önceden üretilmiş video gürültüsü. audio_latents (`Tensor`): `(2, 32, num_audio_latents)` şekline sahip önceden üretilmiş ses gürültüsü. **denoiser_input_fields (`None`, *isteğe bağlı*): Dönüştürücünün adla okuduğu paketlenmiş dizinin yapısal tanımı: `token_tags`, `position_ids` ve üç satır-dizin tensörü. attention_kwargs (`dict`, *isteğe bağlı*): Dikkat işlemcileri için ek kwargs. keyframe_anchors (`tuple`, *isteğe bağlı*, varsayılan ()): Her anahtar karenin videonun hangi ucuna sabitlendiği, paketlenmiş sırayla. output_type (`str`, *isteğe bağlı*, varsayılan pil): Çıktı biçimi: 'pil', 'np' veya 'pt'.

Çıktılar: videos (`list`): Oluşturulan video. audio (`Tensor`): `(1, 2, num_samples)` biçiminde oluşturulan ses bandı. sampling_rate (`int`): Oluşturulan ses bandının Hz cinsinden örneklem hızı.

## PikaH3FlexImageReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexImageReference]]

#### diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexImageReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexImageReference]]

```python
diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexImageReference(image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor])
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L83)

**Parametreler:**

image (`PIL.Image.Image`, `np.ndarray` veya `torch.Tensor`) : Referans görüntü: bir görüntü, `(height, width, 3)` boyutunda bir dizi veya `(3, height, width)` boyutunda bir tensör, `uint8` veya `[0, 1]` aralığında kayan noktalı. Üretilen geometriye asla bağlanmaz; kendi kısa kenarında kodlanır, yayınlanan checkpoint için 2048, istek hangi tuvali üretirse üretsin.

Bir konu, stil veya sahne referansı: istek başına en fazla 9.

#### from_file[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexImageReference.from_file]]

```python
from_file(media)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L99)

**Parametreler:**

media (`str` veya `os.PathLike`) : Görselin yolu veya URL'si.

Bir görüntü dosyasını [load_image()](/docs/diffusers/main/tr/api/utilities#diffusers.utils.load_image) üzerinden `PikaH3FlexImageReference` içine yükleyin.

## PikaH3FlexVideoReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexVideoReference]]

#### diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexVideoReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexVideoReference]]

```python
diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexVideoReference(frames: typing.Union[list[PIL.Image.Image], numpy.ndarray, torch.Tensor], fps: float | None = None, audio: typing.Optional[torch.Tensor] = None, sample_rate: int | None = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L111)

**Parametreler:**

frames (`list[PIL.Image.Image]`, `np.ndarray` veya `torch.Tensor`) : Referans kareleri: bir görüntü listesi, `(num_frames, height, width, 3)` boyutunda bir dizi veya `(num_frames, 3, height, width)` boyutunda bir tensör, `uint8` veya `[0, 1]` aralığında kayan noktalı sayı.

fps (`float`, *opsiyonel*, varsayılan 24.0) : `frames`'in taşıdığı kare hızı; referansın görme bloklarını conditioner'ın 2 fps ızgarasına yerleştiren değer budur. MiniMax-H3'ün kendi saati 24 fps olduğundan, başka herhangi bir hız, tüm kareleri atlayarak ve çoğaltarak bu hıza yeniden örneklenir — bu da kareler bir dosyadan geldiğinde doğru ayarlanacak alanı oluşturur.

audio (`torch.Tensor`, şekli `(channels, num_samples)`, *isteğe bağlı*) : Bu videonun ses bandı, mono veya stereo; kendi referansı olarak değil, referansın kendi ses bandı olarak koşullandırılır. Bu parametre verilmezse, referans yalnızca harekete göre koşullandırılır.

sample_rate (`int`, *isteğe bağlı*) : `audio`'nun örneklerini taşıdığı hız. Belirtilmezse, ses VAE'sinin kendi hızı kullanılır ve örnekler olduğu gibi bırakılır; başka bir hız belirtilirse örnekler bu hıza yeniden örneklenir.

Bir hareket ve kamera referansı: istek başına en fazla 3 adet, kendi ses efektleriyle birlikte koşullandırılır.

#### from_file[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexVideoReference.from_file]]

```python
from_file(media)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L147)

**Parametreler:**

media (`str` veya `os.PathLike`) : Videoyun yolu veya URL'si.

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

Kapsayıcının bildirdiği kare hızında, ses akışı varsa kendi ses kaydını ve o ses kaydının örnek hızını taşıyan `(num_frames, height, width, 3)` `uint8` kareler.

Bir video dosyasını, çözünürlüğünde, kare hızında ve taşıdığı ses kaydında `PikaH3FlexVideoReference` olarak çözümlen.

Oranlar referansa yerleşir; bu, [load_video()](/docs/diffusers/main/tr/api/utilities#diffusers.utils.load_video) yerine bu şekilde çözümleme yapmanın amacıdır: MiniMax-H3, referansı kendi 24 fps'ine yeniden örnekler, bu yüzden giriş sırasında kaybedilen bir kare hızı, yanlış hızda koşullandırılmış bir istek anlamına gelir ve bunu bildirecek hiçbir şey yoktur. Meta verileri hatalı olan bir kapsayıcı, döndürülen referans üzerinde `fps` veya `sample_rate` değerlerini geçersiz kılarak düzeltilir.

[PyAV](https://github.com/PyAV-Org/PyAV) gerektirir.

## PikaH3FlexAudioReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexAudioReference]]

#### diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexAudioReference[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexAudioReference]]

```python
diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexAudioReference(audio: Tensor, sample_rate: int | None = None)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L174)

**Parametreler:**

audio (`torch.Tensor`, şekli `(channels, num_samples)`) : Referans dalga formu, mono veya stereo.

sample_rate (`int`, *isteğe bağlı*) : `audio`'nun örneklerini taşıdığı hız. Belirtilmezse, ses VAE'sinin kendi hızı kullanılır ve örnekler olduğu gibi bırakılır; başka bir hız belirtilirse örnekler bu hıza yeniden örneklenir.

Ses veya müzik referansı: istek başına en fazla 3 adet ve asla yalnız başına değil — bir ses referansı, en az bir görsel veya video referansı ile eşleştirilmelidir. Hiçbir zaman conditioner'a ulaşmaz ve yalnızca ses VAE tarafından kodlanır.

#### from_file[[diffusers.modular_pipelines.pika_h3_flex.PikaH3FlexAudioReference.from_file]]

```python
from_file(media)
```

[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/modular_pipelines/pika_h3_flex/references.py#L193)

**Parametreler:**

media (`str` veya `os.PathLike`) : Sesin veya ses bandı alınacak videonun yolu veya URL'si.

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

kap konteynerinin bildirdiği örnek hızında `(channels, num_samples)` boyutlu float32 dalga formu.

Bir ses dosyasını, taşıdığı örneklem hızında `PikaH3FlexAudioReference` olarak çözümlen.

[PyAV](https://github.com/PyAV-Org/PyAV) gerektirir.

