Generador de Test Automático con IA
El Generador de Test es una aplicación innovadora que utiliza inteligencia artificial para crear preguntas de opción múltiple automáticamente a partir de documentos PDF. El sistema extrae texto de PDFs, genera preguntas relevantes sobre el contenido y las almacena en una base de datos MongoDB para su posterior uso en cuestionarios interactivos.
launcher.py - Interfaz gráfica principal para lanzar aplicaciones1-alimentar.py - Aplicación para procesar PDFs y generar preguntas2-cuestionario.py - Aplicación interactiva para realizar cuestionariosmodelos.dat - Lista de modelos de Ollama disponiblesREADME.md - Documentación detallada del proyectoConfigure MongoDB en su sistema antes de continuar.
sudo apt update
sudo apt install mongodb
sudo systemctl start mongodb
sudo systemctl enable mongodb
Descargue e instale desde el sitio oficial de MongoDB: mongodb.com
brew install mongodb/brew/mongodb-community
brew services start mongodb/brew/mongodb-community
Acceda a ollama.ai para descargar e instalar la plataforma.
Después de instalar, descargue los modelos necesarios:
ollama pull llama3.1:8b
ollama pull phi3:3.8b
ollama pull gemma3:4b_40K
python -m venv generador_test_env
source generador_test_env/bin/activate # Windows: generador_test_env\Scripts\activate
pip install PyPDF2 requests pymongo PySide6
Para facilitar el uso, se incluye un launcher con GUI:
python launcher.py
Seleccione la aplicación deseada:
python 1-alimentar.py
python 2-cuestionario.py
El sistema utiliza PyPDF2 para extraer texto. Algunos PDFs pueden no contener texto extraíble si están basados únicamente en imágenes.
Las preguntas se generan mediante un prompt estructurado enviando a Ollama:
| Base de Datos | Colección | Documentos |
|---|---|---|
| preguntas | [nombre_pdf] | pregunta, opciones[], correct_index, _id |
Modelos preconfigurados en modelos.dat:
| Problema | Causa | Solución |
|---|---|---|
| Error de conexión con MongoDB | Base de datos no está ejecutándose | Verificar que MongoDB esté activo en localhost:27017 |
| Error de conexión con Ollama | Servicio Ollama no iniciado o modelo no descargado | Ejecutar ollama serve y descargar modelo requerido |
| PDF sin texto extraíble | Documento basado en imágenes | Usar PDFs con texto incrustado o convertir a texto |
| preguntas sin sentido | Fragmento muy pequeño o contenido complejo | Ajustar tamaño de fragmento o revisar contenido del PDF |
git checkout -b feature/nueva-funcionalidad)git commit -am 'Añade nueva funcionalidad')git push origin feature/nueva-funcionalidad)Este proyecto está bajo la Licencia MIT. Consulte el archivo LICENSE para más detalles.
Para soporte técnico o reportar problemas, cree un issue en el repositorio de GitHub del proyecto.