LLM 챗봇: 초거대 언어모델 기반 챗봇과 기존 챗봇 비교

LLM 챗봇: 초거대 언어모델 기반 챗봇과 기존 챗봇 비교

작년 OpenAI사의 ChatGPT가 첨단의 AI 기술로 전 세계에서 관심을 받았습니다. ChatGPT는 채팅이라는 직관적인 UI를 바탕으로 그 어느 AI보다 자연스럽고 똑똑한 언변을 보여줬습니다. 그렇다면 LLM(Large Language Model) 챗봇과 기존 챗봇의 주요 차이점은 무엇일까요? LLM만으로 챗봇을 만들 수는 없을까요? 만든다면 어떤 장단점이 있을까요? 이를 알기 위해서는 챗봇이 작동하는 방식부터 살펴봐야 합니다.

기존 챗봇 방식

챗봇을 만들 때는 소위 인텐트를 파악하는 것이 중요합니다. 인텐트란 사용자의 발화 의도로 챗봇 개발자는 해당 챗봇을 사용할 사람들이 많이 물어볼 유형 위주로 질의응답 패턴을 파악할 필요가 있습니다.

배달 앱을 생각해 봅시다. 배달 앱 사용자의 주요 의도는 당연히 ‘주문’입니다. 그런데 음식을 주문하려면 어떤 식당에서, 어떤 메뉴를, 몇 개나, 어디로 배달할지 알려줘야 합니다. 즉 ‘음식 주문‘이라는 인텐트는 최소 ‘식당’, ’메뉴‘, ’개수‘, ’주소‘라는 정보 유형, 즉 ‘엔티티 타입’을 갖습니다. 이렇게 인텐트와 인텐트별 필수 엔티티 타입을 파악하여, 미리 지정한 답변이나 행동(e.g. 음식 배달)을 하는 것이 챗봇의 기본 작동 원리입니다.

문제는 음식 주문 외에도 주문 취소, 주소 변경, 고객 불만 등 고려해야 할 인텐트가 아주 다양하다는 것이며, 많은 인텐트 중 사용자의 진짜 의도와 일치하는 인텐트를 파악하는 것이 쉽지 않다는 것입니다. 또 미리 설계한 인텐트로 분류할 수 없는 메시지를 받았을 때, 제대로 된 답변이나 행동을 할 수도 없습니다. 하지만 일단 인텐트 분류만 제대로 된다면 해당 인텐트에 맞는 답변을 데이터베이스에서 찾아 그대로 사용자에게 전달하면 됩니다.

LLM 기반 챗봇 방식

지난 10년간 언어모델을 위시하여 자연어처리(NLP)가 급성장하자 챗봇 제작 방법에도 변화가 생겼습니다. 기존에는 인텐트별 핵심 키워드, 정규 표현식, 통계 기반 임베딩을 활용하여, 인텐트 후보 중 가장 그럴듯한 인텐트를 하나 골라내거나 미리 만들어 놓은 답변들과의 유사도를 구하는 식으로 사용자 발화의 의도를 파악했습니다.

그런데 Word2Vec을 시작으로 BERT, GPT 등의 딥러닝 언어모델을 사용하면서 보다 더 정확하고 고도화된 방식으로 인텐트 분류가 가능해졌습니다. GPT 등 언어 모델은 각종 언어 데이터로 사전학습을 하였기 때문에 약간의 도메인 특화 데이터로 튜닝만 해도 그럴듯한 챗봇을 만들 수 있었습니다.

그러나 GPT-3, ChatGPT와 같이 기존 언어모델 보다 더욱 커진 초거대언어모델, LLM이 개발되면서 또 한 번 패러다임이 바뀌었습니다. 품질 관리를 철저히 한 언어 데이터를 워낙 많이 학습했기 때문에 추가 학습을 하지 않고 미리 인텐트나 답변을 설정하지 않아도, LLM이 스스로 질문을 이해하고 자연스러운 답변을 생성하는 것이 가능해진 것이지요. 즉 기존에는 도메인, 인텐트, 엔티티 등 지식 체계를 사람이 직접 구성하고 관리해야 했지만 잘 훈련된 LLM의 경우 지식 체계를 별도로 설정하지 않아도 그럴듯한 답변을 할 수 있습니다.

LLM 기반 챗봇의 문제점

아쉽지만 아직은 LLM만 가지고는 믿을만한 챗봇을 만들 수는 없습니다.

1. LLM을 만들기 위해서는 많은 비용과 시간이 듭니다.

이름 그대로 LLM은 최대 수백억 개의 파라미터로 구성되고, 훈련에 최신 GPU 수십 개를 며칠, 몇 주간 사용합니다. OpenAI가 구체적으로 밝히지는 않았지만 ChatGPT 훈련에 대략 천 200백만 달러, 우리돈으로 백 억원이 훨씬 넘는 돈이 들었다고 추정하며 ChatGPT 운영에 매일 약 70만 달러씩 든다는 분석도 있습니다.

최근 작은 언어 모델로도 수십 배 더 큰 모델과 유사한 성능을 낼 수 있다는 연구 결과가 나오고 있지만, 작은 언어모델로 고성능을 내려면 보다 더 고품질의 언어 데이터가 더 많이 필요합니다.

2. 부정확한 정보로 그럴듯한 문장을 만들어내는 환각(Hallucination) 문제가 있습니다.

예를 들어 이순신 장군의 출생지에 대해 물어봤을 때 ChatGPT는 "이순신은 1545년에 조선의 해남에서 태어났습니다. 이순신은 조선 중기의 대표적인 무신이며, 임진왜란 때 왜군과의 여러 전투에서 대승을 거두어 조선을 구한 영웅으로 알려져 있습니다."라고 했으나 실제로 이순신 장군은 한성(서울) 출신입니다. LLM이 환각 문제를 겪는 이유는 이전 단어들을 바탕으로 다음에 올 단어를 예측하는 언어모델의 작동 원리 때문입니다. 매 순간 가장 높은 확률을 갖는 단어 조합을 선택하기 때문에 말 자체는 유려하나 그 내용은 사실과 다를 수도 있습니다.

ChatGPT 환각(Hallucination)의 예
ChatGPT 환각(Hallucination)의 예. 이순신 당신은 도덕책…

3. LLM의 답변을 통제하기가 어렵고 미흡하다는 단점이 있습니다.

기존의 챗봇들은 인텐트와 인텐트별 답변을 미리 설정해 놓기 때문에 인텐트 분류가 안 되는 인풋에 그럴듯한 답변을 하지 못하는 반면에, LLM은 별다른 설정 없이도 문맥에 맞는 답변을 할 수 있습니다. 그러나 매시간마다 새로 답변을 생성하기 때문에 일관된 답변을 하기 어려울뿐더러 학습 기간 이후 갱신된 정보에 대해서는 알지 못합니다. 프롬프트 엔지니어링을 통해 답변의 톤과 내용을 어느 정도 제어할 수 있지만, 그 결과를 항상 신뢰하기 어렵습니다.

LLM 챗봇의 단점을 보완하는 방법

그렇다면 LLM 기반 챗봇의 단점은 어떻게 보완할 수 있을까요?

플러그인

ChatGPT를 개발한 OpenAI가 도입한 방식은 바로 플러그인입니다. 정보 검색이나 예매 등 정확한 최신 정보가 필요한 경우에는 해당 정보를 제공하는 외부 서비스 API를 연결해 주는 방식입니다.

OpenAI 홈페이지에 소개된 ChatGPT 플러그인 목록
OpenAI 홈페이지에 소개된 ChatGPT 플러그인 목록

RAG(Retrieval Augmented Generation)

RAG는 기존 챗봇처럼 질문과 관련된 정보가 담겨있는 문서 또는 답변을 데이터베이스에서 검색(Retrieval) 한 후 이를 바탕으로 LLM이 최종 답변을 생성(Generation) 하는 방식입니다.

이순신 장군 출생지를 질문했을 때 RAG 기반 챗봇의 답변 과정
이순신 장군 출생지를 질문했을 때 RAG 기반 챗봇의 답변 과정

예를 들어 사용자가 이순신 장군의 출생지에 대해 물어본다면, RAG 기반 챗봇은 질문과 데이터베이스 내 문서들의 유사도를 계산하여 가장 관련도가 높은 문서인 이순신 장군 문서를 가지고 옵니다. 이렇게 검색한 이순신 관련 문서와 사용자 질문으로 새 질문을 만들어 LLM에게 주면, LLM의 장점대로 문서에서 해답이 있는 부분을 추출하여 문맥에 맞는 답변을 유려하게 생성합니다.

기존 챗봇 방식이라면 문서를 바탕으로 인텐트, 엔티티 등 지식 체계를 구성해야 했겠지만, RAG 기반 챗봇은 답변 생성 시 참고하는 데이터베이스 내 문서만 잘 관리한다면 정확한 최신의 답변을 개발자가 의도한 대로 제공할 수 있습니다.

챗봇의 미래 전망

ChatGPT를 위시한 LLM은 다양한 분야에서 새로운 발전 가능성을 보여주고 있습니다. 그러나 LLM으로만 이뤄진 챗봇은 다양한 문맥에 자연스러운 답변을 할 수 있으나, 아직 경제성이나 정확성이 떨어집니다. 이에 미리 설계한 인텐트 구조와 데이터베이스를 활용하여 답변을 하는 기존 챗봇의 방식을 일부 차용한 RAG 방식의 챗봇이 최근 관심을 받고 있습니다. TEXTNET도 이러한 흐름에 맞는 신뢰할 수 있는 챗봇 솔루션을 준비하고 있으니 앞으로 많은 관심 부탁드립니다.

Reference

  1. Retrieval-augmented generation (RAG), Langchain Use cases

함께 읽으면 좋은 글

챗봇 도입하는 방법, 가장 쉽게 알려드려요
챗봇을 도입해야 하는 이유 디지털 기술과 인공지능의 발전으로 인해 비즈니스 환경은 빠르게 변화하고 있습니다. 특히 GPT(Generative Pre-trained Transformer)와 같은 대규모 언어 모델의 등장을 기점으로 챗봇 기술에 상당한 변화가 있었습니다. 이전에 비해 챗봇은 더욱 자연스러운 대화와 개인화된 경험을 제공할 수 있게 되었습니다. 규칙 기반 시스템이나 간단한 통계 모델을 기반으로
챗봇 구축 시 ChatGPT 활용의 한계와 장점
AI 학습용 데이터와 챗봇 구축 사업을 전문으로 하다 보니 종종 위와 같은 질문을 받게 됩니다. 결론부터 말하자면 ‘아직은 한계점이 분명하나 결국 시간문제다’라고 할 수 있을 것 같습니다. 좀 더 자세히 살펴볼까요? 챗봇은 기본적으로 사용자 의도 분석이 핵심이라 사용자 발화를 사전에 정의된 인텐트에 얼마나 정확하게 매칭하느냐가 관건입니다. 이를 위해 크게
✏️
Editor │ 챗봇사업팀 이원재 PM
언어학을 전공한 AI 개발자, 이원재

TEXTNET 소개

지금의 딥러닝을 있게 한 AI Guru 제프리 힌튼의 데이터셋 'ImageNet'에 어원을 둔 TEXTNET은 (주)스피링크가 운영하는 AI/챗봇을 위한 텍스트 데이터 설계 및 구축 서비스입니다.

TEXTNET은 언어학, 심리학, 전산언어학 석·박사를 포함한 전문 인력으로 구성된 언어전문가 그룹으로서, 고객사의 니즈에 부합하는 텍스트 데이터를 설계·가공·구축하고 내부 R&D를 통해 설계 방식을 지속적으로 개선하여 최적의 데이터 설계 방법을 제안합니다. 프로젝트 목적에 따라 적합한 숙련 작업자를 선별하여 투입하고, 체계적이고 효율적으로 고품질의 학습데이터를 생산합니다.

TEXTNET은 삼성, LG, KT, SK 등 유수 대기업의 데이터 구축 파트너로 함께하며 금융, 마케팅, 콘텐츠, 메타버스, 서비스 기획, CS 등 다양한 도메인을 다루고 있습니다.