ByteDream / UPLOAD_GUIDE_PT.md
Enzo8930302's picture
Upload folder using huggingface_hub
0e3999b verified

Correção do Erro e Atualização para Hugging Face

Problema Identificado

O erro ocorre porque o app.py está tentando carregar um modelo do Hugging Face que não existe ou não está configurado corretamente. O repositório Enzo8930302/ByteDream não contém o arquivo model_index.json necessário.


Solução Rápida

1️⃣ Execute o Script de Correção

python quick_fix.py

Este script vai:

  • Testar o pipeline com inicialização aleatória
  • Verificar se há modelos treinados
  • Mostrar o guia de upload para Hugging Face

Passo a Passo Completo

Etapa 1: Treinar o Modelo (Se ainda não fez)

python train.py --epochs 1000 --batch_size 4 --output_dir ./models/bytedream

Importante: Você precisa treinar o modelo antes de fazer upload!


Etapa 2: Instalar Dependências para Hugging Face

pip install huggingface_hub

Etapa 3: Login no Hugging Face

huggingface-cli login

Você precisa de um token de acesso. Para obter:

  1. Acesse: https://huggingface.co/settings/tokens
  2. Faça login na sua conta
  3. Clique em "Create new token"
  4. Copie o token gerado
  5. Cole no terminal quando solicitado

Não tem conta? Crie em: https://huggingface.co/join


Etapa 4: Fazer Upload do Modelo

Execute o comando abaixo, substituindo YourUsername pelo seu usuário real:

python upload_to_hf.py --repo_id "YourUsername/ByteDream" --create_space

Opções disponíveis:

  • --private: Torna o repositório privado (opcional)
  • --create_space: Cria arquivos para Hugging Face Spaces

Exemplo:

python upload_to_hf.py --repo_id "Enzo8930302/ByteDream" --create_space

Etapa 5: Verificar o Upload

Após o upload, visite:

https://huggingface.co/YourUsername/ByteDream

Estrutura do Repositório no Hugging Face

Seu repositório deve conter:

ByteDream/
├── unet_pytorch_model.bin    # Pesos do modelo UNet
├── config.yaml               # Configuração
├── README.md                 # Documentação
├── requirements.txt          # Dependências
└── app.py                    # Interface Gradio (para Spaces)

Como Usar o Modelo Após o Upload

Opção 1: Via Código Python

from bytedream.generator import ByteDreamGenerator

# Carregar do Hugging Face
generator = ByteDreamGenerator(
    model_path="path/to/downloaded/model",
    config_path="config.yaml",
    device="cpu"
)

# Gerar imagem
image = generator.generate(
    prompt="A beautiful sunset over mountains",
    width=512,
    height=512,
    num_inference_steps=50,
)

image.save("output.png")

Opção 2: Via Linha de Comando

python infer.py --prompt "Cyberpunk city at night" --output city.png

Opção 3: Interface Web

python app.py

A interface web estará disponível em: http://localhost:7860


Criando um Hugging Face Space

Spaces permitem que outros usem seu modelo via navegador.

Passos:

  1. Prepare os arquivos:

    python upload_to_hf.py --repo_id "YourUsername/ByteDream" --create_space
    
  2. Acesse Spaces:

  3. Configure o Space:

    • Space name: ByteDream
    • SDK: Gradio
    • Visibility: Public ou Private
    • Hardware: CPU (Free tier funciona!)
  4. Faça upload dos arquivos:

    • Use a interface web do Spaces
    • Ou faça push via git:
      git clone https://huggingface.co/spaces/YourUsername/ByteDream
      cd ByteDream
      # Copie os arquivos necessários
      git add .
      git commit -m "Initial commit"
      git push
      
  5. Aguarde o deploy:

    • O Space será construído automaticamente
    • Quando estiver pronto, você receberá uma URL pública

Troubleshooting

Erro: "404 Client Error - Entry Not Found"

Causa: O repositório não existe ou está vazio.

Solução:

  1. Certifique-se de ter feito login: huggingface-cli login
  2. Verifique se o nome do repositório está correto
  3. Faça o upload do modelo primeiro

Erro: "Model not loaded"

Causa: Os pesos do modelo não foram encontrados.

Solução:

  1. Treine o modelo: python train.py
  2. Ou baixe pesos pré-treinados do Hugging Face

Erro: "Token invalid"

Causa: Token do Hugging Face expirado ou incorreto.

Solução:

  1. Faça logout: huggingface-cli logout
  2. Gere novo token em: https://huggingface.co/settings/tokens
  3. Faça login novamente: huggingface-cli login

Dicas Importantes

1. Tamanho do Modelo

  • Modelos grandes podem demorar para fazer upload
  • Considere usar repositórios privados durante desenvolvimento

2. Hardware no Spaces

  • CPU Free: 2 vCPU, 16GB RAM (suficiente para testes)
  • GPU: Requer upgrade pago (mais rápido para geração)

3. Otimização

  • Use num_inference_steps=20-30 para previews rápidos
  • Use num_inference_steps=50-75 para qualidade final
  • Reduza a resolução (256x256) para testes

Próximos Passos

  1. ✅ Execute python quick_fix.py para testar
  2. 📚 Treine o modelo com seus dados
  3. 🚀 Faça upload para Hugging Face
  4. 🎨 Crie um Space para demonstração
  5. 📢 Compartilhe com a comunidade!

Links Úteis


Precisa de Ajuda?

Abra uma issue no GitHub ou entre em contato:


Boa sorte com seu modelo! 🎨✨