foxy-burger-nlp / README.md
MattosDev's picture
🍔 Foxy Burger NLP v2.0 - Multi-task model
570d454 verified
metadata
language:
  - pt
license: apache-2.0
tags:
  - text-classification
  - multi-task
  - intent-detection
  - sentiment-analysis
  - portuguese
  - customer-service
  - fast-food
  - chatbot
  - bert
  - BERTimbau
datasets:
  - MattosDev/foxy-burger-dataset
metrics:
  - accuracy
  - f1
pipeline_tag: text-classification
model-index:
  - name: foxy-burger-nlp
    results:
      - task:
          type: text-classification
          name: Intent Classification
        metrics:
          - name: Accuracy
            type: accuracy
            value: 0.997
          - name: F1 (weighted)
            type: f1
            value: 0.997

🍔 Foxy Burger NLP - Multi-Task Customer Service Model

Modelo multi-task para atendimento automatizado de fast food em Português Brasileiro.

Baseado no BERTimbau com 4 heads de classificação simultâneas.

🎯 Tasks

Task Classes Accuracy
Intenção 16 0.9970
Sentimento 5 0.5830
Urgência 4 0.6700
Escalação Humana 2 0.9990

📋 Intenções Suportadas (16)

Intenção Descrição
pedido_atrasado Cliente reclamando de atraso na entrega
pedido_errado Pedido veio errado ou incompleto
cancelamento Solicitação de cancelamento
status_pedido Consulta de status/rastreamento
consulta_cardapio Perguntas sobre o cardápio
consulta_preco Perguntas sobre preços/promoções
horario_funcionamento Horário de funcionamento
area_entrega Área/região de entrega
problema_pagamento Problemas com pagamento
fazer_pedido Cliente quer fazer um pedido
alterar_pedido Alteração de pedido existente
reclamacao_geral Reclamação geral
elogio Feedback positivo
problema_app Problemas técnicos com o app
saudacao Saudação
despedida Despedida

🔧 Como Usar

Instalação

pip install torch transformers huggingface_hub 

from huggingface_hub import snapshot_download
from pipeline import FoxyNLPPipeline

# Baixar modelo
model_dir = snapshot_download(repo_id="MattosDev/foxy-burger-nlp")

# Carregar pipeline
pipe = FoxyNLPPipeline(model_dir)

# Predição
result = pipe.predict("mano cade meu lanche faz 1 hora!!")
print(result)
Exemplo de Saída
json
{
  "intencao": {"label": "pedido_atrasado", "confianca": 0.9542},
  "sentimento": {"label": "negativo", "confianca": 0.8731},
  "urgencia": {"label": "alta", "confianca": 0.8219},
  "precisa_humano": false,
  "resposta_sugerida": "Peço desculpas pela demora! Vou verificar o status do seu pedido agora mesmo. 🔍"
}
Predição em Lote
python
mensagens = [
    "quero cancelar meu pedido",
    "melhor hambúrguer da cidade!",
    "o app tá travando",
]
results = pipe.predict_batch(mensagens)
🏗️ Arquitetura
text
BERTimbau (768d)
    │
    ├── Shared Dense (768 → 512) + GELU + LayerNorm
    │
    ├── Intent Head (512 → 256 → 128 → 16)      weight: 1.0
    ├── Sentiment Head (512 → 128 → 5)           weight: 0.5
    ├── Urgency Head (512 → 128 → 4)             weight: 0.5
    └── Human Escalation Head (512 → 64 → 2)     weight: 0.3
📊 Dataset
10.000 exemplos com variação linguística realista
16 intenções balanceadas (~625 por classe)
Ruído: gírias, erros de digitação, emojis, variação de caixa
Split: 80% treino / 10% validação / 10% teste
⚙️ Treinamento
Base: neuralmind/bert-base-portuguese-cased
Epochs: 15 (early stopping patience=5)
Batch Size: 64
Learning Rate: 3e-5 (cosine schedule)
Hardware: Google Colab A100
📜 Licença
Apache 2.0

✍️ Autor
MattosDev