Spaces:
Sleeping
Sleeping
import gradio as gr | |
import subprocess | |
subprocess.check_call(["pip", "install", "transformers"]) | |
subprocess.check_call(["pip", "install", "torch"]) | |
subprocess.check_call(["pip", "install", "sentencepiece"]) | |
from transformers import MBartForConditionalGeneration, MBart50TokenizerFast | |
from transformers import pipeline | |
summarizer = pipeline("summarization", model="facebook/bart-large-cnn") | |
model = MBartForConditionalGeneration.from_pretrained("facebook/mbart-large-50-many-to-many-mmt") | |
tokenizer = MBart50TokenizerFast.from_pretrained("facebook/mbart-large-50-many-to-many-mmt") | |
def summariser(ar_en, lang): | |
summ = summarizer(ar_en, max_length=130, min_length=30, do_sample=False)['summary_text'] | |
tokenizer.src_lang = "en_XX" | |
encoded_ar = tokenizer(summ, return_tensors="pt") | |
if(lang=='Hindi'): | |
coi='hi_IN' | |
if(lang=='Gujrati'): | |
coi='gu_IN' | |
if(lang=='Bengali'): | |
coi='bn_IN' | |
if(lang=='Tamil'): | |
coi='ta_IN' | |
generated_tokens = model.generate( | |
**encoded_ar, | |
forced_bos_token_id=tokenizer.lang_code_to_id[coi] | |
) | |
output = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0] | |
return output | |
iface = gr.Interface( | |
fn=summariser, | |
inputs=[gr.Textbox(label="Enter the paragraph in English", placeholder="Type here..."), gr.Radio(["Hindi", "Gujrati", "Bengali", "Tamil"], label="Language to be summarised in:")], | |
outputs="text", | |
title="English to Indic Summariser" | |
) | |
iface.launch() |