Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import pickle | |
| import nltk | |
| from nltk.corpus import stopwords | |
| import string | |
| from sklearn.feature_extraction.text import TfidfVectorizer | |
| from sklearn.naive_bayes import MultinomialNB | |
| nltk.download('punkt') | |
| nltk.download('stopwords') | |
| tfidf=pickle.load(open('tfidf.pkl','rb')) | |
| model=pickle.load(open('model.pkl','rb')) | |
| def classify_msg(Message): | |
| X=preprocess(Message) | |
| X_vector=tfidf.transform([X]) | |
| prediction=model.predict(X_vector)[0] | |
| return 'Spam' if prediction==1 else 'Not Spam' | |
| def preprocess(text): | |
| text = text.lower() | |
| tokens = nltk.word_tokenize(text) | |
| text = [] | |
| for token in tokens: | |
| if token not in stopwords.words('english') and token not in string.punctuation: | |
| text.append(token) | |
| return ' '.join(text) | |
| iface = gr.Interface( | |
| fn=classify_msg, | |
| inputs=gr.inputs.Textbox(placeholder='Type Message Here'), | |
| outputs="text", | |
| ) | |
| if __name__ == "__main__": | |
| iface.launch() | |