File size: 2,713 Bytes
c570675
936b57e
0c35e4e
 
936b57e
 
 
 
0c35e4e
 
 
 
b53faf8
 
 
 
 
 
0c35e4e
 
 
 
 
b53faf8
 
0c35e4e
b53faf8
0c35e4e
 
 
b53faf8
0c35e4e
 
 
 
 
b53faf8
 
 
 
 
 
 
 
 
 
c570675
 
936b57e
b53faf8
 
 
 
 
 
 
 
 
 
c570675
936b57e
 
0c35e4e
 
c570675
 
936b57e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import gradio as gr
from transformers import pipeline
import pandas as pd
import os

# Carregando o modelo pré-treinado
qa_pipeline = pipeline("question-answering", model="pierreguillou/bert-base-cased-squad-v1.1-portuguese")

# Função para ler o arquivo XLSX
def ler_ficha_tecnica():
    caminho_arquivo = "FTMO-AV21 - 6' MM BMD (04 FIGURAS).xlsx"
    if os.path.exists(caminho_arquivo):
        try:
            df = pd.read_excel(caminho_arquivo)
            info = df.to_string(index=False)
            return info
        except Exception as e:
            return f"Erro ao ler o arquivo: {str(e)}"
    else:
        return "Arquivo da ficha técnica não encontrado."

ficha_tecnica = ler_ficha_tecnica()

# Dividindo o contexto em partes menores
contexto_geral = """
SOBRE A EMPRESA:
A INTERCAST S.A. é uma empresa renomada no setor de fundição e metalurgia, fundada em 1970. Especializada na produção de peças fundidas em ferro e aço, atende principalmente os setores automotivo, agrícola e de construção. Localizada em Itaúna, Minas Gerais, Brasil, faz parte do grupo industrial norte-americano American, fundado em 1905.

SEGMENTOS DA EMPRESA:
A INTERCAST está presente em diversos segmentos, incluindo:
Caminhões, Equipamentos agrícolas, Máquinas para construção, Componentes para saneamento

CLIENTES:
A empresa atende clientes no Brasil, América do Norte e Europa.

CONTATO:
E-mail: [email protected]
Telefone: +55 37 3249 7000
Site: www.intercast.com.br
Instagram: @intercastsa
"""

contexto_produtos = """
LINHA DE PEÇAS:
A INTERCAST desenvolve peças fundidas técnicas (Midcastings) de 20 a 250 kg, em ferro cinzento ou nodular. Alguns produtos incluem:
Trombeta, Carcaça Central de Transmissão, Suporte, Cárter de Óleo, Quinta Roda, Hub Case, Caixa do Diferencial, Bottom Hidrante, Valvulas
"""

def responder_pergunta(message, history):
    try:
        if "ficha técnica" in message.lower() or "código 289" in message.lower():
            resposta = qa_pipeline(question=message, context=ficha_tecnica)
        elif any(palavra in message.lower() for palavra in ["peça", "produto", "linha"]):
            resposta = qa_pipeline(question=message, context=contexto_produtos)
        else:
            resposta = qa_pipeline(question=message, context=contexto_geral)
        return resposta['answer']
    except Exception as e:
        return f"Desculpe, ocorreu um erro ao processar sua pergunta: {str(e)}"

interface = gr.ChatInterface(
    responder_pergunta,
    title="Assistente INTERCAST S.A.",
    description="Faça perguntas sobre a INTERCAST S.A., seus produtos, história, informações gerais e detalhes da ficha técnica."
)

interface.launch()