LangChain 기반으로 PDF 문서를 벡터화하고, 이를 ChromaDB에 저장하는 시스템을 테스트 하던 중
다음과 같은 에러가 발생하였습니다
<문제원인>
이 오류는 PyTorch, HuggingFace, 또는 Scikit-learn과 같이
OpenMP(Open Multi-Processing) 기반 연산을 사용하는 라이브러리들이
중복으로 OpenMP 런타임을 초기화할 때 발생합니다.
임베딩 모델을 로딩하고 벡터화를 시도하는 시점에서 libiomp5md.dll이 여러 번 로드되어서 발생된 문제입니다
<해결 방법>
환경 변수 설정을 해주면 됩니다
1. 파워쉘/ vscode 기본 터미널
$env:KMP_DUPLICATE_LIB_OK="TRUE"
2. cmd
set KMP_DUPLICATE_LIB_OK=TRUE
3. 소스코드 상단에 추가
import os
os.environ['KMP_DUPLICATE_LIB_OK'] = 'True'
3번의 경우에는 import torch나 import SentenceTransformer와 같은 모델 로딩보다 먼저 실행해야함