Diffusers documentation
Arquivos únicos
Arquivos únicos
O método from_single_file() permite carregar:
- um modelo armazenado em um único arquivo, o que é útil se você estiver trabalhando com modelos do ecossistema de difusão, como o Automatic1111, e depender comumente de um layout de arquivo único para armazenar e compartilhar modelos
- um modelo armazenado em seu layout de distribuição original, o que é útil se você estiver trabalhando com modelos ajustados com outros serviços e quiser carregá-lo diretamente em objetos de modelo e pipelines do Diffusers
Leia o guia Arquivos e layouts de modelos para saber mais sobre o layout multifolder do Diffusers em comparação com o layout de arquivo único, e como carregar modelos armazenados nesses diferentes layouts.
Pipelines suportados
- StableDiffusionPipeline
- StableDiffusionImg2ImgPipeline
- StableDiffusionInpaintPipeline
- StableDiffusionControlNetPipeline
- StableDiffusionControlNetImg2ImgPipeline
- StableDiffusionControlNetInpaintPipeline
- StableDiffusionUpscalePipeline
- StableDiffusionXLPipeline
- StableDiffusionXLImg2ImgPipeline
- StableDiffusionXLInpaintPipeline
- StableDiffusionXLInstructPix2PixPipeline
- StableDiffusionXLControlNetPipeline
StableDiffusionXLKDiffusionPipeline- StableDiffusion3Pipeline
- LatentConsistencyModelPipeline
- LatentConsistencyModelImg2ImgPipeline
StableDiffusionControlNetXSPipelineStableDiffusionXLControlNetXSPipeline- LEditsPPPipelineStableDiffusion
- LEditsPPPipelineStableDiffusionXL
PIAPipeline
Modelos suportados
- UNet2DConditionModel
StableCascadeUNet- AutoencoderKL
- ControlNetModel
- SD3Transformer2DModel
- FluxTransformer2DModel
FromSingleFileMixin
Carregue os pesos do modelo salvos no formato .ckpt em um DiffusionPipeline.
from_single_file
< source >( pretrained_model_link_or_path**kwargs )
Parâmetros
- pretrained_model_link_or_path (
strouos.PathLike, opcional) — Pode ser:- Um link para o arquivo
.ckpt(por exemplo"https://huggingface.co/<repo_id>/blob/main/<path_to_file>.ckpt") no Hub. - Um caminho para um arquivo contendo todos os pesos do pipeline.
- Um link para o arquivo
- dtype (
stroutorch.dtype, opcional) — Substitui otorch.dtypepadrão e carrega o modelo com outro dtype. - force_download (
bool, opcional, padrãoFalse) — Se deve forçar o (re-)download dos pesos do modelo e dos arquivos de configuração, sobrescrevendo as versões em cache, caso existam. - cache_dir (
str | os.PathLike, opcional) — Caminho para um diretório onde a configuração de um modelo pré-treinado baixado é armazenada em cache, caso o cache padrão não seja utilizado. - proxies (
dict[str, str], opcional) — Um dicionário de servidores proxy a serem usados por protocolo ou endpoint, por exemplo,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Os proxies são usados em cada solicitação. - local_files_only (
bool, opcional, padrãoFalse) — Se deve carregar apenas os pesos e arquivos de configuração do modelo localmente. Se definido comoTrue, o modelo não será baixado do Hub. - token (
strou bool, opcional) — O token a ser usado como autorização de bearer HTTP para arquivos remotos. SeTrue, o token gerado pordiffusers-cli login(armazenado em~/.huggingface) é utilizado. - revision (
str, opcional, padrão"main") — A versão específica do modelo a ser usada. Pode ser o nome de um branch, o nome de uma tag, um id de commit ou qualquer identificador permitido pelo Git. - original_config_file (
str, opcional) — O caminho para o arquivo de configuração original que foi usado para treinar o modelo. Se não for fornecido, o arquivo de configuração será inferido a partir do arquivo de checkpoint. - config (
str, opcional) — Pode ser:- Uma string, o repo id (por exemplo,
CompVis/ldm-text2im-large-256) de um pipeline pré-treinado hospedado no Hub. - Um caminho para um diretório (por exemplo,
./my_pipeline_directory/) contendo as configurações dos componentes do pipeline no formato Diffusers.
- Uma string, o repo id (por exemplo,
- disable_mmap (‘bool’, opcional, padrão ‘False’) — Se deve desabilitar o mmap ao carregar um modelo Safetensors. Essa opção pode ter um desempenho melhor quando o modelo está em uma montagem de rede ou em um disco rígido.
- kwargs (dicionário restante de argumentos de palavra-chave, opcional) —
Pode ser usado para sobrescrever variáveis de carregamento e salvamento (os componentes do pipeline da classe de pipeline específica). Os componentes sobrescritos são passados diretamente para o método
__init__dos pipelines. Veja o exemplo abaixo para mais informações.
Instancie um DiffusionPipeline a partir de pesos de pipeline pré-treinados salvos no formato .ckpt ou .safetensors. O pipeline é definido no modo de avaliação (model.eval()) por padrão.
Exemplos:
>>> from diffusers import StableDiffusionPipeline
>>> # Download pipeline from huggingface.co and cache.
>>> pipeline = StableDiffusionPipeline.from_single_file(
... "https://huggingface.co/WarriorMama777/OrangeMixs/blob/main/Models/AbyssOrangeMix/AbyssOrangeMix.safetensors"
... )
>>> # Download pipeline from local file
>>> # file is downloaded under ./v1-5-pruned-emaonly.ckpt
>>> pipeline = StableDiffusionPipeline.from_single_file("./v1-5-pruned-emaonly.ckpt")
>>> # Enable float16 and move to GPU
>>> pipeline = StableDiffusionPipeline.from_single_file(
... "https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5/blob/main/v1-5-pruned-emaonly.ckpt",
... torch_dtype=torch.float16,
... )
>>> pipeline.to("cuda")FromOriginalModelMixin
Carregue pesos pré-treinados salvos no formato .ckpt ou .safetensors em um modelo.
from_single_file
< source >( pretrained_model_link_or_path_or_dict: str | None = None**kwargs )
Parâmetros
- pretrained_model_link_or_path_or_dict (
str, opcional) — Pode ser:- Um link para o arquivo
.safetensorsou.ckpt(por exemplo"https://huggingface.co/<repo_id>/blob/main/<path_to_file>.safetensors") no Hub. - Um caminho para um arquivo local contendo os pesos do modelo de componente.
- Um state dict contendo os pesos do modelo do componente.
- Um link para o arquivo
- config (
str, opcional) —- Uma string, o repo id (por exemplo,
CompVis/ldm-text2im-large-256) de um pipeline pré-treinado hospedado no Hub. - Um caminho para um diretório (por exemplo,
./my_pipeline_directory/) contendo as configurações dos componentes do pipeline no formato Diffusers.
- Uma string, o repo id (por exemplo,
- subfolder (
str, opcional, padrão"") — A localização da subpasta de um arquivo de modelo dentro de um repositório de modelo maior no Hub ou localmente. - original_config (
str, opcional) — Dicionário ou caminho para um arquivo yaml contendo a configuração do modelo em seu formato original. Se um dicionário for fornecido, ele será usado para inicializar a configuração do modelo. - dtype (
torch.dtype, opcional) — Substitui otorch.dtypepadrão e carrega o modelo com outro dtype. - force_download (
bool, opcional, padrãoFalse) — Se deve forçar o (re-)download dos pesos do modelo e dos arquivos de configuração, sobrescrevendo as versões em cache, caso existam. - cache_dir (
str | os.PathLike, opcional) — Caminho para um diretório onde a configuração de um modelo pré-treinado baixado é armazenada em cache, caso o cache padrão não seja utilizado. - proxies (
dict[str, str], opcional) — Um dicionário de servidores proxy a serem usados por protocolo ou endpoint, por exemplo,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Os proxies são usados em cada solicitação. - local_files_only (
bool, opcional, padrãoFalse) — Se deve carregar apenas os pesos e os arquivos de configuração do modelo localmente. Se definido como True, o modelo não será baixado do Hub. - token (
strou bool, opcional) — O token a ser usado como autorização de bearer HTTP para arquivos remotos. SeTrue, o token gerado pordiffusers-cli login(armazenado em~/.huggingface) é utilizado. - revision (
str, opcional, padrão"main") — A versão específica do modelo a ser usada. Pode ser o nome de um branch, o nome de uma tag, um id de commit ou qualquer identificador permitido pelo Git. - low_cpu_mem_usage (
bool, opcional, padrãoTruese a versão do torch >= 1.9.0 e — is_accelerate_available() caso contrárioFalse): Acelera o carregamento do modelo carregando apenas os pesos pré-treinados e não inicializando os pesos. Isso também tenta não usar mais do que 1x o tamanho do modelo na memória de CPU (incluindo a memória de pico) durante o carregamento do modelo. Suportado apenas para PyTorch >= 1.9.0. Se você estiver usando uma versão mais antiga do PyTorch, definir este argumento comoTruecausará um erro. - disable_mmap (‘bool’, opcional, padrão ‘False’) — Se deve desabilitar o mmap ao carregar um modelo Safetensors. Essa opção pode ter um desempenho melhor quando o modelo está em uma montagem de rede ou em um disco rígido, que podem não lidar bem com a natureza de buscas aleatórias (seek) do mmap.
- kwargs (dicionário restante de argumentos de palavra-chave, opcional) —
Pode ser usado para sobrescrever variáveis de carregamento e salvamento (por exemplo, os componentes do pipeline da
classe de pipeline específica). Os componentes sobrescritos são passados diretamente para o método
__init__dos pipelines. Veja o exemplo abaixo para mais informações.
Instancie um modelo a partir de pesos pré-treinados salvos no formato original .ckpt ou .safetensors. O modelo
é definido no modo de avaliação (model.eval()) por padrão.