레플리
글 수 283

LLM 챗봇의 특징 2가지 - RAG와 Function

조회 수 1203 추천 수 0 2023.07.06 19:51:17


앞으로 1~2년안에 기존 챗봇들이 LLM 챗봇으로 바뀔거라 생각합니다. 지금까지 챗봇은 보통 의도(intent)와 개체(entity)로 구현했습니다. 예를 들어, '불고기피자 2판 시킬래'라고 말하면 <주문>이라는 의도로 분류하고 <불고기피자/2>라는 개체를 추출합니다. 그 다음 미리 작성해놓은 주문관련 함수를 호출하고 개체 정보를 사용해서 실제 주문과정을 처리합니다. 주문이 끝나면 '주문이 완료됐습니다' 같이 템플릿 문장을 출력합니다.

 

LLM 챗봇은 어떻게 구현할까요. 첫번째는 RAG(Retrieval Augmented Generation)입니다. 챗봇은 다양한 질문에 대해서 대답할 수 있어야 합니다. 이런 정보들을 벡터DB에 변환해서 넣습니다. '쿠팡와우 혜택이 뭐야'라고 물어보면 이와 가장 비슷한 내용을 벡터DB에서 찾습니다. 이 단락 안에는 질문에 대한 정답이 어딘가에 포함되어 있습니다. 질문과 단락을 같이 프롬프트에 넣고 LLM 모델에 입력하면 '쿠팡와우를 가입하시면 OOO 등의 혜택이 있습니다' 같은 정제된 대답을 생성합니다.

 

두번째는 OpenAI Function입니다. 챗봇은 단순히 질의응답만 해서는 안됩니다. 특정한 액션을 수행할 수 있어야 합니다. '노트북 가장 싼 것 보여줘'라고 물어보면 쿠팡 DB를 검색할 수 있는 API를 호출해야 합니다. Fucntion은 질문을 이해하고 API 호출을 위한 JSON 명세를 작성해줍니다. 이 JSON으로 직접 API를 호출하여 '레노바/100만원' 같은 정보를 얻으면, 이를 다시 ChatGPT에 알려줍니다. 그리고 최종적으로 '가장 싼 노트북은 레노바로 100만원입니다' 같이 대답을 생성합니다.

 

LLM의 챗봇이 기존 챗봇보다 뛰어난 점은 문맥을 고려한다는 것입니다. 위 질문에서 '이거 말고 삼성걸로 보여줘'라고 이어서 물어보면 어떨까요. 기존 챗봇에서는 구현이 거의 불가능했습니다. 반면에 LLM 챗봇은 Function이 알아서 삼성노트북 가장 싼 것을 찾는 JSON 명세를 작성해줍니다. 덕분에 훨씬 자연스럽게 챗봇과 대화하며 원하는 목적을 달성할 수 있습니다.

 

 

 

하지만 공공기관이나 대기업은 정보유출에 대한 우려로 ChatGPT를 쓰기가 어렵습니다. 그렇다면 LLM 챗봇을 오픈소스 LLM으로도 구현할 수 있을까요. KuLLM 12.8B으로 테스트를 해봤는데 한글 RAG도 상당히 잘 되는 편이었습니다. 다만 Function 기능은 아직 ChatGPT 밖에 못합니다. Function 전용 오픈소스 LLM이 나오면 상당히 유용할 텐데요. 코드를 작성하는 오픈소스 LLM도 있으니 조만간 가능할 것도 같습니다.

 

2017~2018년 챗봇이 주목을 받으면서 많은 곳에서 챗봇을 도입했습니다. SI로 챗봇을 개발해주는 회사들도 상당수 등장했습니다. 마찬가지로 향후 3년 정도는 LLM 챗봇 회사들에게 기회가 올거라 봅니다. 기존 챗봇들을 LLM 챗봇으로 변환하는 수요 뿐만 아니라, 그보다 훨씬 많은 수의 새로운 챗봇들이 필요할 테니까요.

 

엮인글 :
List of Articles
제목 글쓴이 날짜 조회 수sort
스캐터랩의 오픈도메인 챗봇 루다 육아일기 - 모델의 구조 및 동작방식 file 깊은바다 2020-12-30 1191
메타, GPT-3와 동급인 175B의 초거대모델 무료 공개 깊은바다 2022-05-04 1189
최신 자연어처리 모델 소개 file 깊은바다 2022-07-11 1180
딥러닝 기반 자연어 언어모델 BERT - Colab 실습 코드 포함 file 깊은바다 2019-09-02 1179
쉽게 씌어진 Word2Vec [2] 깊은바다 2017-12-25 1178
커뮤니케이션과 AI - Multi-channel CNN을 이용한 한국어 감성분석 깊은바다 2018-11-22 1156
퓨샷(few-shot) 러닝에 최적화된 GPT3 모델 file 깊은바다 2020-05-30 1156
유저 피드백을 받아 지속적으로 학습을 하는 챗봇 - BlenderBot 3 file 깊은바다 2022-08-06 1154
LLM의 새로운 기법 - Merge와 DPO file 깊은바다 2024-01-02 1153
딥러닝 질의응답 시스템인 cdQA-suite 깊은바다 2020-03-08 1144
WizardLM의 Evol-instruct로 직접 한글 데이터셋을 만든 모델 file 깊은바다 2023-06-19 1137
다이나믹 메모리 네트워크 정리 file 깊은바다 2018-09-29 1135
딥러닝을 이용한 자연어 처리 입문 - 위키독스 깊은바다 2018-09-21 1108
Dialog-BERT: 100억건의 메신저대화로 일상대화 인공지능 서비스하기 file [1] 깊은바다 2020-04-19 1093
딥러닝으로 욕설 탐지하기 file [2] 깊은바다 2018-05-04 1073