Sistema de Constancias Escolares con IA

App de escritorio con IA que automatiza constancias y gestión escolar

Descripción General

Aplicación de escritorio (PyQt + PyInstaller) usada en producción por una escuela para reemplazar tareas de secretaría: búsqueda/gestión de alumnos, generación y transformación de constancias PDF, consultas y recomendaciones inteligentes vía IA. Arquitectura de IA con "Master Interpreter" que detecta intención y sub-intenciones y enruta a especialistas (Student/Help), integrándose con servicios locales (SQLite, PDF). Escalable y robusta: mejora con nuevos modelos de IA y empaquetado estable.

Master-Student AI Routing

Master Interpreter detecta intención y delega a especialistas con memoria conversacional

Generación y Transformación de Constancias PDF

wkhtmltopdf con plantillas, vista previa integrada y transformación de PDFs existentes

Interfaz Clásica CRUD + Búsquedas

Módulos para gestionar alumnos, buscar/filtrar y emitir constancias con estética adaptativa

Demostración del Sistema

Demostración Completa del Sistema

Observa cómo el sistema de IA automatiza la generación de constancias escolares: desde la búsqueda inteligente de alumnos hasta la creación de PDFs personalizados, todo a través de una interfaz conversacional natural.

Resumen Ejecutivo

Sistema híbrido listo para producción que combina un asistente de IA conversacional con una interfaz administrativa tradicional. Los directores consultan en lenguaje natural para búsquedas, estadísticas y constancias oficiales; los administradores mantienen control total sobre la base de datos y flujos de documentos. El backend es local (SQLite) y la aplicación se compila para distribución.

Arquitectura Híbrida Única

Combina la eficiencia de la IA conversacional con la seguridad y control de interfaces tradicionales, manteniendo una única fuente de verdad en base de datos local.

Contexto del Sistema

Interfaz en Español: Este build fue entregado para una escuela real en México. Las etiquetas y mensajes aparecen en español (ej: "Transformar", "Buscar", "Constancias"). El sistema está diseñado para ser bilingüe: prompts, ejemplos, strings de UI y plantillas PDF pueden localizarse.

Leyenda Rápida (Español → Inglés):
  • Transformar → Transform documents (PDF → constancia oficial)
  • Buscar / Generar Constancias → Search students / Generate certificates
  • Gestión / Administración → Full administrative management (CRUD)

Arquitectura del Sistema

Arquitectura de IA híbrida con patrón Master-Specialist que entiende intención del usuario y enruta a especialistas:

  • Master Interpreter: Comprende intención y contexto, enruta solicitudes
  • Student Specialist: Mapea solicitudes humanas a SQL y constancias; aplica filtros detectados del lenguaje
  • Help Specialist: Explica capacidades y uso guiado
  • Base de datos local (SQLite): Única fuente de verdad
  • Build de producción: Ejecutable compilado con parche de compatibilidad para biblioteca de IA de Google

Dos Experiencias Complementarias

Dos interfaces complementarias que comparten el mismo backend:

Gestión Clásica
  • CRUD completo sobre base de datos SQLite local
  • Búsqueda y generación de constancias con control deliberado
  • Transformación de documentos con opciones supervisadas (plantillas/branding/persistencia)
Chat IA
  • Solicitudes en lenguaje natural (ej: "Buscar estudiantes apellido García")
  • Listas/filtros/estadísticas automáticas y generación de PDF
  • Diálogos de datos de solo lectura para maximizar velocidad

Flujo de Demostración (Refleja el video de 18 minutos)

Parte A — Gestión Clásica (fundación)
  1. Abrir Gestión Clásica
  2. Mostrar registros de estudiantes y abrir una entrada típica (nombre, CURP, matrícula, grado, grupo, turno)
  3. Explicar: esta BD SQLite local es la única fuente de verdad del sistema. Las respuestas de IA y PDFs se basan en estos datos
  4. Tarjeta: Transformar - Seleccionar PDF externo; extraer datos; generar constancia formateada correctamente
  5. Tarjeta: Buscar y Generar Constancias - Buscar por nombre, grado, grupo, turno, matrícula, CURP
  6. Tarjeta: Gestión (CRUD) - Editar/validar/guardar campos con control visual y auditabilidad
Parte B — Chat IA (automático)
  1. Abrir Chat IA (tema oscuro)
  2. Búsqueda por nombre: "Buscar estudiantes apellido García" → listar resultados
  3. Continuación contextual: "De esa lista, solo turno vespertino" → resultados filtrados
  4. Refinamiento progresivo: "Ahora tercer grado" → "Ahora grupo A" → resultados refinados
  5. Estadísticas: "¿Cuántos estudiantes hay en tercer grado?" → conteo/distribución
  6. Búsqueda exacta: "Mostrar estudiante con matrícula 2024001" (o por CURP)
  7. Generar constancia: "Generar constancia de estudios para [Nombre Estudiante]" → se abre PDF
  8. Transformar PDF externo: adjuntar muestra → "Transformar este PDF a constancia oficial" → extracción automática + PDF
  9. Ayuda: "¿Qué puedes hacer?" → resumen de capacidades en lenguaje natural

Beneficios y Valor

Para directores y personal
  • Lenguaje natural: pedir listas, refinar con filtros, calcular estadísticas y obtener PDFs oficiales en segundos
  • No necesidad de SQL o navegación compleja de UI
Para administradores
  • Control total sobre datos y documentos (validación, auditabilidad, plantillas)
  • Operaciones diarias más rápidas; menos pasos manuales
Para IT / empresas

Patrón reutilizable Master → Specialists; prompts modulares y catálogos. Datos locales (SQLite), pipeline PDF consistente, distribución compilada (PyInstaller). Fácil de adaptar a otros dominios con la misma arquitectura.

Datos, Privacidad y Despliegue

  • Local-first: los datos de estudiantes permanecen en almacenamiento local (SQLite)
  • PDFs: generados consistentemente con branding y plantillas de la escuela
  • Distribución: ejecutable compilado vía PyInstaller
  • Logging: logs informativos para troubleshooting (sin datos sensibles en logs de demo)

Preparación Bilingüe

  • Build actual: UI en español (entregado a escuela mexicana)
  • Listo para inglés: prompts/ejemplos, strings de UI y plantillas PDF pueden localizarse
  • La IA puede responder en el idioma del usuario manteniendo un esquema interno consistente

Detalles Técnicos

Arquitectura IA

  • Intention-based Master–Student–Help routing
  • Análisis unificado con conversation_stack
  • Service–Repository para datos separado de UI
  • Señales/slots PyQt para hilos de IA

Sistema de IA

  • Google Generative AI (Gemini 2.0-flash + fallback)
  • MasterPromptManager con contexto conversacional
  • Enrutamiento automático de intenciones
  • Solicitudes de aclaración inteligentes

Características Avanzadas

  • Normalización centralizada de datos escolares
  • Health checks y auto-cleanup de contexto
  • Empaquetado PyInstaller con recursos incluidos
  • Fallbacks multi-nivel para resiliencia

Stack Tecnológico

Frontend

PyQt5 Señales/Slots Estilos Centralizados UI Adaptativa

Backend

Python 3.12/3.13 Arquitectura por Capas SQLite Repositorios/Servicios

IA

Google Generative AI Gemini 2.0-flash Master-Student Pattern Conversation Stack

Herramientas

PyInstaller wkhtmltopdf pdfplumber python-dotenv

Desafíos y Soluciones

google-generativeai + PyInstaller

Import y runtime rotos al congelar; variables de entorno inaccesibles.

"Monkey patch" temprano, carga manual de .env en ejecutable, hooks/paths configurados con fallback de modelos.

Enrutamiento de Intenciones + Contexto

Ambigüedades ("él", "el segundo", "de esos..."), decidir si usar contexto y cómo resolver referencias.

Análisis unificado con MasterPromptManager; conversation_stack con awaiting; continuidad inteligente.

Normalización y Consistencia de Datos

Variantes de nombres/campos afectan búsquedas y constancias.

Normalización centralizada en Config; validación con advertencias; ordenamiento por configuración.

Flujo de Trabajo IA

1. Chat Engine

Recibe consulta natural del usuario

2. Master Interpreter

Detecta intención y sub-intenciones

3. Routing Especializado

Enruta a Student/Help según contexto

4. Action Executor

Ejecuta servicios y genera respuesta

Información del Proyecto

Código Privado Repositorio privado por datos escolares sensibles
Documentación Técnica Guía completa de arquitectura y implementación
En Producción Sistema activo en escuela primaria mexicana