1
resposta

[Projeto] criando a aplicação e adicionando ao Spaces

ETAPA 1 — Criar o Script Python
1️ Instalar dependências
pip instalar transformadores gradio tocha travesseiro
2️ Criar arquivoapp.py

import gradio as gr
from transformers import pipeline
from PIL import Image

Carrega o modelo uma única vez (boa prática)

pipe = pipeline(
"image-segmentation",
model="briaai/RMBG-1.4",
trust_remote_code=True
)

def remove_background(image):
resultado = pipe(image)
return resultado

app = gr.Interface(
fn=remove_background,
inputs=gr.Image(type="pil"),
outputs=gr.Image(type="pil", format="png"),
title="Remoção Automática de Background",
description="Envie uma imagem e o fundo será removido automaticamente."
)

if name == "main":
app.launch()

ETAPA 3 — Publicar no Hugging Face Spaces
1️ Criar conta (se ainda não tiver)

Acesse:
https://huggingface.co

2️ Criar novo Espaço

Clique em Novo Espaço

Nomeie seu projeto

Clique em Criar Espaço

3️ Enviar arquivos

Envie:

app.py

requirements.txt

1 resposta

Oi, Moacir! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Curti a boa prática de carregar o modelo uma única vez com pipeline() e a organização por etapas para subir no Spaces. Neste ponto, só vale ajustar dois detalhes comuns: no requirements.txt use os nomes corretos dos pacotes (transformers, gradio, torch, pillow) e, no final do arquivo, a condição deve ser if __name__ == "__main__": para o app iniciar certinho.

Uma dica interessante para o futuro é tratar o retorno do pipe, porque ele pode vir como lista/dict; aí você garante que volta uma imagem PNG sem surpresa. Veja este exemplo:


def remove_background(image):
    result = pipe(image)
    if isinstance(result, list):
        result = result[0]
    return result.get("image", image)

Esse código pega o resultado do modelo e devolve result["image"] (quando existir). Se vier em lista, ele usa o primeiro item.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!