
De 700GB de PDFs a un Dataset de 500 Ejemplos para Fine-Tuning: El Pipeline de Reduccion de Datos
Tienes terabytes de documentos empresariales. Tu modelo ajustado solo necesita entre 500 y 5,000 ejemplos de alta calidad. Aqui esta el pipeline sistematico para reducir archivos masivos de documentos en datasets de entrenamiento de precision.
Una empresa de construccion se acerco a nosotros con 700GB de PDFs: presupuestos de obra, especificaciones tecnicas, planos arquitectonicos, informes de obra y correspondencia de proyectos acumulados durante 15 anos. Querian ajustar un modelo para dos tareas: clasificacion de documentos (identificar el tipo de documento desde la primera pagina) y extraccion de entidades (extraer detalles clave de las especificaciones).
Preguntaron: "Como usamos todos estos datos para el entrenamiento?"
La respuesta: no los usas. Los reduces.
El fine-tuning de un modelo de lenguaje requiere entre 500 y 5,000 ejemplos cuidadosamente curados para la mayoria de las tareas empresariales. Usar "todos los datos" introduce ruido, contradicciones, redundancia e inconsistencias de formato que danan activamente el rendimiento del modelo. El objetivo no es maximizar el volumen de datos, sino destilar 700GB de documentos brutos en los 2,000-3,000 ejemplos que ensenan al modelo exactamente lo que necesita aprender.
Este articulo recorre el pipeline de reduccion de cinco etapas que transforma archivos masivos de documentos en datasets de entrenamiento de precision.
La Discrepancia de Escala
Los numeros ponen el desafio en perspectiva:
- 700GB de PDFs ≈ 140,000 documentos a 5MB promedio
- 140,000 documentos ≈ 14 millones de paginas a 100 paginas promedio
- 14 millones de paginas ≈ 7 mil millones de tokens a 500 tokens/pagina
- El fine-tuning necesita ≈ 2,000 ejemplos a ~500 tokens promedio = 1 millon de tokens
Necesitas el 0.014% de los datos disponibles. El otro 99.986% es redundante, irrelevante, desactualizado o demasiado ruidoso para mejorar el entrenamiento.
El pipeline de reduccion debe encontrar el 0.014% correcto: los ejemplos que son representativos, precisos, diversos y formateados correctamente. Esto no es muestreo aleatorio. Es curacion sistematica.
Etapa 1: Triaje
Entrada: 700GB de documentos brutos Salida: ~200GB de documentos potencialmente relevantes Reduccion: ~70%
El triaje ordena el archivo de documentos en pilas de "conservar", "descartar" y "revisar". El objetivo es eliminar material obviamente irrelevante antes de que comience cualquier procesamiento costoso.
Triaje Automatizado
Eliminacion de duplicados. Los archivos empresariales contienen duplicacion masiva: la misma especificacion distribuida a 15 subcontratistas, el mismo plano guardado en 4 versiones con variaciones menores en el nombre de archivo. El hashing de contenido (MD5 o SHA-256 del archivo) detecta duplicados exactos. Para empresas de construccion, tipicamente vemos entre 15-30% de duplicados exactos en archivos no gestionados.
Filtrado por tipo de archivo. No todos los PDFs contienen contenido util para entrenamiento. Filtra: paginas en blanco, portadas solo con un logo, paginas de tabla de contenidos, documentos de relleno y archivos corruptos que no se pueden analizar. Comprobaciones automatizadas: conteo de paginas (rechazar PDFs de 0 paginas), tamano de archivo (rechazar archivos menores de 10KB, probablemente en blanco), extraibilidad de texto (rechazar archivos donde no se puede extraer texto).
Filtrado por fecha. Los documentos mas antiguos que una fecha de corte definida pueden no reflejar estandares, terminologia o practicas comerciales actuales. Si tu modelo procesara documentos actuales, entrenar con especificaciones de hace 15 anos con estandares desactualizados puede introducir patrones obsoletos. Un corte razonable para la mayoria de las empresas: conservar documentos de los ultimos 5-7 anos, a menos que se necesiten especificamente documentos mas antiguos.
Clasificacion por tipo de documento. Usa un clasificador zero-shot o coincidencia simple de palabras clave para clasificar documentos por tipo: especificacion, plano, correspondencia, informe, contrato, factura. Conserva solo los tipos de documento relevantes para tu tarea de entrenamiento. Para un modelo de clasificacion de documentos, necesitas ejemplos de todos los tipos; para un modelo de extraccion de entidades enfocado en especificaciones, solo necesitas especificaciones.
Revision Manual de Triaje
El triaje automatizado maneja la mayor parte de la reduccion, pero entre el 10-15% de los documentos caen en la pila de "revision": documentos donde la clasificacion automatizada es incierta. Un experto en el dominio los revisa, dedicando 15-30 segundos por documento para decidir "conservar" o "descartar".
A este ritmo, revisar 5,000 documentos inciertos toma aproximadamente 30 horas. Este es el tiempo de experto de dominio mas rentable en todo el pipeline: cada minuto elimina multiples documentos del procesamiento posterior.
Etapa 2: Extraccion
Entrada: ~200GB de documentos relevantes Salida: ~5GB de secciones de contenido relevante Reduccion: ~97%
La extraccion obtiene las secciones especificas de los documentos que contienen contenido relevante para el entrenamiento. No documentos completos, sino pasajes, tablas, clausulas o paginas especificas.
Extraccion a Nivel de Seccion
La mayoria de los documentos empresariales son 80% texto repetitivo estandar y 20% contenido unico. Una especificacion de construccion de 200 paginas contiene:
- 40 paginas de terminos y condiciones estandar (iguales en cada proyecto)
- 30 paginas de requisitos generales (mayormente estandarizados)
- 80 paginas de especificaciones tecnicas (unicas, de alto valor para el entrenamiento)
- 30 paginas de apendices (planos, cronogramas; pueden o no ser relevantes)
- 20 paginas de portadas, contenidos y paginas en blanco
Para el entrenamiento, las 80 paginas de especificaciones tecnicas son oro. Las 40 paginas de terminos estandar son ruido: cada proyecto tiene el mismo texto repetitivo, asi que incluirlo solo ensena al modelo a generar texto generico.
Metodos de extraccion de secciones:
- Extraccion basada en encabezados: Analiza la estructura del documento y extrae secciones por encabezado. "Seccion 03300 - Concreto Vaciado en Sitio" es relevante; "Seccion 00100 - Instrucciones para Licitantes" no lo es.
- Extraccion basada en palabras clave: Extrae paginas que contienen palabras clave especificas del dominio que indican contenido relevante. Filtra paginas con solo contenido administrativo o de procedimiento.
- Extraccion basada en diseno: Usa el detector de diseno para identificar paginas con alta densidad de contenido (texto + tablas) versus baja densidad de contenido (mayormente espacio en blanco, encabezados o imagenes).
Filtro de Calidad de Contenido
Despues de la extraccion de secciones, filtra el contenido extraido por calidad:
- Elimina secciones con menos del 50% de texto legible (probablemente paginas con muchas imagenes que necesitan procesamiento diferente)
- Elimina secciones que son identicas o casi identicas a secciones previamente extraidas (deduplicacion entre documentos)
- Elimina secciones en idiomas que tu modelo no manejara
- Elimina secciones con redaccion o censura excesiva (contenido insuficiente para aprender)
Etapa 3: Transformacion
Entrada: ~5GB de secciones de contenido relevante Salida: ~50MB de pares de entrenamiento candidatos Reduccion: ~99%
Aqui es donde el contenido extraido se convierte en datos de entrenamiento. Cada seccion relevante se transforma en un par de entrada/salida que coincide con el formato que el modelo usara en produccion.
Para Clasificacion de Documentos
Transforma la primera pagina (o seccion representativa) de cada documento en un ejemplo de clasificacion:
{
"input": "Classify the following document excerpt:\n\n[first 500 tokens of document]",
"output": "document_type: technical_specification\nconfidence_reason: Contains section headings with CSI format (Section 03300), material specifications, and compliance references to ASTM standards."
}
De 140,000 documentos despues de la deduplicacion y el triaje, podrias tener 30,000 primeras paginas unicas en 12 tipos de documentos. Transforma todas en pares de clasificacion candidatos.
Para Extraccion de Entidades
Transforma las secciones relevantes en ejemplos de extraccion:
{
"input": "Extract project details from the following specification section:\n\n[specification text]",
"output": {
"project_name": "Westfield Commercial Center Phase 2",
"specification_section": "03300 - Cast-in-Place Concrete",
"concrete_grade": "C30/37",
"slump_requirement": "100mm ± 25mm",
"curing_period": "7 days minimum",
"referenced_standards": ["ASTM C150", "ASTM C33", "ACI 318"]
}
}
Esta transformacion requiere experiencia en el dominio. Un ingeniero de ML puede estructurar el formato de entrada, pero un ingeniero de construccion debe identificar y verificar los valores correctos de las entidades. Esta es la etapa mas intensiva en mano de obra.
Creacion de Pares de Entrenamiento
La participacion del experto en el dominio en esta etapa tipicamente sigue este flujo de trabajo:
- El ingeniero de ML extrae secciones candidatas y las estructura como entradas
- El ingeniero de ML usa un LLM para generar borradores de salida (sugerencias de extraccion de entidades)
- El experto en el dominio revisa cada borrador, corrigiendo errores y llenando vacios
- El ingeniero de ML valida los pares finales contra el esquema de salida
Estimacion de tiempo: revisar y corregir un borrador de extraccion toma 2-5 minutos por ejemplo. Para 3,000 pares candidatos, presupuesta 100-250 horas de tiempo de experto en el dominio. Distribuido entre 3 expertos durante 4 semanas, eso son 8-20 horas por semana por experto.
Etapa 4: Curacion
Entrada: ~50MB de pares de entrenamiento candidatos (ej., 10,000 pares) Salida: ~10MB de pares de entrenamiento de alta calidad (ej., 2,000 pares) Reduccion: ~80%
No todos los pares candidatos son adecuados para el entrenamiento. La curacion filtra por calidad, equilibrio y diversidad.
Filtrado de Calidad
Ejecuta todos los pares candidatos a traves de controles de calidad:
Precision de etiquetas: Haz que un segundo experto en el dominio revise un 15% aleatorio de los pares. Si el acuerdo es inferior al 90%, las directrices de etiquetado necesitan revision y los ejemplos en conflicto necesitan ser revisados nuevamente.
Cumplimiento de formato: Valida cada salida contra el esquema esperado. Rechaza pares con campos faltantes, tipos de datos incorrectos o estructura malformada.
Eliminacion de cuasi-duplicados: Haz embedding de todos los textos de entrada y elimina pares donde la similitud coseno de la entrada exceda 0.95. De 10,000 candidatos, la eliminacion de cuasi-duplicados tipicamente elimina entre el 20-40%.
Balanceo de Clases
Para tareas de clasificacion, cuenta los ejemplos por clase. Si "especificacion_tecnica" tiene 4,000 ejemplos y "informe_de_obra" tiene 200, el modelo aprendera abrumadoramente a predecir "especificacion_tecnica."
Balancea submuestreando las clases sobrerepresentadas y conservando todos los ejemplos de las clases subrepresentadas. El objetivo: ninguna clase por debajo del 5% del dataset final. Si una clase genuinamente ocurre raramente, sobremuestrea o crea ejemplos adicionales especificamente para esa clase.
Maximizacion de la Diversidad
Entre los candidatos restantes, selecciona para maxima diversidad:
- Diferentes proyectos (no 500 ejemplos del mismo proyecto de construccion)
- Diferentes plantillas de documentos (no todas de la misma firma de ingenieria)
- Diferentes niveles de complejidad (especificaciones simples y especificaciones complejas de multiples sistemas)
- Diferentes casos limite (formatos inusuales, terminologia no estandar, documentos multilingues)
Un enfoque practico: agrupa los pares candidatos usando embeddings de oraciones, luego selecciona ejemplos que cubran todo el espacio de clusters: mas ejemplos de clusters subrepresentados, menos de clusters densos.
Etapa 5: Validacion
Entrada: ~2,000 pares de entrenamiento curados Salida: ~2,000 pares de entrenamiento validados (o menos, si la validacion revela problemas) Reduccion: 0-10% (la validacion elimina los ultimos problemas de calidad)
La etapa final es la revision experta del dataset curado completo.
Revision de Expertos
Un experto en el dominio revisa el dataset final, no verificando cada ejemplo (ya revisaron ejemplos individuales en la Etapa 3), sino examinando el dataset como un todo:
- Verificacion de cobertura: Estan representados todos los tipos de documentos? Estan presentes todos los tipos de entidades? Se incluyen los casos limite?
- Verificacion de consistencia: Los documentos similares estan etiquetados de manera consistente? Si dos especificaciones casi identicas tienen diferentes extracciones de entidades, una esta incorrecta.
- Verificacion de realismo: El dataset refleja lo que el modelo realmente encontrara en produccion? O esta sesgado hacia ejemplos faciles?
Auditoria de Casos Limite
Revisa especificamente los casos limite identificados durante las etapas anteriores:
- Documentos con formato no estandar
- Documentos en plantillas inusuales
- Documentos con informacion incompleta
- Documentos con informacion contradictoria
- Documentos en los limites entre categorias
Asegura al menos 3-5 ejemplos de cada tipo de caso limite en el dataset final.
Verificacion de Formato
Verificacion automatizada final: ejecuta cada ejemplo a traves del validador de esquema de salida una ultima vez. Esto detecta cualquier problema de formato introducido durante el proceso de revision y correccion.
Resultados del Mundo Real
El archivo de 700GB de la empresa de construccion se redujo de la siguiente manera:
| Etapa | Volumen | Documentos/Ejemplos | Reduccion |
|---|---|---|---|
| Archivo bruto | 700GB | ~140,000 documentos | — |
| Despues del triaje | 195GB | ~45,000 documentos | 72% |
| Despues de la extraccion | 4.8GB | ~120,000 secciones | 97.5% |
| Despues de la transformacion | 42MB | 8,200 pares candidatos | — |
| Despues de la curacion | 8.5MB | 1,800 clasificacion + 3,200 extraccion | — |
| Despues de la validacion | 8.1MB | 1,750 clasificacion + 3,100 extraccion | — |
Tiempo total: 4 semanas con 2 ingenieros de ML y 3 expertos en el dominio.
El modelo resultante alcanzo un 94% de precision en clasificacion de documentos (12 categorias) y un 89% de precision en extraccion de entidades (15 tipos de entidades). Esto fue con un modelo de 7B parametros ajustado con menos de 5,000 ejemplos, extraidos de 700GB de material fuente.
Errores Comunes
Saltarse el triaje e intentar procesar todo. Procesar 700GB de PDFs a traves de un pipeline de analisis toma semanas de tiempo de computo y produce cantidades masivas de datos irrelevantes. El triaje elimina el 70% de ese costo por adelantado.
Muestreo aleatorio en lugar de curacion sistematica. Seleccionar aleatoriamente 2,000 documentos de 140,000 produce un dataset que refleja la distribucion del archivo, que usualmente esta dominada por unos pocos tipos de documentos y unos pocos proyectos. La curacion sistematica asegura cobertura de todos los tipos y diversidad entre fuentes.
Permitir que los ingenieros de ML creen la verdad de referencia sin expertos en el dominio. La etapa de transformacion requiere conocimiento del dominio para producir salidas correctas. Un ingeniero de ML puede estructurar los pares, pero un ingeniero de construccion debe verificar los valores de las entidades.
Incluir documentos desactualizados sin marcarlos. Los documentos mas antiguos pueden hacer referencia a estandares obsoletos o usar terminologia en desuso. Si se incluyen, marcalos para que el modelo aprenda practicas actuales, no historicas.
Ertas Data Suite soporta cada etapa del pipeline de reduccion de datos. El triaje automatizado clasifica y deduplica documentos al ingerirlos. La extraccion a nivel de seccion identifica y aisla contenido relevante. La interfaz de etiquetado soporta la revision eficiente por expertos del dominio de los pares de entrenamiento candidatos. La puntuacion de calidad, deduplicacion y balanceo de clases estan integrados en la etapa de curacion. Y el flujo de trabajo de validacion final asegura que el dataset cumple los umbrales de calidad antes de la exportacion. Todo el pipeline se ejecuta on-premise, manteniendo los 700GB de documentos empresariales sensibles dentro de tu infraestructura.
Your data is the bottleneck — not your models.
Ertas Data Suite turns unstructured enterprise files into AI-ready datasets — on-premise, air-gapped, with full audit trail. One platform replaces 3–7 tools.
Lectura Adicional
- AI para Documentos de Construccion: Procesando Archivos PDF — Como las empresas de construccion estan usando AI para desbloquear valor de decadas de archivos PDF.
- Preparacion de Datos de Entrenamiento Empresarial para Fine-Tuning — La guia completa para preparar datos empresariales para el fine-tuning de modelos.
- Calidad de Datos sobre Cantidad — Por que menos ejemplos de mejor calidad superan consistentemente a datasets mas grandes y ruidosos.
Turn unstructured data into AI-ready datasets — without it leaving the building.
On-premise data preparation with full audit trail. No data egress. No fragmented toolchains. EU AI Act Article 30 compliance built in.
Keep reading

Preparing Tool-Calling Datasets for Enterprise AI Agents: An On-Premise Workflow
AI agents need tool-calling training data to reliably select and invoke the right tools. Here's how to prepare function-calling datasets from enterprise documents — entirely on-premise.

Preparing RAG Datasets vs Fine-Tuning Datasets: Different Pipelines, Same Source Data
RAG needs chunked, retrieval-optimized text. Fine-tuning needs input/output pairs. Both start from the same raw documents. Here's how to run parallel preparation pipelines from a single source.

From Ad-Hoc Data Prep to Continuous Data Ops: Building an Always-On Pipeline
Most enterprises treat data preparation as a one-time project. But AI models need fresh data continuously. Here's how to evolve from ad-hoc data prep to a continuous data operations pipeline.