import streamlit as st | |
from utils import get_bot_response | |
# Configuración de la página | |
st.set_page_config(page_title="Chatbot de Servicios Digitales", layout="centered") | |
# Inicializar el historial del chat en la sesión | |
if "chat_history" not in st.session_state: | |
st.session_state.chat_history = [] | |
# Título y mensaje de bienvenida | |
st.title("Chatbot de Servicios Digitales") | |
st.write( | |
"¡Hola! Soy tu asistente virtual. Estoy aquí para ayudarte con servicios de desarrollo web, " | |
"apps móviles, ideas de IA y análisis con Power BI." | |
) | |
# Campo de texto para ingresar el mensaje del usuario (usando una key para poder manipular su valor) | |
user_input = st.text_input("Escribe tu mensaje aquí:") | |
# Botón de envío | |
if st.button("Enviar"): | |
if user_input: # Verifica que se haya escrito algo | |
# Agregar el mensaje del usuario al historial | |
st.session_state.chat_history.append({ | |
"role": "user", | |
"message": user_input | |
}) | |
# Obtener respuesta del bot y agregarla al historial | |
response = get_bot_response(user_input) | |
st.session_state.chat_history.append({ | |
"role": "bot", | |
"message": response | |
}) | |
# Forzar la actualización de la interfaz | |
else: | |
st.warning("Por favor, ingresa un mensaje.") | |
# Mostrar el historial actualizado del cha | |
# | |
for chat in st.session_state.chat_history: | |
if chat["role"] == "user": | |
st.markdown(f"**Tú:** {chat['message']}") | |
else: | |
st.markdown(f"**Bot:** {chat['message']}") |