Chroma
로컬에서 바로 띄워 쓰기 쉬운 임베딩 데이터베이스
지표
GitHub API 에서 직접 읽은 값입니다
GitHub 별29,504
라이선스Apache-2.0저장소 공개
주 언어Rust2022-10-05 공개
마지막 커밋2026-10-15확인 2026-10-15
별 수 추이는 기록이 쌓인 뒤에 보여 줍니다 — 과거 값은 소급해 만들 수 없습니다.
무엇을 하는 도구인가
Chroma는 문서나 대화 내용을 벡터로 변환해 저장하고, 질문이 들어오면 의미상 가까운 내용을 찾아 돌려주는 임베딩 데이터베이스입니다. 모델이 모르는 사내 문서나 이전 대화를 답변에 끌어다 쓰려면 원래 직접 구현해야 할 저장·검색 레이어를 대신해 줍니다. 로컬에서 바로 띄워 쓸 수 있도록 설치와 설정을 가볍게 만든 것이 특징이며, 필요하면 직접 호스팅하거나 관리형으로 전환할 수 있습니다. Qdrant나 Weaviate 같은 다른 벡터 DB와 같은 역할을 하지만, 별도 서버 운영 없이 애플리케이션 코드 안에서 빠르게 시작하는 쪽에 무게가 있고, pgvector처럼 기존 관계형 DB에 끼워 넣는 방식과도 접근이 다릅니다.
이럴 때 고른다
- 사내 문서나 지식베이스를 모델에 근거 자료로 넣어주는 RAG 파이프라인을 처음 만들어 볼 때
- 별도 DB 서버를 세팅하지 않고 로컬 환경에서 빠르게 임베딩 검색을 시험해 볼 때
- 과거 대화나 사용자 메모리를 저장해 두고 이후 대화에서 다시 꺼내 쓰고 싶을 때
- 프로토타입 단계를 지나 운영 환경으로 옮길 때 직접 호스팅과 관리형 중 선택지를 열어두고 싶을 때
어디까지만 하나
- 어떤 텍스트를 임베딩으로 만들지, 청크를 어떻게 나눌지는 Chroma가 정해주지 않으므로 별도로 설계해야 합니다
- 검색 결과를 실제 답변에 어떻게 섞어 넣을지(프롬프트 구성, 재순위화 등)는 호출하는 쪽 로직에서 직접 처리해야 합니다
- 대규모 데이터나 높은 동시 접속을 다뤄야 할 경우 관리형 서비스나 호스팅 구성을 별도로 검토해야 합니다
- Qdrant, Weaviate, pgvector 등 같은 층의 다른 벡터 DB와 기능이 겹치므로, 기존에 쓰는 DB나 인프라 구성과 맞는지 먼저 확인하는 것이 좋습니다
검색·메모리 층은 무엇을 푸나
모델이 모르는 자료를 찾아 넣어 주고, 대화 사이의 기억을 보관한다
언제 필요해지나 — 사내 문서나 과거 대화를 근거로 답해야 할 때
같은 층의 다른 도구
층이 같다는 것은 푸는 문제가 같다는 뜻입니다 — 비교가 되는 자리입니다
| 도구 | 하는 일 | 별 | 라이선스 |
|---|---|---|---|
| Chroma 보는 중 | 로컬에서 바로 띄워 쓰기 쉬운 임베딩 데이터베이스 | 29,504 | Apache-2.0 |
| RAGFlow | 문서 구조를 이해하는 데 공들인 오픈소스 RAG 엔진 | 92,251 | Apache-2.0 |
| MCP Servers | 모델에 외부 데이터·도구를 붙이는 표준 프로토콜의 공식 서버 모음 | 91,273 | — |
| GraphRAG | 문서에서 지식 그래프를 뽑아 전체 맥락을 묻는 질문에 답하는 방식 | 36,342 | MIT |
| Qdrant | 필터링을 함께 쓰는 데 강한 벡터 데이터베이스 | 35,079 | Apache-2.0 |
| Letta | 대화 사이의 기억을 스스로 정리해 들고 가는 에이전트 서버 | 25,146 | Apache-2.0 |
| pgvector | PostgreSQL 에 벡터 타입과 검색을 더하는 확장 — 쓰던 DB 를 그대로 쓴다 | 23,360 | — |
관련 용어
- 임베딩
- 텍스트, 이미지 같은 데이터를 의미적으로 비슷할수록 벡터 공간에서 가까운 위치에 놓이도록 고정된 길이의 숫자 벡터로 변환한 것을 말한다.
지표는 GitHub API 실측값입니다. 설명은 이 사이트가 작성했으며 공식 문서를 대체하지 않습니다 — 도입 전에 원문을 확인하세요.