레플리
글 수 211

아이돌 챗봇 소개

조회 수 741 추천 수 0 2018.05.25 18:20:04


아이돌에 대한 정보를 보여주는 간단한 챗봇을 만들어 봤습니다. 이전에 만들었던 챗봇은 메뉴를 선택하여 동작하는 방식이었는데, 이번에는 최대한 메뉴를 지양하고 자연스럽게 문장을 입력하여 사용할 수 있도록 구현하였습니다.

 

자체 개발한 챗봇 모듈을 기반으로 하였고 ChatScript와 비슷한 형식의 스크립트를 작성하여 문장의 유사도를 비교하는 방식입니다. 조만간 구현 방법에 대한 좀 더 자세한 글을 따로 올리도록 하겠습니다.

 

 

 

아이돌 정보

 

idolchatbot01.jpg

 

아이돌 그룹이나 멤버에 대해서 다양한 프로필 정보를 대답합니다. 리더, 데뷔일, 팬클럽, 본명, 생일 등 20개 정도의 키워드로 검색이 가능합니다. 멤버 한명에 대해서 물어보거나 그룹 전체를 한꺼번에 찾아볼 수 있습니다.

 

 

 

웹 콘텐츠 검색

 

idolchatbot02.jpg

 

아이돌에 대한 사진, 움짤, 노래, 직캠, 영상 등을 웹에서 검색하여 감상할 수 있습니다. 동영상의 경우 제목과 함께 링크 버튼을 같이 보여줍니다.

 

 

 

자연어처리

 

idolchatbot03.jpg

 

문장을 비교할때 형태소분석을 통해 어간을 추출하여 검사합니다. 그래서 '뭐야'와 '뭐니'의 경우 여러 예문을 입력할 필요없이 하나만 작성하면 동일하게 처리합니다.

 

또한 키워드 단어의 존재만 검사하는 것이 아니라 동사의 종류를 같이 판단합니다. 그래서 같은 '엑소 팬클럽'이라는 엔터티를 가지고 있어도 '가입할래'와 같이 스크립트에 존재하지 않는 단어일 경우 일상 대화로 분류하여 대답을 합니다.

 

 

 

문맥 파악

 

idolchatbot04.jpg

 

간단한 문맥 정보를 사용하여 문장의 의도를 판단할 수 있습니다. 현재 대화중인 아이돌이나 그룹을 기억하고 거기에 맞는 대답을 합니다. 그리고 웹 검색의 경우 '계속', '다른거', '더 보여줘' 같이 말하면 연속해서 감상이 가능합니다.

 

 

 

세부 명령어 수행

 

idolchatbot05.jpg

 

이번 챗봇을 만들면서 가장 공을 들였던 기능입니다. 단순한 질문이 아니라 보다 복잡한 의도를 처리하도록 하였습니다. 현재 키와 몸무게만 구현을 했는데 '그룹/멤버/비교/성별' 등 4개의 파라미터에 따라 검색이 가능합니다.

 

만약 이것을 웹에서 동작하게 하려면 4개의 항목에 대해서 별도의 입력 버튼을 만들어야 하고 사용법을 배우기도 어렵습니다. 하지만 챗봇에서는 일상 언어를 통해 쉽게 물어볼 수 있다는 것이 장점입니다.

 

다만 이런 기능은 각각 별도의 함수를 만들어 처리를 해야하기 때문에 구현에 시간이 걸린다는 단점이 있습니다. 기회가 되면 좀 더 다양한 명령을 인식하도록 기능을 추가할 생각입니다.

 

 

 

빠른 대답 버튼

 

idolchatbot06.jpg

 

챗봇은 자연어로 쉽게 물어볼 수 있지만 오히려 어떤 질문을 해야할지 막막함을 느끼기도 합니다. 이를 해결하기 위해서 메뉴나 도움말을 넣는다고 해도 사용하기 복잡하고 대화창이 작아서 한 눈에 파악하기도 힘듭니다. 

 

그래서 빠른 대답 버튼을 통해서 현재 상황에 맞는 명령어들을 보여주도록 하였습니다. 그룹이나 멤버 정보가 있을 경우 웹 검색이 기본으로 들어가고 나머지는 키워드를 랜덤으로 출력합니다. 그렇지 않다면 그룹과 멤버 이름을 키워드와 함께 버튼으로 생성합니다.

 

사실 이 기능은 명령어를 빨리 입력하도록 하기보다는 사용할 수 있는 문장들을 자연스럽게 배우게 하는데 더 큰 목적이 있습니다. 이렇게 대화가 끊기지 않고 계속 이어가게 하는 기능이 앞으로 더 중요해질 것이라 생각합니다.

 

 

 

정리

 

최소한의 기능만 구현을 한 상태라 아직 부족한 점이 많습니다. 무엇보다 아이돌 DB를 넣는게 시간이 많이 걸렸습니다. 처음에는 크롤링으로 위키 정보를 추출하려고 했는데 형식에 맞지 않는 부분이 너무 많아서 일일히 손으로 입력을 하였습니다. 나중에 데이터를 더 보강하고 여러가지 다양한 콘텐츠를 추가하여 공개를 할 생각입니다.

 

 

 

< 챗봇 개발자 모임 >

- 페이스북 그룹에 가입하시면 챗봇에 대한 최신 정보를 쉽게 받으실 수 있습니다.

https://www.facebook.com/groups/ChatbotDevKR/

 

List of Articles
제목 글쓴이 날짜sort 조회 수
마인드로직의 페르소나 챗봇 - 전 SM엔터 이수만 회장 70억 투자 newfile 깊은바다 2024-03-28 9
NVIDIA와 파트너십을 맺은 AI 간호사 서비스 - Hippocratic AI file 깊은바다 2024-03-21 77
Claude 3가 가끔씩 사람처럼 느껴질 때 file 깊은바다 2024-03-19 92
Claude 3와 GPT-4의 일상대화 비교 file 깊은바다 2024-03-15 125
Claude-3와 영화 Her의 사만다 file 깊은바다 2024-03-10 102
Claude-3와 GPT-4의 감성대화 능력 비교 file 깊은바다 2024-03-10 152
일본 MZ세대에게 인기를 끌고 있는 앱 - 이야기 듣는 삼촌 file [2] 깊은바다 2024-03-04 503
GetGPT의 가장 인기 챗봇 - 행발 작성 프로그램 file 깊은바다 2024-02-19 178
클로바X, GPT-3.5, GPT-4의 일상대화 능력 비교 file 깊은바다 2024-02-13 187
버추얼 아이돌 메이브와 대화할 수 있는 AI 챗봇 file 깊은바다 2024-02-08 174
Rabbit의 R1은 뉴로-심볼릭으로 LAM(Large Action Model) 구현 file 깊은바다 2024-01-21 325
혁명적인 AI 네이티브 휴대용 기기 - Rabbit의 R1 file 깊은바다 2024-01-12 428
OpenAI의 GPT Store 출시 및 Team 구독 추가 file 깊은바다 2024-01-11 165
스캐터랩의 새로운 서비스 제타(Zeta) 베타서비스 후기 file 깊은바다 2024-01-09 1492
GPT-4와 Dalle3를 무료로 사용할 수 있는 MS의 Copilot 앱 출시 file 깊은바다 2023-12-31 246