Buckets:

mishig's picture
|
download
raw
14.9 kB

IP-Adapter

IP-Adapter, bir difüzyon modelini görüntüyle yönlendirmeyi (prompting) mümkün kılan hafif bir adaptördür. Bu yöntem, görüntü ve metin özelliklerinin çapraz dikkat (cross-attention) katmanlarını birbirinden ayırır. Görüntü özellikleri, bir görüntü kodlayıcıdan (image encoder) üretilir.

Bir IP-Adapter kontrol noktası ve görüntüsünü nasıl yükleyip kullanacağınızı IP-Adapter kılavuzunda öğrenin.

IPAdapterMixin[[diffusers.loaders.IPAdapterMixin]]

diffusers.loaders.IPAdapterMixin[[diffusers.loaders.IPAdapterMixin]]

diffusers.loaders.IPAdapterMixin()

Kaynak

IP Adapter'ları işlemek için karışım (mixin).

load_ip_adapter[[diffusers.loaders.IPAdapterMixin.load_ip_adapter]]

load_ip_adapter(pretrained_model_name_or_path_or_dict: str | list[str] | dict[str, torch.Tensor], subfolder: str | list[str], weight_name: str | list[str], image_encoder_folder: str | None = 'image_encoder', **kwargs)

Kaynak

Parametreler:

pretrained_model_name_or_path_or_dict (str veya list[str] veya os.PathLike veya list[os.PathLike] veya dict veya list[dict]) : Şunlardan biri olabilir: - Hub'da barındırılan önceden eğitilmiş bir modelin model kimliği (örneğin google/ddpm-celebahq-256) olan bir dize. - ModelMixin.save_pretrained() ile kaydedilmiş model ağırlıklarını içeren bir dizin yolu (örneğin ./my_model_directory). - Bir torch state dict.

subfolder (str veya list[str]) : Hub'daki veya yerel bir model deposundaki daha büyük bir model deposu içindeki model dosyasının alt klasör konumu. Bir liste geçiriliyorsa, weight_name ile aynı uzunlukta olmalıdır.

weight_name (str veya list[str]) : Yüklenecek ağırlık dosyasının adı. Bir liste geçiriliyorsa, subfolder ile aynı uzunlukta olmalıdır.

image_encoder_folder (str, isteğe bağlı, varsayılan image_encoder) : Hub'daki veya yerel bir model deposundaki daha büyük bir modelin içindeki görüntü kodlayıcısının alt klasör konumu. Görüntü kodlayıcısını yüklememek için None geçirin. Görüntü kodlayıcı subfolder içinde bir klasörde konumlandırılmışsa, yalnızca görüntü kodlayıcı ağırlıklarını içeren klasörün adını geçmeniz yeterlidir, örneğin image_encoder_folder="image_encoder". Görüntü kodlayıcı subfolder dışında bir klasörde konumlandırılmışsa, görüntü kodlayıcı ağırlıklarını içeren klasöre giden yolu geçmelisiniz, örneğin image_encoder_folder="different_subfolder/image_encoder".

cache_dir (str | os.PathLike, isteğe bağlı) : Standart önbellek kullanılmıyorsa, indirilen önceden eğitilmiş model yapılandırmasının önbelleğe alındığı dizinin yolu.

force_download (bool, isteğe bağlı, varsayılan False) : Model ağırlıklarının ve yapılandırma dosyalarının (yeniden) indirilmesinin zorlanıp zorlanmayacağını belirler; önbellekteki sürümler varsa bunların üzerine yazar.

proxies (dict[str, str], isteğe bağlı) : Protokol veya uç nokta bazında kullanılacak vekil sunucuların sözlüğü, örneğin {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Vekiller her istekte kullanılır.

local_files_only (bool, isteğe bağlı, varsayılan False) : Sadece yerel model ağırlıklarının ve yapılandırma dosyalarının yüklenip yüklenmeyeceğini belirtir. True olarak ayarlanırsa, model Hub'dan indirilmez.

token (str veya bool, isteğe bağlı) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. True ise, diffusers-cli login ile oluşturulan jeton (~/.huggingface içinde saklanır) kullanılır.

revision (str, isteğe bağlı, varsayılan "main") : Kullanılacak belirli model sürümü. Bir dal adı, etiket adı, commit kimliği veya Git tarafından izin verilen herhangi bir tanımlayıcı olabilir.

low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak PyTorch sürümü >= 1.9.0 ise True, aksi halde False) : Ağırlıkları başlatmadan yalnızca önceden eğitilmiş ağırlıkları yükleyerek model yüklemesini hızlandırır. Bu, model yüklenirken (tepe bellek dahil) CPU belleğinde model boyutunun 1 katından fazlasını kullanmamaya da çalışır. Yalnızca PyTorch >= 1.9.0 için desteklenir. PyTorch'un daha eski bir sürümünü kullanıyorsanız, bu argümanı True olarak ayarlamak bir hata verecektir.

set_ip_adapter_scale[[diffusers.loaders.IPAdapterMixin.set_ip_adapter_scale]]

set_ip_adapter_scale(scale)

Kaynak

IP-Adapter ölçekleri, dönüştürücü bloğu başına ayarlanır. Girdi scale, her bir IP-Adapter davranışı üzerinde ince kontrol için tek bir yapılandırma veya yapılandırma listesi olabilir. Bir yapılandırma, bir ondalık sayı veya sözlük olabilir.

Örnek:

# To use original IP-Adapter
scale = 1.0
pipeline.set_ip_adapter_scale(scale)

# To use style block only
scale = {
    "up": {"block_0": [0.0, 1.0, 0.0]},
}
pipeline.set_ip_adapter_scale(scale)

# To use style+layout blocks
scale = {
    "down": {"block_2": [0.0, 1.0]},
    "up": {"block_0": [0.0, 1.0, 0.0]},
}
pipeline.set_ip_adapter_scale(scale)

# To use style and layout from 2 reference images
scales = [{"down": {"block_2": [0.0, 1.0]}}, {"up": {"block_0": [0.0, 1.0, 0.0]}}]
pipeline.set_ip_adapter_scale(scales)

unload_ip_adapter[[diffusers.loaders.IPAdapterMixin.unload_ip_adapter]]

unload_ip_adapter()

Kaynak

IP Adapter ağırlıklarını boşaltır

Örnekler:

>>> # Assuming `pipeline` is already loaded with the IP Adapter weights.
>>> pipeline.unload_ip_adapter()
>>> ...

SD3IPAdapterMixin[[diffusers.loaders.SD3IPAdapterMixin]]

diffusers.loaders.SD3IPAdapterMixin[[diffusers.loaders.SD3IPAdapterMixin]]

diffusers.loaders.SD3IPAdapterMixin()

Kaynak

StableDiffusion 3 IP Adapters'ı işlemek için karışım (mixin).

is_ip_adapter_active[[diffusers.loaders.SD3IPAdapterMixin.is_ip_adapter_active]]

is_ip_adapter_active()

Kaynak

Dönüş: bool

IP-Adapter yüklendiğinde ve herhangi bir katmanın ölçeği > 0 olduğunda doğru.

IP-Adapter'ın yüklendiğini ve ölçeğin > 0 olduğunu kontrol eder.

IP-Adapter ölçeği, görsel istemin metin istimine kıyasla etkisini kontrol eder. Bu değer 0 olarak ayarlandığında, görsel bağlam önemsizdir.

load_ip_adapter[[diffusers.loaders.SD3IPAdapterMixin.load_ip_adapter]]

load_ip_adapter(pretrained_model_name_or_path_or_dict: str | dict[str, torch.Tensor], weight_name: str = 'ip-adapter.safetensors', subfolder: str | None = None, image_encoder_folder: str | None = 'image_encoder', **kwargs)

Kaynak

Parametreler:

pretrained_model_name_or_path_or_dict (str veya os.PathLike veya dict) : Şunlardan biri olabilir: - Hub'da barındırılan önceden eğitilmiş bir modelin model kimliği (örneğin google/ddpm-celebahq-256). - ModelMixin.save_pretrained() ile kaydedilmiş model ağırlıklarını içeren bir dizin yolu (örneğin ./my_model_directory). - Bir torch state dict.

weight_name (str, varsayılan "ip-adapter.safetensors") : Yükenecek ağırlık dosyasının adı. Bir liste geçiriliyorsa, subfolder ile aynı uzunlukta olmalıdır.

subfolder (str, isteğe bağlı) : Hub'daki veya yerel bir model deposundaki daha büyük bir model deposu içindeki model dosyasının alt klasör konumu. Bir liste geçiriliyorsa, weight_name ile aynı uzunlukta olmalıdır.

image_encoder_folder (str, isteğe bağlı, varsayılan image_encoder) : Hub'daki veya yerel bir model deposundaki daha büyük bir modelin içindeki görüntü kodlayıcısının alt klasör konumu. Görüntü kodlayıcısını yüklememek için None geçirin. Görüntü kodlayıcı subfolder içinde bir klasörde konumlandırılmışsa, yalnızca görüntü kodlayıcı ağırlıklarını içeren klasörün adını geçmeniz yeterlidir, örneğin image_encoder_folder="image_encoder". Görüntü kodlayıcı subfolder dışında bir klasörde konumlandırılmışsa, görüntü kodlayıcı ağırlıklarını içeren klasöre giden yolu geçmelisiniz, örneğin image_encoder_folder="different_subfolder/image_encoder".

cache_dir (str | os.PathLike, isteğe bağlı) : Standart önbellek kullanılmıyorsa, indirilen önceden eğitilmiş model yapılandırmasının önbelleğe alındığı dizinin yolu.

force_download (bool, isteğe bağlı, varsayılan False) : Model ağırlıklarının ve yapılandırma dosyalarının (yeniden) indirilmesinin zorlanıp zorlanmayacağını belirler; önbellekteki sürümler varsa bunların üzerine yazar.

proxies (dict[str, str], isteğe bağlı) : Protokol veya uç nokta bazında kullanılacak vekil sunucuların sözlüğü, örneğin {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Vekiller her istekte kullanılır.

local_files_only (bool, isteğe bağlı, varsayılan False) : Sadece yerel model ağırlıklarının ve yapılandırma dosyalarının yüklenip yüklenmeyeceğini belirtir. True olarak ayarlanırsa, model Hub'dan indirilmez.

token (str veya bool, isteğe bağlı) : Uzaktaki dosyalar için HTTP bearer yetkilendirmesi olarak kullanılacak jeton. True ise, diffusers-cli login ile oluşturulan jeton (~/.huggingface içinde saklanır) kullanılır.

revision (str, isteğe bağlı, varsayılan "main") : Kullanılacak belirli model sürümü. Bir dal adı, etiket adı, commit kimliği veya Git tarafından izin verilen herhangi bir tanımlayıcı olabilir.

low_cpu_mem_usage (bool, isteğe bağlı, varsayılan olarak PyTorch sürümü >= 1.9.0 ise True, aksi halde False) : Ağırlıkları başlatmadan yalnızca önceden eğitilmiş ağırlıkları yükleyerek model yüklemesini hızlandırır. Bu, model yüklenirken (tepe bellek dahil) CPU belleğinde model boyutunun 1 katından fazlasını kullanmamaya da çalışır. Yalnızca PyTorch >= 1.9.0 için desteklenir. PyTorch'un daha eski bir sürümünü kullanıyorsanız, bu argümanı True olarak ayarlamak bir hata verecektir.

set_ip_adapter_scale[[diffusers.loaders.SD3IPAdapterMixin.set_ip_adapter_scale]]

set_ip_adapter_scale(scale: float)

Kaynak

Parametreler:

scale (float) : Ayarlanacak IP-Adapter ölçeği.

Görsel istem koşullandırmasını kontrol eden IP-Adapter ölçeğini ayarlayın. 1.0 değeri, modelin yalnızca görsel istemle koşullandırıldığını; 0.0 değeri ise yalnızca metin istemiyle koşullandırıldığını ifade eder. Bu değerin düşürülmesi, modelin daha çeşitli görseller üretmesini teşvik eder ancak bu görsellerin görsel istemle uyumu daha düşük olabilir.

Örnek:

>>> # Assuming `pipeline` is already loaded with the IP Adapter weights.
>>> pipeline.set_ip_adapter_scale(0.6)
>>> ...

unload_ip_adapter[[diffusers.loaders.SD3IPAdapterMixin.unload_ip_adapter]]

unload_ip_adapter()

Kaynak

IP Adapter ağırlıklarını boşaltır.

Örnek:

>>> # Assuming `pipeline` is already loaded with the IP Adapter weights.
>>> pipeline.unload_ip_adapter()
>>> ...

IPAdapterMaskProcessor[[diffusers.IPAdapterMaskProcessor]]

diffusers.IPAdapterMaskProcessor[[diffusers.IPAdapterMaskProcessor]]

diffusers.IPAdapterMaskProcessor(do_resize: bool = True, vae_scale_factor: int = 8, resample: str = 'lanczos', do_normalize: bool = False, do_binarize: bool = True, do_convert_grayscale: bool = True)

Kaynak

Parametreler:

do_resize (bool, isteğe bağlı, varsayılan True) : Görselin (yükseklik, genişlik) boyutlarının vae_scale_factor'ün katlarına ölçeklendirilip ölçeklendirilmeyeceğini belirtir.

vae_scale_factor (int, isteğe bağlı, varsayılan 8) : VAE ölçekleme faktörü. do_resize True ise, görüntü bu faktörün katlarına otomatik olarak yeniden boyutlandırılır.

resample (str, isteğe bağlı, varsayılan lanczos) : Görsel yeniden boyutlandırılırken kullanılacak yeniden örnekleme filtresi.

do_normalize (bool, isteğe bağlı, varsayılan False) : Görüntünün [-1,1] aralığına normalize edilip edilmeyeceğini belirtir.

do_binarize (bool, isteğe bağlı, varsayılan True) : Görselin 0/1 olarak ikileştirilip ikileştirilmeyeceğini belirtir.

do_convert_grayscale (bool, isteğe bağlı, varsayılan olarak True) : Görsellerin gri tonlamalı formata dönüştürülüp dönüştürülmeyeceğini belirtir.

IP Adapter görüntü maskeleri için görüntü işleyici.

downsample[[diffusers.IPAdapterMaskProcessor.downsample]]

downsample(mask: Tensor, batch_size: int, num_queries: int, value_embed_dim: int)

Kaynak

Parametreler:

mask (torch.Tensor) : IPAdapterMaskProcessor.preprocess() ile oluşturulan giriş maskesi tensörü.

batch_size (int) : Toplu işlem boyutu.

num_queries (int) : Sorgu sayısı.

value_embed_dim (int) : Değer gömme boyutları.

Dönüş: torch.Tensor

Örnekleme azaltılmış maske tensörü.

Ölçekli nokta çarpımı dikkati için beklenen boyutlara uymak üzere sağlanan maske tensörünü indirger. Maske en-boy oranı, çıktı görüntüsünün en-boy oranıyla eşleşmiyorsa bir uyarı verilir.

Xet Storage Details

Size:
14.9 kB
·
Xet hash:
3843101ac1796a136208b24599c4833cfe7c244e51cfff8ef737ffd5b4c61a61

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.