대머리개발자

LLM 구축시 백터화 모델(Milvus vs FAISS vs Chroma) 본문

개발이야기/AI

LLM 구축시 백터화 모델(Milvus vs FAISS vs Chroma)

대머리개발자 2025. 5. 16. 09:35
728x90

 

상황에 맞게 써야하는게 정론이것 같다.

 

하나씩 테스트 해봐야 하는 노가다를 해보자!

  Milvus FAISS Chroma
라이선스/무료 오픈소스(무료) 오픈소스(무료) 오픈소스(무료)
영속성 (재시작 후 데이터 유지) O (DB 서버방식) X(기본:메모리) / 일부 O(파일저장) O (영속모드 있음)
대용량 적합성 매우 우수 매우 빠름(로컬) 중소규모 적합
필터링/메타데이터 관리 뛰어남 제한적 뛰어남
운영 복잡도 높음(서버 필요) 낮음(로컬 파일) 매우 낮음
삭제/업데이트 지원 지원 어렵거나 불편 지원
RAG/RAG+ 용 RAG 라이브러리 호환 매우 좋음 매우 좋음 매우 좋음

 

 

백터의 품질은 임베딩 모델에 결정 되기 때문에

어떤 친구를 사용해도 문제는 없겠다.

 

단 서비스 대상의 규모에 따라 선택지는 있다.

별도의 서버가 있다는 것은.. 많은 트래픽을 감당할 수 있다는 거겠지.

 

로컬 테스트를 위해서는 chroma 로 시작을 하고 운영 할 때 Milvus로 진행한다.

추후 백터스토어만 교체하면 되니깐 크게 문제 없지유!

 

쉽게 생각하면 백터화 한다는 것은 단순 저장한다는 것이다.

따라서 저장되는 모델(형태)이 중요하지.. 저장공간이 중요하다는게 아니다.

 

품질을 고민한다면

더좋은 임베딩 모델 채택 chunk 크기/분할 방식 튜닝, 메타데이터 활용을 고민해야 한다.

 

청크 분할 방식.

MarkdownTextSplitter
CharacterTextSplitter
TokenTextSplitter
SentenceTransformersTokenTextSplitter
RecursiveCharacterTextSplitter

 

꽁으로 쓸수 있는 모델.

intfloat/e5-large-v2 1024 고품질 임베딩, 다국어 일부 지원 400MB
sentence-transformers/all-mpnet-base-v2 514 안정적 성능, 범용 440MB
mistral-embed (via vLLM 등) 8192 긴 문서 처리 가능, 최신 아키텍처 수 GB (LLaMA계열)
Cohere/embed-english-v3.0 8192 API 기반, 고성능 외부 API 필요
OpenAI/text-embedding-3-large 8192 SOTA급 품질 API 기반
jinaai/jina-embeddings-v2-base-en 8192 HuggingFace 기반, 무료 약 1.2GB

 

끝.

 

 

 

 

728x90

'개발이야기 > AI' 카테고리의 다른 글

RAG의 위엄.  (0) 2025.04.23
무료 임베딩 기술 검토 및 TEST  (0) 2025.02.19
deepseek - 오호...  (0) 2025.02.17
올라마 API 장착하기.  (1) 2025.02.07
랭체인 적용해서 서비스 해보자.  (0) 2025.02.05