Diffusers documentation

Visão geral

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Visão geral

🤗 O Diffusers oferece uma coleção de scripts de treinamento para você treinar seus próprios modelos de difusão. Você pode encontrar todos os nossos scripts de treinamento em diffusers/examples.

Cada script de treinamento é:

  • Autossuficiente: o script de treinamento não depende de nenhum arquivo local e todos os pacotes necessários para executar o script são instalados a partir do arquivo requirements.txt.
  • Fácil de ajustar: os scripts de treinamento são um exemplo de como treinar um modelo de difusão para uma tarefa específica e não funcionarão prontos para todos os cenários de treinamento. Provavelmente, você precisará adaptar o script de treinamento para o seu caso de uso específico. Para ajudá-lo com isso, expusemos completamente o código de pré-processamento de dados e o loop de treinamento para que você possa modificá-los para o seu próprio uso.
  • Fácil para iniciantes: os scripts de treinamento foram projetados para serem acessíveis e fáceis de entender, em vez de incluir os métodos mais avançados do estado da arte para obter os melhores e mais competitivos resultados. Qualquer método de treinamento que consideramos complexo demais é intencionalmente excluído.
  • Finalidade única: cada script de treinamento é projetado expressamente para apenas uma tarefa, a fim de mantê-lo legível e compreensível.

Nossa coleção atual de scripts de treinamento inclui:

TreinamentoSuporte a SDXLSuporte a LoRA
geração de imagem incondicional Open In Colab
texto-para-imagem👍👍
inversão textual Open In Colab
DreamBooth Open In Colab👍👍
ControlNet👍
InstructPix2Pix👍
Custom Diffusion
T2I-Adapters👍
Kandinsky 2.2👍

Esses exemplos são ativamente mantidos, então sinta-se à vontade para abrir uma issue caso não estejam funcionando como esperado. Se você acha que outro exemplo de treinamento deveria ser incluído, fique à vontade para iniciar uma Feature Request para discutir sua ideia de funcionalidade conosco e verificar se ela atende aos nossos critérios de ser autocontida, fácil de ajustar, amigável para iniciantes e de propósito único.

Instalar

Certifique-se de que você consegue executar com sucesso as versões mais recentes dos scripts de exemplo instalando a biblioteca a partir do código-fonte em um novo ambiente virtual:

git clone https://github.com/huggingface/diffusers
cd diffusers
pip install .

Em seguida, navegue até a pasta do script de treinamento (por exemplo, DreamBooth) e instale o arquivo requirements.txt. Alguns scripts de treinamento possuem um arquivo de requisitos específico para SDXL ou LoRA. Se você estiver usando um desses scripts, certifique-se de instalar o arquivo de requisitos correspondente.

cd examples/dreambooth
pip install -r requirements.txt
# to train SDXL with DreamBooth
pip install -r requirements_sdxl.txt

Para acelerar o treinamento e reduzir o uso de memória, recomendamos:

  • usando PyTorch 2.0 ou superior para usar automaticamente scaled dot product attention durante o treinamento (você não precisa fazer nenhuma alteração no código de treinamento)
  • instalando o xFormers para habilitar a atenção eficiente em memória
Update on GitHub