Spaces:
				
			
			
	
			
			
		Sleeping
		
	
	
	
			
			
	
	
	
	
		
		
		Sleeping
		
	| import gradio as gr | |
| from gradio_rich_textbox import RichTextbox | |
| from helper.text_preprocess import space_punc | |
| from helper.alignment_mappers import select_model | |
| from helper.pos_taggers import select_pos_tagger | |
| from helper.translators import select_translator | |
| def bn_postagger(src, translator, model_name, tagger): | |
| """ | |
| Bangla PoS Tagger | |
| """ | |
| src = space_punc(src) | |
| tgt_base, tgt = select_translator(src, translator) | |
| model_name = select_model(model_name) | |
| result, pos_accuracy = select_pos_tagger(src, tgt, model_name, tagger) | |
| return tgt_base, result, pos_accuracy | |
| # Define the Gradio interface | |
| # demo = gr.Interface( | |
| # fn=bn_postagger, | |
| # inputs=[ | |
| # gr.Textbox(label="Enter Bangla Sentence", placeholder="বাংলা বাক্য লিখুন"), | |
| # gr.Dropdown(["Google", "BanglaNMT", "MyMemory"], label="Select a Translator"), | |
| # gr.Dropdown(["spaCy", "NLTK", "Flair", "TextBlob"], label="Select a PoS Tagger") | |
| # ], | |
| # outputs= [ | |
| # gr.Textbox(label="English Translation"), | |
| # RichTextbox(label="PoS Tags"), | |
| # gr.Textbox(label="Overall PoS Tagging Accuracy") | |
| # ], | |
| # live=False, | |
| # title="Bangla PoS Taggers", | |
| # theme='', | |
| # examples=[ | |
| # ["বাংলাদেশ দক্ষিণ এশিয়ার একটি সার্বভৌম রাষ্ট্র।"], | |
| # ["বাংলাদেশের সংবিধানিক নাম কি?"], | |
| # ["বাংলাদেশের সাংবিধানিক নাম গণপ্রজাতন্ত্রী বাংলাদেশ।"], | |
| # ["তিনজনের কেউই বাবার পথ ধরে প্রযুক্তি দুনিয়ায় হাঁটেননি।"], | |
| # ["বিশ্বের আরও একটি সেরা ক্লাব।"] | |
| # ] | |
| # ) | |
| with gr.Blocks(css="styles.css", title="Home | Bangla PoS Taggers") as demo: | |
| gr.HTML("<h1>Bangla PoS Taggers</h1>") | |
| gr.HTML("<p>Parts of Speech (PoS) Tagging of Bangla Sentence using Bangla-English <strong>Word Alignment</strong></p>") | |
| with gr.Tab("Using Alignment"): | |
| with gr.Row(): | |
| with gr.Column(): | |
| inputs = [ | |
| gr.Textbox( | |
| label="Enter Bangla Sentence", | |
| show_copy_button=True, | |
| placeholder="বাংলা বাক্য লিখুন" | |
| ), | |
| gr.Dropdown( | |
| choices=["Google", "BanglaNMT", "MyMemory"], | |
| label="Select a Translator" | |
| ), | |
| gr.Dropdown( | |
| choices=["Google-mBERT (Base-Multilingual)", "Neulab-AwesomeAlign (Bn-En-0.5M)", "BUET-BanglaBERT (Large)", "SagorSarker-BanglaBERT (Base)", "SentenceTransformers-LaBSE (Multilingual)"], | |
| label="Select a Model" | |
| ), | |
| gr.Dropdown( | |
| choices=["spaCy", "NLTK", "Flair", "TextBlob"], | |
| label="Select a PoS Tagger" | |
| ) | |
| ] | |
| with gr.Row(): | |
| btn = gr.Button(value="Submit", variant="primary") | |
| gr.ClearButton(inputs) | |
| with gr.Column(): | |
| outputs = [ | |
| gr.Textbox(label="English Translation", show_copy_button=True), | |
| RichTextbox(label="PoS Tags"), | |
| gr.Textbox(label="PoS Tagging Accuracy (Based on Unknown(UNK) Tags)") | |
| ] | |
| btn.click(bn_postagger, inputs, outputs) | |
| gr.Examples([ | |
| [ | |
| "বাংলাদেশ দক্ষিণ এশিয়ার একটি সার্বভৌম রাষ্ট্র।", | |
| "Google", | |
| "Neulab-AwesomeAlign (Bn-En-0.5M)", | |
| "NLTK" | |
| ], | |
| [ | |
| "বাংলাদেশের সংবিধানিক নাম কি?", | |
| "Google", | |
| "Google-mBERT (Base-Multilingual)", | |
| "spaCy" | |
| ], | |
| [ | |
| "বাংলাদেশের সাংবিধানিক নাম গণপ্রজাতন্ত্রী বাংলাদেশ।", | |
| "Google", | |
| "Google-mBERT (Base-Multilingual)", | |
| "TextBlob" | |
| ], | |
| [ | |
| "তিনজনের কেউই বাবার পথ ধরে প্রযুক্তি দুনিয়ায় হাঁটেননি।", | |
| "Google", | |
| "Neulab-AwesomeAlign (Bn-En-0.5M)", | |
| "spaCy" | |
| ], | |
| [ | |
| "তিনজনের কেউই বাবার পথ ধরে প্রযুক্তি দুনিয়ায় হাঁটেননি।", | |
| "BanglaNMT", | |
| "Google-mBERT (Base-Multilingual)", | |
| "spaCy" | |
| ], | |
| [ | |
| "তিনজনের কেউই বাবার পথ ধরে প্রযুক্তি দুনিয়ায় হাঁটেননি।", | |
| "MyMemory", | |
| "Google-mBERT (Base-Multilingual)", | |
| "spaCy" | |
| ], | |
| [ | |
| "বিশ্বের আরও একটি সেরা ক্লাব।", | |
| "Google", | |
| "Neulab-AwesomeAlign (Bn-En-0.5M)", | |
| "Flair" | |
| ] | |
| ], inputs) | |
| with gr.Tab("Using Bangla Library"): | |
| with gr.Row(): | |
| with gr.Column(): | |
| inputs = [ | |
| gr.Textbox( | |
| label="Enter Bangla Sentence", | |
| show_copy_button=True, | |
| placeholder="বাংলা বাক্য লিখুন" | |
| ), | |
| gr.Dropdown( | |
| choices=["BNLTK", "SBNLTK"], | |
| label="Select a Bangla NLP Library" | |
| ) | |
| ] | |
| with gr.Row(): | |
| btn = gr.Button(value="Submit", variant="primary") | |
| gr.ClearButton(inputs) | |
| with gr.Column(): | |
| outputs = [ | |
| RichTextbox(label="PoS Tags") | |
| ] | |
| btn.click(bn_postagger, inputs, outputs) | |
| gr.Examples([ | |
| [ | |
| "বাংলাদেশ দক্ষিণ এশিয়ার একটি সার্বভৌম রাষ্ট্র।", | |
| "BNLTK" | |
| ], | |
| [ | |
| "বাংলাদেশের সংবিধানিক নাম কি?", | |
| "SBNLTK" | |
| ], | |
| [ | |
| "বাংলাদেশের সাংবিধানিক নাম গণপ্রজাতন্ত্রী বাংলাদেশ।", | |
| "SBNLTK" | |
| ], | |
| [ | |
| "তিনজনের কেউই বাবার পথ ধরে প্রযুক্তি দুনিয়ায় হাঁটেননি।", | |
| "BNLTK" | |
| ] | |
| ], inputs) | |
| # Launch the Gradio app | |
| if __name__ == "__main__": | |
| demo.launch() | 
