|
import gradio as gr |
|
import numpy as np |
|
import pandas as pd |
|
from keras.preprocessing.sequence import pad_sequences |
|
from keras.models import load_model |
|
from keras.preprocessing.text import Tokenizer |
|
|
|
|
|
df = pd.read_csv("bangla_english_fake.csv") |
|
|
|
|
|
max_len = 1600 |
|
tokenizer = Tokenizer() |
|
tokenizer.fit_on_texts(df["text"]) |
|
text_seq = tokenizer.texts_to_sequences(df["text"]) |
|
|
|
|
|
model = load_model("bangla_english_fake_model.h5") |
|
|
|
|
|
def classify_fake_news(text): |
|
|
|
text_sequence = tokenizer.texts_to_sequences([text]) |
|
padded_sequence = pad_sequences(text_sequence, maxlen=max_len) |
|
|
|
prediction = model.predict(padded_sequence)[0] |
|
|
|
label = "Fake" if prediction < 0.5 else "Real" |
|
return label |
|
|
|
|
|
iface = gr.Interface( |
|
fn=classify_fake_news, |
|
inputs="text", |
|
outputs="label", |
|
title="Bangla & English Fake News Detection", |
|
description="Enter a news article to detect if it's fake or real." |
|
) |
|
|
|
|
|
iface.launch(share=True) |
|
|