Repository navigation
Releases: mbujosab/calcprop-qbank
Release list
qbank 0.8.1
Correcciones
-
Plantilla:
make patronesfallaba en cualquier proyecto nuevo si no se pasabaSEMILLAS=N:--patronestomaba el primer.jsoncomo su número de sorteos («invalid int value»). Los ficheros van ahora delante y--patronesal final. -
Regla
patron: un dígito que es argumento de una orden de notación (\boldsymbol 1,\mathbf{1},\mathbb,\vec,\hat…) ya no cuenta como cifra legible. Evita un falso positivo del tipo «con una cifra del enunciado ⇒ V» cuando el enunciado lleva el vector de unos y una opción dice «mayor que$1$ ».
Sin cambios en la API ni en la documentación respecto a 0.8.0.
qbank 0.8.0
Novedades
Patrones memorizables (regla 11 del lint, código patron). Lo que un alumno podría acertar sin leer el enunciado tras ver varias variantes de la misma pregunta. Es opcional porque es más lento que el resto del lint: lint(..., patrones=True), python -m qbank.lint --patrones [N] o, en un proyecto, make patrones [SEMILLAS=N]. Todo lo que encuentra es AVISO: son indicios que hay que leer.
- Una
Cuestionde verdad variable pero casi constante (el mismo valor en el 85 % o más de sus apariciones), o una lambda consetupconstante en toda la muestra (dondeconstantesolo podía dar INFO). - Dentro de un «tipo de frase» (el texto sin cifras), una cifra cuyo valor separa por completo las verdaderas de las falsas: la elasticidad verdadera siempre menor que 1 y su gemela inversa siempre mayor.
- Un rasgo superficial de la opción (una palabra, una cifra concreta, repetir una cifra del enunciado, tener la cifra mayor o menor del hueco, ser más larga que la mediana) que, con él o sin él, predice la verdad en el hueco con acierto alto, mejora sobre la tasa base, soporte a ambos lados y p-valor corregido.
Los rasgos salen del propio banco (sin lista de palabras ni dependencia del idioma) y no se miran relaciones aritméticas con los datos del enunciado: en una pregunta de cálculo la respuesta correcta debe ser función de ellos. Diseño y medida en PLAN-detector-patrones.org.
Cambios
codcharconvierte todas las letras del español (mayúsculas yüincluidas) y¿¡; elfix_moodle_xml.pyde la plantilla declara el XML en UTF-8.- Manual: cómo subir y actualizar el banco en Moodle desde el terminal.
- La plantilla exige qbank 0.8 o posterior.
qbank 0.7.0
Novedades
Vista de lectura. QuizLectura escribe un documento LaTeX para leer y revisar las preguntas, no para el examen. Incluye la tabla de mundos y un ejemplo por mundo con el enunciado en un recuadro. Las alternativas van agrupadas por hueco, cada una con su V/F y su exp, y las excluidas por precondición aparecen con su motivo.
- Clave JSON nueva
"lectura": {"cubrir": [...]}: un ejemplo por cada combinación de valores de esas variables delsetup. ProblemaTipo.por_partes_lectura()da los datos: alternativas por hueco y espacio de nombres delsetup.linttiene una regla nueva,lectura.- En la plantilla:
scripts/gen_lectura.pyymake lectura [LECCION=N], con un PDF por lección.
Prompts para escribir preguntas con una IA. qbank-init deja ahora en el proyecto:
prompts/PROMPT-qbank-generico.org: qué leer, proceso de trabajo y reglas. Remite a la Guía y al Manual.prompts/PROMPT-proyecto.org: las decisiones del banco, con huecos por rellenar.- Un
CLAUDE.mdde entrada.
El prompt genérico está también en la web.
Cambios
- La plantilla exige qbank 0.7 o posterior.
- Los enlaces del proyecto en PyPI incluyen la web de documentación, Binder y este historial.
qbank 0.6.0
Primera versión pensada para crear un banco de preguntas sin ayuda externa.
qbank-init DIR: crea un proyecto de banco con cinco preguntas de ejemplo,Makefile(make lint,make tabla,make amc,make amc-student,make moodle), scripts de exportación ynueva_pregunta.pypara escribir preguntas en Python y guardarlas como JSON.lint/qbank-lint: comprobación automática de cada pregunta (mezcla de correctas e incorrectas, negaciones no deducibles,@{var}sin resolver, caracteres que rompen LaTeX o Moodle, estructura del JSON…) ytabla_mundos.Supuesto,Cuestionysetupadmiten su forma de cadena (la del JSON);seedeinstancespara preguntas aleatorias reproducibles;QuizMoodleProfeconlast_choiceeinstances;AMC_multipartpara preguntas de varias partes.- Documentación nueva:
README,Tutorial.ipynb,GuiaDiseno(cómo diseñar buenas preguntas) yManual(referencia), con los cuadernos ejecutables en MyBinder.
pip install calcprop-qbank
v0.3.2
Cambios desde v0.2.2
v0.3.0 — Refactorización de la API de exportación
- Nueva API unificada:
AMCblock,QuizMoodle,QuizAMCProfe - Eliminación de aliases deprecados (
AMC*,QuizMoodleLastCh, etc.) - Mejoras de API derivadas del uso en qbank-econometria
v0.3.1 — Mejoras de usabilidad
por_partes(): nuevo parámetroverbose=Falsepara silenciar rechazos en batch- Exportación
.py: incluyeseedpara reproducibilidad connp.random - Nuevos notebooks:
Tutorial.ipynbcon 5 ejemplos progresivos,Ejemplos.ipynbactualizado
v0.3.2 — Dependencias y documentación
- Declara
numpycomo dependencia explícita enpyproject.toml - Añade
numpyabinder/requirements.txtpara forzar rebuild en MyBinder - Añade
CLAUDE.mdcon documentación de la API y flujo de trabajo
v0.2.2
Cambios respecto a v0.2.1
Documentación
- Operadores que faltaban documentados en la tabla del bloque básico de
Demo.ipynby en las dos tablas de operadores del Manual:**(equivalencia / bicondicional),alguno(...)(alguna de la lista verdadera) yunoDe(...)(exactamente una verdadera). - Enlaces a
LICENSEyManual.orgen el README corregidos con URLs absolutas de GitHub (se rompían en la página de PyPI).
v0.2.1
Cambios respecto a v0.2.0
Editor visual
- Corrección del botón ⬇ Descargar en
ProblemaTipoEditor.
Demo y ejemplos
Demo.ipynbcorregido y mejorado:ProblemaTipoProfeusa la lista de componentes correctamente, la sección de conversiones entre formatos muestra las variantes, nuevos ejemplos deProblemaMultiParte(álgebra lineal y cálculo numérico consetup).- Nuevo
ejemplosManual/numeros.json:ProblemaTipoconsetupPython serializable, pensado para demostrar el editor visual con código real en el campo Setup.
v0.2.0
Novedades
Preguntas multi-parte
- Nueva clase
ProblemaMultiPartey contenedorSubPreguntapara agrupar varias sub-preguntas bajo un enunciado común. AMC_multipart: exportación a LaTeX AMC con un bloque\begin{choices}por sub-pregunta.QuizClozeMulti: exportación a Moodle cloze con sub-bloques\begin{multi}incrustados.
Persistencia y serialización
save_problema/load_problema/save_banco/load_bancosoportanProblemaMultiParte.problema_to_python/save_problema_pygeneran código Python editable paraProblemaTipoyProblemaMultiParte.
Editor visual
- Nuevo botón ⬇ Descargar en
ProblemaTipoEditor: descarga el JSON directamente al navegador sin necesidad desave_problema().
Demo y documentación
- Notebook
ejemplosManual/Demo.ipynbcon 11 secciones:ProblemaTipoProfe, bancos multi-problema, conversiones entre formatos, editor consetupy ejemplos de álgebra lineal y cálculo numérico paraProblemaMultiParte. - Badge de MyBinder en el README apunta a JupyterLab.
- Nuevo
ejemplosManual/numeros.json: ejemplo deProblemaTipoconsetupPython serializable.