UnarineLeo commited on
Commit
b3dcfe5
1 Parent(s): d99c1e8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -14
app.py CHANGED
@@ -54,19 +54,17 @@ with col1:
54
  language = st.selectbox(f"Select language for input {i+1}:", language_options, key=f'language_{i}')
55
  sentence = st.text_input(f"Enter sentence for input {i+1} (with <mask>):", key=f'sentence_{i}')
56
 
 
57
  if language != 'Choose language' and sentence:
58
  input_sentences[language.lower()] = sentence
59
- else:
60
- st.session_state['warnings'].append(f"Warning: Please select a language and enter a sentence for input {i+1}")
61
 
62
  if st.button("Submit"):
63
- if st.session_state['warnings']:
64
- for warning in st.session_state['warnings']:
65
- st.warning(warning)
66
- else:
67
  results, warnings = fill_mask(input_sentences)
68
  st.session_state['results'] = results
69
  st.session_state['warnings'] = warnings
 
 
70
 
71
  elif option_selected == 'Upload a file(csv/txt)':
72
  uploaded_file = st.file_uploader("Choose a file (one sentence per line)")
@@ -95,13 +93,17 @@ with col2:
95
  st.markdown("### Output :bar_chart:")
96
 
97
  if st.session_state['results']:
98
- for language, predictions in st.session_state['results'].items():
99
- if predictions:
100
- top_prediction = predictions[0]
101
- predicted_word = top_prediction['token_str']
102
- score = top_prediction['score'] * 100
103
-
104
- st.markdown(f"**{language.capitalize()} Prediction:** {predicted_word} ({score:.2f}%)")
 
 
 
 
105
 
106
  if st.session_state['warnings']:
107
  for warning in st.session_state['warnings']:
@@ -116,4 +118,4 @@ footer {display:none !important;}
116
  .container {display: flex; justify-content: space-between; align-items: center; margin-bottom: 5px;}
117
  </style>
118
  """
119
- st.markdown(css, unsafe_allow_html=True)
 
54
  language = st.selectbox(f"Select language for input {i+1}:", language_options, key=f'language_{i}')
55
  sentence = st.text_input(f"Enter sentence for input {i+1} (with <mask>):", key=f'sentence_{i}')
56
 
57
+ # Only process filled language and sentence pairs
58
  if language != 'Choose language' and sentence:
59
  input_sentences[language.lower()] = sentence
 
 
60
 
61
  if st.button("Submit"):
62
+ if input_sentences:
 
 
 
63
  results, warnings = fill_mask(input_sentences)
64
  st.session_state['results'] = results
65
  st.session_state['warnings'] = warnings
66
+ else:
67
+ st.warning("Please fill at least one language and sentence.")
68
 
69
  elif option_selected == 'Upload a file(csv/txt)':
70
  uploaded_file = st.file_uploader("Choose a file (one sentence per line)")
 
93
  st.markdown("### Output :bar_chart:")
94
 
95
  if st.session_state['results']:
96
+ # Use st.fragment for dynamic content
97
+ with st.container():
98
+ for language, predictions in st.session_state['results'].items():
99
+ if predictions:
100
+ top_prediction = predictions[0]
101
+ predicted_word = top_prediction['token_str']
102
+ score = top_prediction['score'] * 100
103
+
104
+ # Displaying the prediction with fragment
105
+ st.markdown(f"**{language.capitalize()} Prediction:** {predicted_word} ({score:.2f}%)")
106
+ st.markdown(f"<div class='bar'><div class='bar-fill' style='width:{score}%;'></div></div>", unsafe_allow_html=True)
107
 
108
  if st.session_state['warnings']:
109
  for warning in st.session_state['warnings']:
 
118
  .container {display: flex; justify-content: space-between; align-items: center; margin-bottom: 5px;}
119
  </style>
120
  """
121
+ st.markdown(css, unsafe_allow_html=True)