PDF-Extract-Kit: Extraiga la compleja estructura del contenido PDF de la herramienta de código abierto
Últimos recursos sobre IAPublicado hace 6 meses Círculo de intercambio de inteligencia artificial 2.9K 00
Introducción general
PDF-Extract-Kit es un proyecto de código abierto desarrollado por el equipo OpenDataLab , centrado en la extracción eficiente de contenido de alta calidad a partir de documentos PDF complejos y diversos . Integra tecnología avanzada de análisis sintáctico de documentos , soporte para la detección de diseño , reconocimiento de fórmulas , extracción de tablas y OCR y otras funciones , aplicable a trabajos académicos , informes de investigación , documentos financieros y otros escenarios. La herramienta adopta un diseño modular , los usuarios pueden ser configurados de forma flexible de acuerdo a las necesidades del usuario para construir fácilmente aplicaciones de procesamiento de documentos personalizados . PDF-Extract-Kit proporciona puntos de referencia de evaluación completa para ayudar a los usuarios a elegir el modelo más adecuado , mientras que constantemente actualizado y optimizado , como la reciente adición de DocLayout-YOLO más rápido y StructTable . -InternVL2-1B. Tanto desarrolladores como investigadores pueden conseguir con él una extracción eficaz del contenido de los documentos.

Lista de funciones
- Detección del trazadoReconoce diseños de página en PDF, incluyendo áreas como encabezados, párrafos, imágenes y tablas, con soporte para modelos eficientes como DocLayout-YOLO.
- reconocimiento de fórmulas: Extrae y analiza fórmulas matemáticas de documentos y las convierte a formato LaTeX, apoyándose en tecnologías avanzadas como UniMERNet.
- Extracción de formularios: Admite el reconocimiento y la extracción de contenido de tablas complejas, con salida en formatos LaTeX, HTML y Markdown.
- Tratamiento OCR: Convierte texto de documentos escaneados o imágenes en texto editable mediante tecnologías como PaddleOCR.
- Configuración modular: Proporciona perfiles flexibles que permiten a los usuarios combinar diferentes modelos y crear aplicaciones rápidamente.
- Evaluación de contenidosDiversas pruebas de análisis de PDF integradas para ayudar a los usuarios a evaluar la eficacia de los distintos modelos.
- Extracción de imágenes y texto: Soporte para extraer imágenes de PDF y reconocer su contenido textual.
Utilizar la ayuda
Proceso de instalación
PDF-Extract-Kit es compatible con múltiples sistemas operativos (por ejemplo, Ubuntu, Windows o macOS), aquí están los pasos detallados de instalación (Ubuntu 20.04 por ejemplo):
1. Preparación medioambiental
- Asegúrese de que Python 3.10 está instalado en su sistema:
sudo apt update sudo apt install python3.10 python3.10-dev python3-pip
- Crear y activar un entorno virtual:
conda create -n pdf-extract-kit python=3.10 conda activate pdf-extract-kit
2. Instalación de dependencias
- Clonar el repositorio de código:
git clone https://github.com/opendatalab/PDF-Extract-Kit.git cd PDF-Extract-Kit
- Instalar dependencias del núcleo (disponible si no hay GPU)
requirements-cpu.txt
):pip install -r requirements.txt
tenga en cuentaSi se encuentra con
doclayout-yolo
La instalación ha fallado, puede instalarlo manualmente:pip3 install doclayout-yolo==0.0.2 --extra-index-url=https://pypi.org/simple
3. Descarga de las ponderaciones de los modelos
- Consulte el tutorial oficial para descargar los archivos del modelo (se admite la descarga total o parcial):
- Descargas automatizadas mediante scripts de Python:
python scripts/download_models_hf.py
- O descárgalo manualmente desde Hugging Face:
git lfs install git clone https://huggingface.co/opendatalab/PDF-Extract-Kit-1.0
- Descargas automatizadas mediante scripts de Python:
- Una vez finalizada la descarga, coloque los archivos del modelo en la ruta especificada en el directorio del proyecto (consulte la sección
configs/model_configs.yaml
).
4. Verificación de la instalación
- Ejecute el script de ejemplo para comprobar que el entorno funciona:
python pdf_extract.py --pdf assets/examples/example.pdf
La salida se guardará en el archivo
outputs
carpeta.
Función Flujo de operaciones
Detección del trazado
- Preparación de archivos PDF: Coloque el PDF que va a procesar en el directorio del proyecto (p. ej.
assets/examples/
). - Inspección del trazado::
- modificaciones
configs/layout_detection.yaml
La ruta de entrada en elpdf_path: "assets/examples/example.pdf" output_dir: "outputs/layout_detection"
- Ejecuta el comando:
python scripts/layout_detection.py --config=configs/layout_detection.yaml
- modificaciones
- Ver resultados: en
outputs/layout_detection
generando imágenes y archivos JSON con las áreas de diseño etiquetadas.
reconocimiento de fórmulas
- Ejecutar la extracción de fórmulas::
- Utiliza la configuración por defecto:
python pdf_extract.py --pdf your_file.pdf --render
--render
muestra la fórmula como una imagen para facilitar la verificación.
- Utiliza la configuración por defecto:
- Ver salidaLas fórmulas se almacenan en JSON de salida en formato LaTeX y se pueden utilizar directamente en la escritura académica o el procesamiento posterior.
Extracción de formularios
- Identificación del formulario de ejecución::
- Asegúrese de que se ha descargado
StructTable-InternVL2-1B
Modelos. - Ejecuta la extracción completa:
python pdf_extract.py --pdf your_file.pdf
- Asegúrese de que se ha descargado
- Selección del formato de salida::
- Modificar el archivo de configuración
configs/model_configs.yaml
Ajustestable_format
debido alatex
yhtml
tal vezmarkdown
.
- Modificar el archivo de configuración
- Resultados: El contenido del formulario se guardará en el directorio de salida en el formato especificado.
Tratamiento OCR
- Procesamiento de PDF escaneados::
- Para los PDF gráficos, asegúrese de que el OCR está activado:
python pdf_extract.py --pdf scan_file.pdf --vis
--vis
Los parámetros generan resultados de visualización, anotando áreas del texto reconocido.
- Para los PDF gráficos, asegúrese de que el OCR está activado:
- Comprobar la salida: El contenido del texto se guarda en un formato editable y los resultados del reconocimiento imagen-texto pueden verse de un vistazo.
Función destacada Operación
Configuración modular
- compilador
configs/model_configs.yaml
Ajuste los parámetros:img_size
Resolución de imagen.conf_thres
: Umbrales de confianza.device
: Seleccióncuda
(GPU) ocpu
.
- Ejemplo:
model_args: img_size: 1024 conf_thres: 0.5 device: "cuda"
Optimización del alto rendimiento
- Se puede activar el procesamiento por lotes para dispositivos de gran capacidad (≥16GB de memoria de vídeo):
python pdf_extract.py --pdf your_file.pdf --batch-size 128
- Aumentar la velocidad de análisis 50% o superior, adecuado para el procesamiento por lotes.
Soporte multilingüe
- establecer
lang
debido aauto
El modelo de OCR se utiliza para reconocer automáticamente el idioma del documento y seleccionar el modelo de OCR adecuado:ocr_args: lang: "auto"
advertencia
- requisitos de hardware: Las GPU (por ejemplo, las tarjetas gráficas NVIDIA) pueden aumentar drásticamente la velocidad de procesamiento y se recomienda que tengan ≥8 GB de memoria de vídeo.
- problemas comunes::
- Si se le pregunta si falta
cv2
Ejecutarpip install opencv-python
. - Si la descarga del modelo está incompleta, compruebe la red o cambie el método de descarga.
- Si se le pregunta si falta
- Apoyo comunitarioSi tienes alguna pregunta, hazla en los foros de GitHub Discussions o Issues.
Mediante los pasos anteriores, los usuarios pueden empezar a utilizar PDF-Extract-Kit fácilmente y completar de forma eficaz la extracción de contenido PDF complejo.
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...