Spaces:
Runtime error
Runtime error
| # Importa a biblioteca Gradio (para criar a interface web) | |
| import gradio as gr | |
| # Importa a função 'pipeline' (a forma mais fácil de usar um modelo do HF) | |
| from transformers import pipeline | |
| # 1. Carregar o "Cérebro" da IA | |
| # Vamos usar o modelo de classificação de imagem padrão do Google (ViT) | |
| # O pipeline cuida de todo o pré-processamento para nós! | |
| classifier = pipeline("image-classification", model="google/vit-base-patch16-224") | |
| # 2. Definir a Função de Previsão | |
| # Esta é a função que será chamada toda vez que o usuário enviar uma imagem. | |
| def predict(imagem_do_usuario): | |
| # O 'classifier' processa a imagem... | |
| predictions = classifier(imagem_do_usuario) | |
| # ...e retorna uma lista de previsões. | |
| # Vamos formatar isso para o Gradio entender: | |
| # Ex: [{'label': 'gato egípcio', 'score': 0.8}, {'label': 'outro gato', 'score': 0.1}] | |
| # Transforma em: {'gato egípcio': 0.8, 'outro gato': 0.1} | |
| return {p['label']: p['score'] for p in predictions} | |
| # 3. Criar a Interface Gráfica | |
| # Aqui nós dizemos ao Gradio quais componentes usar. | |
| iface = gr.Interface( | |
| fn=predict, # A função que deve ser chamada | |
| inputs=gr.Image(label="Faça o upload da sua imagem"), # Componente de entrada | |
| outputs=gr.Label(num_top_classes=3, label="Previsões"), # Componente de saída | |
| # Textos de ajuda | |
| title="Meu Primeiro App de IA 🚀", | |
| description="Este app foi construído com Gradio e Hugging Face. Ele usa o modelo 'ViT' do Google para adivinhar o que está na foto.", | |
| # Exemplos para o usuário clicar | |
| # Alterado para usar os arquivos locais (cats.jpg, dogs.jpg) que fizemos upload, | |
| # em vez de usar URLs remotas, o que causava o erro 401. | |
| examples=[ | |
| ["cats.jpg"], | |
| ["dogs.jpg"] | |
| ] | |
| ) | |
| # 4. Lançar o App! | |
| iface.launch() |