Cómo usar PDFs con un modelo de IA local sin subir nada a la nube
¿Usas un LLM local pero aún envías PDFs a una API en la nube para extraerlos? Aquí tienes un pipeline completamente local que mantiene tus documentos en tu máquina.
Ejecutar un modelo de lenguaje en tu propia máquina se ha vuelto realmente accesible. Herramientas como Ollama, LM Studio y llama.cpp te permiten usar modelos capaces en tu propio hardware sin enviar nada a una API. Pero hay una brecha de la que no se habla lo suficiente: incluso cuando el modelo es local, tus documentos a menudo siguen saliendo de tu máquina durante el paso de preparación.
Este artículo describe un flujo sencillo que mantiene todo el proceso en tu dispositivo, desde el PDF original hasta la respuesta del modelo.
La brecha: modelo local, preparación del documento en la nube
La mayoría de quienes ejecutan modelos de lenguaje locales siguen recurriendo a una herramienta web o una API en la nube cuando necesitan extraer texto de un PDF antes de dárselo al modelo. Ese paso de extracción es donde el archivo sale silenciosamente de tu dispositivo.
Para un artículo de investigación público probablemente no importe. Para un contrato, un informe interno o cualquier documento que no entregarías a un extraño, ese paso es la fuga en una configuración que de otro modo sería completamente privada.
Lo que un modelo local realmente necesita de un PDF
El texto bruto de un PDF es desordenado. La extracción a menudo arrastra encabezados y pies de página repetidos, números de página, saltos de línea a mitad de frase y caracteres que no se mapean bien. Dárselo directamente al modelo reduce la calidad de las respuestas de forma notable.
Lo que realmente ayuda al modelo es texto limpio y estructurado:
- Encabezados y pies de página repetidos eliminados.
- Saltos de línea a mitad de frase unidos de nuevo.
- Estructura de secciones preservada para que el modelo sepa dónde cambian los temas.
- Un bloque coherente por tema en lugar de un fragmento por página.
Markdown funciona bien como formato intermedio aquí. Mantiene suficiente estructura para ser útil, sin añadir ruido que dificulte el trabajo del modelo.
Un pipeline completamente local
Aquí tienes un flujo donde nada sale de tu máquina:
- Abre una herramienta de PDF en el navegador que procese en local. La extracción se ejecuta dentro de la pestaña del navegador. No se sube nada.
- Convierte el PDF a Markdown. Esto ocurre en el navegador, no en un servidor.
- Guarda el archivo
.mdo copia el texto Markdown directamente. - Pégalo en la ventana de contexto de tu modelo local, o cárgalo como archivo si tu herramienta de LLM admite entrada de archivo.
- Ejecuta la inferencia en local como de costumbre.
El PDF nunca llega a un servidor. La extracción, la limpieza y la inferencia ocurren todas en tu hardware.
Por qué el paso de extracción importa más de lo que parece
La mayor variable en cómo un modelo local maneja un documento no es el tamaño del modelo. Es la calidad de lo que le das. Un modelo que produce resultados mediocres con un volcado bruto de PDF puede dar respuestas notablemente mejores con el mismo contenido tras una extracción limpia.
Esto se acumula en documentos más largos. Un informe de 40 páginas donde cada página empieza con un encabezado repetido y termina con un número de página añade mucho ruido a lo largo de 40 repeticiones. El modelo dedica atención a ese envoltorio en lugar de al contenido que te importa.
Los documentos escaneados también funcionan
Los PDF escaneados son imágenes, no texto. Obtener texto legible de ellos requiere OCR, reconocimiento óptico de caracteres. Históricamente eso significaba subir el archivo a algún sitio.
Ya no es necesario. El OCR ahora puede ejecutarse en el navegador usando WebAssembly, lo que significa que incluso un documento escaneado no tiene que salir de tu dispositivo. Establece el modo OCR en automático y la extracción gestiona tanto las páginas de capa de texto como las de imagen en un solo paso, en local.
Qué tamaño de modelo funciona para documentos
Los modelos locales varían en cómo manejan documentos más largos. Para preguntas y respuestas o resúmenes, una ventana de contexto más grande importa más que el tamaño bruto del modelo. Los modelos en el rango de 7B a 14B, ejecutados en una máquina con al menos 16 GB de RAM, manejan bien la mayoría de las tareas de documento único.
La extracción limpia suele importar más que usar un modelo más grande. Pruébalo: toma un documento que le cueste a tu modelo, haz una extracción limpia y aliméntalo de nuevo. La diferencia suele ser mayor que cambiar a un modelo más grande.
PDFShore gestiona el paso de extracción en local, ya sea que la fuente sea un PDF de texto o un documento escaneado. El resultado es Markdown limpio listo para usar en cualquier configuración de IA local que uses.