Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -7,15 +7,11 @@ from langchain_huggingface.embeddings import HuggingFaceEmbeddings
|
|
| 7 |
from langchain.vectorstores import Chroma
|
| 8 |
import os
|
| 9 |
from docx.shared import Inches, Pt, RGBColor
|
| 10 |
-
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
|
| 11 |
from docx.oxml import OxmlElement
|
| 12 |
from docx.oxml.ns import qn
|
| 13 |
from docx.oxml import parse_xml
|
| 14 |
from docx.oxml.ns import nsdecls
|
| 15 |
-
from docx import Document
|
| 16 |
-
from docx.shared import Inches, Pt, RGBColor
|
| 17 |
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
|
| 18 |
-
from io import BytesIO
|
| 19 |
from PyPDF2 import PdfReader
|
| 20 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
| 21 |
|
|
@@ -130,6 +126,7 @@ def mejorar_texto_con_IA(var_name, var_value, vectordb_list, nombre_curso):
|
|
| 130 |
def crear_documento(nombre_curso, variables):
|
| 131 |
doc = Document('plantilla_micro.docx')
|
| 132 |
|
|
|
|
| 133 |
# Insertar la imagen con estilo centrado
|
| 134 |
imagen = doc.add_paragraph()
|
| 135 |
imagen.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
|
|
@@ -149,6 +146,21 @@ def crear_documento(nombre_curso, variables):
|
|
| 149 |
|
| 150 |
info_general = [
|
| 151 |
("Nombre del curso", nombre_curso),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 152 |
]
|
| 153 |
|
| 154 |
for key, value in info_general:
|
|
@@ -158,11 +170,18 @@ def crear_documento(nombre_curso, variables):
|
|
| 158 |
row[1].text = value
|
| 159 |
|
| 160 |
# Secciones con Títulos
|
|
|
|
| 161 |
secciones = [
|
| 162 |
-
("RELACIONES CON EL PERFIL",
|
| 163 |
-
("INTENCIONALIDADES FORMATIVAS",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 164 |
]
|
| 165 |
-
|
| 166 |
for titulo, contenido in secciones:
|
| 167 |
# Añadir título de sección con color personalizado
|
| 168 |
parrafo_titulo = doc.add_paragraph(f"\n{titulo}")
|
|
|
|
| 7 |
from langchain.vectorstores import Chroma
|
| 8 |
import os
|
| 9 |
from docx.shared import Inches, Pt, RGBColor
|
|
|
|
| 10 |
from docx.oxml import OxmlElement
|
| 11 |
from docx.oxml.ns import qn
|
| 12 |
from docx.oxml import parse_xml
|
| 13 |
from docx.oxml.ns import nsdecls
|
|
|
|
|
|
|
| 14 |
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
|
|
|
|
| 15 |
from PyPDF2 import PdfReader
|
| 16 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
| 17 |
|
|
|
|
| 126 |
def crear_documento(nombre_curso, variables):
|
| 127 |
doc = Document('plantilla_micro.docx')
|
| 128 |
|
| 129 |
+
|
| 130 |
# Insertar la imagen con estilo centrado
|
| 131 |
imagen = doc.add_paragraph()
|
| 132 |
imagen.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
|
|
|
|
| 146 |
|
| 147 |
info_general = [
|
| 148 |
("Nombre del curso", nombre_curso),
|
| 149 |
+
("Programa académico", variables.get('programa_academico', '')),
|
| 150 |
+
("Unidad académica", variables.get('unidad_academica', '')),
|
| 151 |
+
("Programas que ofrecen el curso", variables.get('programas_ofrece', '')),
|
| 152 |
+
("Vigencia", variables.get('vigencia', '')),
|
| 153 |
+
("Código del curso", variables.get('codigo_curso', '')),
|
| 154 |
+
("Tipo de curso", variables.get('tipo_curso', '') if variables.get('tipo_curso', '') != 'Otro' else variables.get('tipo_curso_otro', '')),
|
| 155 |
+
("Características del curso", ', '.join(variables.get('caracteristicas_curso', []))),
|
| 156 |
+
("Modalidad educativa", variables.get('modalidad', '') if variables.get('modalidad', '') != 'Otra' else variables.get('modalidad_otra', '')),
|
| 157 |
+
("Área, núcleo o componente", variables.get('nombre_area', '')),
|
| 158 |
+
("Prerrequisitos", variables.get('prerrequisitos', '')),
|
| 159 |
+
("Correquisitos", variables.get('correquisitos', '')),
|
| 160 |
+
("Créditos académicos", variables.get('num_creditos', '')),
|
| 161 |
+
("Horas de interacción", variables.get('horas_interaccion', '')),
|
| 162 |
+
("Horas de trabajo independiente", variables.get('horas_independiente', '')),
|
| 163 |
+
("Horas totales del curso", variables.get('horas_totales', ''))
|
| 164 |
]
|
| 165 |
|
| 166 |
for key, value in info_general:
|
|
|
|
| 170 |
row[1].text = value
|
| 171 |
|
| 172 |
# Secciones con Títulos
|
| 173 |
+
# Secciones con Títulos
|
| 174 |
secciones = [
|
| 175 |
+
("RELACIONES CON EL PERFIL", variables.get('relaciones_perfil', '')),
|
| 176 |
+
("INTENCIONALIDADES FORMATIVAS", variables.get('intencionalidades', '')),
|
| 177 |
+
("APORTES DEL CURSO A LA FORMACIÓN INTEGRAL Y A LA FORMACIÓN EN INVESTIGACIÓN", variables.get('aportes_formacion', '')),
|
| 178 |
+
("LÍNEAS DE SENTIDO Y DERROTERO DE PREGUNTAS", f"Líneas de sentido: {variables.get('lineas_sentido', '')}\nDerrotero de preguntas: {variables.get('derrotero_preguntas', '')}"),
|
| 179 |
+
("DESCRIPCIÓN DE LOS CONOCIMIENTOS Y/O SABERES", variables.get('descripcion_conocimientos', '')),
|
| 180 |
+
("METODOLOGÍA", f"Estrategias didácticas: {variables.get('estrategias_didacticas', '')}\nMetodología: {variables.get('metodologia', '')}\nMedios y recursos didácticos: {variables.get('medios_recursos', '')}\nFormas de interacción: {variables.get('formas_interaccion', '')}\nEstrategias de internacionalización: {variables.get('estrategias_internacionalizacion', '')}\nEstrategias de diversidad: {variables.get('estrategias_diversidad', '')}"),
|
| 181 |
+
("EVALUACIÓN", f"Concepción de evaluación: {variables.get('concepcion_evaluacion', '')}\nProcesos de aprendizaje: {variables.get('procesos_aprendizaje', '')}\nMomentos de evaluación y porcentajes: {variables.get('momentos_evaluacion', '')}"),
|
| 182 |
+
("BIBLIOGRAFÍA Y OTRAS FUENTES", variables.get('bibliografia', '')),
|
| 183 |
+
("COMUNIDAD ACADÉMICA QUE PARTICIPÓ EN LA ELABORACIÓN DEL MICROCURRÍCULO", f"Nombres: {variables.get('nombres_apellidos', '')}\nUnidad académica: {variables.get('unidad_academica_participantes', '')}\nFormación académica: {variables.get('formacion_academica', '')}")
|
| 184 |
]
|
|
|
|
| 185 |
for titulo, contenido in secciones:
|
| 186 |
# Añadir título de sección con color personalizado
|
| 187 |
parrafo_titulo = doc.add_paragraph(f"\n{titulo}")
|