KhaledTTarabay commited on
Commit
577b8ec
ยท
2 Parent(s): ae62413e6ab100

merge: resolve conflicts, keep HF Space config + v2 content

Browse files
Files changed (4) hide show
  1. .gitattributes +35 -0
  2. Dockerfile +13 -0
  3. README.md +26 -10
  4. src/streamlit_app.py +40 -0
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
Dockerfile ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.13.5-slim
2
+ WORKDIR /app
3
+ RUN apt-get update && apt-get install -y \
4
+ build-essential \
5
+ curl \
6
+ git \
7
+ && rm -rf /var/lib/apt/lists/*
8
+ COPY requirements.txt ./
9
+ RUN pip3 install -r requirements.txt
10
+ COPY . .
11
+ EXPOSE 8501
12
+ HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
13
+ ENTRYPOINT ["streamlit", "run", "app.py", "--server.port=8501", "--server.address=0.0.0.0"]
README.md CHANGED
@@ -1,3 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  # Project Mizan ู…ูŠุฒุงู†: A Multilingual Misinformation Detector
2
 
3
  ## Manifesto
@@ -67,27 +82,27 @@ The fine-tuned AraBERT model is publicly available on Hugging Face Hub:
67
  ## How to Run Locally
68
 
69
  1. **Clone the repo**
70
- ```bash
71
  git clone https://github.com/KhaledTTarabay/Project-Mizan.git
72
  cd Project-Mizan
73
- ```
74
 
75
  2. **Create and activate virtual environment**
76
- ```bash
77
  python -m venv venv
78
  venv\Scripts\activate # Windows
79
  source venv/bin/activate # Mac/Linux
80
- ```
81
 
82
  3. **Install dependencies**
83
- ```bash
84
  pip install -r requirements.txt
85
- ```
86
 
87
  4. **Run the app**
88
- ```bash
89
  streamlit run app.py
90
- ```
91
 
92
  > Note: No local model training required. The AraBERT model loads automatically from Hugging Face Hub on first run.
93
 
@@ -99,8 +114,9 @@ The fine-tuned AraBERT model is publicly available on Hugging Face Hub:
99
  |---|---|---|
100
  | v1 | Deprecated | TF-IDF/KNN baseline |
101
  | v2 | Current | AraBERT Arabic pipeline |
102
- | v3 | Planned | English transformer upgrade,|
103
 
104
  ---
105
 
106
- *This README was drafted with AI assistance.*
 
 
1
+ <<<<<<< HEAD
2
+ ---
3
+ title: Project Mizan
4
+ emoji: ๐Ÿš€
5
+ colorFrom: red
6
+ colorTo: red
7
+ sdk: docker
8
+ app_port: 8501
9
+ tags:
10
+ - streamlit
11
+ pinned: false
12
+ short_description: Arabic Misinformation Detection Model
13
+ license: mit
14
+ ---
15
+
16
  # Project Mizan ู…ูŠุฒุงู†: A Multilingual Misinformation Detector
17
 
18
  ## Manifesto
 
82
  ## How to Run Locally
83
 
84
  1. **Clone the repo**
85
+ ```bash
86
  git clone https://github.com/KhaledTTarabay/Project-Mizan.git
87
  cd Project-Mizan
88
+ ```
89
 
90
  2. **Create and activate virtual environment**
91
+ ```bash
92
  python -m venv venv
93
  venv\Scripts\activate # Windows
94
  source venv/bin/activate # Mac/Linux
95
+ ```
96
 
97
  3. **Install dependencies**
98
+ ```bash
99
  pip install -r requirements.txt
100
+ ```
101
 
102
  4. **Run the app**
103
+ ```bash
104
  streamlit run app.py
105
+ ```
106
 
107
  > Note: No local model training required. The AraBERT model loads automatically from Hugging Face Hub on first run.
108
 
 
114
  |---|---|---|
115
  | v1 | Deprecated | TF-IDF/KNN baseline |
116
  | v2 | Current | AraBERT Arabic pipeline |
117
+ | v3 | Planned | English transformer upgrade, morphology-native Arabic NLP |
118
 
119
  ---
120
 
121
+ *This README was drafted with AI assistance.*
122
+ >>>>>>> 684d5eda2f4a4ae878fc998a21f04ae550ced9fa
src/streamlit_app.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import altair as alt
2
+ import numpy as np
3
+ import pandas as pd
4
+ import streamlit as st
5
+
6
+ """
7
+ # Welcome to Streamlit!
8
+
9
+ Edit `/streamlit_app.py` to customize this app to your heart's desire :heart:.
10
+ If you have any questions, checkout our [documentation](https://docs.streamlit.io) and [community
11
+ forums](https://discuss.streamlit.io).
12
+
13
+ In the meantime, below is an example of what you can do with just a few lines of code:
14
+ """
15
+
16
+ num_points = st.slider("Number of points in spiral", 1, 10000, 1100)
17
+ num_turns = st.slider("Number of turns in spiral", 1, 300, 31)
18
+
19
+ indices = np.linspace(0, 1, num_points)
20
+ theta = 2 * np.pi * num_turns * indices
21
+ radius = indices
22
+
23
+ x = radius * np.cos(theta)
24
+ y = radius * np.sin(theta)
25
+
26
+ df = pd.DataFrame({
27
+ "x": x,
28
+ "y": y,
29
+ "idx": indices,
30
+ "rand": np.random.randn(num_points),
31
+ })
32
+
33
+ st.altair_chart(alt.Chart(df, height=700, width=700)
34
+ .mark_point(filled=True)
35
+ .encode(
36
+ x=alt.X("x", axis=None),
37
+ y=alt.Y("y", axis=None),
38
+ color=alt.Color("idx", legend=None, scale=alt.Scale()),
39
+ size=alt.Size("rand", legend=None, scale=alt.Scale(range=[1, 150])),
40
+ ))