import re | |
import tensorflow as tf | |
from tensorflow.keras.preprocessing.text import Tokenizer | |
import numpy as np | |
import keras | |
import pickle5 as p | |
import h5py | |
import gradio as gr | |
token_vecs = open('tokenizergood_cnnhero.pkl', 'rb') | |
token = p.load(token_vecs) | |
token_vecs.close() | |
model=tf.keras.models.load_model('CNNhero99per.h5') | |
def Text_Preprocessor(text): | |
# Removing all digits | |
text = re.sub(r'\d+', '', text) | |
# Removing all symbols | |
# symbols = '''!@#$%^&*()_+-={}[]:";'<>?,./\|''' | |
# for i in range(0, len(symbols)): | |
# text = text.replace(symbols[i], '') | |
text = re.sub('<[^>]+>', ' ', text) | |
text = re.sub(' ', ' ', text) | |
# Removing extra spaces | |
text = text.strip() | |
text = re.sub(' +', ' ', text) | |
# Removing links | |
text = re.sub(r'\(?http\S+', '', text) | |
# Removing tags | |
text = re.sub(r'#\S+', '', text) | |
print(text) | |
return text | |
def replace_repeated_letters(string): | |
words = string.split() | |
modified_words = [] | |
for word in words: | |
modified_word = re.sub(r'(.)\1+', r'\1', word) | |
modified_words.append(modified_word) | |
modified_string = ' '.join(modified_words) | |
return modified_string | |
def predict(sentence): | |
text = '' | |
sentence_lst=[] | |
sentence = Text_Preprocessor(sentence) | |
sentence = str(sentence).lower() | |
sentence = replace_repeated_letters(sentence) | |
sentence_lst.append(sentence) | |
sentence_seq=token.texts_to_sequences(sentence_lst) | |
sentence_padded = tf.keras.preprocessing.sequence.pad_sequences(sentence_seq,padding='post',maxlen=190,dtype=int) | |
# print(sentence_padded) | |
probability = (model.predict(sentence_padded))[0][0] | |
if probability > 0.5: | |
text = (f'Abusive | {np.round(probability*100,2)}%') | |
# print(f'Abusive | {np.round(probability*100,2)}%') | |
else: | |
text = (f'Not Abusive | {np.round(probability*100,2)}%') | |
# print(f'Not abusive | {100 - (np.round(probability*100,2))}%') | |
return text | |
# predict("bary beghairat insaan ho tum bnda tumhy lun mary bund mein") # Abusive | |
# predict("suna kaisa hai kuti k bachy") # Abusive | |
# predict("randi ky bachay") # Abusive | |
# predict("kanjri aurat ho tum randi") # Abusive | |
# predict("kisi kanjri ki olad") # Abusive | |
# predict("boht bari randi ho tum") # Abusive | |
# predict("suna kaisa hai tu?") # Not Abusive | |
# predict("suna kaisa hai bc tu?") # Abusive | |
# predict("HAHAHAHAHHAHAHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAHHHAHAAHHAHAAH") # Abusive | |
# predict("HAHAHAHAHHAHAAHHAHAAH bc") # Abusive | |
# predict("aa lgun tujhy bc") # Abusive | |
# predict("kaisy ho yaara?") # Not Abusive | |
# predict("ghasti ky bachay") # Abusive | |
# predict("kute") | |
# predict("mc") | |
# predict("kitna meinay kiya hai isky liye or ye kanjri ka bacha isky tewar hi nhi khatam hoty, bc raat ki neend haram ki hui hai") | |
# predict("asalam o alikum") | |
# predict("how are you madarchod") | |
# predict("behn k takky nikal idhr se") | |
# predict("Khoti shakal wala hai tu") | |
# predict("kuttay") | |
# predict("kanjri") | |
# predict("chutiya") | |
# predict("chutiye") | |
# predict("Aslam-o-Alaikum! Kaise ho? Umeed hai keh aap sab khairiyat se honge. Aaj ka din bohat khushgawar guzra hai. Subah subah uth kar sair karne ka maza hi kuch aur hai. Aaj ka mausam bhi bohat khubsurat hai. Umeed hai keh aaj ka din aap sab ke liye bohat achcha guzrega.") | |
# predict("Tum kya samajhte ho apne aap ko? Kuch bhi nahi ho tum! Bas ek kamzor, na-ahliyat gandu insaan ho tum. Tumhari zindagi toh barbaad ho chuki hai aur ab tum apne ghatiya zehan se dusro ko bhi barbaad karna chahte ho. Tumhare jaiso ko toh insaan nahi, janwar kehte hain. Hadd hai tumhare level ki!") | |
# predict("wo boht achy sir hain humary tumhy nhi pta, tum bss apni fee jama krwao or class lo bc") # Abusive | |
# predict("wo boht achy sir hain humary tumhy nhi pta, tum bss apni fee jama krwao or class lo") # Not Abusive | |
# predict("run mureed nikal bc ik ghasti ka bacha hai tu meinay kaha bhi tha bill mujhy de dy phir ja kr tuny uski gaand mein daal diya bnda tujhy maar de kanjar") | |
# predict("tu acha insaan hai yaar tuny waisy hi kiya jaisy i wanted waisy meinay tujhy kaha tha k kal bhi tu aaksta hai ohir aaj kyun aya tu wo boht achy sir hain humary tumhy nhi pta, tum bss apni fee jama krwao") | |
# predict("bhen chod") | |
# predict("teri baji ko bhe ye he aitraz ha ha wesay patwari khota he tera asli abba ha beshak apni ami jan say puch lay baki imran yahodi bayghart kashmir frosh say to teri ami jan nay taste change kia ha imrani tati sahib") | |
# predict("mera jism meri marzi ka nara woh aurteen laga rahi hain jinki marzi ho betu mard hath bandh kar mazrat kar leta hai") | |
# predict("Zindagi aik aisi kaarobaar hai jismein safar hi manzil tak pahunchne ka rasta hai. Ismein jeet aur haar dono hi shamil hain. Lekin haarnay se haar nahi hoti balkay usmein seekhnay ka mauka hota hai. Agar hum haar ko sahi tareeqay se samajh lein toh hum apne aap ko aur zyada tayyar kar saktay hain jeet ke liye. Isliye, haar kay baad bhi himmat na haarein aur khud ko aur mukhtalif imkaanon kay liye tayyar rakhein. Zindagi kay har lamhay ko khushi se guzarne ki koshish karein, chahe woh kaafi chhotay hon ya phir bohat bade. Kabhi kabhi hum apni zindagi mein asaniyan chahte hain lekin asaniyan zindagi mein nahi hoti, usmein mehnat aur lagan ka role bohat important hota hai. Isliye, hamen apni zindagi mein lagan aur mehnat kay sath apne sapno ko haqeeqat mein tabdeel karna chahiye. Zindagi mein bura waqt bhi aata hai, lekin humein apne aap par bharosa rakhna chahiye aur asaani se haarnay nahi dena chahiye. Isi tarah, hum apni zindagi mein kamyabi haasil kar saktay hain aur apne dilon mein sakoon aur khushiyan bhar saktay hain. Assalam-o-Alaikum! Roman Urdu aik aisa zubaan hai jo kay Urdu aur English kay darmiyan se nikalti hai. Iski wajah se yeh bohat flexible aur samjhne mein aasan zubaan hai. Roman Urdu kay istemaal ke mukhtalif tariqay hain jaisay kay social media, chatting, aur text messaging main. Yeh zubaan ba-zahir aasaan hai, lekin uske ander itni shaan hai keh woh log jo urdu likhna aur parhna nahi jantay, woh roman urdu se madad lay saktay hain. Kayi log samajhtay hain keh roman urdu kay istemaal se hamari Urdu zubaan ki kharabi hogi lekin aisa nahi hai. Agar hum isey sahi tareeqay se istemaal karain toh yeh hamari zubaan ko aik naye lehjay kay sath amal mein la sakta hai.") | |
# predict("Zindagi aik aisi kaarobaar hai jismein safar hi manzil tak pahunchne ka rasta hai. Ismein jeet aur haar dono hi shamil hain. Lekin haarnay se haar nahi hoti balkay usmein seekhnay ka mauka hota hai. Agar hum haar ko sahi tareeqay se samajh lein toh hum apne aap ko aur zyada tayyar kar saktay hain jeet ke liye. Isliye, haar kay baad bhi himmat na haarein aur khud ko aur mukhtalif imkaanon kay liye tayyar rakhein. Zindagi kay har lamhay ko khushi se guzarne ki koshish karein, chahe woh kaafi chhotay hon ya phir bohat bade. Kabhi kabhi hum apni zindagi mein asaniyan chahte hain lekin asaniyan zindagi mein nahi hoti, usmein mehnat aur lagan ka role bohat important hota hai. Isliye, hamen apni zindagi mein lagan aur mehnat kay sath apne sapno ko haqeeqat mein tabdeel karna chahiye. Zindagi mein bura waqt bhi aata hai, lekin humein apne aap par bharosa rakhna chahiye aur asaani se haarnay nahi dena chahiye. Isi tarah, hum apni zindagi mein kamyabi haasil kar saktay hain aur apne dilon mein sakoon aur khushiyan bhar saktay hain.") | |
# predict("Assalam-o-Alaikum! Roman Urdu aik aisa zubaan hai jo kay Urdu aur English kay darmiyan se nikalti hai. Iski wajah se yeh bohat flexible aur samjhne mein aasan zubaan hai. Roman Urdu kay istemaal ke mukhtalif tariqay hain jaisay kay social media, chatting, aur text messaging main. Yeh zubaan ba-zahir aasaan hai, lekin uske ander itni shaan hai keh woh log jo urdu likhna aur parhna nahi jantay, woh roman urdu se madad lay saktay hain. Kayi log samajhtay hain keh roman urdu kay istemaal se hamari Urdu zubaan ki kharabi hogi lekin aisa nahi hai. Agar hum isey sahi tareeqay se istemaal karain toh yeh hamari zubaan ko aik naye lehjay kay sath amal mein la sakta hai. Roman Urdu hamare liye aik aham aur asaan zubaan hai jo hamain mukhtalif logon se milwanay mein madad deta hai. Iske sath-sath roman urdu ko seekhna aur istemaal karna aaj kal bohat zaroori hai ta keh hum modern technology kay zamanay ke sath-sath chal saken.") | |
interface = gr.Interface(fn=predict,inputs=gr.inputs.Textbox(lines=2,placeholder='Jaayeza ki jiye!'),outputs='text') | |
interface.launch() |