La historia estaba atrapada dentro de imágenes que no se podían buscar
Los periódicos existían como escaneos y microfilmes, pero no como texto. Una computadora no puede buscar dentro de una imagen de una página: no sabe qué letras contiene, dónde empieza un artículo ni qué parte es publicidad, tabla o cabecera.
R033_F1064.png
TEXTO ATRAPADO EN IMÁGENES
Antes del OCR, investigar significaba leer manualmente
Para responder una pregunta histórica, el investigador tenía que sentarse frente a un lector de microfilm o abrir imágenes página por página. Los nombres, lugares, editoriales, avisos y debates políticos eran visibles para el ojo, pero invisibles para la búsqueda.
El OCR tradicional lee cajas. Los periódicos históricos requieren razonamiento visual.
La mayoría del OCR supone un escaneo limpio, líneas previsibles y un orden de lectura estable. Los periódicos del siglo XIX rompen esas reglas: columnas múltiples, cabeceras decorativas, letra cursiva u ornamentada, avisos, tablas, tinta dañada, ilustraciones y texto multilingüe conviven en la misma página.
Caja OCR 1
Caja OCR 2
Caja OCR 3
orden de lectura incorrecto
Cabichuí · illustrations and Guaraní
Lee cajas de izquierda a derecha
- Supone líneas estables y columnas previsibles.
- Mezcla titulares, avisos, cuerpo de texto y tablas.
- Falla con tipografía ornamentada, marcas cursivas, tinta dañada y texto diminuto.
- Puede extraer caracteres mientras destruye la estructura histórica.
Primero entiende la página
- Observa la imagen completa antes de transcribir.
- Separa artículos, avisos, tablas, ilustraciones y cabeceras.
- Preserva español antiguo, guaraní, portugués y francés.
- Devuelve JSON estructurado conectado a la imagen fuente.
De encontrar los periódicos a construir un motor de investigación
El proyecto avanzó en nueve pasos concretos. Primero hubo que encontrar y preservar el material; después vinieron los modelos, los prompts, el procesamiento, la indexación, la búsqueda, las respuestas y la experiencia final.
Probar modelos contra páginas reales de periódicos históricos
Esta etapa explica el descubrimiento de modelos: qué modelos de visión podían leer imágenes complejas, preservar idiomas, devolver JSON y sobrevivir diseños difíciles de periódicos.
Primero tuvimos que encontrar un modelo que leyera correctamente las imágenes
La primera pregunta técnica no fue la búsqueda. Fue la extracción: ¿qué modelo podía mirar una imagen de periódico, entender el diseño, preservar el idioma y devolver datos estructurados utilizables? Probamos modelos contra páginas deliberadamente difíciles antes de decidir qué podía impulsar el OCR de producción.
Gemini 3.1 Pro fue el extractor más confiable del conjunto de pruebas
En el benchmark guardado, Gemini 3.1 Pro promedió 93,6% y devolvió JSON válido en las 5 páginas difíciles. GPT-4.1 Mini funcionó bien en algunas páginas, pero promedió 56,4% y devolvió JSON válido en 3 de 5. Claude se usa después para síntesis, no como extractor OCR en este benchmark.
Las páginas de prueba revelaron diferentes modos de falla
Los puntajes miden cobertura y estructura en cinco páginas difíciles. Explican por qué el pipeline de producción usa Gemini para OCR y reglas de escalamiento en vez de un extractor genérico único.
Cada grupo es una página difícil; cada barra es un modelo. La barra azul marca el mejor resultado para esa página.
| Modelo | Página | Promedio | JSON válido | Tiempo medio |
|---|
Resultado: el OCR de producción tenía que ser multimodal, estructurado y basado en pruebas. Gemini manejó las imágenes de periódicos multilingües de forma más consistente en este benchmark.
Convertir la escritura de prompts en un protocolo de extracción probado
Esta etapa explica cómo cientos de casos de prompt produjeron las reglas finales para leer columnas, avisos, tablas, ortografía histórica e incertidumbre.
El prompt de extracción se convirtió en el manual operativo del sistema OCR
Antes de ejecutar el pipeline OCR de producción, el propio prompt tuvo que diseñarse y probarse. Corrimos cientos de casos contra páginas difíciles, cambiando instrucciones de una en una y guardando los resultados. Un pequeño cambio de redacción podía decidir si el modelo resumía una página, mezclaba columnas, modernizaba la ortografía o producía la extracción estructurada necesaria para buscar.
Cientos de casos de uso
“Ejecutar el prompt en páginas difíciles reales, no en ejemplos limpios.”
Probamos escaneos dañados, columnas densas, idiomas mezclados, tablas, avisos y títulos ornamentados hasta que el prompt manejó el desorden real del archivo.
Copiar, no interpretar
“Preserva exactamente la redacción impresa.”
La ortografía histórica, los acentos, las abreviaturas y los pasajes multilingües son evidencia. El prompt tenía que impedir que el modelo los modernizara silenciosamente.
Estructura antes que texto
“Identifica el diseño de la página antes de extraer texto.”
El orden de lectura importaba. El modelo necesitaba entender columnas, cabeceras, avisos, tablas y publicidad antes de producir JSON.
La incertidumbre es dato
“Marca palabras dudosas en vez de inventarlas.”
El prompt final exigió incertidumbre revisable para que la tinta dañada o letras ambiguas no se convirtieran en historia alucinada.
Ejecutar OCR a escala con validaciones
Esta etapa explica la ruta OCR secuencial: primer pase económico, escalamiento experto para páginas difíciles y rescate solo cuando falla la validación.
Un pipeline OCR con Gemini, rutas rápidas, expertas y de rescate
Después de que las pruebas mostraron que Gemini era el extractor OCR más fuerte, el sistema todavía necesitaba reglas de producción: usar el modelo más rápido capaz en páginas normales, escalar páginas difíciles y rescatar casos de falla conocidos.
Gemini Flash-Lite
Primera lectura rápida para el corpus amplio cuando la página es extraíble y valida correctamente.
Escala si el texto es demasiado débil, mal formado o falla controles.Gemini Pro
Maneja diseños densos, escaneos dañados, periódicos complejos y casos donde modelos más baratos pierden estructura.
Títulos difíciles conocidos pueden entrar antes aquí.Ruta de modelo de recuperación
Reintenta fallas observadas como respuestas vacías, límites de tokens, bloqueos de recitación o JSON inválido.
Se usa para recuperación, no como reemplazo universal.
{
"status": "COMPLETE",
"page_understanding": "5 columns detected",
"segments": [
{ "type": "article", "cols": [1,2], "text": "exact transcription..." },
{ "type": "advertisement", "cols": [3], "text": "prices, names..." },
{ "type": "table", "cols": [5], "text": "structured rows..." }
],
"source_image": "R042_F0901.webp"
}
Reconstrucción ilustrativa a partir de metadatos reales de segmentos. El OCR almacena tipo de segmento y rango de columnas, manteniendo la extracción conectada a la imagen fuente.
Convertir el texto OCR en memoria de investigación buscable
Esta etapa explica fragmentación, metadatos, embeddings, PostgreSQL y pgvector para que el archivo encuentre significado, no solo palabras exactas.
Los embeddings hicieron el archivo buscable por significado, no solo por palabras exactas
Una vez que el OCR desbloqueó el texto, el siguiente problema fue la escala. Un historiador puede preguntar por “modernización ferroviaria”, mientras un periódico puede decir “camino de hierro”, “ferro-carril”, “transporte” o usar ortografía antigua. Los embeddings colocan pasajes relacionados cerca entre sí para encontrar ideas similares en una base de datos grande.
Recuperar evidencia con búsqueda híbrida y reranking
Esta etapa explica cómo búsqueda léxica, búsqueda semántica, filtros de metadatos, balanceo y reranking construyen un paquete de evidencia confiable.
La búsqueda usa varios métodos porque un solo método pierde demasiada historia
El archivo busca en una base de datos grande con varias estrategias de recuperación a la vez. La búsqueda exacta captura nombres y frases. La búsqueda semántica captura significado. Los filtros y el balanceo mantienen la evidencia distribuida entre fechas, periódicos y tipos de fuente. Un reranker relee los mejores candidatos antes de que lleguen al modelo de respuesta.
Generar respuestas solo desde paquetes de fuentes
Esta etapa explica la generación fundamentada: el LLM recibe pasajes recuperados, metadatos de fuente y reglas de citación en vez de responder desde memoria.
El modelo de respuesta escribe solo después de que la recuperación arma un paquete de fuentes
Al LLM no se le pide responder desde memoria. Recibe pasajes recuperados, fechas, nombres de periódicos, IDs de página y enlaces al visor. El prompt de respuesta exige citas, comparación de fuentes, manejo de incertidumbre y fundamentación directa en el material original.
Ejemplo de una respuesta fundamentada en fuentes
La expansión de los ferrocarriles aparece como modernización, negocio privado e integración territorial. El sistema puede resumir ese patrón, pero la respuesta solo es útil porque cada afirmación enlaza a periódicos originales que el investigador puede inspeccionar.
LA DEMOCRACIA · R033 F1064 LA RAZÓN · R042 F0901
Entregar una experiencia de investigación con verificación de fuentes
Esta etapa explica el resultado visible para el usuario: chat, visor de fuentes, exportaciones, presentaciones y flujos que devuelven a los investigadores a la evidencia.
La tecnología desaparece detrás de una experiencia de investigación
El resultado no es solo una base de datos. Es un espacio para preguntar, explorar, verificar fuentes originales y convertir hallazgos en materiales que otros pueden comprender.
Respuesta inmediata para nombres, fechas, temas y comprobaciones concretas.
Amplía la consulta, compara épocas y construye una síntesis histórica más extensa.
Recorre resultados exhaustivos y los entrega en una hoja de cálculo verificable.
Chat con citas
Respuestas en streaming, seguimiento conversacional y modos estándar o investigación profunda.
Archivo visual
Filtros por fecha, título y colección, con acceso directo al escaneo y al texto extraído.
Narrativas exportables
Infografías, presentaciones, resúmenes, menciones, biografías y comparaciones respaldadas por fuentes.
100.000 páginas convertidas en un archivo histórico buscable
El cierre del recorrido es una biblioteca digital que permite preguntar, encontrar fuentes, verificar páginas originales y convertir hallazgos en respuestas, infografías y presentaciones. El objetivo fue construir el único archivo buscable de periódicos paraguayos antiguos a esta escala, con cada resultado conectado a su evidencia.