Spaces:
Running
Running
import gradio as gr | |
from data_processing import load_documents, load_index | |
from search_engine import search_relevant_chunks | |
from response_generator import generate_response | |
from sentence_transformers import SentenceTransformer | |
# Carregar dados e modelo | |
documents = load_documents("data/documents.json") | |
index = load_index("models/faiss_index.pkl") | |
model = SentenceTransformer('neuralmind/bert-base-portuguese-cased') | |
# Função principal do chatbot | |
def politometro_chat(query): | |
relevant_chunks = search_relevant_chunks(query, index, documents, model) | |
response = generate_response(query, relevant_chunks) | |
return response | |
# Interface Gradio | |
with gr.Blocks() as demo: | |
gr.Markdown("🗳️ Bem-vindo ao Politómetro!") | |
gr.Markdown("Este bot foi criado para te ajudar a explorar e compreender as propostas dos partidos políticos portugueses.") | |
with gr.Row(): | |
input_query = gr.Textbox(label="Faça sua pergunta aqui") | |
output_response = gr.Textbox(label="Resposta") | |
submit_button = gr.Button("Enviar") | |
submit_button.click(politometro_chat, inputs=input_query, outputs=output_response) | |
demo.launch() |