유사문서 매칭 모델 서비스에서
문서 텍스트를 BERT 계열 언어모델을 사용하여 embedding vector로 전환한 후,
faiss 라이브러리를 통해 유서 문서 검색 기능을 제공하고 있다.
좀 더 자세히말하자면, faiss index를 생성한 후,
검색 대상 문서(Document Pool)에 embedding vector를 추가하는데
저장해놓은 pickle파일 형태의 벡터를 불러온다.
이때, EOFError : Ran out of input 에러가 발생
원인을 파악한 결과,
새로운 문서가 추가 되거나 인코더 역할을 하는 언어모델을 교체하여
새로운 인덱싱을 진행한 후 파일을 다시 저장할때,
즉, 아래처럼 with open을 'wb'로 실행할 때 비정상적으로 기능이 종료가되어
파일이 손상된 것이 원인이었다.
filename = 'embedding_vectors.pkl'
with open(filename, 'wb') as f:
embedding_vectors = pickle.load(f)
돌발상황은 언제나 발생하므로
backup 파일을 미리 생성해서
문제 시 교체할 수 있도록 하기
'Engineering > 에러 해결 모음' 카테고리의 다른 글
[Error][Git] error: src refspec master does not match any (0) | 2023.01.17 |
---|---|
[Error] A load persistent id instruction was encountered (0) | 2023.01.12 |
[VSCode] SSH 원격 서버 연결 오류 반복 (0) | 2022.12.02 |
[Error] FileNotFoundError: No usable temporary directory found in ['/tmp', '/var/tmp', '/usr/tmp' (0) | 2022.11.24 |
[NVIDIA] Linux NVIDIA driver 설치 오류 - 'exit X before installing' (0) | 2022.11.09 |
댓글