github-actions commited on
Commit
952ce01
·
1 Parent(s): 1d19a85

Update model artifacts

Browse files
app.py CHANGED
@@ -1,45 +1,23 @@
1
  # app.py
2
  import gradio as gr
3
  import joblib
4
- import json
5
- import os
6
- from src.preprocessing import clean_text
7
 
 
8
  model = joblib.load("saved_model.joblib")
9
  vectorizer = joblib.load("vectorizer.joblib")
10
 
11
  def predict(text):
12
- clean = clean_text(text)
13
- vec = vectorizer.transform([clean])
14
- pred = model.predict(vec)[0]
15
- proba = None
16
- if hasattr(model, "predict_proba"):
17
- proba = model.predict_proba(vec)[0]
18
- proba = { "normal": round(proba[0]*100, 2), "judi": round(proba[1]*100, 2) }
19
 
20
- label = "🚫 Judi Online" if pred == "judi" or pred == 1 else "✅ Aman"
21
- return {"Prediksi": label, "Probabilitas (%)": proba}
22
-
23
- def load_metrics():
24
- path = "model/eval_report.json"
25
- if os.path.exists(path):
26
- with open(path) as f:
27
- return json.load(f)
28
- return {}
29
-
30
- with gr.Blocks() as demo:
31
- with gr.Tab("Inference"):
32
- inp = gr.Textbox(lines=3, placeholder="Masukkan komentar...")
33
- out = gr.JSON()
34
- gr.Button("Prediksi").click(fn=predict, inputs=inp, outputs=out)
35
-
36
- with gr.Tab("Monitoring"):
37
- metrics = load_metrics()
38
- if metrics:
39
- gr.Markdown("### 📊 Model Performance")
40
- gr.JSON(metrics)
41
- if os.path.exists("model/confusion_matrix.png"):
42
- gr.Image("model/confusion_matrix.png", label="Confusion Matrix")
43
 
44
  if __name__ == "__main__":
45
- demo.launch()
 
1
  # app.py
2
  import gradio as gr
3
  import joblib
 
 
 
4
 
5
+ # load model & vectorizer
6
  model = joblib.load("saved_model.joblib")
7
  vectorizer = joblib.load("vectorizer.joblib")
8
 
9
  def predict(text):
10
+ X = vectorizer.transform([text])
11
+ pred = model.predict(X)[0]
12
+ return f"Prediksi: {pred}"
 
 
 
 
13
 
14
+ iface = gr.Interface(
15
+ fn=predict,
16
+ inputs=gr.Textbox(lines=3, placeholder="Tulis komentar di sini..."),
17
+ outputs="text",
18
+ title="Judi Comment Detector",
19
+ description="Deteksi apakah komentar mengandung indikasi judi online."
20
+ )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
 
22
  if __name__ == "__main__":
23
+ iface.launch()
src/__pycache__/__init__.cpython-39.pyc CHANGED
Binary files a/src/__pycache__/__init__.cpython-39.pyc and b/src/__pycache__/__init__.cpython-39.pyc differ
 
src/__pycache__/preprocessing.cpython-39.pyc CHANGED
Binary files a/src/__pycache__/preprocessing.cpython-39.pyc and b/src/__pycache__/preprocessing.cpython-39.pyc differ
 
vectorizer.joblib CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:5c6dee7e0e55bebae56492c6f2ac0642af183456a12ae29ef04851c423c726ec
3
  size 425129
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:01e0e302bf5d7ab7d5eb5ae6ac5a6a441a5f1a04f72c2d2d9709c4ae98aa1376
3
  size 425129