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 |
-
|
143 |
-
|
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':
|
152 |
})
|
153 |
|
154 |
-
# Guardar
|
155 |
if store_student_morphosyntax_result(
|
156 |
username=st.session_state.username,
|
157 |
text=iteration_text,
|
158 |
-
arc_diagrams=
|
159 |
):
|
160 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|