코딩 에이전트의 세션 활동을 기록하고 AI로 압축한 뒤, 이후 세션에 관련 컨텍스트를 제공하는 지속성 메모리입니다.
cocoindex-io/cocoindex
Rust 코어를 갖춘 Python 증분 데이터 파이프라인으로, 변경되는 소스와 벡터 인덱스·지식 그래프를 동기화합니다.
- 스타
- 11,721
- 포크
- 921
- 열린 이슈
- 103
- 마지막 커밋
- 17시간 전
어떤 프로젝트인가요?
CocoIndex는 코드베이스, 문서, Slack, 회의록, PDF, 동영상 등의 소스를 AI 에이전트와 LLM 애플리케이션을 위한 최신 컨텍스트로 지속해서 변환하는 데이터 파이프라인 구축 프레임워크입니다. 소스 데이터에 적용할 Python 함수로 원하는 대상 상태를 선언하면, 엔진이 변경 사항을 추적해 전체 코퍼스를 다시 처리하는 대신 영향을 받는 행, 파일 또는 출력만 재계산합니다.
엔진은 입력과 함수 코드를 모두 해싱해 함수 결과를 캐시하므로, 변환 로직을 수정하면 이에 의존하는 출력만 다시 계산합니다. 대상의 각 행을 원본까지 추적할 수 있어 디버깅과 감사에 도움이 됩니다. 대상 저장소로는 벡터 인덱스를 사용하는 Postgres 같은 관계형 데이터베이스와 LanceDB 같은 벡터 스토어, Neo4j 및 Kuzu 같은 그래프 데이터베이스가 있습니다. 프로젝트에서는 코드 임베딩, PDF RAG, 지식 그래프 추출, Kafka 스트리밍 예제도 제공합니다.
이 프로젝트는 Rust 코어를 갖춘 Python 프로젝트이며, 문서에는 pip를 통한 설치, 빠른 시작, 커넥터, 변환 기능과 올바른 코드를 생성하기 위한 Claude Code 및 Cursor 스킬이 안내되어 있습니다.
핵심 기능
- 01변경된 소스와 이에 의존하는 출력만 재계산하는 증분 처리.
- 02입력 해시와 코드 해시를 키로 사용하는 함수 단위 캐싱.
- 03pgvector를 사용하는 Postgres와 LanceDB 등의 벡터 인덱스 대상.
- 04Neo4j와 Kuzu를 포함한 그래프 데이터베이스 대상.
- 05각 대상 행을 원본까지 추적하는 계보 기능.
- 06로컬 파일, S3, Google Drive용 소스 커넥터와 Kafka 대상.
활용 사례
- 변경되지 않은 파일은 다시 임베딩하지 않고 문서 코퍼스의 RAG 인덱스를 최신 상태로 유지.
- 각 커밋에 맞춰 업데이트되는 실시간 코드 검색 인덱스를 구축해 코딩 에이전트에 제공.
- 회의록에서 엔티티와 관계를 추출해 지식 그래프에 저장.
- 변경된 CSV 행을 Kafka 토픽으로 스트리밍.
빠른 시작
- 1
PyPI에서 CocoIndex를 설치합니다
pip install -U cocoindex - 2
대상을 선언하고 백필을 위해 증분 업데이트를 한 번 실행합니다
coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()
사용 전 알아둘 점
- 퀵스타트에는 Postgres 데이터베이스와 임베딩 함수가 필요합니다. 예제에서 사용하지만 직접 설정해 주지는 않습니다.
- 이 프로젝트는 변경이 빠른 v1 API를 사용하는 1.0 이전 단계의 자료이므로 릴리스마다 코드가 바뀔 수 있습니다.
토픽
자주 묻는 질문
- cocoindex은(는) 무엇인가요?
- Rust 코어를 갖춘 Python 증분 데이터 파이프라인으로, 변경되는 소스와 벡터 인덱스·지식 그래프를 동기화합니다. CocoIndex는 코드베이스, 문서, Slack, 회의록, PDF, 동영상 등의 소스를 AI 에이전트와 LLM 애플리케이션을 위한 최신 컨텍스트로 지속해서 변환하는 데이터 파이프라인 구축 프레임워크입니다. 소스 데이터에 적용할 Python 함수로 원하는 대상 상태를 선언하면, 엔진이 변경 사항을 추적해 전체 코퍼스를 다시 처리하는 대신 영향을 받는 행, 파일 또는 출력만 재계산합니다.
- cocoindex은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- cocoindex은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- cocoindex은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. cocoindex의 마지막 커밋은 2026년 10월 19일입니다.
- cocoindex은(는) 어디에 사용할 수 있나요?
- 변경되지 않은 파일은 다시 임베딩하지 않고 문서 코퍼스의 RAG 인덱스를 최신 상태로 유지. 각 커밋에 맞춰 업데이트되는 실시간 코드 검색 인덱스를 구축해 코딩 에이전트에 제공. 회의록에서 엔티티와 관계를 추출해 지식 그래프에 저장. 변경된 CSV 행을 Kafka 토픽으로 스트리밍.
- cocoindex는 어떻게 설치하나요?
- PyPI에서 CocoIndex를 설치합니다: pip install -U cocoindex 대상을 선언하고 백필을 위해 증분 업데이트를 한 번 실행합니다: coco.App(coco.AppConfig(name="docs"), main, src="./docs").update_blocking()
- cocoindex은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/cocoindex-io/cocoindex
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
웹사이트를 LLM에 바로 활용할 수 있는 깔끔한 Markdown으로 변환하는 오픈소스 Python 크롤러
다국어 코드베이스를 지식 그래프로 인덱싱해 AI 에이전트나 MCP 서버를 통해 자연어로 조회·검색·편집합니다.
LangGraph 기반의 모듈형 Agentic RAG 튜토리얼로, 계층형 인덱싱과 대화 메모리, 질의 명확화 기능을 제공합니다.
로컬 LLM과 클라우드 API 없이 JavaScript로 RAG를 처음부터 구현하는 단계별 학습 프로젝트입니다.
LLM 에이전트의 대화 버퍼부터 Mem0, Letta, Zep, Graphiti까지 메모리 기법 30가지를 다루는 실습형 Jupyter 노트북 저장소입니다.