AIdeaText commited on
Commit
409ec3b
verified
1 Parent(s): 5bd23d0

Update modules/morphosyntax/morphosyntax_interface.py

Browse files
modules/morphosyntax/morphosyntax_interface.py CHANGED
@@ -99,7 +99,7 @@ def display_morphosyntax_interface(lang_code, nlp_models, morpho_t):
99
  nlp_models[lang_code]
100
  )
101
 
102
- # Actualizar estado
103
  st.session_state.morpho_state.update({
104
  'original_text': text_input,
105
  'original_analysis': {'doc': doc, 'analysis': analysis},
@@ -107,13 +107,13 @@ def display_morphosyntax_interface(lang_code, nlp_models, morpho_t):
107
  'analysis_count': st.session_state.morpho_state['analysis_count'] + 1
108
  })
109
 
110
- # Guardar en base de datos
111
  if store_student_morphosyntax_result(
112
  username=st.session_state.username,
113
  text=text_input,
114
  arc_diagrams=analysis['arc_diagrams']
115
  ):
116
  # Mostrar diagrama original
 
117
  display_morphosyntax_results({'doc': doc, 'analysis': analysis}, lang_code, morpho_t)
118
 
119
  st.markdown("---")
@@ -139,25 +139,40 @@ def display_morphosyntax_interface(lang_code, nlp_models, morpho_t):
139
  # Procesar iteraci贸n
140
  if iterate_button and iteration_text.strip():
141
  try:
142
- doc = nlp_models[lang_code](iteration_text)
143
- analysis = perform_advanced_morphosyntactic_analysis(
144
  iteration_text,
145
  nlp_models[lang_code]
146
  )
147
 
148
- # Actualizar estado
149
  st.session_state.morpho_state.update({
150
  'iteration_text': iteration_text,
151
- 'iteration_analysis': {'doc': doc, 'analysis': analysis}
152
  })
153
 
154
- # Guardar y mostrar
155
  if store_student_morphosyntax_result(
156
  username=st.session_state.username,
157
  text=iteration_text,
158
- arc_diagrams=analysis['arc_diagrams']
159
  ):
160
- display_morphosyntax_results({'doc': doc, 'analysis': analysis}, lang_code, morpho_t)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
 
162
  except Exception as e:
163
  st.error("Error al procesar iteraci贸n")
@@ -171,7 +186,6 @@ def display_morphosyntax_interface(lang_code, nlp_models, morpho_t):
171
  st.error("Error general en la interfaz")
172
  logger.error(f"Error: {str(e)}")
173
 
174
-
175
  def display_morphosyntax_results(result, lang_code, morpho_t):
176
  """
177
  Muestra solo el diagrama de arco.
 
99
  nlp_models[lang_code]
100
  )
101
 
102
+ # Actualizar estado original
103
  st.session_state.morpho_state.update({
104
  'original_text': text_input,
105
  'original_analysis': {'doc': doc, 'analysis': analysis},
 
107
  'analysis_count': st.session_state.morpho_state['analysis_count'] + 1
108
  })
109
 
 
110
  if store_student_morphosyntax_result(
111
  username=st.session_state.username,
112
  text=text_input,
113
  arc_diagrams=analysis['arc_diagrams']
114
  ):
115
  # Mostrar diagrama original
116
+ st.subheader("An谩lisis Original")
117
  display_morphosyntax_results({'doc': doc, 'analysis': analysis}, lang_code, morpho_t)
118
 
119
  st.markdown("---")
 
139
  # Procesar iteraci贸n
140
  if iterate_button and iteration_text.strip():
141
  try:
142
+ doc_iter = nlp_models[lang_code](iteration_text)
143
+ analysis_iter = perform_advanced_morphosyntactic_analysis(
144
  iteration_text,
145
  nlp_models[lang_code]
146
  )
147
 
148
+ # Actualizar estado de iteraci贸n
149
  st.session_state.morpho_state.update({
150
  'iteration_text': iteration_text,
151
+ 'iteration_analysis': {'doc': doc_iter, 'analysis': analysis_iter}
152
  })
153
 
154
+ # Guardar iteraci贸n
155
  if store_student_morphosyntax_result(
156
  username=st.session_state.username,
157
  text=iteration_text,
158
+ arc_diagrams=analysis_iter['arc_diagrams']
159
  ):
160
+ # Mostrar ambos diagramas
161
+ st.subheader("An谩lisis Original")
162
+ display_morphosyntax_results(
163
+ st.session_state.morpho_state['original_analysis'],
164
+ lang_code,
165
+ morpho_t
166
+ )
167
+
168
+ st.markdown("---")
169
+
170
+ st.subheader("An谩lisis de Cambios")
171
+ display_morphosyntax_results(
172
+ {'doc': doc_iter, 'analysis': analysis_iter},
173
+ lang_code,
174
+ morpho_t
175
+ )
176
 
177
  except Exception as e:
178
  st.error("Error al procesar iteraci贸n")
 
186
  st.error("Error general en la interfaz")
187
  logger.error(f"Error: {str(e)}")
188
 
 
189
  def display_morphosyntax_results(result, lang_code, morpho_t):
190
  """
191
  Muestra solo el diagrama de arco.