Biblioteca de Python que usa LLM para convertir PDF, imágenes y otros documentos en objetos Pydantic validados, con clasificación y división.
Unstructured-IO/unstructured
Biblioteca de Python de código abierto que divide PDFs, HTML, documentos de Word, correos electrónicos y otros documentos en elementos estructurados para pipelines de LLM.
- Estrellas
- 15,687
- Forks
- 1,383
- Issues abiertos
- 340
- Último commit
- ayer
¿Qué es?
Unstructured es una biblioteca de Python de código abierto para ingerir y preprocesar documentos de imagen y texto, como PDFs, páginas HTML, archivos de Word y correos electrónicos. Sus funciones de particionado detectan el tipo de archivo y convierten el contenido en una lista de elementos tipados (títulos, párrafos, tablas, entre otros), más fáciles de usar en modelos de lenguaje y sistemas de recuperación que el texto sin procesar.
La biblioteca ofrece un punto de entrada genérico, partition(), que dirige cada archivo a una función específica para su formato, y permite instalar solo los extras necesarios para determinados tipos de documento. Algunos formatos requieren dependencias del sistema opcionales, como tesseract para OCR, poppler para PDFs y libreoffice para archivos de MS Office. La telemetría se envía de forma predeterminada, pero se puede desactivar con las variables de entorno DO_NOT_TRACK o SCARF_NO_ANALYTICS.
El proyecto también ofrece una API alojada, Transform v2, que proporciona resultados de mayor calidad, pero la biblioteca de código abierto se mantiene como un componente gratuito.
Funciones clave
- 01Divide PDFs, HTML, documentos de Word, correos electrónicos y otros formatos en elementos de documento tipados.
- 02Detecta automáticamente el tipo de archivo y lo dirige a funciones de particionado específicas para cada formato.
- 03Admite OCR para imágenes y PDFs escaneados mediante tesseract.
- 04Permite instalar dependencias específicas por tipo de documento mediante extras opcionales para mantenerlas al mínimo.
- 05Se puede ejecutar en un contenedor Docker con imágenes multiplataforma.
Casos de uso
- Preparar documentos empresariales como fragmentos de texto depurados para generación aumentada por recuperación.
- Extraer tablas y títulos de PDFs para su posterior análisis de datos.
- Convertir correos electrónicos y archivos de Office en JSON estructurado para pipelines de ingesta.
Inicio rápido
- 1
Descarga la imagen de Docker
docker pull downloads.unstructured.io/unstructured-io/unstructured:latest - 2
Inicia un contenedor a partir de la imagen
docker run -dt --name unstructured downloads.unstructured.io/unstructured-io/unstructured:latest - 3
Instala el SDK de Python con compatibilidad para todos los tipos de documentos
pip install "unstructured[all-docs]" - 4
Divide un archivo de correo electrónico de ejemplo en Python
Antes de usarlo
- Algunos tipos de documentos requieren paquetes del sistema como tesseract-ocr, poppler-utils o libreoffice.
- La salida de mayor calidad solo está disponible a través de la API de pago Transform v2.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es unstructured?
- Biblioteca de Python de código abierto que divide PDFs, HTML, documentos de Word, correos electrónicos y otros documentos en elementos estructurados para pipelines de LLM. Unstructured es una biblioteca de Python de código abierto para ingerir y preprocesar documentos de imagen y texto, como PDFs, páginas HTML, archivos de Word y correos electrónicos. Sus funciones de particionado detectan el tipo de archivo y convierten el contenido en una lista de elementos tipados (títulos, párrafos, tablas, entre otros), más fáciles de usar en modelos de lenguaje y sistemas de recuperación que el texto sin procesar.
- ¿unstructured es gratuito? ¿Qué licencia tiene?
- unstructured es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿unstructured sigue mantenido?
- Mantenimiento activo. El último commit de unstructured fue el 6 nov 2026.
- ¿Para qué puedo usar unstructured?
- Preparar documentos empresariales como fragmentos de texto depurados para generación aumentada por recuperación. Extraer tablas y títulos de PDFs para su posterior análisis de datos. Convertir correos electrónicos y archivos de Office en JSON estructurado para pipelines de ingesta.
- ¿Cómo se instala unstructured?
- Descarga la imagen de Docker: docker pull downloads.unstructured.io/unstructured-io/unstructured:latest Inicia un contenedor a partir de la imagen: docker run -dt --name unstructured downloads.unstructured.io/unstructured-io/unstructured:latest Instala el SDK de Python con compatibilidad para todos los tipos de documentos: pip install "unstructured[all-docs]" Divide un archivo de correo electrónico de ejemplo en Python
- ¿Dónde consigo unstructured?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Unstructured-IO/unstructured
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Analizador de documentos de código abierto que convierte PDF, archivos de Office e imágenes a Markdown o JSON para flujos de trabajo con LLM y agentes.
Parser de documentos de código abierto que convierte PDF, Office, HTML y otros archivos en datos estructurados para pipelines de IA generativa.
Un parser de documentos que convierte archivos PDF, Word, PowerPoint, Excel y CSV en texto listo para LLM, procurando conservar intacto el contenido.
API de inteligencia documental autoalojada que convierte PDF, archivos de Office e imágenes en fragmentos listos para LLM, con análisis de diseño y OCR.
Modelo OCR de visión y lenguaje de código abierto de Baidu que convierte documentos largos de varias páginas y PDF en texto estructurado en una sola pasada.