Uma biblioteca de modelos de IA generativa desenvolvida pela Stability AI, incluindo Stable Diffusion XL, Stable Video Diffusion e vários outros modelos de geração de imagem e vídeo.

MITPythongenerative-modelsStability-AI 26.3k Last Updated: May 20, 2025

Detalhes do Projeto de Modelos Generativos da Stability AI

Visão Geral do Projeto

A biblioteca de modelos generativos da Stability AI é um projeto de código aberto que oferece uma variedade de modelos de IA generativos avançados, incluindo geração de imagens, geração de vídeos e síntese multi-view. O projeto adota um design modular, suportando o treinamento e a inferência de vários modelos de difusão.

Principais Características

1. Arquitetura Modular

  • Abordagem Orientada à Configuração: Construção e combinação de sub-módulos através da chamada da função instantiate_from_config()
  • Classe de Modelo de Difusão Limpa: Refatoração de LatentDiffusion para DiffusionEngine
  • Tratamento Unificado de Condições: A classe GeneralConditioner lida com todos os tipos de entradas condicionais

2. Arquitetura de Modelo Aprimorada

  • Framework de Denoiser: Suporta modelos de tempo contínuo e tempo discreto
  • Samplers Independentes: Separação do guiador do sampler
  • Modelo de Auto-Codificação Limpo: Arquitetura de codificador otimizada

Modelos Suportados

Série SDXL (Stable Diffusion XL)

  • SDXL-base-1.0: Modelo base, suporta geração de imagens com resolução de 1024x1024
  • SDXL-refiner-1.0: Modelo de refinamento, usado para pós-processamento de imagens
  • SDXL-Turbo: Modelo de geração rápida

Série SVD (Stable Video Diffusion)

  • SVD: Modelo de imagem para vídeo, gera vídeos de 14 frames com resolução de 576x1024
  • SVD-XT: Versão estendida, suporta geração de 25 frames

Série SV3D (Stable Video 3D)

  • SV3D_u: Geração de vídeo orbital baseada em imagem única
  • SV3D_p: Suporta geração de vídeo 3D com caminho de câmera especificado

Série SV4D (Stable Video 4D)

  • SV4D: Modelo de difusão de vídeo para 4D, usado para síntese de vídeo de nova perspectiva
  • Gera 40 frames (5 frames de vídeo × 8 perspectivas de câmera) com resolução de 576x576

Arquitetura Técnica

Framework de Denoiser

  • Modelos de Tempo Contínuo: Suporta amostragem de tempo mais flexível
  • Modelos de Tempo Discreto: Caso especial de modelos de difusão tradicionais
  • Componentes Configuráveis:
    • Peso da função de perda (denoiser_weighting.py)
    • Pré-condicionamento da rede (denoiser_scaling.py)
    • Amostragem de nível de ruído (sigma_sampling.py)

Instalação e Uso

Requisitos de Ambiente

  • Python 3.10+
  • PyTorch 2.0+
  • GPU com suporte CUDA

Passos de Instalação

git clone https://github.com/Stability-AI/generative-models.git
cd generative-models

# Criar ambiente virtual
python3 -m venv .pt2
source .pt2/bin/activate

# Instalar dependências
pip3 install -r requirements/pt2.txt
pip3 install .
pip3 install -e git+https://github.com/Stability-AI/datapipelines.git@main#egg=sdata

Início Rápido

Geração de Imagem a partir de Texto (SDXL)

# Baixar os pesos do modelo para a pasta checkpoints/
# Executar a demonstração do Streamlit
streamlit run scripts/demo/sampling.py --server.port <your_port>

Geração de Vídeo a partir de Imagem (SVD)

# Baixar o modelo SVD
# Executar amostragem de vídeo simples
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png>

Síntese Multi-View (SV3D)

# SV3D_u (Vídeo Orbital)
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png> --version sv3d_u

# SV3D_p (Caminho de Câmera Especificado)
python scripts/sampling/simple_video_sample.py --input_path <path/to/image.png> --version sv3d_p --elevations_deg 10.0

Síntese de Vídeo 4D (SV4D)

python scripts/sampling/simple_video_sample_4d.py --input_path assets/sv4d_videos/test_video1.mp4 --output_folder outputs/sv4d

Configuração de Treinamento

Tipos de Treinamento Suportados

  • Modelos de Difusão em Nível de Pixel: Treinamento diretamente no espaço de pixels
  • Modelos de Difusão Latente: Treinamento no espaço latente, requer VAE pré-treinado
  • Modelos de Geração Condicional: Suporta várias condições, como texto, categorias, etc.

Exemplo de Treinamento

# Treinamento de geração condicional MNIST
python main.py --base configs/example_training/toy/mnist_cond.yaml

# Treinamento de texto para imagem
python main.py --base configs/example_training/txt2img-clipl.yaml

Processamento de Dados

Pipeline de Dados

  • Pipeline de dados para treinamento em larga escala
  • Arquivos tar no formato WebDataset
  • Suporte para conjuntos de dados Map-style

Formato de Dados

example = {
    "jpg": x, 
    "txt": "a beautiful image"  
}

Licença do Modelo

  • SDXL-1.0: Licença CreativeML Open RAIL++-M
  • SDXL-0.9: Licença de pesquisa
  • Série SVD: Licença para fins de pesquisa

Detecção de Marca D'água

O projeto usa a biblioteca invisible-watermark para incorporar marcas d'água invisíveis nas imagens geradas:

# Instalar o ambiente de detecção de marca d'água
python -m venv .detect
source .detect/bin/activate
pip install "numpy>=1.17" "PyWavelets>=1.1.1" "opencv-python>=4.1.0.25"
pip install --no-deps invisible-watermark

# Detectar marca d'água
python scripts/demo/detect.py <filename>

Características Técnicas

1. Geração de Alta Qualidade

  • SDXL suporta geração de imagens de alta resolução de 1024x1024
  • SVD suporta geração de vídeo de alta qualidade
  • SV3D/SV4D suporta síntese de vídeo multi-view e 4D

2. Controle de Condição Flexível

  • Suporta várias entradas de condição, como texto, imagem, vetores, etc.
  • Guiamento livre de classificador (Classifier-free Guidance)
  • Taxa de dropout condicional configurável

3. Técnicas de Amostragem Avançadas

  • Vários solucionadores numéricos
  • Número de passos de amostragem e métodos de discretização configuráveis
  • Suporte para wrappers de guiamento

4. Amigável à Pesquisa

  • Relatórios técnicos e artigos detalhados
  • Código fonte e pesos do modelo abertos
  • Suporte ativo da comunidade

Cenários de Aplicação

  1. Criação Artística: Geração de imagens artísticas a partir de texto
  2. Produção de Conteúdo: Geração de conteúdo de vídeo a partir de imagens
  3. Modelagem 3D: Geração de imagens multi-view
  4. Pesquisa e Desenvolvimento: Pesquisa de algoritmos de modelos de difusão
  5. Educação e Treinamento: Aprendizado de tecnologias de geração de IA

Vantagens do Projeto

  • Design Modular: Fácil de expandir e personalizar
  • Alto Desempenho: Código de treinamento e inferência otimizado
  • Suporte Multimodal: Várias tarefas de geração, como imagem, vídeo, 3D, etc.
  • Atualização Contínua: Lançamento regular de novos modelos e funcionalidades
  • Comunidade Ativa: Documentação e código de exemplo ricos

Este projeto representa a tecnologia mais avançada no campo da IA generativa, fornecendo aos pesquisadores e desenvolvedores ferramentas poderosas para explorar e aplicar tecnologias de IA generativa.

Star History Chart