Our First RAG Pipeline Failed on Day One

개요

MockEvalio 시스템은 배포 하루 만에 텍스트 임베딩 생성을 담당하는 Groq API 엔드포인트의 404 오류로 인해 RAG 파이프라인의 핵심 기능이 중단되는 문제를 겪었으며, 이는 OpenAI API로 전환하는 신속한 수정을 통해 해결되었습니다.

주요 내용

- RAG 시스템 기능: MockEvalio는 PDF, DOCX, 텍스트 파일에서 채용 공고를 추출하고, 이를 청크로 분할하며, 임베딩 서비스를 통해 벡터화하고, pgvector 기반의 벡터 검색을 수행한 후, LLM을 사용하여 채용 공고에 기반한 5개의 인터뷰 질문을 생성하는 RAG 시스템을 배포했습니다.
- 초기 오류 발생: 배포 후 7시간 만에 텍스트를 벡터로 변환하는 임베딩 단계에서 Groq의 nomic-embed-text-v1.5 엔드포인트가 응답을 중단하며 404 오류를 반환했습니다.
- 신속한 수정: Groq API 엔드포인트와 모델을 OpenAI의 text-embedding-3-small로 변경하는 17줄의 코드로 임베딩 제공자를 교체하여 파이프라인의 기능을 복구했습니다.
- 오류 처리 개선: 이전 코드에서는 API 키 누락 시 오류 없이 빈 벡터 배열을 반환하여 데이터 무결성을 손상시켰으나, 수정된 코드에서는 명시적인 예외를 발생시키도록 변경되었습니다.
* 음성 인식 경로 변경: 초기에는 OpenAI Whisper API를 기본, Groq Whisper를 대체로 사용했으나, 비용 절감과 외부 API 호출 최소화를 위해 self-hosted faster-whisper 기반의 FastAPI 서비스로 기본 경로를 변경했습니다.

시사점

RAG 파이프라인의 안정성은 외부 API 제공자의 가용성과 변경 사항에 크게 의존하며, 빌드 후 즉각적인 오류 발생과 이를 해결하기 위한 신속한 수정 작업은 AI 기반 시스템 구축의 현실적인 어려움을 보여줍니다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions