Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -20,26 +20,39 @@ st.title("Multi-Language Translator")
|
|
| 20 |
|
| 21 |
st.sidebar.header("Translation Settings")
|
| 22 |
|
| 23 |
-
#
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
with st.spinner("Translating..."):
|
|
|
|
|
|
|
|
|
|
| 42 |
translated_text = translate_text(text_to_translate, model, tokenizer)
|
| 43 |
st.markdown(f"### Translated Text:\n{translated_text}")
|
| 44 |
-
|
| 45 |
-
|
|
|
|
| 20 |
|
| 21 |
st.sidebar.header("Translation Settings")
|
| 22 |
|
| 23 |
+
# Dropdown menus for source and target languages
|
| 24 |
+
language_options = {
|
| 25 |
+
"English": "en",
|
| 26 |
+
"Urdu": "ur",
|
| 27 |
+
"German": "de",
|
| 28 |
+
"French": "fr",
|
| 29 |
+
"Spanish": "es",
|
| 30 |
+
"Italian": "it",
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
src_lang = st.sidebar.selectbox("Select Source Language", list(language_options.keys()))
|
| 34 |
+
tgt_lang = st.sidebar.selectbox("Select Target Language", list(language_options.keys()))
|
| 35 |
+
|
| 36 |
+
# Get language codes
|
| 37 |
+
src_lang_code = language_options[src_lang]
|
| 38 |
+
tgt_lang_code = language_options[tgt_lang]
|
| 39 |
+
|
| 40 |
+
# Input text
|
| 41 |
+
text_to_translate = st.text_area("Enter text to translate:")
|
| 42 |
+
|
| 43 |
+
# Translate button
|
| 44 |
+
if st.button("Translate"):
|
| 45 |
+
if not text_to_translate.strip():
|
| 46 |
+
st.error("Please enter some text to translate.")
|
| 47 |
+
elif src_lang_code == tgt_lang_code:
|
| 48 |
+
st.error("Source and target languages must be different.")
|
| 49 |
+
else:
|
| 50 |
+
try:
|
| 51 |
with st.spinner("Translating..."):
|
| 52 |
+
# Load the model
|
| 53 |
+
model, tokenizer = load_model(src_lang_code, tgt_lang_code)
|
| 54 |
+
# Translate the text
|
| 55 |
translated_text = translate_text(text_to_translate, model, tokenizer)
|
| 56 |
st.markdown(f"### Translated Text:\n{translated_text}")
|
| 57 |
+
except Exception as e:
|
| 58 |
+
st.error(f"Error during translation: {str(e)}")
|