--- title: Chatbot Cascata Fmu emoji: 🚀 colorFrom: red colorTo: red sdk: gradio sdk_version: 5.32.1 app_file: app.py pinned: false license: mit short_description: 'chatbot com 2 resposta e 1 arbitro ' --- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference # 🤖 Chatbot em Cascata – Projeto Acadêmico ## 📝 Descrição Este projeto implementa um chatbot em português baseado em arquitetura **em cascata**, onde dois modelos diferentes geram respostas a partir de um prompt do usuário, e um terceiro modelo atua como **árbitro**, escolhendo a melhor resposta com base em critérios objetivos. O web app foi desenvolvido utilizando **Gradio** e está hospedado no **Hugging Face Spaces**. ## 🚧 Funcionamento do Sistema 1. **Usuário insere uma pergunta (prompt).** 2. **Dois modelos geradores** processam o prompt e produzem **duas respostas independentes**. 3. **Um terceiro modelo (árbitro)** analisa as duas respostas e seleciona a que melhor atende aos critérios definidos. 4. **A resposta escolhida é exibida ao usuário**, juntamente com as duas respostas e a justificativa da escolha. ## ⚙️ Modelos Utilizados ### 📤 Modelos Geradores 1. **pierreguillou/gpt2-small-portuguese** - Baseado no GPT-2, treinado especificamente em português. - Modelo leve (124M parâmetros), ideal para ambientes com 2vCPU e 16GB RAM. - Utilizado para gerar texto de maneira autônoma e fluente em português. > Ambos os geradores usam o mesmo modelo neste exemplo, mas podem ser trocados por versões distintas. ### ⚖️ Modelo Árbitro - **neuralmind/bert-base-portuguese-cased** - Versão do BERT treinada em português brasileiro. - Utilizado para comparar o prompt com cada resposta, avaliando **clareza**, **relevância** e **coerência**. ## 📊 Critérios de Avaliação do Árbitro | Critério | Definição | |--------------|-------------------------------------------------------------------------| | Clareza | A resposta está bem formulada e compreensível? | | Relevância | A resposta realmente responde ao prompt do usuário? | | Coerência | A resposta é lógica e gramaticalmente correta? | > A avaliação é feita através da **similaridade semântica** entre o prompt e cada resposta. ## 🖥️ Requisitos de Hardware - CPU: 2 vCPU - RAM: 16 GB - Armazenamento: suficiente para carregar 3 modelos pequenos ## 🌐 Tecnologias Utilizadas - [Gradio](https://www.gradio.app/) - [Hugging Face Transformers](https://huggingface.co/docs/transformers/index) - [Hugging Face Spaces](https://huggingface.co/spaces) - PyTorch ## 🚀 Executando Localmente ```bash git clone https://huggingface.co/spaces/SlickSlick/Chatbot-cascata-fmu cd Chatbot-cascata-fmu pip install -r requirements.txt python app.py ``` ## 🧪 Exemplos de Uso **Prompt:** "Qual é a capital do Brasil?" - **Resposta 1:** "A capital do Brasil é Brasília." - **Resposta 2:** "Rio de Janeiro é uma cidade importante do Brasil." - **Escolhida pelo Árbitro:** Resposta 1 - **Justificativa:** Resposta 1 é mais clara, direta e responde exatamente à pergunta. ## 📬 Contato e Autoria - **Gabriel dos Reis Rodrigues Dias – RA: 1667287** - **Gabriela Cristinne Silveira – RA: 1789243** - **Gustavo Dallago Ferreira – RA: 1415518** **Curso:** Ciência da Computação **Universidade:** Centro Universitário das Faculdades Metropolitanas Unidas – FMU **Professor:** Renè Teixeira