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. | |
| --> | |
| # CogView3Plus | |
| Tsinghua University & ZhipuAI'den Wendi Zheng, Jiayan Teng, Zhuoyi Yang, Weihan Wang, Jidong Chen, Xiaotao Gu, Yuxiao Dong, Ming Ding, Jie Tang tarafından [CogView3: Finer and Faster Text-to-Image Generation via Relay Diffusion](https://huggingface.co/papers/2403.05121) | |
| Makalenin özeti şudur: | |
| *Metinden görüntüye üretim sistemlerindeki son gelişmeler büyük ölçüde difüzyon modelleri tarafından yönlendirilmektedir. Ancak tek aşamalı metinden görüntüye difüzyon modelleri, hesaplama verimliliği ve görüntü detaylarının iyileştirilmesi açısından hâlâ zorluklarla karşı karşıyadır. Bu sorunu ele almak için, metinden görüntüye difüzyonun performansını artıran yenilikçi bir kademeli çerçeve olan CogView3'ü öneriyoruz. CogView3, metinden görüntüye üretim alanında röle difüzyonunu uygulayan ilk modeldir; görevi önce düşük çözünürlüklü görüntüler oluşturarak ve ardından röle tabanlı süper çözünürlük uygulayarak gerçekleştirir. Bu metodoloji yalnızca rekabetçi metinden görüntüye çıktıları üretmekle kalmaz, aynı zamanda hem eğitim hem de çıkarım maliyetlerini büyük ölçüde azaltır. Deneysel sonuçlarımız, CogView3'ün insan değerlendirmelerinde, mevcut en ileri düzey açık kaynak metinden görüntüye difüzyon modeli olan SDXL'i %77,0 oranında geride bıraktığını, tüm bunları yalnızca yaklaşık 1/2'si kadar çıkarım süresi gerektirerek başardığını göstermektedir. CogView3'ün damıtılmış varyantı, SDXL'in yalnızca 1/10'u kadar çıkarım süresi kullanarak benzer bir performans elde etmektedir.* | |
| > [!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. | |
| Bu pipeline [zRzRzRzRzRzRzR](https://github.com/zRzRzRzRzRzRzR) tarafından katkı sağlanmıştır. Orijinal kod tabanı [burada](https://huggingface.co/THUDM) bulunabilir. Orijinal ağırlıklar [hf.co/THUDM](https://huggingface.co/THUDM) altında bulunabilir. | |
| ## CogView3PlusPipeline[[diffusers.CogView3PlusPipeline]] | |
| #### diffusers.CogView3PlusPipeline[[diffusers.CogView3PlusPipeline]] | |
| ```python | |
| diffusers.CogView3PlusPipeline(tokenizer: T5Tokenizer, text_encoder: T5EncoderModel, vae: AutoencoderKL, transformer: CogView3PlusTransformer2DModel, scheduler: diffusers.schedulers.scheduling_ddim_cogvideox.CogVideoXDDIMScheduler | diffusers.schedulers.scheduling_dpm_cogvideox.CogVideoXDPMScheduler) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/cogview3/pipeline_cogview3plus.py#L118) | |
| **Parametreler:** | |
| vae ([AutoencoderKL](/docs/diffusers/main/tr/api/models/autoencoderkl#diffusers.AutoencoderKL)) : Görüntüleri gizil (latent) temsillere kodlamak ve bu temsillerden görüntülere çözmek için kullanılan Varyasyonel Oto-Kodlayıcı (VAE) Modeli. | |
| text_encoder (`T5EncoderModel`) : Donmuş metin kodlayıcı. CogView3Plus [T5](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5EncoderModel) kullanır; özellikle [t5-v1_1-xxl](https://huggingface.co/PixArt-alpha/PixArt-alpha/tree/main/t5-v1_1-xxl) varyantı. | |
| tokenizer (`T5Tokenizer`) : [T5Tokenizer](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5Tokenizer) sınıfının tokenizer'ı. | |
| transformer ([CogView3PlusTransformer2DModel](/docs/diffusers/main/tr/api/models/cogview3plus_transformer2d#diffusers.CogView3PlusTransformer2DModel)) : Kodlanmış görüntü latentlerini gürültüden arındırmak için metin koşullu bir `CogView3PlusTransformer2DModel`. | |
| scheduler ([SchedulerMixin](/docs/diffusers/main/tr/api/schedulers/overview#diffusers.SchedulerMixin)) : Kodlanmış görüntü latentlerini gürültüden arındırmak için `transformer` ile birlikte kullanılacak bir zamanlayıcı. | |
| CogView3Plus kullanılarak metinden görüntüye üretim hattı. | |
| Bu model [DiffusionPipeline](/docs/diffusers/main/tr/api/pipelines/overview#diffusers.DiffusionPipeline) sınıfından devralır. Kütüphanenin tüm pipeline'lar için uyguladığı genel yöntemler (indirme veya kaydetme, belirli bir cihazda çalıştırma vb.) için üst sınıf belgelendirmesine bakın. | |
| #### __call__[[diffusers.CogView3PlusPipeline.__call__]] | |
| ```python | |
| __call__(prompt: str | list[str] | None = None, negative_prompt: str | list[str] | None = None, height: int | None = None, width: int | None = None, num_inference_steps: int = 50, timesteps: list[int] | None = None, guidance_scale: float = 5.0, num_images_per_prompt: int = 1, eta: float = 0.0, generator: typing.Union[torch.Generator, list[torch.Generator], NoneType] = None, latents: typing.Optional[torch.FloatTensor] = None, prompt_embeds: typing.Optional[torch.FloatTensor] = None, negative_prompt_embeds: typing.Optional[torch.FloatTensor] = None, original_size: tuple[int, int] | None = None, crops_coords_top_left: tuple = (0, 0), output_type: str = 'pil', return_dict: bool = True, 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'], max_sequence_length: int = 224) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/cogview3/pipeline_cogview3plus.py#L407) | |
| **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 üretimi yönlendirmemek için kullanılan istem veya istemler. Tanımlanmazsa, bunun yerine `negative_prompt_embeds` parametresinin geçirilmesi gerekir. Yönlendirme kullanılmadığında (yani `guidance_scale` değeri `1`'den küçükse) yok sayılır. | |
| height (`int`, *isteğe bağlı*, varsayılan olarak self.transformer.config.sample_size * self.vae_scale_factor) : Üretilen görüntünün piksel cinsinden yüksekliği. Verilmezse 1024 olarak ayarlanır. | |
| width (`int`, *isteğe bağlı*, varsayılan olarak self.transformer.config.sample_size * self.vae_scale_factor) : Üretilen görüntünün piksel cinsinden genişliği. Belirtilmezse 1024 olarak ayarlanır. | |
| num_inference_steps (`int`, *isteğe bağlı*, 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. | |
| timesteps (`list[int]`, *isteğe bağlı*) : `set_timesteps` metodunda `timesteps` argümanını destekleyen zamanlayıcılarla gürültü azaltma süreci için kullanılacak özel zaman adımları. Tanımlanmamışsa, `num_inference_steps` geçirildiğinde varsayılan davranış kullanılacaktır. Azalan sırada olmalıdır. | |
| guidance_scale (`float`, *isteğe bağlı*, varsayılan `5.0`) : [Classifier-Free Diffusion Guidance](https://huggingface.co/papers/2207.12598)'de tanımlandığı üzere yönlendirme ölçeği. `guidance_scale`, [Imagen Paper](https://huggingface.co/papers/2205.11487)'daki 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. | |
| num_images_per_prompt (`int`, *isteğe bağlı*, varsayılan `1`) : Her istem için oluşturulacak görsel sayısı. | |
| eta (`float`, *isteğe bağlı*, varsayılan 0.0) : [DDIM](https://arxiv.org/abs/2010.02502) makalesindeki eta (η) parametresine karşılık gelir. Yalnızca [DDIMScheduler](/docs/diffusers/main/tr/api/schedulers/ddim#diffusers.DDIMScheduler) için geçerlidir ve diğer zamanlayıcılarda yok sayılır. | |
| generator (`torch.Generator` veya `list[torch.Generator]`, *isteğe bağlı*) : Üretimi deterministik hale getirmek için bir veya [torch üreteci(leri)](https://pytorch.org/docs/stable/generated/torch.Generator.html) listesi. | |
| latents (`torch.FloatTensor`, *isteğe bağlı*) : Görsel üretimi için girdi olarak kullanılacak, Gauss dağılımından örneklenmiş önceden oluşturulmuş gürültülü latensler. Farklı istemlerle aynı üretimi ayarlamak için kullanılabilir. Sağlanmazsa, sağlanan rastgele `generator` kullanılarak örneklemeye dayalı bir latens tensörü oluşturulur. | |
| prompt_embeds (`torch.FloatTensor`, *isteğe bağlı*) : Ön oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, 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. | |
| original_size (`tuple[int]`, *isteğe bağlı*, varsayılan (1024, 1024)) : `original_size`, `target_size` ile aynı değilse görüntü, küçültülmüş veya büyütülmüş gibi görünecektir. Belirtilmediği takdirde `original_size` varsayılan olarak `(height, width)` değerini alır. [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952) adresindeki makalenin 2.2 bölümünde açıklandığı üzere SDXL'in mikro-konumlama (micro-conditioning) bileşenidir. | |
| crops_coords_top_left (`tuple[int]`, *isteğe bağlı*, varsayılan (0, 0)) : `crops_coords_top_left`, `crops_coords_top_left` konumundan aşağıya doğru "kırpılmış" gibi görünen bir görüntü oluşturmak için kullanılabilir. Genellikle iyi merkezlenmiş, uygun görüntüler `crops_coords_top_left` değerini (0, 0) olarak ayarlayarak elde edilir. [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952) adresindeki 2.2 bölümünde açıklanan SDXL mikro-konumlama (micro-conditioning) bileşenidir. | |
| output_type (`str`, *isteğe bağlı*, varsayılan `"pil"`) : Üretilen görüntünün çıktı biçimi. [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.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 `~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput` döndürülecek mi? | |
| callback_on_step_end (`Callable`, *isteğe bağlı*) : Çıkarım sırasında her gürültü azaltma adımının sonunda çağrılan bir işlev. İşlev 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 belirtilen tüm tensörlerin listesini içerir. | |
| 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. | |
| max_sequence_length (`int`, varsayılan `224`) : Kodlanmış istemdeki maksimum dizi uzunluğu. Diğer değerlere ayarlanabilir ancak daha kötü sonuçlara yol açabilir. | |
| **Dönüş:** [CogView3PipelineOutput](/docs/diffusers/main/tr/api/pipelines/cogview3#diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput) veya `tuple` | |
| `return_dict` True ise [CogView3PipelineOutput](/docs/diffusers/main/tr/api/pipelines/cogview3#diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput), aksi halde `tuple`. Tuple döndürüldüğünde, ilk öğe üretilen görsellerin listesidir. | |
| Üretim için pipeline çağrıldığında tetiklenen işlev. | |
| Örnekler: | |
| ```python | |
| >>> import torch | |
| >>> from diffusers import CogView3PlusPipeline | |
| >>> pipe = CogView3PlusPipeline.from_pretrained("THUDM/CogView3-Plus-3B", torch_dtype=torch.bfloat16) | |
| >>> pipe.to("cuda") | |
| >>> prompt = "A photo of an astronaut riding a horse on mars" | |
| >>> image = pipe(prompt).images[0] | |
| >>> image.save("output.png") | |
| ``` | |
| #### encode_prompt[[diffusers.CogView3PlusPipeline.encode_prompt]] | |
| ```python | |
| encode_prompt(prompt: str | list[str], negative_prompt: str | list[str] | None = None, do_classifier_free_guidance: bool = True, num_images_per_prompt: int = 1, prompt_embeds: typing.Optional[torch.Tensor] = None, negative_prompt_embeds: typing.Optional[torch.Tensor] = None, max_sequence_length: int = 224, device: typing.Optional[torch.device] = None, dtype: typing.Optional[torch.dtype] = None) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/cogview3/pipeline_cogview3plus.py#L210) | |
| **Parametreler:** | |
| prompt (`str` veya `list[str]`, *isteğe bağlı*) : kodlanacak istem | |
| negative_prompt (`str` veya `list[str]`, *isteğe bağlı*) : Görsel üretimi yönlendirmemek için kullanılan istem veya istemler. Tanımlanmazsa, bunun yerine `negative_prompt_embeds` parametresinin geçirilmesi gerekir. Yönlendirme kullanılmadığında (yani `guidance_scale` değeri `1`'den küçükse) yok sayılır. | |
| do_classifier_free_guidance (`bool`, *isteğe bağlı*, varsayılan `True`) : Sınıflandırıcı serbest yönlendirmenin (classifier free guidance) kullanılıp kullanılmayacağı. | |
| num_images_per_prompt (`int`, *isteğe bağlı*, varsayılan 1) : Her istem için oluşturulması gereken görsel sayısı. Sonuç gömme vektörlerinin yerleştirileceği torch cihazı | |
| prompt_embeds (`torch.Tensor`, *isteğe bağlı*) : Ön oluşturulmuş metin gömme değerleri. Metin girdilerini kolayca ayarlamak için kullanılabilir, *ör.* istem ağırlıklandırması. Sağlanmazsa, metin gömme değerleri `prompt` girdi argümanından oluşturulur. | |
| 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. | |
| max_sequence_length (`int`, varsayılan `224`) : Kodlanmış istemdeki maksimum dizi uzunluğu. Diğer değerlere ayarlanabilir ancak daha kötü sonuçlara yol açabilir. | |
| device : (`torch.device`, *isteğe bağlı*): torch cihazı | |
| dtype : (`torch.dtype`, *isteğe bağlı*): torch dtype | |
| İsteği metin kodlayıcı gizli durumlarına kodlar. | |
| ## CogView3PipelineOutput[[diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput]] | |
| #### diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput[[diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput]] | |
| ```python | |
| diffusers.pipelines.cogview3.pipeline_output.CogView3PipelineOutput(images: list[PIL.Image.Image] | numpy.ndarray) | |
| ``` | |
| [Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/cogview3/pipeline_output.py#L10) | |
| **Parametreler:** | |
| images (`list[PIL.Image.Image]` veya `np.ndarray`) : `batch_size` uzunluğunda gürültüsü azaltılmış PIL görselleri listesi veya `(batch_size, height, width, num_channels)` biçiminde numpy dizisi. PIL görselleri veya numpy dizisi, difüzyon hattının gürültüsü azaltılmış görsellerini temsil eder. | |
| CogView3 pipeline'leri için çıktı sınıfı. | |
Xet Storage Details
- Size:
- 16.3 kB
- Xet hash:
- 065a43fbb9411dfd1fc32cc7db5d9945bef36f8bcefef27f5d46d87ba48ac52a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.