[LangChain] Pinecone + 한글 형태소 분석기 (Kiwi) 로 Hybrid 검색 성능 올리기

한글형태소 분석기 + Pinecone

Pinecone 벡터DB 는 개발자로부터 가장 사랑받는 DB 중 하나입니다. 하지만, 대부분의 튜토리얼은 무료이자 오픈소스인 Chroma 나 FAISS로 구성되어 있습니다.

Pinecone 을 LangChain 과 호환하여 사용하고는 싶고.. 한글 형태소 분석기도 적용하고 싶고.. 한글 불용어도 넣고 싶고.. 대용량 파일도 처리하고 싶고..

그래서 만들었습니다!

튜토리얼 링크: https://github.com/.../main/10-VectorStore/05-Pinecone.ipynb

주요 기능은 다음과 같습니다.

1. LangChain 과 호환

2. Kiwi 한글 형태소 분석기 적용

3. Hybrid Search 지원(간편하게 alpha 비율로, dense/sparse 조절)

4. Sparse Encoder 를 내가 가진 문서로 학습 가능(내가 DB 에 넣어줄 문서에 대한 corpus 학습)

5. Dense Embedder 선택(Upstage, OpenAI 등)

6. 간편한 DB Upsert

7. 기본 한글 불용어 사전 불러오기

등등의 기능이 있으며, 혹시 사용해 보시고 불편한 점 있으시면 issue 에 남겨주세요.

+추가

이번 튜토리얼에서 UpstageEmbedding 사용하여 제작하였는데요. 정말 광고 아니고요 ㅎㅎ 한 번 써보세요. 재밌는 점은 "passage" 임베딩 모델과 "query" 임베딩 모델이 구분되어 있습니다.

대량 문서 넣을 때, 비용도 가성비가 좋았습니다!

7
2개의 답글

👉 이 게시글도 읽어보세요