Repolode
cocoindex-io

cocoindex-io/cocoindex

Framework de pipelines de datos incremental en Python con un núcleo en Rust que mantiene sincronizados índices vectoriales y grafos de conocimiento con fuentes cambiantes para agentes de IA y aplicaciones RAG.

Estrellas
11,721
Forks
921
Issues abiertos
103
Último commit
anteayer

¿Qué es?

CocoIndex es un framework para crear pipelines de datos que convierten fuentes como bases de código, documentos, Slack, notas de reuniones, PDF y videos en contexto que se actualiza continuamente para agentes de IA y aplicaciones con LLM. Se declara el estado deseado del destino como una función de Python sobre los datos de origen, y el motor detecta los cambios y vuelve a calcular solo las filas, archivos o resultados afectados, en lugar de procesar todo el corpus de nuevo.

El motor almacena en caché los resultados de las funciones mediante hashes tanto de las entradas como del código de las funciones, de modo que, al editar una transformación, solo se vuelven a ejecutar los resultados que dependen de ella. Es posible rastrear cada fila de destino hasta su origen, lo que facilita la depuración y las auditorías. Entre los destinos se incluyen bases de datos relacionales como Postgres con índices vectoriales, además de almacenes vectoriales como LanceDB y bases de datos de grafos como Neo4j y Kuzu. El proyecto ofrece ejemplos de generación de embeddings de código, RAG con PDF, extracción de grafos de conocimiento y streaming con Kafka.

El proyecto está desarrollado en Python y cuenta con un núcleo en Rust. La documentación cubre la instalación mediante pip, una guía de inicio rápido, conectores y transformaciones, además de una skill para Claude Code y Cursor que permite generar código correcto.

Funciones clave

  • 01Procesamiento incremental que vuelve a calcular solo las fuentes modificadas y los resultados que dependen de ellas.
  • 02Caché a nivel de función basada en hashes de las entradas y del código.
  • 03Destinos de índices vectoriales, como Postgres con pgvector y LanceDB.
  • 04Destinos de bases de datos de grafos, incluidos Neo4j y Kuzu.
  • 05Seguimiento del linaje desde cada fila de destino hasta su origen.
  • 06Conectores de origen para archivos locales, S3 y Google Drive, además de un destino Kafka.

Casos de uso

  • Mantener actualizado un índice RAG de un corpus de documentos sin volver a generar embeddings para los archivos que no han cambiado.
  • Crear un índice de búsqueda de código en tiempo real que se actualice con cada commit para agentes de programación.
  • Extraer entidades y relaciones de transcripciones de reuniones e incorporarlas a un grafo de conocimiento.
  • Enviar en streaming las filas CSV modificadas a un topic de Kafka.

Inicio rápido

  1. 1

    Instala CocoIndex desde PyPI

    pip install -U cocoindex
  2. 2

    Declara el objetivo y ejecuta una actualización incremental una vez para completar la carga inicial

    coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()

Antes de usarlo

  • La guía de inicio rápido requiere una base de datos Postgres y una función de embeddings. El ejemplo las utiliza, pero no las configura por ti.
  • El proyecto usa una API v1 propia de una etapa anterior a la 1.0 y que cambia con rapidez, por lo que el código puede variar entre versiones.

Temas

Preguntas frecuentes

¿Qué es cocoindex?
Framework de pipelines de datos incremental en Python con un núcleo en Rust que mantiene sincronizados índices vectoriales y grafos de conocimiento con fuentes cambiantes para agentes de IA y aplicaciones RAG. CocoIndex es un framework para crear pipelines de datos que convierten fuentes como bases de código, documentos, Slack, notas de reuniones, PDF y videos en contexto que se actualiza continuamente para agentes de IA y aplicaciones con LLM. Se declara el estado deseado del destino como una función de Python sobre los datos de origen, y el motor detecta los cambios y vuelve a calcular solo las filas, archivos o resultados afectados, en lugar de procesar todo el corpus de nuevo.
¿cocoindex es gratuito? ¿Qué licencia tiene?
cocoindex es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿cocoindex sigue mantenido?
Mantenimiento activo. El último commit de cocoindex fue el 19 oct 2026.
¿Para qué puedo usar cocoindex?
Mantener actualizado un índice RAG de un corpus de documentos sin volver a generar embeddings para los archivos que no han cambiado. Crear un índice de búsqueda de código en tiempo real que se actualice con cada commit para agentes de programación. Extraer entidades y relaciones de transcripciones de reuniones e incorporarlas a un grafo de conocimiento. Enviar en streaming las filas CSV modificadas a un topic de Kafka.
¿Cómo se instala cocoindex?
Instala CocoIndex desde PyPI: pip install -U cocoindex Declara el objetivo y ejecuta una actualización incremental una vez para completar la carga inicial: coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()
¿Dónde consigo cocoindex?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/cocoindex-io/cocoindex

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados