File size: 1,955 Bytes
da41d5f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# 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.")