IA.chati / web.py
ander19's picture
Upload 9 files
da41d5f verified
# web.py
import streamlit as st
from main import preguntar, cargar_personalidad
# ----------------------------
# Configuraci贸n de la p谩gina
# ----------------------------
st.set_page_config(page_title="IA Local Phi", page_icon="馃", layout="wide")
# ----------------------------
# Selector de personalidad
# ----------------------------
personalidad = st.selectbox(
"Elige la personalidad de tu IA:",
["chistosa", "matematicas", "coach"]
)
# Cargar el prompt correspondiente
sistema = cargar_personalidad(personalidad)
# ----------------------------
# Inicializar historial en la sesi贸n
# ----------------------------
if "historial" not in st.session_state:
st.session_state.historial = []
# ----------------------------
# Entrada de usuario
# ----------------------------
entrada = st.text_input("Escribe tu mensaje:")
# Bot贸n para enviar
if st.button("Enviar") and entrada.strip() != "":
respuesta = preguntar(entrada, sistema)
st.session_state.historial.append(("Tu", entrada))
st.session_state.historial.append(("IA", respuesta))
# ----------------------------
# Mostrar conversaci贸n en burbujas
# ----------------------------
for quien, mensaje in st.session_state.historial:
color = "#1f77b4" if quien == "Tu" else "#ff7f0e"
st.markdown(
f'<div style="background:#f0f0f5; padding:10px; margin-bottom:5px; border-radius:10px; color:{color};"><b>{quien}:</b> {mensaje}</div>',
unsafe_allow_html=True
)
# ----------------------------
# Secci贸n lateral con tips
# ----------------------------
with st.sidebar:
st.markdown("### Tips")
st.markdown("- Haz preguntas claras y cortas.")
st.markdown("- La IA recuerda lo que escribes entre sesiones.")
st.markdown("- Cambia la personalidad usando el men煤 desplegable.")
st.markdown("- La conversaci贸n larga se resume autom谩ticamente para mantener la IA r谩pida.")