JeCabrera commited on
Commit
fa342d1
·
verified ·
1 Parent(s): b18a8a5

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -9
app.py CHANGED
@@ -16,8 +16,16 @@ try:
16
  load_css(css_path)
17
  except Exception as e:
18
  print(f"Error al cargar CSS: {e}")
19
- # Usar un estilo mínimo en caso de error
20
- st.markdown('<style>.robocopy-title {color: #4ECDC4;}</style>', unsafe_allow_html=True)
 
 
 
 
 
 
 
 
21
 
22
  load_dotenv()
23
  GOOGLE_API_KEY=os.environ.get('GOOGLE_API_KEY')
@@ -28,8 +36,12 @@ MODEL_ROLE = 'ai'
28
  AI_AVATAR_ICON = '🤖' # Cambia el emoji por uno de robot para coincidir con tu logo
29
  USER_AVATAR_ICON = '👤' # Añade un avatar para el usuario
30
 
31
- # Crear directorio data/ si no existe
32
- os.makedirs('data/', exist_ok=True)
 
 
 
 
33
 
34
  # Load past chats (if available)
35
  try:
@@ -97,19 +109,27 @@ for message in st.session_state.messages:
97
  if prompt := st.chat_input('¿En qué puedo ayudarte hoy?'): # Mensaje más amigable
98
  # Save this as a chat for later
99
  if st.session_state.chat_id not in past_chats.keys():
100
- # Definir el título temporal una sola vez
 
101
  temp_title = f'SesiónChat-{st.session_state.chat_id}'
102
  past_chats[st.session_state.chat_id] = temp_title
103
 
 
104
  try:
 
105
  title_generator = genai.GenerativeModel('gemini-2.0-flash')
106
  title_response = title_generator.generate_content(
107
  f"Genera un título corto (máximo 5 palabras) que describa de qué trata esta consulta, sin usar comillas ni puntuación: '{prompt}'")
108
 
 
109
  generated_title = title_response.text.strip()
 
 
110
  if generated_title:
111
  st.session_state.chat_title = generated_title
112
  past_chats[st.session_state.chat_id] = generated_title
 
 
113
  except Exception as e:
114
  print(f"Error al generar título: {e}")
115
  st.session_state.chat_title = temp_title
@@ -179,7 +199,3 @@ if prompt := st.chat_input('¿En qué puedo ayudarte hoy?'): # Mensaje más ami
179
  st.session_state.gemini_history,
180
  f'data/{st.session_state.chat_id}-gemini_messages',
181
  )
182
- if st.session_state.show_examples and not st.session_state.messages:
183
- st.title("💡 RoboCopy - Tu Experto en PUVs")
184
- st.markdown("### Creando Propuestas Únicas de Valor que Convierten Visitantes en Clientes")
185
- st.markdown("### 🎯 Prueba estos ejemplos:")
 
16
  load_css(css_path)
17
  except Exception as e:
18
  print(f"Error al cargar CSS: {e}")
19
+ # Si el archivo no existe, crear un estilo básico en línea
20
+ st.markdown("""
21
+ <style>
22
+ .robocopy-title {
23
+ color: #4ECDC4 !important;
24
+ font-weight: bold;
25
+ font-size: 2em;
26
+ }
27
+ </style>
28
+ """, unsafe_allow_html=True)
29
 
30
  load_dotenv()
31
  GOOGLE_API_KEY=os.environ.get('GOOGLE_API_KEY')
 
36
  AI_AVATAR_ICON = '🤖' # Cambia el emoji por uno de robot para coincidir con tu logo
37
  USER_AVATAR_ICON = '👤' # Añade un avatar para el usuario
38
 
39
+ # Create a data/ folder if it doesn't already exist
40
+ try:
41
+ os.mkdir('data/')
42
+ except:
43
+ # data/ folder already exists
44
+ pass
45
 
46
  # Load past chats (if available)
47
  try:
 
109
  if prompt := st.chat_input('¿En qué puedo ayudarte hoy?'): # Mensaje más amigable
110
  # Save this as a chat for later
111
  if st.session_state.chat_id not in past_chats.keys():
112
+ # Es una nueva conversación, generemos un título basado en el primer mensaje
113
+ # Primero, guardamos un título temporal
114
  temp_title = f'SesiónChat-{st.session_state.chat_id}'
115
  past_chats[st.session_state.chat_id] = temp_title
116
 
117
+ # Generamos un título basado en el contenido del mensaje
118
  try:
119
+ # Usamos el mismo modelo para generar un título corto
120
  title_generator = genai.GenerativeModel('gemini-2.0-flash')
121
  title_response = title_generator.generate_content(
122
  f"Genera un título corto (máximo 5 palabras) que describa de qué trata esta consulta, sin usar comillas ni puntuación: '{prompt}'")
123
 
124
+ # Obtenemos el título generado
125
  generated_title = title_response.text.strip()
126
+
127
+ # Actualizamos el título en past_chats
128
  if generated_title:
129
  st.session_state.chat_title = generated_title
130
  past_chats[st.session_state.chat_id] = generated_title
131
+ else:
132
+ st.session_state.chat_title = temp_title
133
  except Exception as e:
134
  print(f"Error al generar título: {e}")
135
  st.session_state.chat_title = temp_title
 
199
  st.session_state.gemini_history,
200
  f'data/{st.session_state.chat_id}-gemini_messages',
201
  )