File size: 1,186 Bytes
442af33 a16fa51 442af33 a16fa51 442af33 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import streamlit as st
from transformers import MarianMTModel, MarianTokenizer
# Function to load the translation model
@st.cache_resource
def load_model():
# Use a model for translating to English (Supports various languages)
model_name = "Helsinki-NLP/opus-mt-en-ROMANCE"
model = MarianMTModel.from_pretrained(model_name)
tokenizer = MarianTokenizer.from_pretrained(model_name)
return model, tokenizer
# Translate the text to English
def translate_to_english(text, model, tokenizer):
inputs = tokenizer.encode(text, return_tensors="pt", padding=True)
translated = model.generate(inputs, max_length=512)
translated_text = tokenizer.decode(translated[0], skip_special_tokens=True)
return translated_text
# Streamlit UI setup
st.title("Language Translator to English")
st.write("Translate any language (Romanian, Spanish, French, etc.) to English using Hugging Face models!")
# Text input field
input_text = st.text_area("Enter text in any language", "")
if input_text:
model, tokenizer = load_model()
translated_text = translate_to_english(input_text, model, tokenizer)
st.subheader("Translated Text:")
st.write(translated_text)
|