문제
ValueError: The de-serialization relies loading a pickle file. Pickle files can be modified to deliver a malicious payload that results in execution of arbitrary code on your machine.You will need to set `allow_dangerous_deserialization` to `True` to enable deserialization. If you do this, make sure that you trust the source of the data. For example, if you are loading a file that you created, and know that no one else has modified the file, then this is safe to do. Do not set this to `True` if you are loading a file from an untrusted source (e.g., some random site on the internet.).
문제 설명
FAISS 벡터 스토어를 로드할 때 발생하는 보안 관련 에러
- FAISS가 pickle 파일을 사용하여 데이터를 직렬화/역직렬화하는 과정에서 발생하는 보안 검사
•
필자는 다른 팀원이 만든 벡터 스토어를 사용하다가 발생하였다.
해결 방법
•
해당 메서드에 allow_dangerous_deserialization=True 파라미터를 추가
이는 로컬에서 생성된 신뢰할 수 있는 벡터 스토어 파일을 로드할 때만 사용해야 한다.
•
이 수정으로 벡터 스토어 로딩 시 발생하는 ValueError를 해결할 수 있다.
•
단, 이 설정은 신뢰할 수 있는 로컬 데이터에 대해서만 사용해야 하며, 인터넷에서 다운로드한 알 수 없는 출처의 벡터 스토어 파일에는 사용하지 않아야 한다.