Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -277,7 +277,10 @@ def analyze_single_message(text, thresholds):
|
|
277 |
abuse_score_raw = (weighted_total / weight_sum) * 100
|
278 |
else:
|
279 |
abuse_score_raw = 0
|
|
|
280 |
stage = get_risk_stage(threshold_labels, sentiment)
|
|
|
|
|
281 |
if weapon_flag:
|
282 |
abuse_score_raw = min(abuse_score_raw + 25, 100) # boost intensity
|
283 |
if weapon_flag and stage < 2:
|
@@ -328,6 +331,8 @@ def analyze_composite(msg1, date1, msg2, date2, msg3, date3, *answers_and_none):
|
|
328 |
return "Please enter at least one message."
|
329 |
|
330 |
results = [(analyze_single_message(m, THRESHOLDS.copy()), d) for m, d in active]
|
|
|
|
|
331 |
abuse_scores = [r[0][0] for r in results]
|
332 |
top_labels = [r[0][1][0] if r[0][1] else r[0][2][0][0] for r in results]
|
333 |
top_scores = [r[0][2][0][1] for r in results]
|
|
|
277 |
abuse_score_raw = (weighted_total / weight_sum) * 100
|
278 |
else:
|
279 |
abuse_score_raw = 0
|
280 |
+
if threshold_labels:
|
281 |
stage = get_risk_stage(threshold_labels, sentiment)
|
282 |
+
else:
|
283 |
+
stage = 1 # default to tension-building if no patterns matched
|
284 |
if weapon_flag:
|
285 |
abuse_score_raw = min(abuse_score_raw + 25, 100) # boost intensity
|
286 |
if weapon_flag and stage < 2:
|
|
|
331 |
return "Please enter at least one message."
|
332 |
|
333 |
results = [(analyze_single_message(m, THRESHOLDS.copy()), d) for m, d in active]
|
334 |
+
for result, date in results:
|
335 |
+
assert len(result) == 6, "Unexpected output from analyze_single_message"
|
336 |
abuse_scores = [r[0][0] for r in results]
|
337 |
top_labels = [r[0][1][0] if r[0][1] else r[0][2][0][0] for r in results]
|
338 |
top_scores = [r[0][2][0][1] for r in results]
|