TiberiuCristianLeon commited on
Commit
011b5f0
·
verified ·
1 Parent(s): 978158a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -14
app.py CHANGED
@@ -19,28 +19,46 @@ def download_argos_model(from_code, to_code):
19
  )
20
  argostranslate.package.install_from_path(package_to_install.download())
21
 
22
- # Create the app layout
23
  st.header("Text Machine Translation")
24
  input_text = st.text_input("Enter text to translate:")
25
- # Create a list of options for the select box
 
26
  options = ["German", "Romanian", "English", "French", "Spanish", "Italian"]
27
- langs = {"English":"en", "Romanian":"ro", "German":"de", "French":"fr", "Spanish":"es", "Italian":"it"}
28
- models = ["Helsinki-NLP", "t5-base", "t5-small", "t5-large", "Unbabel/Tower-Plus-2B", "Unbabel/TowerInstruct-Mistral-7B-v0.2", 'Google', 'Argos']
 
 
 
 
 
 
 
 
 
 
29
 
30
- # Create two columns
31
- scol, tcol = st.columns(2)
32
- # Place select boxes in columns
33
  with scol:
34
- sselected_language = st.selectbox("Source language:", options, index=0, placeholder="Select source language")
 
 
 
 
 
 
 
35
  with tcol:
36
- tselected_language = st.selectbox("Target language:", options, index=1, placeholder="Select target language")
37
- model_name = st.selectbox("Select a model:", models, index=0, placeholder="Select language model")
 
 
 
38
 
39
- sl = langs[sselected_language]
40
- tl = langs[tselected_language]
 
41
 
42
- st.session_state["sselected_language"] = sselected_language
43
- st.session_state["tselected_language"] = tselected_language
44
  st.session_state["model_name"] = model_name
45
 
46
  if model_name == 'Helsinki-NLP':
 
19
  )
20
  argostranslate.package.install_from_path(package_to_install.download())
21
 
22
+ # App layout
23
  st.header("Text Machine Translation")
24
  input_text = st.text_input("Enter text to translate:")
25
+
26
+ # Language options and mappings
27
  options = ["German", "Romanian", "English", "French", "Spanish", "Italian"]
28
+ langs = {"English": "en", "Romanian": "ro", "German": "de", "French": "fr", "Spanish": "es", "Italian": "it"}
29
+ models = ["Helsinki-NLP", "t5-base", "t5-small", "t5-large", "Unbabel/Tower-Plus-2B",
30
+ "Unbabel/TowerInstruct-Mistral-7B-v0.2", "Google", "Argos"]
31
+
32
+ # Initialize session state if not already set
33
+ if "sselected_language" not in st.session_state:
34
+ st.session_state["sselected_language"] = options[0]
35
+ if "tselected_language" not in st.session_state:
36
+ st.session_state["tselected_language"] = options[1]
37
+
38
+ # Create columns for language selection
39
+ scol, swapcol, tcol = st.columns([3, 1, 3])
40
 
 
 
 
41
  with scol:
42
+ sselected_language = st.selectbox("Source language:", options,
43
+ index=options.index(st.session_state["sselected_language"]))
44
+ with swapcol:
45
+ if st.button("🔄 Swap"):
46
+ # Swap languages in session state
47
+ st.session_state["sselected_language"], st.session_state["tselected_language"] = \
48
+ st.session_state["tselected_language"], st.session_state["sselected_language"]
49
+ st.experimental_rerun() # Rerun to update UI
50
  with tcol:
51
+ tselected_language = st.selectbox("Target language:", options,
52
+ index=options.index(st.session_state["tselected_language"]))
53
+
54
+ # Model selection
55
+ model_name = st.selectbox("Select a model:", models, index=0)
56
 
57
+ # Language codes
58
+ sl = langs[st.session_state["sselected_language"]]
59
+ tl = langs[st.session_state["tselected_language"]]
60
 
61
+ # Store selections in session state
 
62
  st.session_state["model_name"] = model_name
63
 
64
  if model_name == 'Helsinki-NLP':