대화형 인공지능의 과거와 현재
대화형 인공지능은, 대화 기반의 기술을 활용하는 인공지능 분야 중 하나입니다.
1950년 Turing Test*를 시작으로 2022년 ChatGPT에 이르기까지 많은 발전을 이루었고, 오늘날에는 자연어처리(Natural Language Process) / 머신러닝(ML) / 딥러닝(DL) 등 의 다양한 기술을 활용해 애플리케이션을 개발하고 구축하며 괄목할 만한 발전을 이루고 있는데요.
특히, 챗GPT와 같은 LLM* 모델이 일반 사용자들의 관심을 끈 이후 세상은 대화형AI를 사용하는 것을 당연한 것으로 받아들이게 되었습니다.
이러한 흐름을 반증하듯 ▲메타의 ‘LLaMA’ ▲앤트로픽의 ‘Claude’ 등 각종 LLM 모델을 출시하고, ▲구글의 ‘Bard’ ▲바이두의 ‘文心一言’ 등 모델을 활용한 챗봇 서비스도 경쟁적으로 쏟아져 나오고 있습니다.
그러나 대화형AI의 혁신적인 발전이 인터넷을 넘어선 기술적 도약을 이루었다는 의견과 달리, AI가 제공하는 정보가 항상 완벽하다고 믿는 것은 위험하다는 주장도 있습니다. 이러한 우려의 중심에는 ‘할루시네이션’이 큰 부분을 차지하고 있는데요.
할루시네이션은 무엇이고, 스켈터랩스는 어떻게 이를 해결하고 있을까요?
*Turing Test: 기계(컴퓨터)가 인공지능을 갖추었는지를 판별하는 실험으로, 1950년 영국의 앨런 튜링이 제안함.
*LLM: 초거대언어모델(Large Language Model). 챗GPT 같은 방대한 양의 텍스트 데이터를 학습하여 사람이 하는 말을 이해하는 인공지능 모델.
AI Hallucinations vs. AI Confabulations
할루시네이션(hallucination)은 본래 ‘환각(幻覺)’을 뜻하는 정신의학 용어로, 인공지능 영역에서는 AI가 잘못된 정보를 생성하는 현상 또는 기술적 오류를 말합니다. 쉽게 말해 AI가 실제로는 사실이 아닌 정보를 사실처럼 제공하거나, 잘못된 정보를 생성하며 ‘아무말 대잔치’를 하는 상황을 설명하는 표현인데요.
그러나 현재 관련 학계에서는 할루시네이션 보다 ‘작화증(confabulations)’이란 용어를 더 적절하다고 보는 입장도 있습니다. ‘작화증’은 자신의 상상을 마치 현실처럼 전달하면서 그것이 거짓임을 인식하지 못하는 상황을 의미합니다.
‘인공지능(AI) 대부’로 불리는 제프리 힌튼 박사 또한 MIT테크놀로지리뷰 인터뷰에서 “작화증은 인간 기억력의 특징 중 하나다”면서 사람 또한 절반은 사실에 기반하고 절반은 기억의 오류에서 기반해 답변하는 점에서 “이런 (AI)모델은 인간과 비슷하게 작동하는 셈이다”고 발언하기도 했습니다.
본 게시글에서는, ‘Hallucination’이 보다 일반적으로 사용되는 용어이며 ‘Confabulation’ 용어에 대한 논의가 아직 학계에서 끝나지 않았다는 점을 고려하여, AI의 잘못된 정보 생성 오류를 일컫는 용어로 ‘할루시네이션’을 사용하도록 하겠습니다.
할루시네이션 유형 살펴보기
할루시네이션은 여러가지 유형으로 발생합니다. 이 문제를 해결하기 위해서는 발생할 수 있는 다양한 종류의 할루시네이션을 인식하고 있는 것이 중요한데요. 대화형 AI 에서 흔히 관찰되는 몇 가지 유형의 할루시네이션 사례를 살펴보겠습니다. (설명의 편의를 위해, 이하에서는 문장의 형태로 “입력"이 주어지면 입력에 알맞은 “출력"을 문장 하나 혹은 문장 여러 개로 생성하는 모델을 가정하겠습니다.)
1. 여러 문장을 한 번에 생성하는 중, 직전까지 생성한 문장 내용과 상반되는 내용을 이어서 생성하는 경우
입력: “두 단어로 풍경을 묘사하세요"
출력: “바다는 초록색이다. 바다는 파란색이다.”
2. 사용자가 입력한 프롬프트*와 상반되는 경우
입력: “조카를 위한 생일 카드를 작성하세요"
출력: “엄마 아빠, 결혼 기념일 축하해!”
3. 허구의 정보가 사실로 제시되는 경우
입력: “대한민국의 세 도시를 나열하세요"
출력: “서울, 부산, 뉴욕"
4. 입력의 맥락과 불일치한, 또는 다른 주제에 대한 임의의 정보가 생성되는 경우
입력: “제주도를 묘사하세요"
출력: “제주도는 대한민국 남쪽에 위치한 섬입니다. 고양이는 하루에 최소 한 번은 먹이를 줘야 합니다.”
*프롬프트: 컴퓨터나 AI에게 원하는 작업이나 정보를 얻기 위해 지시하는 문장이나 질문. 검색 엔진에 키워드를 입력해 정보를 찾는 것처럼, AI로부터 원하는 답변이나 결과를 얻기 위해 사용함.
할루시네이션이 발생하는 3가지 주요 원인
할루시네이션 현상이 발생하는 원인은 생성형AI가 ‘확률과 통계에 기반한 결과 생성’ 방식을 취하고 있기 때문입니다. 또 다른 원인으로는, AI가 오류를 포함한 데이터로 학습되거나 데이터에 편향이 있는 등 여러 기술적인 원인이 있을 수 있는데요.
할루시네이션이 발생하는 주요 원인 세가지를 알아봅시다:
1. 데이터 품질
할루시네이션은 원본 데이터에 부정확하고 거짓된 정보가 있을 때 발생합니다. 생성형AI 모델은 정확성과 다양성을 두루 갖춘 양질의 데이터와 함께, 오류와 편향 등 잘못된 정보를 담은 데이터도 학습했는데요. 가령 챗GPT는 학습 데이터에 출처가 불분명한 정보가 가득한 해외 커뮤니티 사이트인 ‘Reddit’을 포함시켰습니다.
2. 생성 및 훈련 방식
정확하고 신뢰성 있는 데이터로 학습을 시키더라도 할루시네이션은 발생할 수 있는데요. 예를 들어, 어떤 생성형 AI 모델은 첫 단어부터 순서대로 문장을 만들어나가는데, 중간에 생성된 임의의 단어가 편향적이라면, 이후 이어질 단어를 예측(선택)하는 데 악영향을 끼칠 수 있습니다. 또는, 학습 데이터에 등장하지 않았던 표현이 입력으로 주어졌을 때 모델이 이를 잘못 해석하는 경우 할루시네이션을 초래할 수 있습니다.
3. 프롬프트 오류
사용자가 입력한 프롬프트가 명확하지 않거나 모순될 경우 할루시네이션이 발생할 수 있습니다. 이러한 경우 사용자는 프롬프트를 수정하여 결과를 개선할 수 있습니다.
아무말 대잔치, 할루시네이션의 문제점
할루시네이션 현상은 대화형AI 기술이 지닌 위험성을 역으로 드러내는 대목이기도 합니다.
신뢰성을 담보할 수 없는 데도 단지 보기에 좋은 문서를 너무도 쉽게 만들어낼 수 있고, 이러한 것들이 마치 사실인 양 퍼질 수 있기 때문이죠. 또, 이러한 정보 오류를 기반으로 거짓된 정보가 계속 퍼져나가 재생산될 가능성도 무시할 수 없습니다.
무엇보다 심각한 건, 생성형 AI가 방대한 양의 데이터를 학습해 내놓은 정보의 진위를 사람이 가려내는 일이 매우 어렵다는 것 입니다.
기업들이 대화형AI 도입을 주저하는 주요 원인 중 하나는 이러한 문제점들에 기인합니다.
보안·비용·인프라 등 여러가지 기술적인 요인도 고려되겠지만, AI가 제공하는 부정확한 정보로 인해 기업의 신뢰성이 훼손되는 등 브랜드 이미지가 손상될 가능성이 있습니다.
실제로, 구글의 바드가 할루시네이션 오류로 인해 공식 석상에서 잘못된 정보를 제공하는 사태가 발생하기도 했는데요. "제임스 웹 우주 망원경을 통한 최근의 발견은 무엇이냐"는 질문에 바드는 "제임스 웹 우주 망원경이 태양계 밖의 행성을 처음으로 촬영했다"는 잘못된 답변을 사실인 것 처럼 제시하면서 알파벳 주가가 떨어지는 등 문제가 커졌습니다.
추가로 예를 들어보자면, 대화형AI의 할루시네이션 문제로 부정확한 자동차 수리 및 유지 보수 방법이 제공되어 자동차에 손상이 발생한 경우 책임의 소재는 복잡한 문제로 여겨질 수 있습니다. 또한, 특정 인종이나 문화에 대한 편견을 기반으로 한 잘못된 역사적 사건의 묘사는 외교적인 문제를 초래할 가능성이 있으며, 오류가 있는 과학적 정보 제공은 사람들의 안전에 위협을 줄 수 있습니다.
이러한 문제는 곧 AI에 대한 오해와 불확실성을 높여, 기업이 AI를 통한 비즈니스 변화를 추진하는데 있어 큰 장애물로 작용할 수 있습니다.
BELLA QNA 가 할루시네이션을 줄이는 방법, RAG
BELLA QNA는 초거대 언어 모델을 비즈니스에서 활용할 수 있는 응용 서비스로, 전문성 있는 정보와 기업 내부 정보로부터 정답을 찾아주는 GPT 기반의 Q&A 챗봇입니다. LLM 챗봇이기에 할루시네이션을 겪을 수 밖에 없지만, 이를 극복할 수 있는 기술로 한계점을 보완할 수 있는데요.
스켈터랩스에서는 할루시네이션 현상을 극복하기 위해 RAG(Retrieval Augmented Generation)를 비롯해 ‘근거 있는 생성’을 해내는 생성 AI 기술 개발을 추진하고 있습니다.
‘RAG’는 생성 모델의 능력을 향상시키기 위해 정보 검색 기술을 활용하는 접근 방식입니다. 모델이 답변을 생성하기 전 정보의 출처나 근거를 먼저 검색하고, 이 근거를 기반으로 생성 모델이 답변을 만드는 방식으로 작동해 답변의 적절성을 높인다는 이점이 있습니다.
RAG(Retrieval Augmented Generation)를 단어별로 쪼개 이해해봅시다:
① 데이터 조각 검색 :: Augmented Generation
주어진 문서에서 질문에 대한 답변으로 가장 유력한 정보가 들어있는 데이터 조각(들)을 찾아내는 스킬입니다. 이 역할을 수행하기에 가장 유리한 구조로 텍스트 데이터를 조각내고 재정돈하여 쌓아두는 작업이 필요한데, 이것이 바로 Vector DB 입니다.
그럼, Vector DB에서 데이터 조각 검색은 어떠한 방식으로 진행되는지 차근차근 알아봅니다:
BELLA QNA의 RAG는 바로 이 임베딩 과정에서 할루시네이션을 줄일 수 있습니다.
임베딩은 컴퓨터가 자연어를 이해하기 위해 꼭 필요한 과정이지만, 임베딩 기술에 대한 신뢰도는 아직 높지 않은데요. ‘유사도를 고려하여 얼마만큼 Vector space 내에 Vector들을 잘 배치했는가'를 기준으로 임베딩 성능을 정의했을 때, 해당 임베딩 성능을 Maximize해서 나온 결과들의 현재 수준이 한국어에 대해서 신뢰도가 높지 못하기 때문입니다. 이러한 경우, 단순히 임베딩이나 기존의 키워드 기반 검색만으로는 원하는 검색 정확도를 얻기 어렵습니다.
이에 스켈터랩스는 2019년부터 임베딩 기술을 비롯해 Document Retrieval 정확도 향상에 대한 연구를 지속적으로 진행하며, 기계독해(MRC) 분야에서 얻은 경험과 노하우를 ML 모델을 활용하여 Retrieval의 정확도를 향상시키는 작업을 진행 중입니다.
② 답변 생성 :: Retrieval
답을 생성하는 데 필요한 근거가 들어있는 데이터 조각을 찾는데 성공했다면, 이 정답을 담아 서비스가 요구하는 톤앤매너와 역할로 답변 문장을 생성해야 합니다.
프롬프트에서 답변하는 화자의 역할과 상황, 그리고 지켜야 하는 규칙이나 제약 등을 얼마나 구체적으로 잘 정의하냐에 따라 답변의 품질이 달라집니다. 문장의 유려함 뿐 아니라 정보의 전달력을 강화하고, 거짓/틀린 정보의 억제, 언급하지 말아야 할 것들을 제한하는 등 디테일한 통제를 할 수 있는 영역입니다.
BELLA QNA 또한 입력된 질의 또는 생성된 답변의 적정성을 판단하는 서버에서 답변 내용에 혐오표현이나 편향된 정보 등 의 문제가 있는지 판단하고, 관점을 담은 수준 높은 답변 문장을 생성할 수 있습니다. (OpenAI Moderation API 기반의 적정성 판단)
예시를 통해 조금 더 쉽게 이해해봅시다:
"S사 여름 시즌 프로포션 음료를 알려주세요"라는 질문이 제시되었다고 가정해봅시다.
① 데이터 조각 검색 :: Augmented Generation
먼저, Retrieval 과정에서 질문의 맥락을 파악하고, 이와 관련된 "여름", "프로모션", "음료" 와 관련이 높은 데이터 조각을 검색합니다. 예를 들어, 사용자가 요구한 ‘S사 여름 프로모션 음료’를 키워드로 검색하여 해당 음료 목록을 가져온 후 → 사용자가 선호할 만한 여름 시즌 프로모션 음료를 추천하고 → 각 음료와 관련된 성분, 칼로리, 가격 등의 정보를 데이터베이스에서 조회하여 제공하는 등 hybrid search 방식으로 검색합니다.
② 답변 생성 :: Retrieval
관련성 높은 데이터 조각을 기반으로 서비스가 요구하는 톤앤매너와 역할, 관점을 담은 문장을 생성해 "S사 여름 프로모션 음료로는 드래곤후르츠 에이드가 있습니다(355ml 기준 180kcal)"라는 답변을 제공합니다.
스켈터랩스의 할루시네이션 개선 연구개발 현황
현재 스켈터랩스에서는 할루시네이션을 최소화하기 위해 LLM의 생성 결과물을 자동으로 평가하는 연구와 더불어 외부 LLM 생성 결과와 내부 LLM 생성 결과를 효과적으로 결합하는 방법 등 다양한 연구를 적극적으로 진행 중입니다.
또한, 기업과의 협업 프로젝트를 통해 Voice of Customer 데이터를 수집하고, 사례를 정리하여 이를 통해 실제 산업 현장에서 할루시네이션이 주로 발생하는 부분을 파악하였고, 추가적인 연구개발이 필요한 분야를 기준으로 연구를 진행하고 있습니다.
BELLA QNA 또한 이러한 연구를 기반으로 지속적으로 진화할 것이며, 기업 사용자들의 피드백과 최신 연구 동향을 받아들이며 더욱 다양한 질의응답 능력을 갖추게 될 것입니다.
불쑥 우리 삶으로 들어와 어느덧 익숙해진 생성형 AI.
새삼, 인간이 서로 대화를 하며 상황에 맞게 문장을 완성시키는 능력이 사실은 그 자체로 엄청나게 고도화된 지능일 수 있겠다는 생각을 다시 한번 하며, 앞으로의 BELLA QNA의 기술이 얼마나 더 발전하게 될지 기대합니다.