Spaces:
Build error
Build error
| import streamlit as st | |
| from transformers import MarianMTModel, MarianTokenizer, T5ForConditionalGeneration, T5Tokenizer | |
| # Load the MarianMT model for Urdu to English translation | |
| src_lang = 'ur' | |
| tgt_lang = 'en' | |
| model_name = f'Helsinki-NLP/opus-mt-{src_lang}-{tgt_lang}' | |
| model = MarianMTModel.from_pretrained(model_name) | |
| tokenizer = MarianTokenizer.from_pretrained(model_name) | |
| # Load T5 model for key phrase extraction | |
| key_phrase_model = T5ForConditionalGeneration.from_pretrained("t5-small") | |
| key_phrase_tokenizer = T5Tokenizer.from_pretrained("t5-small") | |
| def translate_text(input_text): | |
| # Translate Urdu text to English | |
| translated = tokenizer(input_text, return_tensors="pt", padding=True, truncation=True) | |
| translated_output = model.generate(**translated) | |
| translated_text = tokenizer.decode(translated_output[0], skip_special_tokens=True) | |
| return translated_text | |
| def extract_key_phrases(text): | |
| # Extract key phrases from English text using T5 | |
| input_text = f"extract key phrases: {text}" | |
| inputs = key_phrase_tokenizer(input_text, return_tensors="pt", padding=True, truncation=True) | |
| outputs = key_phrase_model.generate(**inputs) | |
| key_phrases = key_phrase_tokenizer.decode(outputs[0], skip_special_tokens=True) | |
| return key_phrases | |
| # Streamlit UI | |
| st.title("Urdu Text Translator and Key Phrase Extractor") | |
| # Input Urdu text | |
| input_urdu_text = st.text_area("Enter Urdu Text", "", height=200) | |
| if input_urdu_text: | |
| # Translate the Urdu text to English | |
| st.subheader("Translated English Text") | |
| translated_text = translate_text(input_urdu_text) | |
| st.text_area("Translated Text (English)", translated_text, height=150, disabled=True) | |
| # Extract key phrases from the translated English text | |
| st.subheader("Extracted Key Phrases") | |
| key_phrases = extract_key_phrases(translated_text) | |
| st.write(key_phrases) | |
| # Add a footer | |
| st.markdown("---") | |
| st.markdown("Developed by [Your Name]") | |