Ver todos los proyectos

AxiomEngine

Generación de planes de estudio con prerrequisitos derivados de un grafo y orden de salida determinista.

Un camino de prerrequisitos ordena el plan.
Interfaz
API HTTP
Lenguaje
Go
Llamadas tipadas al modelo
BAML
Proveedor de modelos
AWS Bedrock
Ver repositorio

Creador de planes de estudio

Cadenas completas en orden de estudio.

Variables
Objetos
Clases
Herencia
Polimorfismo
  1. 1
    Variables—Recursos ilustrativos: diagramRecursos ilustrativos: video
  2. 2
    ObjetosVariablesRecursos ilustrativos: diagramRecursos ilustrativos: video
  3. 3
    ClasesVariables › ObjetosRecursos ilustrativos: diagramRecursos ilustrativos: video
  4. 4
    HerenciaVariables › Objetos › ClasesRecursos ilustrativos: diagramRecursos ilustrativos: video
  5. 5
    PolimorfismoVariables › Objetos › Clases › HerenciaRecursos ilustrativos: diagramRecursos ilustrativos: video
subgraph_tuples
5
topics_processed
1
items_generated
5
items_after_validation
5

Simulación ilustrativa con datos de ejemplo fijos. No se llama a ningún modelo ni servicio en vivo.

Figura 1. Una interfaz ilustrativa de planificación para la API HTTP; no es una interfaz incluida en el repositorio.

Problema

Un plan de estudio necesita un orden de prerrequisitos, no solo una lista de temas. AxiomEngine combina dificultades declaradas en una evaluación con un grafo curricular: conceptos unidos por relaciones tipadas. La preferencia VARK declarada —visual, auditiva, lectura/escritura o kinestésica— es un dato de entrada, no una prueba de eficacia educativa.

De temas dispersos a un orden.

Cómo funciona

El servicio valida la solicitud, extrae contexto del grafo y planifica por cada tema con dificultades en paralelo. Después combina los resultados y vuelve a usar el grafo para reemplazar prerrequisitos y asignar prioridades.

Prerrequisitos antes del siguiente concepto.
Flujo del servicio
SolicitudEn paraleloValidarsolicitudExtraersubgrafoGrafo deconceptosTema 1Tema nCombinarValidar conel grafoPlan deestudioValidar solicitudEn paralelo: circuito compartidoValidarsolicitudExtraersubgrafoGrafo deconceptosTema 1Tema nCombinarValidar conel grafoPlan deestudio

Devuelve elementos ordenados; los recursos y las explicaciones no se validan.

Todos los componentes

  • Validar solicitud

    Valida identificadores, preferencia y temas conocidos antes de llamar al modelo.

  • Extraer subgrafo

    Lee un entorno de profundidad 2 y el orden de prerrequisitos del grafo.

  • Grafo de conceptos

    El grafo en memoria aporta relaciones depends_on e is_a a la extracción y la validación.

  • Tema 1

    Genera un plan por tema con tiempo límite y circuito compartido.

  • Tema n

    Las llamadas se ejecutan en paralelo y escriben en posiciones asignadas.

  • Combinar

    Deduplica en el orden solicitado; si falla un tema, falla la solicitud.

  • Validar con el grafo

    Descarta desconocidos, reemplaza prerrequisitos y asigna prioridades consecutivas.

  • Plan de estudio

    Devuelve elementos ordenados; los recursos y las explicaciones no se validan.

Figura 2. Las llamadas por tema comparten un interruptor de circuito; la extracción y la validación leen el mismo grafo.

Validar la solicitud

El servicio comprueba identificadores, preferencia VARK y temas con dificultades. Limpia y elimina temas duplicados, y rechaza conceptos desconocidos antes de llamar al modelo.

Validar antes de planificar

  1. Solicitud
  2. Comprobado
  3. Aceptado

Más detalle

Solicitudexample-learner
  • VARK: visual, auditiva, lectura/escritura, práctica
  • Identificadores seguros: letras, dígitos, punto, guion bajo, dos puntos o guion; hasta 128 caracteres
  • Recortar espacios y eliminar temas duplicados
  • De 1 a 10 temas únicos con el límite predeterminado
  • Todos los temas existen en el grafo
Aceptado400 / 422Sin llamada al modelo

Se comprueban la preferencia de aprendizaje, los identificadores y los temas; los errores 400/422 detienen la solicitud antes de llamar al modelo.

Figura 3. Una entrada inválida detiene el proceso antes de planificar.

Extraer el contexto cercano del grafo

Un recorrido en anchura sigue las relaciones en ambas direcciones. La generación del plan usa profundidad dos y elimina las tuplas duplicadas.

Dos saltos de contexto

  1. Profundidad 0
  2. Profundidad 1
  3. Profundidad 2

Más detalle

Profundidad 0

Polimorfismo

Profundidad 1

Herencia / Genéricos / Patrones de diseño

Profundidad 2

Clases / Interfaces

La búsqueda en anchura recorre ambas direcciones hasta dos saltos y reúne las relaciones del contexto de planificación.

Figura 4. El contexto de profundidad dos rodea a los temas solicitados.

Construir cadenas de prerrequisitos

Un recorrido en profundidad ordena las dependencias antes del concepto objetivo. Cada llamada por tema recibe esta cadena derivada del grafo junto con el contexto local.

Primero, las bases más profundas

  1. Variables
  2. Objetos
  3. Clases
  4. Herencia

Más detalle

DFS en postorden

Variables
Objetos
Clases
Herencia

Después, el tema objetivo: Polimorfismo

El recorrido en profundidad en postorden sitúa cuatro prerrequisitos antes de Polimorfismo y excluye el tema de su propia cadena.

Figura 5. El recorrido del grafo sitúa los prerrequisitos antes del tema que depende de ellos.

Planificar temas en paralelo

Cada tema con dificultades recibe una llamada al modelo con tiempo límite y un interruptor de circuito compartido. Los resultados se guardan en posiciones asignadas, no por orden de llegada.

Trabajo paralelo, protección compartida

  1. Solicitud
  2. Patrones de diseño
  3. Ordenamiento por mezcla
  4. Disyuntor compartido
  5. Detenido

Más detalle

Solicitud
Patrones de diseño
Límite por tema
Ordenamiento por mezcla
Límite por tema
Disyuntor compartidoSe abre tras 3 fallos consecutivos
Falla cualquier temaDetenido

Cada tema pendiente tiene una llamada paralela con límite de tiempo y disyuntor compartido; cualquier fallo detiene toda la solicitud.

Figura 6. Las llamadas independientes conservan sus posiciones asignadas.

Combinar en el orden de la solicitud

El servicio lee las posiciones en el orden solicitado y conserva el primer elemento de cada tema. Terminar antes no adelanta los elementos de una llamada.

Conservar el orden, quitar repeticiones

  1. Orden de llegada: 2
  2. Orden de llegada: 1
  3. Orden de combinación

Más detalle

Orden de llegada: 2 → 1

1ClasesObjetos
2ClasesFunciones

Orden de combinación: 1 → 2

  1. 1Clases
  2. 2Objetos
  3. 3Funciones
Se conserva el primero

Cada resultado conserva su posición de solicitud y se combina en ese orden, manteniendo la primera aparición de cada tema.

Figura 7. La combinación sigue la solicitud y elimina los temas repetidos.

Validar el plan contra el grafo

Se descartan los temas de salida desconocidos. Las cadenas del grafo reemplazan a las del modelo y un ordenamiento estable asigna prioridades consecutivas.

Validar el borrador con el grafo

  1. Borrador del modelo
  2. Grafo
  3. Plan

Más detalle

Borrador del modelo

1PolimorfismoArreglos

MonadsTema desconocido

Generados: 6
Grafo

Plan

  1. 1Variables
  2. 2Objetos
  3. 3Clases
  4. 4Herencia
  5. 5Polimorfismo
Tras la validación: 5

Cadena sustituida: Variables → Objetos → Clases → Herencia

Se descartan temas desconocidos, se sustituyen las cadenas recibidas y se asignan prioridades consecutivas según la primera aparición.

Figura 8. El grafo determina los temas conservados, las cadenas y las prioridades.

Detalles

Grafo de conceptos

El grafo conecta conceptos mediante relaciones de dependencia y categoría. Las cadenas de prerrequisitos usan un recorrido en profundidad; el contexto local se obtiene con un recorrido en amplitud en ambas direcciones.

Explora el currículo

Grupos para facilitar la lectura; el grafo del servicio no tiene dominios.

Programación orientada a objetos

Estructuras de datos

Algoritmos

El orden de estudio también está disponible como texto debajo.

Orden de estudio: 1 Variables → 2 Objetos → 3 Clases → 4 Herencia → 5 Polimorfismo

El grafo determina el orden: depends_on e is_a se recorren antes del concepto dependiente.

Simulación ilustrativa con datos de ejemplo fijos. No se llama a ningún modelo ni servicio en vivo.

Figura 9. Explora los prerrequisitos y el contexto de un tema evaluado.

Planificación en paralelo

Cada llamada guarda sus resultados en una posición asignada. La combinación sigue el orden solicitado: una respuesta más rápida no obtiene precedencia solo por terminar antes. Si falla una llamada, falla toda la solicitud.

Planificación paralela por tema

Cada resultado conserva su posición de solicitud.
Posición 1Patrones de diseño

Listo

Patrones de diseño / Interfaces / Clases abstractas / Polimorfismo / Herencia / Clases / Objetos / Variables

Posición 2Ordenamiento por mezcla

Listo

Ordenamiento por mezcla / Recursión / Funciones

Resultados combinados
  1. 1Patrones de diseño8
  2. 2Ordenamiento por mezcla3
Disyuntor: Cerrado

Tres fallos consecutivos abren el circuito; si falla un tema, falla toda la solicitud, sin devolver un plan parcial.

Secuencia de presentación fija; no son tiempos medidos del servicio.

Simulación ilustrativa con datos de ejemplo fijos. No se llama a ningún modelo ni servicio en vivo.

Figura 10. Las llamadas terminan de forma independiente y se combinan en el orden solicitado.

Validación con el grafo

Se descartan los temas desconocidos de la salida. El grafo reemplaza los prerrequisitos del borrador, establece el orden de los temas y asigna prioridades consecutivas.

Validar el plan con el grafo

Borrador del modelo

Un borrador fijo e ilustrativo, no una respuesta en vivo.

  1. 1
    Polimorfismo
    ArreglosVariables → Objetos → Clases → Herencia
  2. 2
    Herencia
  3. 3
    Clases
  4. 4
    Objetos
  5. 5
    Variables
  6. 1
    MonadsDescartado — No está en el currículo

Plan validado

  1. 1
    Variables—Recursos ilustrativos: diagramRecursos ilustrativos: video
  2. 2
    ObjetosVariablesRecursos ilustrativos: diagramRecursos ilustrativos: video
  3. 3
    ClasesVariables › ObjetosRecursos ilustrativos: diagramRecursos ilustrativos: video
  4. 4
    HerenciaVariables › Objetos › ClasesRecursos ilustrativos: diagramRecursos ilustrativos: video
  5. 5
    PolimorfismoVariables › Objetos › Clases › HerenciaRecursos ilustrativos: diagramRecursos ilustrativos: video

El grafo comprueba temas, cadenas y orden; no valida los textos de los recursos, la integridad del plan ni su calidad educativa.

subgraph_tuples
5
topics_processed
1
items_generated
6
items_after_validation
5

Simulación ilustrativa con datos de ejemplo fijos. No se llama a ningún modelo ni servicio en vivo.

Figura 11. El grafo corrige la estructura; las explicaciones y los recursos siguen sin validarse.

Decisiones y compromisos

Dejar los prerrequisitos en manos del grafo

Las cadenas del modelo se reemplazan, no solo se comprueban. Las prioridades siguen los rangos derivados del grafo tras un ordenamiento estable.

El grafo decide la estructura

  1. Borrador del modelo
  2. Grafo
  3. Plan

Más detalle

Borrador del modelo
Explicaciones y recursosNo se confía en el orden del borrador
Grafo
Cadena de prerrequisitosPrioridades
PlanEstructura autoritativa

El grafo corrige los temas, las cadenas y las prioridades del borrador; los textos y recursos del modelo quedan sin validar.

Figura 12. La estructura del grafo reemplaza el orden de prerrequisitos generado.

Separar concurrencia y orden

Las posiciones indexadas conservan el orden de la solicitud aunque las llamadas terminen en momentos distintos. La combinación conserva el primer elemento de cada tema.

La llegada no determina la salida

  1. Orden de llegada
  2. Posición
  3. Mismo orden de combinación

Más detalle

Llegada A

21

Llegada B

12
Posición

Mismo orden de combinación

12
Patrones de diseño / Ordenamiento por mezcla

Las posiciones de cada tema conservan el orden de combinación de la solicitud, sin importar qué llamada termine primero.

Figura 13. Las posiciones asignadas separan el orden de salida del tiempo de respuesta.

Acotar los fallos del proveedor

Las llamadas comparten un interruptor que se abre tras tres fallos consecutivos. Permanece abierto con un tiempo límite de 15 segundos; cada tema también tiene un límite de llamada.

Rechazar rápido si el servicio falla

  1. Cerrado
  2. Abierto
  3. Semiabierto

Más detalle

Cerrado3 fallos consecutivos
Abierto15 segundos abierto
SemiabiertoHasta 2 llamadas de prueba

Costo: algunas solicitudes se rechazan rápidamente

Tres fallos consecutivos abren el disyuntor y las pruebas de recuperación intercambian disponibilidad inmediata por rechazo rápido.

Figura 14. Un interruptor compartido acota las llamadas repetidas después de fallos.

Rechazar datos de grafo mal formados

El cargador rechaza campos JSON desconocidos, valores vacíos, relaciones no admitidas y bucles de un nodo. Limpia los campos y elimina tuplas duplicadas antes de construir el grafo.

Solo entran relaciones válidas

  1. Grafo de entrada
  2. Comprobado
  3. Relación admitida

Más detalle

Grafo de entrada
  • Campos desconocidos
  • Campos vacíos
  • Relación no admitida
  • Bucle sobre sí mismo
Relación admitida
AAA
Los duplicados exactos se eliminan

Los campos desconocidos o vacíos, las relaciones no admitidas y los bucles sobre sí mismos rechazan el grafo; los duplicados exactos se eliminan.

Figura 15. La carga estricta de tuplas rechaza entradas mal formadas.

Fallar en lugar de devolver un plan parcial

Un fallo en cualquier tema hace fallar toda la solicitud. Los fragmentos correctos de otras llamadas no se devuelven como un plan parcial.

El plan se devuelve completo o no se devuelve

  1. Falla otro tema
  2. Detenido
  3. Sin plan parcial

Más detalle

Resultado de un tema listo
Falla otro tema
Detenido
PlanSin plan parcial
502 · error del servicio503 · circuito abierto504 · tiempo agotado

Un error del servicio externo, un circuito abierto o un tiempo agotado hacen fallar la solicitud en lugar de devolver un plan parcial.

Figura 16. Un tema fallido impide responder con un plan parcial.

Limitaciones

Los recursos y las explicaciones no se validan

Go no valida las URL, los títulos o tipos de recursos ni el texto de las explicaciones. La validación del grafo corrige la estructura, no la calidad de ese contenido generado.

Ordenar no es validar el contenido

  1. Borrador del modelo
  2. Comprobado
  3. Sin comprobar

Más detalle

Borrador del modelo
Comprobado

Temas, cadenas y orden

Grafo
Sin comprobar
  • Título del recurso
  • Enlace del recurso
  • Tipo de recurso
  • Explicación

El grafo no valida títulos, enlaces, tipos de recursos ni explicaciones; por eso, un orden correcto no garantiza la calidad.

Figura 17. La validación estructural no valida los recursos ni las explicaciones.

El cargador no comprueba ciclos

Se rechazan tuplas mal formadas y bucles de un nodo, pero no se detectan ciclos entre varios nodos. Un conjunto de visitados evita que el recorrido se repita indefinidamente.

Terminar no implica validar los ciclos

  1. Tema A
  2. Tema B
  3. Tema C

Más detalle

Ciclo hipotético: no es el grafo incluido

  • 1Tema A
  • 2Tema B
  • 3Tema C
El recorrido termina

El orden de prerrequisitos no está garantizado

El conjunto de visitados permite terminar incluso con un currículo cíclico, pero no establece un orden válido de prerrequisitos.

Figura 18. Un formato de tuplas válido no demuestra que el grafo carezca de ciclos.

El grafo inicial es pequeño

El conjunto inicial contiene 20 relaciones de un currículo de informática. Es un ejemplo acotado, no un currículo completo.

Un ejemplo pequeño de currículo

  1. Currículo incluido
  2. Grafo proporcionado por el operador

Más detalle

Currículo incluido

23 Conceptos20 Relaciones
Grafo proporcionado por el operadorSustituir el ejemplo

El ejemplo incluido contiene 20 relaciones de informática y puede sustituirse por un grafo del operador para otro currículo.

Figura 19. Veinte relaciones iniciales forman un ejemplo curricular pequeño.

No se afirman resultados de aprendizaje

No se comprueba la integridad ni la calidad educativa de los planes. VARK es una preferencia declarada y la etiqueta predeterminada «mastered» del grafo cognitivo no demuestra dominio.

Un orden válido no mide el aprendizaje

  1. Orden de estudio
  2. Resultados de aprendizaje

Más detalle

Orden de estudio
  • Presencia en el grafo
  • Cadenas de prerrequisitos
  • Orden de los temas
Resultados de aprendizaje
  • Mejora del aprendizaje
  • Eficacia de la enseñanza
  • Calidad del plan

Validar temas y ordenar prerrequisitos no mide si el estudiante mejora ni si el plan enseña de manera eficaz.

Figura 20. Las preferencias declaradas y las etiquetas no demuestran resultados de aprendizaje.