15 de agosto de 2026 · Por YasKad
VectifyAI/PageIndex

PageIndex: RAG documental que recorre árboles en vez de vectores

VectifyAI/PageIndex · 35.848★ · 3.158 forks

Todo lo que hay que saber sobre VectifyAI/PageIndex: un índice jerárquico para recuperar evidencia de documentos largos mediante razonamiento de un modelo de lenguaje, sin una base de datos vectorial como requisito.


Qué es PageIndex

PageIndex es el componente de código abierto de Vectify AI para construir un índice con forma de árbol a partir de un PDF o Markdown y usarlo en recuperación aumentada por generación (RAG). El árbol se parece a un índice o tabla de contenidos enriquecida: los nodos incluyen título, rango de páginas, resumen e identificador. El modelo puede navegar esa estructura y recuperar secciones concretas en lugar de comparar la consulta contra vectores de fragmentos.

La propuesta no equivale a que no intervenga ningún modelo: el análisis y la generación de la estructura usan un modelo de lenguaje. «Sin vectores» significa que el flujo publicado no exige embeddings, búsqueda por similitud ni una base de datos vectorial. El README sitúa el caso de uso en informes financieros, documentos jurídicos y regulatorios, manuales, literatura médica y libros técnicos extensos.

Hay tres ofertas relacionadas: el repositorio autoalojable, un servicio en la nube con OCR y procesamiento mejorados, y PageIndex Chat. El sitio oficial presenta además integración por MCP y API; las opciones empresariales incluyen clúster dedicado o despliegue privado en VPC.

El origen: una crítica a similitud no es relevancia

El repositorio se creó el 1 de abril de 2025. El README atribuye la cita técnica a Mingtian Zhang, Yu Tang y el equipo de PageIndex, y enlaza una introducción del proyecto fechada en septiembre de 2025. Por tanto, esos nombres están documentados como autores de la presentación, no necesariamente como la totalidad del equipo fundador.

La narrativa de lanzamiento parte de una tensión concreta con el RAG vectorial: Vectify AI sostiene que la similitud semántica no garantiza relevancia contextual en documentos profesionales largos. Su respuesta toma como inspiración declarada el recorrido de un lector experto: primero crear un árbol de contenidos y después razonar sobre sus ramas.

La discusión de Hacker News muestra que esa tesis provocó interés y fricción desde el principio. En el hilo de lanzamiento de agosto de 2025, el autor respondió que la construcción inicial del árbol puede ser más lenta que el enfoque vectorial y que un árbol grande puede hacer más lenta la recuperación; el diseño prioriza precisión antes que velocidad. Es una limitación reconocida por el propio proyecto, no una promesa de sustitución universal de las bases vectoriales.

Balanza digital que compara un árbol jerárquico luminoso, que representa precisión y estructura, con una nube vectorial veloz, que representa velocidad y similitud; la balanza se inclina ligeramente hacia el árbol.

Filosofía y principios

Los principios verificables del README y de la documentación se pueden resumir así:

  • Estructura antes que fragmentación artificial: conservar secciones naturales y su jerarquía, en vez de partir el texto únicamente por longitud.

Representación conceptual de "estructura antes que fragmentación artificial": un rollo continuo de texto digital luminoso se pliega de forma orgánica en una jerarquía de árbol con contornos de neón, en lugar de fragmentarse arbitrariamente.

  • Razonamiento antes que similitud: recorrer un índice jerárquico para decidir qué ramas contienen evidencia relevante.

Ilustración conceptual de "razonamiento antes que similitud": a la izquierda, un cerebro de IA luminoso recorre un índice en árbol de neón; a la derecha, una nube de puntos vectoriales dispersos y conectados por líneas caóticas se desvanece en la oscuridad.

  • Evidencia trazable: devolver referencias explícitas a secciones y páginas para que la recuperación pueda inspeccionarse.

Primer plano de un nodo luminoso del árbol de PageIndex que proyecta una tarjeta holográfica con número de página, título de sección y un breve resumen, como representación de la evidencia trazable.

  • Contexto de la conversación: la selección puede incorporar el historial conversacional y conocimiento del dominio, según la documentación del proyecto.
  • Elección según el compromiso operativo: el proyecto no dice que el árbol sea siempre más rápido. El autor indicó en HN que un árbol pequeño puede ser eficiente, mientras que para velocidad por encima de precisión recomienda una base vectorial.

El resultado es una alternativa de diseño, no una demostración independiente de que cualquier RAG vectorial sea opaco o inferior. La cifra de 98,7 % en FinanceBench procede del propio proyecto y de su repositorio VectifyAI/Mafin2.5-FinanceBench; debe leerse como resultado publicado por Vectify AI, no como validación externa general.

Cómo funciona

El flujo local documentado tiene dos fases:

  1. Generación del índice: PageIndex procesa el documento y produce un árbol semántico. Para un PDF, el archivo de salida representa la jerarquía, sus resúmenes y rangos de páginas. Puede detectar una tabla de contenidos o construir la estructura a partir del documento.
  2. Recuperación razonada: ante una pregunta, un modelo examina el árbol y sigue ramas hasta localizar las secciones pertinentes. La justificación queda vinculada a páginas y nodos, en vez de limitarse a una puntuación de similitud.

Imagen dividida en dos: a la izquierda, un PDF se transforma en un árbol semántico; a la derecha, un agente de IA consulta ese árbol siguiendo una ruta luminosa por las ramas hasta un nodo concreto.

El programa principal es run_pageindex.py. Admite PDFs con --pdf_path y Markdown con --md_path; para Markdown, los niveles #, ## y siguientes se interpretan como jerarquía. La vista previa PageIndex Flash se activa con --flash: usa heurísticas para extraer la estructura y reserva el modelo para los resúmenes; --optimize añade una pasada de refinamiento.

El repositorio también incluye un ejemplo de RAG agéntico autoalojado con OpenAI Agents SDK en examples/agentic_vectorless_rag_demo.py, y cuadernos para RAG vectorless y RAG visual. El segundo trabaja sobre imágenes de páginas, según el README.

Representación de un flujo de trabajo agéntico sin base de datos vectorial: una mano robótica luminosa señala las ramas de un árbol de contenidos holográfico y extrae paneles de página que brillan.

Estado oficial y semioficial

PageIndex es un proyecto oficial de Vectify AI: el repositorio está bajo la organización VectifyAI, el sitio y las docs lo presentan como producto de Vectify AI y el README enlaza sus propios servicios de Chat, MCP y API.

No se recuperó evidencia de que PageIndex haya sido aceptado en un mercado oficial de un proveedor de modelos. MCP es un estándar abierto de integración, no un aval de Anthropic, OpenAI ni de otro proveedor. En la práctica, el servidor oficial VectifyAI/pageindex-mcp y las guías oficiales permiten conectarlo a agentes que soporten MCP; eso acredita compatibilidad documentada, no certificación de rendimiento ni condición de estándar de facto.

El ecosistema

Repositorios de Vectify AI

La consulta a la API de la organización identificó los siguientes repositorios públicos relacionados; las estrellas son la medición de esta ejecución:

  • VectifyAI/pageindex-mcp — servidor MCP de PageIndex para recuperación mediante búsqueda de árbol y razonamiento; 377 estrellas.
  • VectifyAI/pageindex-js-sdk — SDK de TypeScript para procesamiento de documentos de PageIndex; 7 estrellas.
  • VectifyAI/OpenKB — base de conocimiento para modelos de lenguaje que compila documentos como wiki interconectada; 3.261 estrellas.
  • VectifyAI/ChatIndex — indexación y recuperación de árbol para memoria conversacional larga; 156 estrellas.
  • VectifyAI/ConDB — base de datos de contexto nativa de caché KV para recuperación basada en árboles; 51 estrellas.
  • VectifyAI/Mafin2.5-FinanceBench — evaluación FinanceBench de Mafin 2.5, indicada por la organización como impulsada por PageIndex; 91 estrellas.
  • VectifyAI/MMLongBench-Doc-V2 — repositorio de evaluación documental sin estrellas en la respuesta de la API consultada.

Representación abstracta del ecosistema de PageIndex: un árbol central luminoso conectado mediante flujos de datos a iconos de chat, servidores en la nube y puertas de enlace API, como referencia a la integración MCP.

El README relaciona explícitamente OpenKB, ChatIndex, ConDB y PageIndex MCP como infraestructura de contexto largo. No afirma que sean dependencias obligatorias para ejecutar run_pageindex.py.

Derivados, puertos y traducciones

La búsqueda de repositorios por nombre recuperó VectifyAI/pageindex-mcp como el derivado directamente identificable. También apareció osdotsystem/pageindex-open en un envío de HN de febrero de 2026 como una implementación abierta; no se recuperó su README ni metadatos de GitHub en esta ejecución, por lo que su relación técnica, mantenimiento y métricas quedan sin verificar. No se identificaron traducciones ni puertos en idiomas distintos del inglés con evidencia suficiente para nombrarlos como tales.

Números del repo

Medición: 5 de agosto de 2026; API pública de GitHub.

MétricaValor
Estrellas35.025
Bifurcaciones3.070
Suscriptores reales141
Commits357
Incidencias abiertas mostradas por la API146
Lenguaje principalPython
LicenciaMIT
Creación1 de abril de 2025
Último envío de código4 de agosto de 2026
Última actualización de metadatos5 de agosto de 2026
Última versión de GitHubv0.3.0.dev3, 10 de julio de 2026
Versión publicada en PyPI0.2.8

Los contribuidores principales devueltos por la API fueron rejojer (233 contribuciones), zmtomorrow (68), BukeLy (23) y S3DFX-CYBER (16). El total de 357 commits se obtuvo del enlace de última página de la paginación de commits de GitHub. open_issues_count puede incluir solicitudes de cambios abiertas. Asimismo, watchers_count replica aquí las estrellas; por eso la tabla informa el campo independiente subscribers_count como suscriptores reales.

Cómo contribuir

No hay CONTRIBUTING.md ni guía de contribución en el directorio raíz recuperado, por lo que no se puede atribuir un flujo oficial de bifurcación, ramas o plantilla de solicitud de cambios. Sí hay directorios tests/ y .github/, y las solicitudes de cambios visibles muestran contribuciones técnicas.

Por ejemplo, la solicitud #188 corrigió un KeyError y el agotamiento de contexto durante el procesamiento de documentos de unas 800 páginas; añadió 14 pruebas simuladas y fue fusionada el 3 de julio de 2026. Esto demuestra que el repositorio usa pruebas para cambios importantes, pero no sustituye una política de contribución publicada.

Cómo lo recibió la comunidad

La recepción recuperada es sustancial y, sobre todo, concreta en Hacker News:

  • El envío 45036944, presentado por page_index el 27 de agosto de 2025, obtuvo 192 puntos y 128 comentarios. brap consideró natural el proceso de navegación y aceptable el coste de indexación y búsqueda para su caso. agentcoops valoró que, para RAG interno, se pueda comprar una respuesta previsiblemente mejor con más cómputo; esa es una opinión individual, no un benchmark.
  • En el mismo hilo, marcodena objetó que los vectores son mucho más eficientes. mosselman preguntó por latencia y coste ante muchas búsquedas; sugirió alternativas basadas en indexación previa y BM25. neya opinó que el enfoque puede encajar en colas de fondo, pero no en RAG bajo demanda casi instantáneo por el equilibrio entre velocidad, precisión y coste.
  • ineedasername cuestionó el uso de la etiqueta «sin vectores» como sinónimo de menor aproximación: al revisar el código, sostuvo que el valor central es generar y recorrer una tabla de contenidos mediante llamadas iterativas al modelo. gillesjacobs pidió comparativas contra recuperadores híbridos bien ajustados y observó que la evaluación de Mafin 2.5 es específica. Son críticas técnicas atribuidas a sus autores; no se recuperó una evaluación independiente que las resuelva.
  • En Reddit, el hilo r/Rag: 1n1iqy3, publicado por CathyCCCAAAI el 27 de agosto de 2025, registra 127 puntos y 57 comentarios. El mensaje de apertura elogia transparencia y trazabilidad, pero es material promocional, no una reseña independiente. Otro resultado, r/LovingOpenSourceAI: 1t4il64, alcanzó 52 puntos y 41 comentarios; no se atribuyen opiniones de sus comentarios porque no se recuperaron individualmente.

También se localizaron varios envíos de HN de bajo alcance vinculados a PageIndex MCP. El más visible, 45482992, tuvo 14 puntos y 3 comentarios. Es señal de difusión del complemento MCP, no prueba de adopción masiva.

No se recuperaron publicaciones verificables en X que permitan atribuir una reacción concreta a una cuenta, ni una página de lanzamiento en Product Hunt; la búsqueda de Product Hunt no devolvió productos para «PageIndex VectifyAI». La búsqueda automatizada de YouTube devolvió una página técnica sin títulos y cifras de vídeos recuperables, por lo que no se inventan tutoriales ni vistas.

PageIndex frente a otras propuestas

PropuestaRelación verificableDiferencia o límite verificable
RAG vectorial con base de datos vectorialRecupera contexto para un modelo de lenguaje y es el contraste explícito del README.PageIndex estructura un árbol y usa razonamiento de árbol; el enfoque vectorial recupera por similitud. El propio autor advierte que la opción vectorial puede ser preferible si la velocidad es prioritaria.
GraphRAGagentcoops lo comparó en el hilo 45036944 como alternativa de RAG con preprocesamiento.La comparación de coste y escalabilidad es una opinión del comentarista, no un benchmark recuperado.
neuml/txtaiSu autor, dmezzetti, lo nombró en el hilo como opción de recuperación ligera sin exigir una base vectorial separada.La fuente no permite concluir equivalencia funcional ni medir rendimiento frente a PageIndex.
datalab-to/markerleetharris lo recomendó en la discusión para despliegue propio de extracción documental.Se refiere a extracción documental, no a un competidor directo de recuperación razonada; no debe confundirse con un RAG completo.

Guía rápida de uso

Instalación y primer arranque local

El README publica el flujo mínimo siguiente:

git clone https://github.com/VectifyAI/PageIndex.git
cd PageIndex
pip3 install --upgrade -r requirements.txt

Cree .env en la raíz y añada una clave de modelo compatible con LiteLLM; el ejemplo oficial usa:

OPENAI_API_KEY=your_openai_key_here

Después ejecute:

python3 run_pageindex.py --pdf_path /ruta/al/documento.pdf

El primer resultado esperado es una estructura de árbol del documento. Para un Markdown, el comando oficial equivalente es:

python3 run_pageindex.py --md_path /ruta/al/documento.md

Flujos de trabajo habituales

  1. Indexar un informe PDF: ejecute python3 run_pageindex.py --pdf_path /ruta/informe.pdf; use el árbol generado para inspeccionar títulos, nodos, resúmenes y rangos de páginas.

  2. Acelerar la extracción de estructura: ejecute python3 run_pageindex.py --flash --pdf_path /ruta/informe.pdf. Añada --optimize cuando quiera una pasada adicional de refinamiento con el modelo.

  3. Ejecutar el ejemplo agéntico autoalojado: instale la dependencia opcional y arranque el ejemplo oficial:

    pip3 install openai-agents
    python3 examples/agentic_vectorless_rag_demo.py
  4. Integrar el servicio alojado: cree una clave desde el panel de desarrolladores, cargue y procese el documento, y elija MCP para que su propio agente invoque PageIndex como herramienta, o la API de Chat para recibir respuestas del modelo alojado por PageIndex.

Configuración esencial

  • .env: guarda la clave del proveedor de modelo en la ejecución local.
  • --model: selecciona el modelo; el valor predeterminado documentado es gpt-4o-2024-11-20.
  • --toc-check-pages: limita cuántas páginas se inspeccionan en busca de tabla de contenidos; predeterminado: 20.
  • --max-pages-per-node: limita páginas por nodo; predeterminado: 10.
  • --max-tokens-per-node: limita tokens por nodo; predeterminado: 20.000.
  • --if-add-node-id, --if-add-node-summary y --if-add-doc-description: activan o desactivan identificadores, resúmenes y descripción documental; todos predeterminados en yes.

Trampas frecuentes y soluciones

  • Markdown convertido automáticamente desde PDF o HTML: el README desaconseja usar --md_path si la conversión no conservó la jerarquía. Como el modo Markdown deduce niveles de #, una estructura defectuosa produce un árbol defectuoso. La alternativa documentada es procesar el PDF u obtener Markdown que preserve la jerarquía.
  • PDF complejo o escaneado: el repositorio usa análisis estándar de PDF. Vectify AI indica que su servicio en la nube proporciona OCR, construcción de árbol y recuperación mejorados; esa es la vía documentada cuando la extracción local no basta.
  • Documentos muy grandes: la solicitud fusionada #188 corrigió fallos de contexto en documentos de unas 800 páginas. Actualice a una revisión que incluya esa corrección y pruebe con el tamaño y modelo de su entorno.
  • Esperar baja latencia universal: HN registra objeciones razonables sobre coste y escala. El propio autor afirma que los árboles grandes pueden ser más lentos; mida el coste de indexación y consulta con su corpus antes de sustituir una recuperación vectorial existente.

Integraciones y migración

El repositorio proporciona un ejemplo con OpenAI Agents SDK; el servicio oficial ofrece MCP y API. MCP permite que agentes o marcos compatibles, incluidos los que usan LangChain u OpenAI Agents SDK según la documentación, llamen a PageIndex como herramienta sin una integración manual específica.

No se recuperó una guía oficial de migración desde o hacia LangChain, LlamaIndex, GraphRAG o una base vectorial. La migración prudente es ejecutar ambos recuperadores sobre el mismo conjunto de consultas y comparar latencia, coste, trazabilidad y exactitud en el dominio propio; esta recomendación es análisis operativo, no un procedimiento oficial de PageIndex.

Casos de uso y a quién puede ayudar este repositorio

  • Equipos de finanzas, cumplimiento o legal que trabajan con informes, presentaciones regulatorias y contratos largos pueden producir un árbol con rangos de página y conservar evidencia navegable para las respuestas. El README cita expresamente informes financieros, documentos legales y regulatorios.
  • Desarrolladores de agentes documentales pueden conectar el servicio a un agente mediante MCP o reutilizar el ejemplo de OpenAI Agents SDK, de modo que la recuperación sea una herramienta dentro de una secuencia agéntica.
  • Equipos que necesitan revisar por qué se recuperó un pasaje pueden beneficiarse de nodos, resúmenes y referencias de página, en lugar de aceptar una lista de fragmentos por similitud sin jerarquía visible.
  • Usuarios que manejan PDF sencillo o Markdown bien estructurado pueden probar el flujo local con run_pageindex.py; quienes tengan escaneos complejos o requisitos de despliegue privado deben valorar el servicio OCR y las opciones empresariales que Vectify AI documenta.
  • Equipos con consultas masivas o latencia estricta no deberían asumir que PageIndex reemplaza una base vectorial: los comentarios recuperados y la respuesta del autor señalan el coste y la latencia como compromisos relevantes.

Recursos


Nota: este artículo combina el README, la documentación y el sitio oficial de PageIndex, la API pública de GitHub, PyPI, Hacker News y resultados de Reddit consultados el 5 de agosto de 2026. Las cifras y la disponibilidad cambian con el tiempo.

Comentarios