250111 TIL JSON 문자열 처리

윤수용·2025년 1월 11일
0

TIL

목록 보기
98/113

1. 한 일

RAG 챗봇 시스템 설계

  • FAISS DB를 이용해 문서 임베딩을 저장하고 검색하는 RAG(참조에 기반한 생성) 챗봇 시스템 설계.
  • 임베딩 벡터를 서버에 저장하는 방안을 학습:
    • FAISS의 write_indexread_index를 통해 인덱스를 디스크에 저장 및 로드.
    • 벡터와 메타데이터(문서 ID, 텍스트)를 분리 관리하는 방법 익힘.

2. TroubleShooting

JSON 문자열 처리 문제

  • 오류: Invalid \escape: line 1 column ...
  • 원인: JSON 문자열에 역슬래시(\)가 적절히 이스케이프 처리되지 않음.
  • 해결:
    • JSON 문자열 생성 시 json.dumps를 활용해 안전하게 직렬화.
    • 원시 문자열(rf)을 사용하더라도 역슬래시가 포함된 경우 .replace("\\", "\\\\")로 추가 처리.

3. 느낀 점

데이터 직렬화

  • json.dumps 사용의 필요성: JSON 문자열 생성 시 에러를 방지하기 위해 Python 제공 도구를 사용하는 것이 안정적임.

RAG 설계의 핵심

  • 임베딩 품질검색 정확도가 시스템 성능에 크게 영향을 미침.
  • FAISS와 같은 벡터 검색 도구의 효율적인 활용은 챗봇의 반응 속도와 컨텍스트 정확성에 직접적으로 기여.
profile
잘 먹고 잘 살자

0개의 댓글

관련 채용 정보