- ChatGPT 시대가 왔다. 제3의 산업혁명이라는 말이 불리울만큼 거대언어모델의 영향력이 큰 시대를 살아가고 있는 요즘입니다. 저희 어머니도 궁금하신점이 있으면 ChatGPT를 사용하실만큼 세대를 가리지않고 그 활용 범주가 더더욱 넓어지고 있습니다.
- 이렇게 활용 범주가 넓어지는 이유에 대해 생각해보면 아마 사용자가 원하는 정보를 정확하게 잘 가져와 전달해주기에 그렇지 않을까 싶습니다. 정보의 과잉에 지친 사람들에게 '필요한'정보를 잘 선별하여 가져다 주는거죠.
- 장족의 발전이 이루어지고 있는 지금까지 그 역경 또한 많이 존재했는데요. 하나를 예로 들어보자면, '환각현상'이라고 할 수 있습니다. 정보는 가져다주는데, 부정확한 정보를 가져다주는거죠. 이 현상에는 여러 원인이 존재합니다. 가장 대표적인 원인을 말해보자면, 사용자의 의도를 잘못 오인해 관련없는 정보를 가져다주는겁니다. 이 원인을 해결하기 위한 방식은 간단합니다. 사용자의 의도를 '잘' 파악해서 '관련있는' 정보를 전달하는겁니다.
4, 이를 개선하기 위해 다양한 시도들이 이루어지고있습니다. 주로 4가지 방식으로 이를 분류할 수 있습니다. 1.대형언어모델 처음부터 구축하는 방식 , 2.'잘'학습된 대형언어모델을 가져와 원하는 영역에 걸맞게 추가로 학습하는 방식, 3.대형언어모델을 그대로 사용하되, 유저 질의에 추가적인 맥락을 부여해주는 방식 , 4.대형 언어모델을 두되, 사용자에게 답변하는 과정 중 '관련된 정보'에 대한 맥락을 추가로 제공하여 그 관련성을 부각하는 방식. 방식이 다양한 만큼 그 장단점 또한 존재합니다.
- 1은 처음부터 구축하기에 처음부터 데이터의 명확한 맥락을 대형언어모델에게 제시할 수 있다 라는 장점이 있는 반면, 처음부터 구축하기에 그 구축 비용이 만만치 않다는 단점이 있습니다.
2는 '잘'학습된 대형언어모델의 맥락을 가져와서 도메인에 특화된 소량의 데이터를 선별 적용하기에 상대적으로 비용도 저렴하고, 그 정확도도 어느정도 보장된다 라는 장점이 있는 반면, 대형언어모델의 맥락을 잃어버리지 않고 도메인에 특화된 맥락을 조화롭게 유지하는게 어렵다는 단점이 있습니다.
3은 유저의 질의를 가공해 의도에 대한 맥락을 '잘' 부여하면 되기에 비용이 저렴하다라는 장점이 있는 반면에, 맥락을 부여하는 과정에서 맥락 부여자의 주관이 개입될 수 있기에 맥락의 객관성이 결여될 수 있다 라는 점때문에 만일 편향이 강하게 반영될시 오히려 맥락이 부정적으로 작용한다라는 단점이 존재합니다.
4는 상대적으로 최신의 정보를 반영한 답변으로 유저의 질의에 대답할 수 있고 도입비용이 저렴하다는 장점이 있는 반면에, 관련 문서에 따라 질문의 품질이 가지각색이기에 어떻게 관련 문서를 잘 판별하고 가져올지에 대해 전략적으로 접근하여 다양한 요소들을 고루 배합하는 등 복잡성이 높다는 단점이 존재합니다.
- 이외에도, cost , accuracy , domain-specific terminology , up-to-date response, transparency and interpretability 5가지 측면으로 고루고루 비교한 자세한 내용이 https://deci.ai/blog/… 에 잘 기록되어있으니, 한 번 참조하시는걸 추천드립니다.
- 지금까지 거대언어모델에서 발생하는 문제인 환각현성을 해결하기 위해 시도하고 있는 여러 방법론들에 대해 이야기했습니다. 이번 포스팅에서는 방법론들중 4번에 해당하는 '관련된 정보'를 잘 가져와 맥락을 부여하는 기술인 RAG(Retrieval Augment Generation) 에 대해 살펴보고, RAG의 한계점 그리고 그 한계를 보완하기 위한 방식 중 하나인 GraphRAG까지 알아보겠습니다.