Spaces:
Sleeping
Sleeping
feat: initial project structure
Browse files- CHANGELOG.md +10 -0
- LICENSE +21 -0
- app.py +16 -0
- models/spam_classifier.joblib +3 -0
- requirements.txt +2 -0
CHANGELOG.md
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Changelog
|
2 |
+
|
3 |
+
## [0.1.0] - 2023-09-25
|
4 |
+
### Added
|
5 |
+
- Initial project structure
|
6 |
+
- Gradio app
|
7 |
+
|
8 |
+
### Changed
|
9 |
+
|
10 |
+
### Fixed
|
LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
MIT License
|
2 |
+
|
3 |
+
Copyright (c) 2023 Mouafak Dakhlaoui
|
4 |
+
|
5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6 |
+
of this software and associated documentation files (the "Software"), to deal
|
7 |
+
in the Software without restriction, including without limitation the rights
|
8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9 |
+
copies of the Software, and to permit persons to whom the Software is
|
10 |
+
furnished to do so, subject to the following conditions:
|
11 |
+
|
12 |
+
The above copyright notice and this permission notice shall be included in all
|
13 |
+
copies or substantial portions of the Software.
|
14 |
+
|
15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21 |
+
SOFTWARE.
|
app.py
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import gradio as gr
|
2 |
+
from joblib import load
|
3 |
+
import numpy as np
|
4 |
+
from sklearn.pipeline import Pipeline
|
5 |
+
import pandas as pd
|
6 |
+
|
7 |
+
spam_classifier: Pipeline = load("./models/spam_classifier.joblib")
|
8 |
+
|
9 |
+
def greet(email_body: str) -> float:
|
10 |
+
model_input = pd.DataFrame([email_body], columns=["Message"])
|
11 |
+
prediction = spam_classifier.predict_proba(model_input)[0][1]
|
12 |
+
return prediction
|
13 |
+
|
14 |
+
demo = gr.Interface(fn=greet, inputs="text", outputs="number")
|
15 |
+
|
16 |
+
demo.launch()
|
models/spam_classifier.joblib
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:6a5c22bf5e15e769b13aa3a2b4d1508ed33bbf8f7b41a0c7106fdfcc7d6eafae
|
3 |
+
size 526974
|
requirements.txt
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
1 |
+
scikit-learn==1.3.1
|
2 |
+
gradio==3.44.4
|