JeCabrera commited on
Commit
b4f7f97
·
verified ·
1 Parent(s): d992a6b

Upload 12 files

Browse files
Files changed (1) hide show
  1. app.py +9 -19
app.py CHANGED
@@ -73,35 +73,18 @@ def get_enhanced_prompt(prompt, is_example):
73
  return f"El usuario ha seleccionado un ejemplo: '{prompt}'. Responde de manera conversacional y sencilla, como si estuvieras hablando con un amigo. Evita tecnicismos innecesarios. Enfócate en dar información práctica que ayude al usuario a crear su PUV. Usa ejemplos concretos cuando sea posible. Termina tu respuesta con una pregunta que invite al usuario a compartir información sobre su negocio para poder ayudarle a crear su PUV personalizada."
74
  return prompt
75
 
76
- def process_model_response(enhanced_prompt):
77
- """Procesa la respuesta del modelo"""
78
- with st.chat_message(MODEL_ROLE, avatar=AI_AVATAR_ICON):
79
- try:
80
- message_placeholder = st.empty()
81
- typing_indicator = st.empty()
82
- typing_indicator.markdown("*Generando respuesta...*")
83
-
84
- response = state.send_message(enhanced_prompt)
85
- full_response = stream_response(response, message_placeholder, typing_indicator)
86
-
87
- # Actualizar historial
88
- state.add_message(role=MODEL_ROLE, content=full_response, avatar=AI_AVATAR_ICON)
89
- state.gemini_history = state.chat.history
90
- state.save_chat_history()
91
-
92
- except Exception as e:
93
- st.error(f"Error: {str(e)}")
94
 
95
  def stream_response(response, message_placeholder, typing_indicator):
96
  """Maneja el streaming de la respuesta"""
97
  full_response = ''
98
  try:
 
99
  for chunk in response:
100
  if chunk.text:
101
  for ch in chunk.text:
102
  full_response += ch
103
  time.sleep(0.01)
104
- typing_indicator.markdown("*Generando respuesta...*")
105
  message_placeholder.markdown(full_response + '▌')
106
  except Exception as e:
107
  st.error(f"Error en el streaming: {str(e)}")
@@ -277,3 +260,10 @@ if state.has_prompt():
277
  process_message(prompt, is_example=True)
278
  # Limpiar el prompt
279
  state.clear_prompt()
 
 
 
 
 
 
 
 
73
  return f"El usuario ha seleccionado un ejemplo: '{prompt}'. Responde de manera conversacional y sencilla, como si estuvieras hablando con un amigo. Evita tecnicismos innecesarios. Enfócate en dar información práctica que ayude al usuario a crear su PUV. Usa ejemplos concretos cuando sea posible. Termina tu respuesta con una pregunta que invite al usuario a compartir información sobre su negocio para poder ayudarle a crear su PUV personalizada."
74
  return prompt
75
 
76
+ # Eliminar la función process_model_response() ya que no se usa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
 
78
  def stream_response(response, message_placeholder, typing_indicator):
79
  """Maneja el streaming de la respuesta"""
80
  full_response = ''
81
  try:
82
+ typing_indicator.markdown("*Escribiendo respuesta...*")
83
  for chunk in response:
84
  if chunk.text:
85
  for ch in chunk.text:
86
  full_response += ch
87
  time.sleep(0.01)
 
88
  message_placeholder.markdown(full_response + '▌')
89
  except Exception as e:
90
  st.error(f"Error en el streaming: {str(e)}")
 
260
  process_message(prompt, is_example=True)
261
  # Limpiar el prompt
262
  state.clear_prompt()
263
+
264
+ def handle_error(error, message="Error"):
265
+ """Maneja errores de manera consistente"""
266
+ error_msg = f"{message}: {str(error)}"
267
+ st.error(error_msg)
268
+ print(error_msg) # También registrar en la consola
269
+ return error_msg