Chroma(ChromaDB라고도 함)는 대규모 언어 모델로 구축된 애플리케이션에 맞춰진 오픈소스 데이터 인프라 시스템입니다. 이는 임베딩 데이터베이스로 작동하여 개발자가 데이터의 벡터 표현을 저장, 관리, 검색할 수 있게 하며, 이는 Retrieval-augmented generation과 같은 현대 Artificial intelligence 워크플로우의 핵심 요구 사항입니다. 이 시스템은 AI 파이프라인에 벡터 검색을 통합하기 위한 가볍고 개발자 친화적인 인터페이스를 제공하며, Generative AI 애플리케이션 구축을 위한 프레임워크와 함께 자주 사용됩니다.
샌프란시스코에 본사를 둔 Chroma는 2023년에 출시되었으며 빠르게 벤처 캐피털의 관심을 끌었습니다. 2023년 4월, 이 회사는 시드 펀딩으로 1,800만 달러를 모금했다고 발표했으며, 이는 AI를 위한 데이터 인프라에 대한 관심 증가를 반영합니다. 이 프로젝트는 오픈소스 소프트웨어로 유지 관리되어 광범위한 커뮤니티 기여와 채택을 가능하게 합니다.
벡터 검색 및 임베딩
Chroma의 주요 기능은 임베딩의 저장 및 검색을 처리하는 Neural network // 벡터 데이터베이스 역할을 하는 것입니다. Machine learning의 맥락에서 임베딩은 Large language model과 같은 모델이 생성한 텍스트, 이미지 또는 오디오와 같은 데이터의 수치적 표현입니다. Chroma는 이러한 임베딩을 인덱싱하고 빠른 유사성 검색을 지원하여 다차원 공간에서 가장 가까운 벡터를 찾아 질문 응답이나 추천과 같은 작업을 가능하게 합니다. 이 접근 방식은 의미적 유사성이 키워드 매칭을 대체하는 Natural language processing 작업에서 일반적입니다.
이 데이터베이스는 가볍고 설정이 쉬운 설계로, 인메모리 및 영구 저장 백엔드를 모두 제공합니다. 개발자는 간단한 API를 사용하여 쿼리할 수 있으며, 인기 있는 AI 프레임워크 및 OpenAI 또는 Anthropic 모델 API와 통합할 수 있습니다. Chroma는 또한 메타데이터 필터링을 지원하여 사용자 정의 속성으로 검색 결과를 좁힐 수 있습니다.
대규모 언어 모델과의 통합
Chroma는 답변을 생성하기 전에 관련 문서를 가져오기 위해 대규모 언어 모델과 벡터 데이터베이스를 결합하는 기술인 Retrieval-augmented generation(RAG) 스택의 일부로 자주 사용됩니다. RAG 파이프라인에서 입력 쿼리는 임베딩으로 변환되고, Chroma는 가장 유사한 데이터 포인트를 검색하며, 모델은 이를 컨텍스트로 사용합니다. 이는 실제 데이터에 근거하여 Hallucination (AI)을 줄입니다.
이 워크플로우는 인공지능에 대한 학술 연구, 특히 Transformer (architecture) 아키텍처를 포함한 실험에서 구현되었습니다. 이 설계는 Google DeepMind 및 Cerebras와 같은 회사의 관행과 일치하지만, Chroma 자체는 많은 환경에서 통합 용이성을 위해 구축된 독립적인 도구입니다.
기술 아키텍처
핵심은 Python으로 구축되어 데이터 과학 및 Machine learning 워크플로우에서 간단하게 사용할 수 있습니다. 벡터 인덱스는 빠른 최근접 이웃 계산을 위해 메모리에 유지되며, 영구 저장 계층도 있습니다. Chroma는 임베딩 생성을 위한 런타임 모델을 포함하지 않으며, 대신 단순한 것부터 사용자 정의까지 여러 임베딩 함수를 지원하여 어떤 모델과도 사용할 수 있습니다.
개발자는 프로토타이핑을 위해 Chroma를 로컬에서 실행하거나 프로덕션을 위해 Amazon Web Services 및 기타 클라우드 인프라에 배포할 수 있습니다. 이는 성능과 최소한의 리소스 소비에 중점을 두고 구축되어 엣지 디바이스나 주머니 크기의 로봇과 같은 환경의 애플리케이션에 적합하며, Oracle Cloud Infrastructure 및 Google Cloud와 같은 다른 플랫폼과 동등하게 함께 작동합니다.
학술 및 연구에서의 사용
특히 지식 집약적 질문 응답 및 정보 검색 분야의 여러 인공지능 연구 프로젝트가 기술 스택의 일부로 Chroma를 채택했습니다. 오픈소스 특성 덕분에 재현성이 가능하며, 연구자는 테스트 세트를 위해 벡터 데이터베이스를 쉽게 설정할 수 있습니다. 예를 들어, 과학 논문과 같은 코퍼스에 Large language model을 사용하는 일부 연구에서 Chroma는 생성 모델이 출력을 생산하기 전에 검색 단계를 제공합니다. 이는 효율적인 지식 접근을 위한 Neural network 시스템 개선 작업과 다른 RAG 구현과의 비교에서 볼 수 있습니다.
이 소프트웨어는 또한 AI를 위한 데이터 관리의 새로운 방법을 탐구하는 테스트베드로 사용되며, 기존 데이터베이스에 비해 최소한의 설정으로 빠른 반복을 가능하게 합니다.
커뮤니티 및 산업
Chroma는 현대 AI 프레임워크와의 통합 용이성 덕분에 생성형 AI 솔루션을 구축하는 개발자들 사이에서 주목을 받았습니다. 팀은 상업적 지원과 클라우드 전환을 제공하지만, 오픈소스 코드는 여전히 가치의 핵심 부분입니다. 이는 Amazon AI 및 제한된 하드웨어 환경을 위한 것을 포함한 채팅 기반 어시스턴트를 구축하는 데 사용된 표준 API를 제공합니다.
Artificial intelligence 애플리케이션 전반에 걸친 효율적인 검색에 대한 강조가 증가함에 따라, Chroma는 SambaNova가 사용하는 유사한 도구나 본사에서 대기 중인 분산 컴퓨팅과 함께 소위 AI 데이터베이스 계층을 구축하기 위한 핵심 요소로 자리 잡고 있습니다.