import streamlit as st from src.model_load import ask def interfaz(): # Configuración de la página st.set_page_config( page_title="MathQA - Asistente de Matemáticas", page_icon="🧮", layout="centered", initial_sidebar_state="expanded" ) # Paleta de colores neutra primary_color = "#010001" secondary_color = "#E7E6E7" background_color = "#FBFBFA" # Estilos CSS st.markdown( f""" """, unsafe_allow_html=True ) # Inicializar historial if 'history' not in st.session_state: st.session_state.history = [] # Variable auxiliar para gestionar el input if 'temp_input' not in st.session_state: st.session_state.temp_input = "" # Título de la aplicación st.title("🧮 MathQA - Asistente de Matemáticas") st.markdown("") # Widget de entrada con variable auxiliar user_input = st.text_input( "Escribe tu pregunta matemática aquí:", value=st.session_state.temp_input, key="user_input", placeholder="Ej: ¿Que es una integral?" ) # Botón de acción col1, col2, col3 = st.columns([5, 4, 4]) # Columnas vacías a los lados para centrar with col2: if st.button("Resolver pregunta"): if user_input: # Accedemos al valor ingresado # Simular respuesta mock_answer = ask(user_input,retriever) # Agregar al historial st.session_state.history.insert(0, (user_input, mock_answer)) # Limpiar la variable auxiliar st.session_state.temp_input = "" # Forzar actualización st.rerun() # Mostrar historial if st.session_state.history: st.markdown("---") st.subheader("Historial de Consultas") for idx, (pregunta, respuesta) in enumerate(st.session_state.history): with st.container(): st.markdown( f"""
Pregunta {len(st.session_state.history)-idx}:

{pregunta}

Respuesta:

{respuesta}

""", unsafe_allow_html=True ) # Pie de página st.markdown("---") st.markdown("🔍 ¿Necesitas ayuda con álgebra, cálculo o geometría? ¡Estoy aquí para ayudarte!")