Migjomatic commited on
Commit
6a59084
·
verified ·
1 Parent(s): 605c7b4

Update ui_components.py

Browse files
Files changed (1) hide show
  1. ui_components.py +30 -18
ui_components.py CHANGED
@@ -224,29 +224,41 @@ def _render_ontology_analysis(ontology: Dict[str, Any]):
224
  severity = ontology.get('severity', 'NONE')
225
  severity_icon = ontology.get('severity_icon', '✅')
226
  severity_color = ontology.get('severity_color', 'green')
227
-
228
- # Severity display with color
229
- st.markdown(f"**Safety Assessment:** :{severity_color}[{severity_icon} {severity}]")
230
-
231
- # Score display
232
  if ontology.get('score', 0) > 0:
233
- st.metric("Risk Score", f"{ontology['score']}/100")
234
-
235
- # Show explanations if available
236
  if ontology.get('explanations'):
237
- st.write("**Ontology Analysis:**")
238
  for explanation in ontology['explanations']:
239
  st.write(f"• {explanation}")
240
-
241
- # Show fired rules if available
242
- if ontology.get('fired_rules'):
243
- with st.expander("Technical Details"):
244
- st.write("**Triggered Rules:**")
245
- for rule in ontology['fired_rules']:
246
- st.code(rule)
247
-
 
 
 
 
 
 
 
 
 
 
 
 
248
  if ontology.get('labels'):
249
- st.write("**Detected Hazard Labels:**")
250
  for label in ontology['labels']:
251
  st.code(label)
252
 
 
224
  severity = ontology.get('severity', 'NONE')
225
  severity_icon = ontology.get('severity_icon', '✅')
226
  severity_color = ontology.get('severity_color', 'green')
227
+
228
+ # Sicherheitsbewertung (deutsch)
229
+ st.markdown(f"**Sicherheitsbewertung:** :{severity_color}[{severity_icon} {severity}]")
230
+
231
+ # Score
232
  if ontology.get('score', 0) > 0:
233
+ st.metric("Risikowert", f"{ontology['score']}/100")
234
+
235
+ # Erklärungen
236
  if ontology.get('explanations'):
237
+ st.write("**Ontologie-Analyse:**")
238
  for explanation in ontology['explanations']:
239
  st.write(f"• {explanation}")
240
+
241
+ # Technische Details robust (kein Nested-Columns-Fehler)
242
+ if ontology.get('fired_rules') or ontology.get('labels'):
243
+ try:
244
+ with st.expander("Technische Details"):
245
+ if ontology.get('fired_rules'):
246
+ st.write("**Ausgelöste Regeln:**")
247
+ for rule in ontology['fired_rules']:
248
+ st.code(rule)
249
+ if ontology.get('labels'):
250
+ st.write("**Erkannte Gefahren-Labels:**")
251
+ for label in ontology['labels']:
252
+ st.code(label)
253
+ except StreamlitAPIException:
254
+ # Fallback ohne Expander (falls die Umgebung das hier nicht erlaubt)
255
+ st.subheader("Technische Details")
256
+ if ontology.get('fired_rules'):
257
+ st.write("**Ausgelöste Regeln:**")
258
+ for rule in ontology['fired_rules']:
259
+ st.code(rule)
260
  if ontology.get('labels'):
261
+ st.write("**Erkannte Gefahren-Labels:**")
262
  for label in ontology['labels']:
263
  st.code(label)
264