JairoCesar commited on
Commit
ab68109
·
verified ·
1 Parent(s): 87ab235

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -27
app.py CHANGED
@@ -535,30 +535,40 @@ if st.session_state.search_results is not None:
535
  st.session_state.analysis_cache['best_match_analysis'] = "❌ Lo sentimos, no se pudo generar el análisis detallado en este momento debido a un problema con la IA. Por favor, intenta de nuevo más tarde."
536
  st.markdown(st.session_state.analysis_cache['best_match_analysis'])
537
 
538
- if len(results) > 1:
539
- with st.expander("🔍 **Explora otras posibilidades relevantes (Diagnóstico Diferencial)**"):
540
- for i, result in enumerate(results[1:5]):
541
- with st.container(border=True):
542
- entry = result['entry']
543
- score = result['score']
544
- st.subheader(f"{i+2}. {entry.get('condicion_asociada')}")
545
- col_info, col_action = st.columns([3, 1])
546
- with col_info:
547
- if result.get('matched_symptoms'):
548
- st.markdown(f"**Pistas Clave (Síntomas Coincidentes):** {', '.join(result['matched_symptoms']).capitalize()}")
549
- st.markdown(f"**Alimentos Típicos Asociados:** {entry.get('compuesto_alimento')}")
550
- with col_action:
551
- st.metric("Relevancia", score['total'])
552
- analysis_key = f"analysis_{i+2}"
553
- if st.button("Generar análisis", key=analysis_key, help=f"Generar análisis de IA para {entry.get('condicion_asociada')}"):
554
- with st.spinner(f"Generando análisis para {entry.get('condicion_asociada')}..."):
555
- try:
556
- analysis_text = generate_detailed_analysis(st.session_state.user_query, entry)
557
- st.session_state.analysis_cache[analysis_key] = analysis_text
558
- except Exception as e:
559
- st.session_state.analysis_cache[analysis_key] = f"❌ Error al generar análisis para {entry.get('condicion_asociada')}."
560
-
561
- if analysis_key in st.session_state.analysis_cache:
562
- st.info(st.session_state.analysis_cache[analysis_key])
563
- if i < len(results[1:5]) - 1:
564
- st.markdown("---")
 
 
 
 
 
 
 
 
 
 
 
535
  st.session_state.analysis_cache['best_match_analysis'] = "❌ Lo sentimos, no se pudo generar el análisis detallado en este momento debido a un problema con la IA. Por favor, intenta de nuevo más tarde."
536
  st.markdown(st.session_state.analysis_cache['best_match_analysis'])
537
 
538
+ if len(results) > 1:
539
+ with st.expander("🔍 **Explora otras posibilidades relevantes (Diagnóstico Diferencial)**"):
540
+ for i, result in enumerate(results[1:5]):
541
+ with st.container(border=True):
542
+ entry = result['entry']
543
+ score = result['score']
544
+
545
+ # Muestra la información de la condición
546
+ st.subheader(f"{i+2}. {entry.get('condicion_asociada')}")
547
+ col_info, col_action = st.columns([3, 1])
548
+
549
+ with col_info:
550
+ if result.get('matched_symptoms'):
551
+ st.markdown(f"**Pistas Clave (Síntomas Coincidentes):** {', '.join(result['matched_symptoms']).capitalize()}")
552
+ st.markdown(f"**Alimentos Típicos Asociados:** {entry.get('compuesto_alimento')}")
553
+
554
+ # Muestra la métrica y el botón de acción
555
+ with col_action:
556
+ st.metric("Relevancia", score['total'])
557
+ analysis_key = f"analysis_{i+2}"
558
+
559
+ # Lógica para manejar el clic del botón
560
+ if st.button("Generar análisis", key=analysis_key, help=f"Generar análisis de IA para {entry.get('condicion_asociada')}"):
561
+ with st.spinner(f"Generando análisis para {entry.get('condicion_asociada')}..."):
562
+ try:
563
+ analysis_text = generate_detailed_analysis(st.session_state.user_query, entry)
564
+ st.session_state.analysis_cache[analysis_key] = analysis_text
565
+ except Exception as e:
566
+ st.session_state.analysis_cache[analysis_key] = f"❌ Error al generar análisis para {entry.get('condicion_asociada')}."
567
+
568
+ # Lógica para mostrar el resultado guardado
569
+ if analysis_key in st.session_state.analysis_cache:
570
+ st.info(st.session_state.analysis_cache[analysis_key])
571
+
572
+ # Añade un separador visual entre las entradas
573
+ if i < len(results[1:5]) - 1:
574
+ st.markdown("---")