Buckets:
| # | |
| # 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. --> | |
| # Framepack | |
| Lvmin Zhang ve Maneesh Agrawala tarafından [Video Üretimi İçin Bir Sonraki Kare Tahmin Modellerinde Giriş Kare Bağlamının Paketlenmesi](https://huggingface.co/papers/2504.12626). | |
| *Video üretimi için bir sonraki kareyi (veya bir sonraki kare bölümünü) tahmin eden modelleri eğitmek amacıyla FramePack adlı bir sinir ağı yapısı sunuyoruz. FramePack, girdi karelerini sıkıştırarak transformer bağlam uzunluğunun video uzunluğundan bağımsız olarak sabit bir sayı olmasını sağlar. Bu sayede, hesaplama darboğazı görüntü difüzyonuna benzer olan video difüzyonu ile büyük miktarda kareyi işleyebiliyoruz. Bu durum, eğitim video parti boyutlarını da önemli ölçüde artırıyor (parti boyutları, görüntü difüzyonu eğitimindeki boyutlarla karşılaştırılabilir hale geliyor). Ayrıca, maruz kalma yanlılığını (iterasyonlar boyunca hata birikimi) önlemek için erken belirlenmiş uç noktalarla ters zaman sırasına göre kare üreten bir anti-drifting örneklem yöntemi öneriyoruz. Son olarak, mevcut video difüzyon modellerinin FramePack ile ince ayarlanabileceğini ve bir sonraki kare tahmininin daha az aşırı akış kayması adımlarına sahip, daha dengeli difüzyon zamanlayıcılarını desteklediği için görsel kalitelerinin iyileştirilebileceğini gösteriyoruz.* | |
| > [!TIP] | |
| > Scheduler'lar [kılavuzunu](../../using-diffusers/schedulers) 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](../../using-diffusers/loading#reusing-models-in-multiple-pipelines) bölümüne göz atın. | |
| ## Mevcut modeller | |
| | Model adı | Açıklama | | |
| |:---|:---| | |
| - [`lllyasviel/FramePackI2V_HY`](https://huggingface.co/lllyasviel/FramePackI2V_HY) | Makalede anlatıldığı üzere "inverted anti-drifting" stratejisiyle eğitildi. Pipeline'ı çalıştırırken çıkarım için `sampling_type="inverted_anti_drifting"` ayarının yapılması gerekir. | | |
| - [`lllyasviel/FramePack_F1_I2V_HY_20250503`](https://huggingface.co/lllyasviel/FramePack_F1_I2V_HY_20250503) | Yeni bir anti-drifting stratejisiyle eğitilmiştir ancak çıkarım, makalede anlatıldığı üzere "vanilla" stratejisiyle gerçekleştirilir. Çıkarım için pipeline'ı çalıştırırken `sampling_type="vanilla"` ayarının yapılması gerekir. | | |
| ## Kullanım | |
| Temel kullanım örnekleri için pipeline dokümantasyonuna başvurun. Aşağıdaki bölüm, offloading, farklı örneklem yöntemleri, kuantizasyon ve daha fazlasına ilişkin örnekler içerir. | |
| ### İlk ve son kareden video | |
| Aşağıdaki örnek, ters çevrilmiş anti-drifiting örneklem modeli kullanılarak Framepack'ın başlangıç ve bitiş görüntü kontrolleriyle nasıl kullanılacağını gösterir. | |
| ```python | |
| import torch | |
| from diffusers import HunyuanVideoFramepackPipeline, HunyuanVideoFramepackTransformer3DModel | |
| from diffusers.utils import export_to_video, load_image | |
| from transformers import SiglipImageProcessor, SiglipVisionModel | |
| transformer = HunyuanVideoFramepackTransformer3DModel.from_pretrained( | |
| "lllyasviel/FramePackI2V_HY", dtype=torch.bfloat16 | |
| ) | |
| feature_extractor = SiglipImageProcessor.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="feature_extractor" | |
| ) | |
| image_encoder = SiglipVisionModel.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="image_encoder", dtype=torch.float16 | |
| ) | |
| pipe = HunyuanVideoFramepackPipeline.from_pretrained( | |
| "hunyuanvideo-community/HunyuanVideo", | |
| transformer=transformer, | |
| feature_extractor=feature_extractor, | |
| image_encoder=image_encoder, | |
| dtype=torch.float16, | |
| ) | |
| # Enable memory optimizations | |
| pipe.enable_model_cpu_offload() | |
| pipe.vae.enable_tiling() | |
| prompt = "CG animation style, a small blue bird takes off from the ground, flapping its wings. The bird's feathers are delicate, with a unique pattern on its chest. The background shows a blue sky with white clouds under bright sunshine. The camera follows the bird upward, capturing its flight and the vastness of the sky from a close-up, low-angle perspective." | |
| first_image = load_image( | |
| "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/flf2v_input_first_frame.png" | |
| ) | |
| last_image = load_image( | |
| "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/flf2v_input_last_frame.png" | |
| ) | |
| output = pipe( | |
| image=first_image, | |
| last_image=last_image, | |
| prompt=prompt, | |
| height=512, | |
| width=512, | |
| num_frames=91, | |
| num_inference_steps=30, | |
| guidance_scale=9.0, | |
| generator=torch.Generator().manual_seed(0), | |
| sampling_type="inverted_anti_drifting", | |
| ).frames[0] | |
| export_to_video(output, "output.mp4", fps=30) | |
| ``` | |
| ### Vanilla örneklem | |
| Aşağıdaki örnek, vanilla sampling ile eğitilmiş ancak anti-drifting için yeni bir düzenleme yaklaşımı kullanılan F1 modeliyle Framepack'ın nasıl kullanılacağını gösterir. | |
| ```python | |
| import torch | |
| from diffusers import HunyuanVideoFramepackPipeline, HunyuanVideoFramepackTransformer3DModel | |
| from diffusers.utils import export_to_video, load_image | |
| from transformers import SiglipImageProcessor, SiglipVisionModel | |
| transformer = HunyuanVideoFramepackTransformer3DModel.from_pretrained( | |
| "lllyasviel/FramePack_F1_I2V_HY_20250503", dtype=torch.bfloat16 | |
| ) | |
| feature_extractor = SiglipImageProcessor.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="feature_extractor" | |
| ) | |
| image_encoder = SiglipVisionModel.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="image_encoder", dtype=torch.float16 | |
| ) | |
| pipe = HunyuanVideoFramepackPipeline.from_pretrained( | |
| "hunyuanvideo-community/HunyuanVideo", | |
| transformer=transformer, | |
| feature_extractor=feature_extractor, | |
| image_encoder=image_encoder, | |
| dtype=torch.float16, | |
| ) | |
| # Enable memory optimizations | |
| pipe.enable_model_cpu_offload() | |
| pipe.vae.enable_tiling() | |
| image = load_image( | |
| "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/penguin.png" | |
| ) | |
| output = pipe( | |
| image=image, | |
| prompt="A penguin dancing in the snow", | |
| height=832, | |
| width=480, | |
| num_frames=91, | |
| num_inference_steps=30, | |
| guidance_scale=9.0, | |
| generator=torch.Generator().manual_seed(0), | |
| sampling_type="vanilla", | |
| ).frames[0] | |
| export_to_video(output, "output.mp4", fps=30) | |
| ``` | |
| ### Grup dışa aktarma | |
| Grup dışa aktarma ([apply_group_offloading()](/docs/diffusers/main/tr/api/utilities#diffusers.hooks.apply_group_offloading)), herhangi bir modelin iç bileşenlerini CPU'ya dışa aktarmak için agresif bellek optimizasyonları sağlar ve üretim süresine ek bir maliyet getirmeden çalışabilir. Kullanılabilir VRAM miktarınız çok düşükse, bu yaklaşım mevcut CPU RAM miktarına bağlı olarak size uygun olabilir. | |
| ```python | |
| import torch | |
| from diffusers import HunyuanVideoFramepackPipeline, HunyuanVideoFramepackTransformer3DModel | |
| from diffusers.hooks import apply_group_offloading | |
| from diffusers.utils import export_to_video, load_image | |
| from transformers import SiglipImageProcessor, SiglipVisionModel | |
| transformer = HunyuanVideoFramepackTransformer3DModel.from_pretrained( | |
| "lllyasviel/FramePack_F1_I2V_HY_20250503", dtype=torch.bfloat16 | |
| ) | |
| feature_extractor = SiglipImageProcessor.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="feature_extractor" | |
| ) | |
| image_encoder = SiglipVisionModel.from_pretrained( | |
| "lllyasviel/flux_redux_bfl", subfolder="image_encoder", dtype=torch.float16 | |
| ) | |
| pipe = HunyuanVideoFramepackPipeline.from_pretrained( | |
| "hunyuanvideo-community/HunyuanVideo", | |
| transformer=transformer, | |
| feature_extractor=feature_extractor, | |
| image_encoder=image_encoder, | |
| dtype=torch.float16, | |
| ) | |
| # Enable group offloading | |
| onload_device = torch.device("cuda") | |
| offload_device = torch.device("cpu") | |
| list(map( | |
| lambda x: apply_group_offloading(x, onload_device, offload_device, offload_type="leaf_level", use_stream=True, low_cpu_mem_usage=True), | |
| [pipe.text_encoder, pipe.text_encoder_2, pipe.transformer] | |
| )) | |
| pipe.image_encoder.to(onload_device) | |
| pipe.vae.to(onload_device) | |
| pipe.vae.enable_tiling() | |
| image = load_image( | |
| "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/penguin.png" | |
| ) | |
| output = pipe( | |
| image=image, | |
| prompt="A penguin dancing in the snow", | |
| height=832, | |
| width=480, | |
| num_frames=91, | |
| num_inference_steps=30, | |
| guidance_scale=9.0, | |
| generator=torch.Generator().manual_seed(0), | |
| sampling_type="vanilla", | |
| ).frames[0] | |
| print(f"Max memory: {torch.cuda.max_memory_allocated() / 1024**3:.3f} GB") | |
| export_to_video(output, "output.mp4", fps=30) | |
| ``` | |
| ## HunyuanVideoFramepackPipeline[[diffusers.HunyuanVideoFramepackPipeline]] | |
| #### diffusers.HunyuanVideoFramepackPipeline[[diffusers.HunyuanVideoFramepackPipeline]] | |
| ```python | |
| diffusers.HunyuanVideoFramepackPipeline(text_encoder: LlamaModel, tokenizer: LlamaTokenizer, transformer: HunyuanVideoFramepackTransformer3DModel, vae: AutoencoderKLHunyuanVideo, scheduler: FlowMatchEulerDiscreteScheduler, text_encoder_2: CLIPTextModel, tokenizer_2: CLIPTokenizer, image_encoder: SiglipVisionModel, feature_extractor: SiglipImageProcessorPil) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video/pipeline_hunyuan_video_framepack.py#L243) | |
| **Parametreler:** | |
| text_encoder (`LlamaModel`) : [Llava Llama3-8B](https://huggingface.co/xtuner/llava-llama-3-8b-v1_1-transformers). | |
| tokenizer (`LlamaTokenizer`) : [Llava Llama3-8B](https://huggingface.co/xtuner/llava-llama-3-8b-v1_1-transformers)'den gelen tokenizer. | |
| transformer ([HunyuanVideoTransformer3DModel](/docs/diffusers/main/tr/api/models/hunyuan_video_transformer_3d#diffusers.HunyuanVideoTransformer3DModel)) : Kodlanmış görüntü latentlerini gürültüden arındırmak için kullanılan koşullu Transformer. | |
| scheduler ([FlowMatchEulerDiscreteScheduler](/docs/diffusers/main/tr/api/schedulers/flow_match_euler_discrete#diffusers.FlowMatchEulerDiscreteScheduler)) : Kodlanmış görüntü latentlerini gürültüden arındırmak için `transformer` ile birlikte kullanılacak bir zamanlayıcı. | |
| vae ([AutoencoderKLHunyuanVideo](/docs/diffusers/main/tr/api/models/autoencoder_kl_hunyuan_video#diffusers.AutoencoderKLHunyuanVideo)) : Videoları latent temsillere kodlamak ve bu temsillerden çözmek için kullanılan Varyasyonel Oto-Kodlayıcı (VAE) Modeli. | |
| text_encoder_2 (`CLIPTextModel`) : [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), özellikle [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) varyantı. | |
| tokenizer_2 (`CLIPTokenizer`) : [CLIPTokenizer](https://huggingface.co/docs/transformers/en/model_doc/clip#transformers.CLIPTokenizer) sınıfının tokenizer'ı. | |
| HunyuanVideo 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.HunyuanVideoFramepackPipeline.__call__]] | |
| ```python | |
| __call__(image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]], last_image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor], NoneType] = None, prompt: str | list[str] = None, prompt_2: str | list[str] = None, negative_prompt: str | list[str] = None, negative_prompt_2: str | list[str] = None, height: int = 720, width: int = 1280, num_frames: int = 129, latent_window_size: int = 9, num_inference_steps: int = 50, sigmas: list = None, true_cfg_scale: float = 1.0, guidance_scale: float = 6.0, num_videos_per_prompt: int | None = 1, generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = None, image_latents: typing.Optional[torch.Tensor] = None, last_image_latents: typing.Optional[torch.Tensor] = None, prompt_embeds: typing.Optional[torch.Tensor] = None, pooled_prompt_embeds: typing.Optional[torch.Tensor] = None, prompt_attention_mask: typing.Optional[torch.Tensor] = None, negative_prompt_embeds: typing.Optional[torch.Tensor] = None, negative_pooled_prompt_embeds: typing.Optional[torch.Tensor] = None, negative_prompt_attention_mask: typing.Optional[torch.Tensor] = None, output_type: str | None = 'pil', return_dict: bool = True, attention_kwargs: dict[str, typing.Any] | None = None, callback_on_step_end: typing.Union[typing.Callable[[int, int], NoneType], diffusers.callbacks.PipelineCallback, diffusers.callbacks.MultiPipelineCallbacks, NoneType] = None, callback_on_step_end_tensor_inputs: list = ['latents'], prompt_template: dict = {'template': '<|start_header_id|>system<|end_header_id|>\n\nDescribe the video by detailing the following aspects: 1. The main content and theme of the video.2. The color, shape, size, texture, quantity, text, and spatial relationships of the objects.3. Actions, events, behaviors temporal relationships, physical movement changes of the objects.4. background environment, light, style and atmosphere.5. camera angles, movements, and transitions used in the video:<|eot_id|><|start_header_id|>user<|end_header_id|>\n\n{}<|eot_id|>', 'crop_start': 95}, max_sequence_length: int = 256, sampling_type: FramepackSamplingType = <FramepackSamplingType.INVERTED_ANTI_DRIFTING: 'inverted_anti_drifting'>) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video/pipeline_hunyuan_video_framepack.py#L586) | |
| **Parametreler:** | |
| image (`PIL.Image.Image` veya `np.ndarray` veya `torch.Tensor`) : Video üretimi için başlangıç noktası olarak kullanılacak görüntü. | |
| last_image (`PIL.Image.Image` veya `np.ndarray` veya `torch.Tensor`, *isteğe bağlı*) : Video üretimi için bitiş noktası olarak kullanılacak isteğe bağlı son görüntü. Bu, iki görüntü arasında geçişler oluşturmak için kullanışlıdır. | |
| 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. | |
| prompt_2 (`str` veya `list[str]`, *isteğe bağlı*) : `tokenizer_2` ve `text_encoder_2`'ye gönderilecek istem veya istemler. Tanımlanmamışsa, bunun yerine `prompt` kullanılır. | |
| 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` parametresinin geçirilmesi gerekir. Yönlendirme kullanılmadığında (yani `true_cfg_scale`, `1`'den büyük olmadığında) yok sayılır. | |
| negative_prompt_2 (`str` veya `list[str]`, *isteğe bağlı*) : Görsel üretimi yönlendirmek için `tokenizer_2` ve `text_encoder_2`'ye gönderilmeyecek istem veya istemler. Tanımlanmamışsa, `negative_prompt` tüm metin kodlayıcılarda kullanılır. | |
| height (`int`, varsayılan `720`) : Üretilen görüntünün piksel cinsinden yüksekliği. | |
| width (`int`, varsayılan `1280`) : Üretilen görüntünün piksel cinsinden genişliği. | |
| num_frames (`int`, varsayılan `129`) : Üretilen videodaki kare sayısı. | |
| latent_window_size (`int`, varsayılan `9`) : Her Framepack örneklem penceresinde üretilen gizli 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 görüntüye 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. | |
| true_cfg_scale (`float`, *opsiyonel*, varsayılan 1.0) : > 1.0 olduğunda ve bir `negative_prompt` sağlandığında, gerçek sınıflandırıcı-ücretsiz yönlendirmeyi (true classifier-free guidance) etkinleştirir. | |
| guidance_scale (`float`, varsayılan `6.0`) : [Classifier-Free Diffusion Guidance](https://huggingface.co/papers/2207.12598)'de tanımlandığı gibi yönlendirme ölçeği. `guidance_scale`, [Imagen Paper](https://huggingface.co/papers/2205.11487)'deki 2. denklemindeki `w` olarak tanımlanır. Yönlendirme ölçeği, `guidance_scale > 1` olarak ayarlanarak etkinleştirilir. Daha yüksek yönlendirme ölçeği, genellikle daha düşük görüntü kalitesi pahasına, `prompt` ile yakından ilişkili görüntülerin üretilmesini teşvik eder. Not: Kullanılabilir tek HunyuanVideo modeli CFG-distilled'dır; bu, koşulsuz ve koşullu latentler arasında geleneksel yönlendirmenin uygulanmadığı anlamına gelir. | |
| num_videos_per_prompt (`int`, *isteğe bağlı*, varsayılan 1) : Her istem için üretilecek görsel 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). | |
| image_latents (`torch.Tensor`, *isteğe bağlı*) : Önceden kodlanmış görüntü latentleri. Sağlanmazsa, görüntü VAE kullanılarak kodlanır. | |
| last_image_latents (`torch.Tensor`, *isteğe bağlı*) : Ön kodlanmış son görüntü latentleri. Sağlanmazsa, son görüntü VAE kullanılarak kodlanır. | |
| 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. | |
| pooled_prompt_embeds (`torch.FloatTensor`, *isteğe bağlı*) : Önceden oluşturulmuş havuzlanmış metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, havuzlanmış metin gömme değerleri `prompt` girdi argümanından oluşturulur. | |
| negative_prompt_embeds (`torch.FloatTensor`, *isteğe bağlı*) : Önceden 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_pooled_prompt_embeds (`torch.FloatTensor`, *isteğe bağlı*) : Ön oluşturulmuş negatif havuzlanmış metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, havuzlanmış negative_prompt_embeds, `negative_prompt` girdi argümanından oluşturulacaktır. | |
| prompt_attention_mask (`torch.Tensor`, *isteğe bağlı*) : `prompt_embeds` için dikkat maskesi. `prompt_embeds` doğrudan geçirildiğinde zorunludur. | |
| negative_prompt_attention_mask (`torch.Tensor`, *isteğe bağlı*) : `negative_prompt_embeds` için dikkat maskesi. `negative_prompt_embeds` doğrudan geçirildiğinde zorunludur. | |
| output_type (`str`, *isteğe bağlı*, varsayılan `"pil"`) : Üretilen görüntünün çıktı biçimi. `PIL.Image` veya `np.array` arasında seçim yapın. | |
| return_dict (`bool`, *isteğe bağlı*, varsayılan `True`) : Düz bir tuple yerine `HunyuanVideoFramepackPipelineOutput` döndürülüp döndürülmemesi. | |
| 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üğü. | |
| prompt_template (`dict`, *isteğe bağlı*) : Kodlamadan önce istemi biçimlendirmek için kullanılan şablon. Varsayılan olarak modelin varsayılan şablonu kullanılır. | |
| max_sequence_length (`int`, *isteğe bağlı*, varsayılan 256) : İstek kodlayıcısı için kullanılacak maksimum dizi uzunluğu. | |
| sampling_type (`FramepackSamplingType`, *isteğe bağlı*) : Latent pencereler üzerinde iterasyon yaparken kullanılacak Framepack örneklemleme stratejisi. | |
| callback_on_step_end (`Callable`, `PipelineCallback`, `MultiPipelineCallbacks`, *opsiyonel*) : Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan, `PipelineCallback` veya `MultiPipelineCallbacks` alt sınıfı olan bir fonksiyon. Aşağıdaki argümanlarla çağrılır: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)`. `callback_kwargs`, `callback_on_step_end_tensor_inputs` tarafından belirtildiği üzere tüm tensörlerin listesini içerecektir. | |
| callback_on_step_end_tensor_inputs (`list`, *isteğe bağlı*) : `callback_on_step_end` işlevi için girdi tensörlerinin listesi. Listede belirtilen tensörler, `callback_kwargs` argümanı olarak geçirilir. Yalnızca pipeline sınıfınızın `._callback_tensor_inputs` özniteliğinde listelenen değişkenleri dahil edebilirsiniz. | |
| **Dönüş:** `~HunyuanVideoFramepackPipelineOutput` veya `tuple` | |
| `return_dict` `True` ise `HunyuanVideoFramepackPipelineOutput` döndürülür, aksi takdirde bir `tuple` döndürülür; bu yapının ilk öğesi üretilen görsellerin listesini, ikinci öğesi ise ilgili üretilen görselin "not-safe-for-work" (nsfw) içerip içermediğini gösteren `bool` değerlerinin listesini içerir. | |
| Üretim için pipeline'ın çağrı fonksiyonu. | |
| Örnekler: | |
| ##### Görüntüden Videoya | |
| ```python | |
| >>> import torch | |
| >>> from diffusers import HunyuanVideoFramepackPipeline, HunyuanVideoFramepackTransformer3DModel | |
| >>> from diffusers.utils import export_to_video, load_image | |
| >>> from transformers import SiglipImageProcessor, SiglipVisionModel | |
| >>> transformer = HunyuanVideoFramepackTransformer3DModel.from_pretrained( | |
| ... "lllyasviel/FramePackI2V_HY", torch_dtype=torch.bfloat16 | |
| ... ) | |
| >>> feature_extractor = SiglipImageProcessor.from_pretrained( | |
| ... "lllyasviel/flux_redux_bfl", subfolder="feature_extractor" | |
| ... ) | |
| >>> image_encoder = SiglipVisionModel.from_pretrained( | |
| ... "lllyasviel/flux_redux_bfl", subfolder="image_encoder", torch_dtype=torch.float16 | |
| ... ) | |
| >>> pipe = HunyuanVideoFramepackPipeline.from_pretrained( | |
| ... "hunyuanvideo-community/HunyuanVideo", | |
| ... transformer=transformer, | |
| ... feature_extractor=feature_extractor, | |
| ... image_encoder=image_encoder, | |
| ... torch_dtype=torch.float16, | |
| ... ) | |
| >>> pipe.vae.enable_tiling() | |
| >>> pipe.to("cuda") | |
| >>> image = load_image( | |
| ... "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/penguin.png" | |
| ... ) | |
| >>> output = pipe( | |
| ... image=image, | |
| ... prompt="A penguin dancing in the snow", | |
| ... height=832, | |
| ... width=480, | |
| ... num_frames=91, | |
| ... num_inference_steps=30, | |
| ... guidance_scale=9.0, | |
| ... generator=torch.Generator().manual_seed(0), | |
| ... sampling_type="inverted_anti_drifting", | |
| ... ).frames[0] | |
| >>> export_to_video(output, "output.mp4", fps=30) | |
| ``` | |
| ##### İlk ve Son Görüntüden Video | |
| ```python | |
| >>> import torch | |
| >>> from diffusers import HunyuanVideoFramepackPipeline, HunyuanVideoFramepackTransformer3DModel | |
| >>> from diffusers.utils import export_to_video, load_image | |
| >>> from transformers import SiglipImageProcessor, SiglipVisionModel | |
| >>> transformer = HunyuanVideoFramepackTransformer3DModel.from_pretrained( | |
| ... "lllyasviel/FramePackI2V_HY", torch_dtype=torch.bfloat16 | |
| ... ) | |
| >>> feature_extractor = SiglipImageProcessor.from_pretrained( | |
| ... "lllyasviel/flux_redux_bfl", subfolder="feature_extractor" | |
| ... ) | |
| >>> image_encoder = SiglipVisionModel.from_pretrained( | |
| ... "lllyasviel/flux_redux_bfl", subfolder="image_encoder", torch_dtype=torch.float16 | |
| ... ) | |
| >>> pipe = HunyuanVideoFramepackPipeline.from_pretrained( | |
| ... "hunyuanvideo-community/HunyuanVideo", | |
| ... transformer=transformer, | |
| ... feature_extractor=feature_extractor, | |
| ... image_encoder=image_encoder, | |
| ... torch_dtype=torch.float16, | |
| ... ) | |
| >>> pipe.to("cuda") | |
| >>> prompt = "CG animation style, a small blue bird takes off from the ground, flapping its wings. The bird's feathers are delicate, with a unique pattern on its chest. The background shows a blue sky with white clouds under bright sunshine. The camera follows the bird upward, capturing its flight and the vastness of the sky from a close-up, low-angle perspective." | |
| >>> first_image = load_image( | |
| ... "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/flf2v_input_first_frame.png" | |
| ... ) | |
| >>> last_image = load_image( | |
| ... "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/flf2v_input_last_frame.png" | |
| ... ) | |
| >>> output = pipe( | |
| ... image=first_image, | |
| ... last_image=last_image, | |
| ... prompt=prompt, | |
| ... height=512, | |
| ... width=512, | |
| ... num_frames=91, | |
| ... num_inference_steps=30, | |
| ... guidance_scale=9.0, | |
| ... generator=torch.Generator().manual_seed(0), | |
| ... sampling_type="inverted_anti_drifting", | |
| ... ).frames[0] | |
| >>> export_to_video(output, "output.mp4", fps=30) | |
| ``` | |
| ## HunyuanVideoPipelineOutput[[diffusers.pipelines.hunyuan_video.pipeline_output.HunyuanVideoPipelineOutput]] | |
| #### diffusers.pipelines.hunyuan_video.pipeline_output.HunyuanVideoPipelineOutput[[diffusers.pipelines.hunyuan_video.pipeline_output.HunyuanVideoPipelineOutput]] | |
| ```python | |
| diffusers.pipelines.hunyuan_video.pipeline_output.HunyuanVideoPipelineOutput(frames: Tensor) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/hunyuan_video/pipeline_output.py#L11) | |
| **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. | |
| HunyuanVideo pipeline'leri için çıktı sınıfı. | |
Xet Storage Details
- Size:
- 26.8 kB
- Xet hash:
- 69eeb87e5683faf52c1920a10064df81c09e6a588b72751eecc75d105e93fe2f
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.