Chroma DB + 임베딩 모델 → Retrieval 품질을 거의 결정.


📋 기준 정리

조건설명
언어✅ 한글
데이터 성격법령, 규칙, 시행령 (긴 문장, 명확한 법적 표현)
Retrieval 목적관련 법령, 기출 문서 정확히 찾아야 함
최적화 포인트의미 기반(semantic) 검색 최적화
모델 크기Hugging Face Spaces에 쓸 거면 소형 모델 선호

- 📈 후보 추천

모델특징추천도
upskyy/bge-m3-korean (지금 사용)작고 빠르다 (약 120M 파라미터)⭐⭐ (빠른 작업엔 적합)
jhgan/ko-sbert-sts전통적 Ko-SBERT, 꽤 정밀함⭐⭐⭐ (법률 문장 검색용으로 안정적)
BM-K/KoSimCSE-roberta한글문장에 최적화된 SimCSE⭐⭐⭐⭐ (짧은 문장, Q&A 매우 강함)
BM-K/KoSimCSE-v2-multitask다양한 문장 유형 대응 (법령에도 적합)⭐⭐⭐⭐⭐ (강력 추천)
snunlp/KR-SBERT-V40K-klueNLI-augSTS대규모 학습, 안정적인 고성능⭐⭐⭐⭐ (성능 최우선일 때)
beomi/KcELECTRA-small-v2022극소형, ultra-light⭐ (Retrieval 성능은 약함)

- 🧠 최적 선택

  • 법령 + 기출문제처럼 긴 문서 → KoSimCSE 기반 모델이 훨씬 낫다.
  • 특히 multitask 버전은 질문 + 법령 + 해설처럼 다양한 종류 대응 가능.

✅ 그래서 추천:

BM-K/KoSimCSE-v2-multitask
  • ✔️ 짧은 질의 → 긴 법령 문서 매칭 잘함
  • ✔️ 한글 semantic 검색 특화
  • ✔️ 법률 Q&A, 문제/해설 기반 RAG에 최적

- 📣 최종 요약

항목추천 모델
빠른 개발upskyy/bge-m3-korean (지금 사용)
정확한 문제 출제용BM-K/KoSimCSE-v2-multitask ✅ (강추)

- ✨ 예시 코드 수정

EMBEDDING_MODEL_NAME = "BM-K/KoSimCSE-v2-multitask"
embedding_fn = embedding_functions.SentenceTransformerEmbeddingFunction(
    model_name=EMBEDDING_MODEL_NAME
)

- 🔥 참고

고려사항내용
크기약 110M ~ 200M → HF Spaces CPU에서도 가능
속도약간 느려지지만 (10~20%) 품질 대폭 향상
한글 최적화100% OK (KoSimCSE가 한국어 의미기반 모델)

- 👉 다음 질문

"일단 기존 upskyy/bge-m3-korean으로 베이스라인 돌려보고 비교"


Was this page helpful?