AcademicPipeline es un sistema multi-agente de investigación automatizada: agentes especializados con roles separados —uno propone el tema desde noticias trending, otro cruza indicadores socioeconómicos del Banco Mundial, Python y R ejecutan el análisis estadístico determinístico, un LLM redacta el paper en español, y dos agentes más lo verifican antes de publicar—. La separación de funciones es deliberada: quien redacta no es quien valida, y quien valida ve los datos completos, no solo el texto. Cada paper incluye una Nota de transparencia que declara qué se calculó y con qué datos; esta página explica el método una sola vez.
FETCH → SUGGEST → COMPUTE → WRITE → REVIEW → EDIT → APPROVE
| Nodo | Qué hace | Tipo |
|---|---|---|
| FETCH | Descarga series 2015-2024 de la API pública del Banco Mundial (23 indicadores × 7 países/regiones de América Latina = 158 series) y las persiste en SQLite; una consulta SQL selecciona los 5 países con cobertura completa para los indicadores del tema — la muestra no está hardcodeada | Determinístico |
| SUGGEST | Cruza noticias trending (score LLM ≥70, del pipeline job-hunter) con el catálogo de indicadores. Solo propone líneas editoriales que los datos pueden respaldar, y formula una pregunta verificable e hipótesis falsable | LLM |
| COMPUTE | Estadística real con Python (scipy/numpy): descriptivas, correlaciones, OLS, tendencias, anomalías; R calcula el panel econométrico (efectos fijos país+año, errores clusterizados) cuando está disponible. Genera también las tablas y las figuras (matplotlib) | Determinístico |
| WRITE | Redacta el paper. Solo puede citar números que aparecen literalmente en los datos y resultados provistos | LLM |
| REVIEW | Compara el paper contra los datos completos: detecta cifras inventadas, tests no calculados, fuentes externas, afirmaciones de significancia falsas. Lo respaldan dos chequeos determinísticos sobre el 100% del texto: verificación de cifras contra los resultados computados y linter de lenguaje causal | LLM + determinístico |
| EDIT | Pule estilo y formato APA, preservando números, tablas y figuras verificadas | LLM |
| APPROVE | QA final: estructura, coherencia, bibliografía | LLM |
Si REVIEW detecta datos inventados, el paper se reescribe (máx. 2 iteraciones). Si APPROVE rechaza, se reedita (máx. 2).
Las series tienen n≤10 observaciones anuales — muestras pequeñas donde los métodos paramétricos son frágiles. Por eso se combinan:
| Método | Para qué | Por qué es apropiado aquí |
|---|---|---|
| Correlación de Pearson | Resume en un número (r, de −1 a +1) qué tanto dos series se mueven juntas en línea recta: +1 = suben juntas, −1 = una sube cuando la otra baja, 0 = sin relación | Es la medida de referencia; con n=10 un r suelto no dice qué tan confiable es, así que se reporta con su intervalo de confianza al 95% (transformación de Fisher). Si el IC95% incluye 0, la correlación no es concluyente |
| Correlación de Spearman | Mide asociación monotónica por rangos | Robusta a outliers y relaciones no lineales — el shock de 2020 (COVID) es exactamente el caso que Pearson exagera |
| Correlación en primeras diferencias | Correlaciona los cambios año a año (Δ), no los niveles | Distingue co-movimiento real de co-tendencia espuria: dos series que ambas suben siempre correlacionan en niveles; si la relación desaparece en diferencias, era tendencia común, no asociación |
| Corrección FDR (Benjamini-Hochberg) | Ajusta cada p-valor de la familia de correlaciones del run a un q-valor | Con ~50 tests por run, p<0.05 produce falsos positivos por azar; la significancia se evalúa por q<0.05, no por p crudo. Pearson en niveles, Pearson en diferencias y Spearman se corrigen como familias separadas |
| Regresión OLS | Cuantifica la asociación de varias variables sobre una dependiente | Se reporta con errores estándar robustos (HC3), VIF para multicolinealidad y test de White para heterocedasticidad — los diagnósticos correctos para muestras pequeñas. El número de regresores está limitado a ~4 observaciones por parámetro: si la especificación pedida excede lo que n soporta, los regresores sobrantes se excluyen y se declaran en la tabla del modelo |
| IC95% bootstrap | Remuestrea las observaciones con reemplazo (2000 réplicas) y reconstruye el intervalo de confianza desde la distribución empírica del coeficiente | Con n=10 el p-value paramétrico asume normalidad — supuesto inverificable. El bootstrap no asume nada; si el IC95% incluye 0, el coeficiente es frágil y el paper debe decirlo |
| Panel con efectos fijos por país | OLS sobre todas las observaciones país×año de la muestra seleccionada (en el último paper: 5 países × 10 años = 50 obs) con una dummy por país | Responde "dentro de cada país, cuando X subió, ¿se movió Y?" — controla las características estructurales fijas de cada país que el agregado regional esconde, y multiplica el n efectivo |
| Mann-Kendall | Detecta tendencia monotónica en el tiempo | No paramétrico: no asume normalidad ni linealidad, ideal para n=10 anual |
| Anomalías z-score / IQR | Detecta observaciones atípicas por serie | Dos criterios independientes; el desfase 2020 aparece sistemáticamente |
| Compatibilidad de unidades | Solo correlaciona pares semánticamente comparables | Guardia explícita: impide correlaciones sin sentido (ej. población absoluta vs tasa %) |
Glosario rápido: p-valor = probabilidad de observar un resultado así por puro azar si no existiera relación (p<0.05 se considera "significativo"); IC95% = intervalo de confianza al 95%, el rango donde probablemente cae el valor verdadero; β = coeficiente: cuánto cambia la variable dependiente por cada unidad que sube la independiente; Δ = cambio año a año; semáforo de evidencia: 🟢 robusta, 🟡 marginal o probable co-tendencia, 🔴 sin evidencia suficiente.
| Método | En una frase |
|---|---|
| Pearson | ¿Los dos indicadores se mueven juntos formando una línea recta? |
| Spearman | ¿Se mueven juntos aunque no sea en línea recta? (le importa poco que 2020 haya sido un año loco) |
| Primeras diferencias (Δ) | Cuando uno cambia, ¿el otro cambia ese mismo año? — desenmascara "falsas amistades" entre dos series que simplemente crecen cada una por su lado |
| Regresión OLS | Pone un número a la relación: si X sube 1 unidad, ¿cuánto sube Y? |
| Bootstrap | ¿Ese número es confiable o fue suerte? Repite el cálculo 2,000 veces barajando los datos |
| Panel de efectos fijos | Compara cada país contra sí mismo a través de los años, en vez de mezclar países distintos |
| Mann-Kendall | ¿La serie va hacia algún lado o solo se mece? Compara cada año contra todos los demás y cuenta cuántas veces "subió" vs "bajó" |
| z-score / IQR | ¿Qué año fue tan raro que se sale de lo normal? (la respuesta casi siempre es 2020) |
Con los números del último paper publicado (Financiamiento del sector eléctrico y crecimiento del PIB en América Latina):
| Método | Resultado real | Cómo se lee |
|---|---|---|
| Selección de muestra (SQLite) | ARG, BRA, CHL, COL, MEX | La consulta SQL eligió los 5 países con datos completos para los 3 indicadores del tema. Guatemala quedó fuera porque le falta el dato 2024 de consumo eléctrico — la muestra la decide la cobertura, no una lista fija |
| Pearson (niveles) | Brasil: r = 0.635, p = 0.048 | PIB y manufactura se mueven juntos de forma significativa en niveles — la única correlación significativa de los 5 países |
| Pearson en diferencias (Δ) | Brasil: r = 0.215, p = 0.579 | La misma pareja, correlacionando solo los cambios año a año: la asociación desaparece → el r=0.635 era co-tendencia (ambas series subían por su cuenta), no relación real |
| Spearman | Brasil: ρ = 0.697 | Compara rankings en vez de valores, así que el desplome de 2020 pesa menos; confirma el orden de la asociación en niveles |
| OLS agregado | R² = 0.141, p(F) = 0.588 | El modelo regional no explica el consumo eléctrico: ~86% de la variación queda fuera del modelo y el conjunto no es significativo |
| Bootstrap IC95% | β manufactura (OLS): [−61.7, 521.1] | Intervalo enorme que incluye 0 → el coeficiente es frágil y el paper está obligado a decirlo |
| Panel efectos fijos | β PIB = 7.79, p = 0.056, IC95% [−0.19, 15.78] | Dentro de cada país, +1% de crecimiento del PIB se asocia a ~+7.8 kWh per cápita, pero el intervalo roza el 0 → evidencia marginal, no concluyente |
| Mann-Kendall | 0 tendencias significativas en las series del estudio | Las series analizadas fluctúan sin dirección monotónica clara (en el catálogo completo, 70 de 154 series sí tienen tendencia) |
| Anomalías z-score | LCN: PIB 2020 = −6.86% marcado atípico | El shock de COVID aparece sistemáticamente en 2020-2021 — 90 observaciones atípicas en todo el catálogo |
Cada afirmación del paper es auditable contra los artefactos del repositorio:
docs/knowledge.jsonl — registro estructurado por paper (tema, pregunta, hipótesis, indicadores, resultados clave, veredictos) — base consultable para futuras herramientasoutput/raw/fetched-data.json — las series crudas tal como llegaron del APIoutput/raw/compute-results.json — resultados completos: coeficientes, p-values, intervalosoutput/briefs/YYYY-MM-DD_brief.json — la decisión editorial: tema, ángulo, pregunta, hipótesisoutput/papers/*.json — metadata del run: historial de nodos, veredictos de revisión y QAoutput/charts/ — las figuras, generadas con matplotlib sobre los datos (no ilustrativas)docs/data/*.parquet — el catálogo completo (series, papers, correlaciones) exportado desde SQLite, consultable directamente en el explorador de datos sin servidor: constructor visual de consultas por estantes o SQL libre, y el SQL generado queda a la vista y editabledocs/codebook.html — el libro de códigos: qué mide cada indicador, con qué código del Banco Mundial, en qué países y años hay datos, y en qué papers se ha usado. Incluye los indicadores del catálogo que todavía no tienen datos, y una matriz de cobertura con alcance por catálogo o por paper (con la muestra real de cada estudio)