확률적으로 단어를 생성하는 거대언어모델(LLM) 인공지능(AI) 특성상 AI가 가끔 엉뚱한 답을 생성하는 ‘AI환각(할루시네이션)’은 고질적인 문제다. 이 문제 해결을 위해 업스테이지는 ‘검색증강생성(RAGㆍRetrieval Augmented Generation)’이라는 기술을 적극 적용한다. 정확한 답변을 위해 필요한 레퍼런스를 제공함으로써 LLM의 환각 가능성을 최소화하는 방식이다.
예를 들어, 사용자가 "친구들과 함께 볼 수 있는 좋은 영화를 추천해 주세요. 1980년대 후반의 공포 영화를 좋아해요"라는 질문을 했다 치자. LLM이 영화 관련 데이터에 대한 훈련이 돼 있지 않은 경우, 환각 문제가 발생할 가능성이 높다. LLM의 핵심 기능작동 방식이 다음 단어 예측에 의존해 가장 그럴듯한 단어를 선택하는 방식이기 때문에 실제 그런 영화가 존재하지도 않음에도 “그럼요! 1980년대 유명 여배우가 출연한 '숲속의 비명'은 어때요?”라는 답을 내놓는 식이다.
이를 해결할 RAG의 첫 번째 단계는 자체 데이터를 ‘임베딩 모델(embedding model)’에 통합하는 것이다. 임베딩이란 쉽게 말해서 영화 질문의 경우, 자체 영화 관련 정보를 벡터화해 ‘벡터 데이터베이스’를 구축하는 방식이다. 영화 관련 벡터화 정보가 풍부해진 이 데이터베이스는 ‘검색ㆍ추출(Retriever)’ 부분에서 사용자의 쿼리와 관련된 올바른 정보를 찾는 데 도움을 준다.
‘답변검증(Answer Verification)'은 사용자에게 최종적으로 답변이 전달되기 전에 답변이 레퍼런스와 잘 맞는지 검증함으로써 제공된 정보의 정확성을 보장한다. 답변이 적절치 않을 경우엔 오답을 LLM으로 반송(Retry)해 수정할 기회를 제공한다. 요컨대 RAG는 데이터로 답변의 근거를 마련하고, 답변 검증을 통해 정확도를 확인하는 방식이다.