Plataforma open source de memória para IA que transforma documentos, código e conversas em um grafo de conhecimento self-hosted para agentes de IA.
cocoindex-io/cocoindex
Framework de pipelines de dados incremental em Python, com núcleo em Rust, que mantém índices vetoriais e grafos de conhecimento sincronizados com fontes em constante mudança para agentes de IA e aplicações RAG.
- Estrelas
- 11,721
- Forks
- 921
- Issues abertas
- 103
- Último commit
- anteontem
O que é?
O CocoIndex é um framework para criar pipelines de dados que transformam fontes como bases de código, documentos, Slack, anotações de reuniões, PDFs e vídeos em contexto continuamente atualizado para agentes de IA e aplicações com LLM. Você declara o estado desejado do destino como uma função Python sobre os dados de origem, e o mecanismo acompanha as mudanças e recalcula apenas as linhas, arquivos ou saídas afetados, em vez de reprocessar todo o corpus.
O mecanismo armazena em cache os resultados das funções com base em hashes tanto das entradas quanto do código da função. Assim, ao editar uma transformação, somente as saídas que dependem dela são recalculadas. É possível rastrear cada linha de destino até sua origem, o que ajuda na depuração e na auditoria. Entre os destinos estão bancos de dados relacionais, como Postgres com índices vetoriais, além de armazenamentos vetoriais como LanceDB e bancos de dados de grafos como Neo4j e Kuzu. O projeto também publica exemplos de embeddings de código, RAG com PDFs, extração de grafos de conhecimento e streaming com Kafka.
O projeto usa Python com um núcleo em Rust, e a documentação aborda a instalação via pip, um guia de início rápido, conectores, transformações e uma skill para Claude Code e Cursor que ajuda a gerar código correto.
Recursos principais
- 01Processamento incremental que recalcula apenas as fontes alteradas e as saídas que dependem delas.
- 02Cache no nível da função, indexado por hashes das entradas e do código.
- 03Destinos de índices vetoriais, como Postgres com pgvector e LanceDB.
- 04Destinos em bancos de dados de grafos, incluindo Neo4j e Kuzu.
- 05Rastreamento de linhagem de cada linha de destino até sua origem.
- 06Conectores de origem para arquivos locais, S3 e Google Drive, além de um destino Kafka.
Casos de uso
- Manter atualizado um índice RAG sobre um corpus de documentos sem gerar novos embeddings para arquivos que não foram alterados.
- Criar um índice de busca de código atualizado a cada commit para agentes de programação.
- Extrair entidades e relações de transcrições de reuniões e armazená-las em um grafo de conhecimento.
- Enviar por streaming linhas alteradas de arquivos CSV para um tópico Kafka.
Início rápido
- 1
Instale o CocoIndex pelo PyPI
pip install -U cocoindex - 2
Declare o destino e execute uma atualização incremental uma vez para fazer a carga inicial
coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()
Antes de usar
- O guia de início rápido precisa de um banco de dados Postgres e de uma função de embeddings. O exemplo usa ambos, mas não os configura para você.
- O projeto está em uma fase anterior à 1.0 e usa uma API v1 que muda rapidamente, então o código pode mudar entre versões.
Tópicos
Perguntas frequentes
- O que é cocoindex?
- Framework de pipelines de dados incremental em Python, com núcleo em Rust, que mantém índices vetoriais e grafos de conhecimento sincronizados com fontes em constante mudança para agentes de IA e aplicações RAG. O CocoIndex é um framework para criar pipelines de dados que transformam fontes como bases de código, documentos, Slack, anotações de reuniões, PDFs e vídeos em contexto continuamente atualizado para agentes de IA e aplicações com LLM. Você declara o estado desejado do destino como uma função Python sobre os dados de origem, e o mecanismo acompanha as mudanças e recalcula apenas as linhas, arquivos ou saídas afetados, em vez de reprocessar todo o corpus.
- cocoindex é gratuito? Qual é a licença?
- cocoindex é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- cocoindex ainda é mantido?
- Manutenção ativa. O último commit de cocoindex foi em 19 de out. de 2026.
- Para que posso usar cocoindex?
- Manter atualizado um índice RAG sobre um corpus de documentos sem gerar novos embeddings para arquivos que não foram alterados. Criar um índice de busca de código atualizado a cada commit para agentes de programação. Extrair entidades e relações de transcrições de reuniões e armazená-las em um grafo de conhecimento. Enviar por streaming linhas alteradas de arquivos CSV para um tópico Kafka.
- Como instalar cocoindex?
- Instale o CocoIndex pelo PyPI: pip install -U cocoindex Declare o destino e execute uma atualização incremental uma vez para fazer a carga inicial: coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()
- Onde consigo cocoindex?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/cocoindex-io/cocoindex
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Sistema operacional de memória para LLMs e agentes de IA que armazena, recupera e gerencia memórias de longo prazo como um grafo editável.
Um framework Python para criar aplicações e agentes com LLMs, com interfaces padronizadas para modelos, embeddings, vector stores e integrações de terceiros.
Memória persistente para agentes de programação: registra a atividade das sessões, compacta as informações com IA e injeta contexto relevante em sessões futuras.
Uma camada de memória para agentes e apps de IA que armazena e recupera contexto de usuários, sessões e agentes entre conversas.
Plataforma de chat com IA e gestão de conhecimento, auto-hospedada, que indexa dados de mais de 50 apps conectados e funciona com a maioria dos provedores de LLM.