Spaces:
Runtime error
Runtime error
Update main.py
Browse files
main.py
CHANGED
|
@@ -243,21 +243,21 @@ async def evaluate_xgboost_url(payload: XGBoostRequest):
|
|
| 243 |
features = extract_url_features(processed_url)
|
| 244 |
dmatrix_payload = xgb.DMatrix(np.array([features]))
|
| 245 |
|
| 246 |
-
|
| 247 |
latency_ms = (time.perf_counter() - start_time) * 1000
|
| 248 |
|
| 249 |
-
if
|
| 250 |
verdict = "🚨 PHISHING DETECTED"
|
| 251 |
-
confidence =
|
| 252 |
else:
|
| 253 |
verdict = "✅ LEGITIMATE SAFE"
|
| 254 |
-
confidence =
|
| 255 |
|
| 256 |
return {
|
| 257 |
"processed_url": processed_url,
|
| 258 |
"verdict": verdict,
|
| 259 |
"confidence_percentage": round(confidence, 2),
|
| 260 |
-
"
|
| 261 |
"latency_ms": round(latency_ms, 3)
|
| 262 |
}
|
| 263 |
except Exception as e:
|
|
@@ -539,8 +539,7 @@ async def unified_scan_endpoint(payload: UnifiedRequest):
|
|
| 539 |
features = extract_url_features(url)
|
| 540 |
dmatrix_payload = xgb.DMatrix(np.array([features]))
|
| 541 |
|
| 542 |
-
|
| 543 |
-
v4_score = 1.0 - raw_safeness
|
| 544 |
v4_msg = f"XGBoost Match: {round(v4_score * 100, 1)}% Phishing Risk"
|
| 545 |
except Exception as e:
|
| 546 |
v4_msg = f"V4 Error: {str(e)}"
|
|
|
|
| 243 |
features = extract_url_features(processed_url)
|
| 244 |
dmatrix_payload = xgb.DMatrix(np.array([features]))
|
| 245 |
|
| 246 |
+
risk_prob = float(bst.predict(dmatrix_payload)[0])
|
| 247 |
latency_ms = (time.perf_counter() - start_time) * 1000
|
| 248 |
|
| 249 |
+
if risk_prob >= 0.50:
|
| 250 |
verdict = "🚨 PHISHING DETECTED"
|
| 251 |
+
confidence = risk_prob * 100
|
| 252 |
else:
|
| 253 |
verdict = "✅ LEGITIMATE SAFE"
|
| 254 |
+
confidence = (1.0 - risk_prob) * 100
|
| 255 |
|
| 256 |
return {
|
| 257 |
"processed_url": processed_url,
|
| 258 |
"verdict": verdict,
|
| 259 |
"confidence_percentage": round(confidence, 2),
|
| 260 |
+
"raw_risk_probability": risk_prob,
|
| 261 |
"latency_ms": round(latency_ms, 3)
|
| 262 |
}
|
| 263 |
except Exception as e:
|
|
|
|
| 539 |
features = extract_url_features(url)
|
| 540 |
dmatrix_payload = xgb.DMatrix(np.array([features]))
|
| 541 |
|
| 542 |
+
v4_score = float(bst.predict(dmatrix_payload)[0])
|
|
|
|
| 543 |
v4_msg = f"XGBoost Match: {round(v4_score * 100, 1)}% Phishing Risk"
|
| 544 |
except Exception as e:
|
| 545 |
v4_msg = f"V4 Error: {str(e)}"
|