PageIndex: un sistema open-source de indexación de PDF para una recuperación más precisa y lógica
¿Qué es PageIndex?
PageIndex es un sistema de indexación de documentos PDF de código abierto que mejora la precisión en la recuperación de documentos profesionales extensos y la capacidad de razonamiento de los LLM. Convierte los documentos PDF en una estructura de árbol jerárquica, reemplazando la búsqueda tradicional por similitud semántica de RAG vectorial, logrando así una recuperación más precisa y lógica.
Las funciones principales de PageIndex incluyen la conversión de documentos en una estructura de árbol similar a un índice inteligente, proporcionando localización precisa de páginas, evitando el particionamiento arbitrario y adaptándose a documentos muy extensos, manejando fácilmente contenidos de cientos o incluso miles de páginas.
Su principio de funcionamiento consiste en convertir documentos PDF en una estructura de árbol semántica, combinando análisis de consultas, selección de documentos, selección de nodos y generación de contenido, para finalmente proporcionar respuestas precisas. A diferencia de los sistemas que dependen de bases de datos vectoriales o métodos de particionamiento tradicionales, PageIndex es completamente gratuito y de código abierto. Es especialmente adecuado para procesar informes financieros, documentos regulatorios, libros de texto académicos, manuales legales o técnicos, y cualquier documento que exceda los límites de contexto del LLM.

Funciones principales de PageIndex
Procesamiento de documentos: Capaz de manejar documentos extensos, especialmente documentos profesionales, mediante la construcción de una estructura de árbol de búsqueda para preparar la generación aumentada por recuperación (RAG) basada en razonamiento.
Extracción y procesamiento del índice
Puede extraer el contenido del índice del documento, manejando diferentes situaciones en las que hay o no números de página en el índice.
Transforma el índice a un formato JSON específico para facilitar el procesamiento posterior.
Procesamiento de números de página: Añade índices físicos a las entradas del índice, maneja situaciones en las que faltan números de página o son incorrectos, y repara entradas incorrectas del índice mediante múltiples intentos.
Procesamiento de nodos: Procesa recursivamente los nodos grandes dividiéndolos en nodos más pequeños para cumplir con los límites de cantidad de tokens y páginas.
Verificación y reparación: Verifica la precisión del índice, calcula la tasa de exactitud y repara los resultados inexactos.
Características de PageIndex
Estructura de árbol jerárquica: Permite a los LLM recorrer el documento de forma lógica, como un índice inteligente optimizado para LLM.
Referencias precisas de página: Cada nodo contiene su resumen y los índices físicos de las páginas de inicio y fin, logrando una localización precisa.
Sin particionamiento arbitrario: No utiliza particionamiento arbitrario; los nodos siguen la estructura natural del documento.
Soporte para documentos a gran escala: Diseñado para manejar fácilmente documentos de cientos o incluso miles de páginas.
Casos de uso de PageIndex
Ámbito financiero
Análisis de informes financieros: Localización rápida de datos e indicadores financieros clave.
Interpretación de documentos regulatorios: Búsqueda precisa de cláusulas regulatorias para garantizar el cumplimiento.
Ámbito legal
Búsqueda de documentos legales: Localización eficiente de cláusulas legales y casos.
Revisión de contratos: Localización rápida de cláusulas clave en los contratos.
Investigación académica
Búsqueda de artículos académicos: Localización rápida de resultados de investigación y soporte teórico.
Estudio con libros de texto: Localización conveniente de capítulos específicos y puntos de conocimiento.
Documentación técnica
Manuales técnicos: Búsqueda rápida de pasos de operación y parámetros técnicos.
Documentación de proyectos: Recuperación eficiente de información clave en proyectos.
Interno de empresas
Informes internos: Localización rápida de contenido clave en informes extensos.
Gestión de bases de conocimiento: Mejora de la eficiencia en el intercambio y recuperación de conocimiento.
Ámbito médico
Búsqueda de literatura médica: Localización rápida de resultados de investigación y métodos de tratamiento.
Guías clínicas: Localización precisa de guías de procedimientos clínicos.
Ámbito educativo
Materiales de cursos en línea: Búsqueda rápida de contenidos clave del curso.
Materiales de repaso para exámenes: Localización eficiente de puntos clave para la revisión.
Organismos gubernamentales
Interpretación de documentos políticos: Búsqueda rápida de cláusulas políticas.
Búsqueda de información pública: Mejora de la eficiencia de los servicios públicos.
Cómo usar PageIndex
1. Instalar dependencias
pip3 install -r requirements.txt
2. Configurar la clave de API de Openai
Crea un archivo .env en el directorio raíz y añade tu clave de API:
CHATGPT_API_KEY=your_openai_key_here
3. Ejecutar PageIndex sobre un PDF
python3 run_pageindex.py --pdf_path /path/to/your/document.pdf
También puedes personalizar el proceso con parámetros opcionales adicionales, por ejemplo:
--model OpenAI model to use (default: gpt-4o-2024-11-20) --toc-check-pages Pages to check for table of contents (default: 20) --max-pages-per-node Max pages per node (default: 10) --max-tokens-per-node Max tokens per node (default: 20000) --if-add-node-id Add node ID (yes/no, default: yes) --if-add-node-summary Add node summary (yes/no, default: no) --if-add-doc-description Add doc description (yes/no, default: yes)
Github:https://github.com/VectifyAI/PageIndex
Sitio web oficial del proyecto:https://vectify.ai/pageindex
Asistente de guiones▸
Apps AI
Noticias AI 