아티클 목록으로
개발/코드2026-10-22

크로마DB ChromaDB 설치법과 파이썬 임베딩 벡터 검색 RAG 구축 가이드

데
데이터 엔지니어링 랩
크로마DB ChromaDB 설치법과 파이썬 임베딩 벡터 검색 RAG 구축 가이드

ChromaDB 크로마 핵심 요약

ChromaDB 크로마는 인공지능 개발자가 가장 쉽고 빠르게 임베딩 벡터를 다룰 수 있도록 고안된 오픈소스 벡터 데이터베이스입니다. 무거운 도커나 클라우드 인프라 없이 파이썬 코드 안에서 단 4줄 만에 로컬 데이터베이스를 구동할 수 있으며, 고성능 HNSW 알고리즘을 통해 수십만 건의 문서 벡터를 밀리초 단위로 유사도 검색합니다.

복잡한 벡터 DB 설정에 지친 개발자를 위한 미니멀 솔루션

Pinecone이나 Milvus 같은 거대 분산 벡터 DB는 강력하지만, 로컬 테스트 환경을 구축하거나 사내 폐쇄망 프로토타입을 빠르게 제작하기에는 클러스터 설정과 네트워크 방화벽 작업 등 초기 오버헤드가 매우 큽니다.

ChromaDB는 SQLite처럼 로컬 디스크 파일 기반으로 가볍게 동작합니다. 별도의 설정 파일 작성 없이 pip 설치 즉시 영구 저장소를 만들고, OpenAI나 HuggingFace 임베딩 함수를 자동 바인딩하여 복잡한 벡터 연산을 단숨에 끝마칩니다.

ChromaDB vs Pinecone vs Qdrant 비교표

비교 항목ChromaDB 크로마Pinecone 파인콘Qdrant 큐드란트
배포 및 운영 형태로컬 인메모리 및 파일 시스템 저장완전 관리형 독점 클라우드 전용오픈소스 로컬 및 분산 클러스터
설치 복잡도pip install chromadb 단 1초 완료클라우드 콘솔 회원가입 및 API 키 발급도커 컨테이너 구동 필요
임베딩 모델 자동 내장기본 all-MiniLM 모델 자체 탑재외부 API에서 벡터를 직접 생성 후 전달FastEmbed 라이브러리 연동
메타데이터 필터링where 딕셔너리 조건문 간결 지원메타데이터 필터 쿼리 지원풍부한 페이로드 필터링 엔진 내장
비용 및 라이선스아파치 2.0 라이선스 100% 무료무료 티어 초과 시 월간 과금 발생오픈소스 무료 및 클라우드 플랜

파이썬에서 ChromaDB로 문서 유사도 검색 구현하는 3단계

1단계. 영구 저장 클라이언트 생성

chromadb PersistentClient 클래스를 호출하여 로컬 my_chroma_db 폴더 경로를 지정해 데이터를 안전하게 보존합니다.

2단계. 컬렉션 생성 및 문서 추가

client get_or_create_collection 메서드로 컬렉션을 만든 뒤 add 메서드로 문서 텍스트와 ID, 메타데이터를 등록합니다. 이때 벡터 변환은 ChromaDB가 자동으로 처리합니다.

3단계. query 메서드로 가장 유사한 문서 검색

query_texts 파라미터에 사용자 질문을 자연어로 넣고 검색 개수를 3으로 지정하면 질문의 의미와 가장 가까운 상위 3개 문서를 즉시 반환합니다.

자주 묻는 질문 FAQ

Q. 파이썬 프로세스를 종료하면 저장된 벡터 데이터가 사라지나요?
PersistentClient를 사용해 경로를 지정해 두면 디스크에 안전하게 저장되므로 서버를 재시작해도 데이터가 온전히 유지됩니다.

Q. OpenAI 임베딩 모델 대신 로컬 허깅페이스 모델을 쓸 수 있나요?
네, sentence-transformers 기반의 BGE-M3 등 모든 오픈소스 한국어 임베딩 모델을 embedding_function으로 등록하여 비용 없이 무료로 사용할 수 있습니다.

Q. 웹 서버 형태로 원격 클라이언트에서 접속할 수 있나요?
네, chromadb run --path ./db 명령어를 실행하면 FastAPI 기반의 REST API 서버가 구동되어 원격 서버나 자바스크립트 클라이언트에서도 접속할 수 있습니다.

관련 키워드 태그

#chromadb#크로마db#chromadb 사용법#벡터 데이터베이스#임베딩 유사도 검색#로컬 rag 구축#파이썬 chromadb