AIdeaText commited on
Commit
e68d122
1 Parent(s): e2356b8

Update modules/ui.py

Browse files
Files changed (1) hide show
  1. modules/ui.py +45 -30
modules/ui.py CHANGED
@@ -429,6 +429,21 @@ def display_chatbot_interface(lang_code):
429
 
430
  t = translations[lang_code]
431
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
432
  st.title(t['title'])
433
 
434
  if 'chatbot' not in st.session_state:
@@ -442,36 +457,36 @@ def display_chatbot_interface(lang_code):
442
  # Área de entrada del usuario
443
  user_input = st.text_input(t['input_placeholder'], key="user_input")
444
 
445
- # Botón de envío (oculto, se activa con Enter)
446
- if user_input:
447
- st.session_state.messages.append({"role": "user", "content": user_input})
448
- with chat_container:
449
- for message in st.session_state.messages:
450
- if message["role"] == "user":
451
- st.text_area("You:", value=message["content"], height=50, key=f"user_msg_{len(st.session_state.messages)}", disabled=True)
452
- else:
453
- st.text_area("Assistant:", value=message["content"], height=50, key=f"assistant_msg_{len(st.session_state.messages)}", disabled=True)
454
-
455
- # Generar respuesta del chatbot
456
- response = get_chatbot_response(st.session_state.chatbot, user_input, lang_code)
457
- st.session_state.messages.append({"role": "assistant", "content": response})
458
-
459
- # Mostrar la respuesta del chatbot con efecto de escritura
460
- with chat_container:
461
- assistant_message = st.empty()
462
- full_response = ""
463
- for char in response:
464
- full_response += char
465
- assistant_message.text_area("Assistant:", value=full_response + "▌", height=50, key=f"assistant_msg_{len(st.session_state.messages)+1}", disabled=True)
466
- time.sleep(0.01)
467
- assistant_message.text_area("Assistant:", value=full_response, height=50, key=f"assistant_msg_{len(st.session_state.messages)+1}", disabled=True)
468
-
469
- # Guardar la conversación en la base de datos
470
- store_chat_history(st.session_state.username, st.session_state.messages)
471
-
472
- # Limpiar el input del usuario
473
- st.session_state.user_input = ""
474
 
475
  # Mostrar el número de llamadas a la API restantes
476
  remaining_calls = 50 - st.session_state.get('api_calls', 0)
477
- st.sidebar.write(f"Llamadas a la API restantes: {remaining_calls}")
 
429
 
430
  t = translations[lang_code]
431
 
432
+ st.markdown("""
433
+ <style>
434
+ .stTextInput > div > div > input {
435
+ background-color: #F0F2F6;
436
+ }
437
+ .stTextArea > div > div > textarea {
438
+ background-color: #F0F2F6;
439
+ border: none;
440
+ }
441
+ .stTextArea > div > div > textarea:disabled {
442
+ color: #000000;
443
+ }
444
+ </style>
445
+ """, unsafe_allow_html=True)
446
+
447
  st.title(t['title'])
448
 
449
  if 'chatbot' not in st.session_state:
 
457
  # Área de entrada del usuario
458
  user_input = st.text_input(t['input_placeholder'], key="user_input")
459
 
460
+ # Procesamiento del input del usuario
461
+ if user_input:
462
+ st.session_state.messages.append({"role": "user", "content": user_input})
463
+ with chat_container:
464
+ for message in st.session_state.messages:
465
+ if message["role"] == "user":
466
+ st.text_area("You:", value=message["content"], height=50, key=f"user_msg_{len(st.session_state.messages)}", disabled=True)
467
+ else:
468
+ st.text_area("Assistant:", value=message["content"], height=50, key=f"assistant_msg_{len(st.session_state.messages)}", disabled=True)
469
+
470
+ # Generar respuesta del chatbot
471
+ response = get_chatbot_response(st.session_state.chatbot, user_input, lang_code)
472
+ st.session_state.messages.append({"role": "assistant", "content": response})
473
+
474
+ # Mostrar la respuesta del chatbot con efecto de escritura
475
+ with chat_container:
476
+ assistant_message = st.empty()
477
+ full_response = ""
478
+ for char in response:
479
+ full_response += char
480
+ assistant_message.text_area("Assistant:", value=full_response + "▌", height=50, key=f"assistant_msg_{len(st.session_state.messages)+1}", disabled=True)
481
+ time.sleep(0.01)
482
+ assistant_message.text_area("Assistant:", value=full_response, height=50, key=f"assistant_msg_{len(st.session_state.messages)+1}", disabled=True)
483
+
484
+ # Guardar la conversación en la base de datos
485
+ store_chat_history(st.session_state.username, st.session_state.messages)
486
+
487
+ # Limpiar el input del usuario
488
+ st.session_state.user_input = ""
489
 
490
  # Mostrar el número de llamadas a la API restantes
491
  remaining_calls = 50 - st.session_state.get('api_calls', 0)
492
+ st.sidebar.write(f"Llamadas a la API restantes: {remaining_calls}")