성공적인 챗봇 제작을 위한 5가지 체크리스트
1. 메시징 플랫폼
2. 자연어 처리 엔진
3. 봇 빌더
4. 상담원 연결
5. 가격
어떤 서비스를 선택해야 할까요? |
성공적인 챗봇 제작을 위한 5가지 체크리스트
1. 메시징 플랫폼
2. 자연어 처리 엔진
3. 봇 빌더
4. 상담원 연결
5. 가격
어떤 서비스를 선택해야 할까요? |
챗봇에서 자연어처리 적용 방법
챗봇을 구현할때 가장 간단한 방법은 특정 단어가 포함되었을때 반응을 규칙으로 정하는 것입니다. 예를 들어 '피자'와 '주문'이란 단어가 있으면 '어떤 피자를 원하시나요?'라는 대답을 하는 것은 다음과 같이 나타낼 수 있습니다.
def CheckOrder(message):
if '피자' in message and '주문' in message:
return '어떤 피자를 원하시나요?'
else:
return NO_MATCH
cs
보통은 규칙을 스크립트로 만드는 방식으로 많이 사용합니다.
u: ('피자', '주문') 어떤 피자를 원하시나요?
cs
형태소 단위로 비교
위와 같은 방법은 간단하기는 하지만 잘못된 판단을 하는 경우가 많이 발생할 수 있습니다. 만약 '주문진에서 가장 유명한 피자가게 알려줘'라고 했을때 '주문'을 '주문진'과 혼돈하여 사용자의 의도와 전혀 다른 행동을 하게 됩니다. 특히 '옷', '책' 등 한글자로 된 단어일때 이런 문제가 나타날 가능성이 아주 높습니다.
입력된 문장을 먼저 형태소분석으로 처리하면 이와 같은 현상을 방지할 수 있습니다. '주문진에서 가장 유명한 피자가게 알려줘'라는 문장을 다음과 같이 변환이 가능합니다.
주문진에서 가장 유명한 피자가게 알려줘
-> 주문진 + 에서 + 가장 + 유명 + 한 + 피자 + 가게 + 알려주 + 어
cs
문장전체에서가 아니라 이렇게 형태소별로 나누어서 비교를 하면 '주문'과 '주문진'이 다르다는 것을 알 수 있습니다. 그래서 오류없이 사용자의 의도를 보다 정확하게 파악할 수 있습니다
동사의 어근 추출
형태소분석을 적용하면 동사의 어근만 비교하여 다양한 변형을 한번에 처리할 수 있습니다. 예를 들어 '피자 살래', '피자 사고싶어', '피자 산다' 등 같은 동사가 여러가지로 표현됩니다.
형태소분석을 하면 '사 + ㄹ래', '사 +고 + 싶 + 어', '사 + ㄴ다'로 변환할 수 있습니다. 그리고 각각 별도의 규칙을 만들 필요 없이 '사'라는 동사만 비교하면 됩니다.
문장의 의도 파악
피자를 사려는 사람들은 '피자 살래', '피자 주문할거야', '피자를 원해', '피자 배달해줘', '피자 갖다줄래?' 등 매우 다양한 방식으로 문장을 표현합니다. 하지만 모두 '사다'라는 의도를 가지고 있음을 알 수 있습니다. 이를 구현하는 첫번째 방법은 각각에 대해 따로 규칙을 만드는 것입니다.
만약 '피자 살래'라는 규칙만 있어도 나머지 문장들이 입력되었을때 똑같이 판단할 수 있다면 좀 더 쉽게 챗봇을 만들 수 있습니다. 사실 이 부분이 매우 어렵습니다. 여러가지 의도를 미리 정의해놓고 동의어나 문장의 패턴을 사용하여 입력된 문장이 어떤 의도인지 분류할 수 있습니다. 최근에는 딥러닝을 적용하기도 합니다.
단위 변환
숫자, 날짜, 시간 등의 개체(entity) 역시 여러가지로 표현이 가능합니다. '피자 한개', '피자 한판', '피자 1개', '피자 하나' 등의 입력을 '피자 + 1'과 같이 통일된 방식으로 변환하면 보다 쉽게 처리할 수 있습니다.
자체 구현 또는 챗봇 빌더
챗봇을 만드는 방법에는 두가지가 있습니다. 하나는 모든 것을 스스로 구현하는 것이고 다른 하나는 챗봇 빌더를 사용하는 것입니다. 자체 구현은 자신의 서비스에 맞도록 응용하거나 확장하기에 좋지만 복잡한 기능을 혼자 만들기에 어려움이 있습니다.
챗봇 빌더는 형태소분석과 개체, 의도 파악 등을 지원해주기 때문에 좀 더 쉽게 원하는 기능을 구현할 수 있습니다. 하지만 한번 만들어 놓으면 다른 챗봇 빌더로 바꾸거나 자체 프로그램으로 변경하기 힘들다는 단점이 있습니다.
그래도 처음 챗봇을 개발하려는 분들에게는 자신에게 맞는 챗봇 빌더를 선택하여 이용하는 것도 좋은 방법이라 생각합니다. 다만 wit.ai 같은 유명한 서비스는 아직 개체나 의도 파악 등에서 한글이 잘 지원되지 않습니다. 한국에서도 몇몇 챗봇 빌더가 나왔는데 아직 이러한 기능들이 조금 부족하지 않은가 싶습니다. 하지만 앞으로 점점 나아질 거라 생각합니다.... 더보기
챗봇을 구현할때 가장 간단한 방법은 특정 단어가 포함되었을때 반응을 규칙으로 정하는 것입니다. 예를 들어 |
챗봇 기획 - FSM 기반의 챗봇 대화 구조
챗봇을 구현할때 시나리오에 따라 대화의 흐름을 제어할 필요가 있습니다. 이때 많이 사용하는 방법이 유한상태기계(FSM)입니다. FSM은 상태를 변화시키며 그에 맞는 행동을 수행하는데, 특히 게임에서 캐릭터 인공지능에 유용하게 사용됩니다.
위의 그림(하단 링크에서 자세한 그림을 참조하세요.)은 게임에서 몬스터 인공지능을 FSM으로 구현한 것입니다. 'IDLE, COMBAT, RETREAT' 세가지 상태로 되어있고 각각의 조건에 따라 상태를 전이합니다. 그리고 현재 상태에 따라 몬스터의 행동을 결정할 수 있습니다. 예를 들어, IDLE일때는 주변을 배회하도록 움직이고 COMBAT일때는 적을 공격하도록 합니다.
피자 배달 챗봇을 FSM으로 구현하는 예를 들어보겠습니다. 최대한 간단하게 하기위해 '인사, 메뉴소개, 주문'의 세가지 상태만 존재합니다.
유저 : 안녕
챗봇 : 안녕하세요. 저는 피자주문 챗봇입니다.
상태 : Main(인사), Sub(None)
변수 : None
유저 : 무슨 피자 있어?
챗봇 : 불고기피자, 페페로니피자, 치즈피자가 있습니다.
상태 : Main(메뉴소개), Sub(피자)
변수 : None
유저 : 불고기피자
챗봇 : 불고기피자는 정통 불고기와 신선한 야채가 어우러져 모두가 좋아하는 맛입니다.
상태 : Main(메뉴소개), Sub(피자)
변수 : Target(불고기피자)
유저 : 별로..
챗봇 : 새로 출시된 슈프림피자는 어떠신가요?
상태 : Main(메뉴소개), Sub(피자)
변수 : Target(슈프림피자)
유저 : 좋아! 이걸로 주문할래
챗봇 : 슈프림피자를 선택하셨습니다. 전화번호를 입력해주세요.
상태 : Main(주문), Sub(전화번호)
변수 : Slot(피자/슈프림피자, 전화번호/None, 주소/None)
유저 : 010-1111-2222
챗봇 : 주소를 입력해주세요
상태 : Main(주문), Sub(주소)
변수 : Slot(피자/슈프림피자, 전화번호/010-1111-2222, 주소/None)
유저 : 서울 강남구 신사동
챗봇 : 주문 감사합니다. 곧 배달하도록 하겠습니다.
상태 : Main(주문), Sub(None)
변수 : Slot(피자/슈프림피자, 전화번호/010-1111-2222, 주소/서울 강남구 신사동)
이런 FSM 구조의 장점은 대화의 문맥을 유지할 수 있다는 점입니다. 위의 예시에서 '별로...'라고 말했을때 Main(메뉴소개), Sub(피자)라는 상태를 알고 있기 때문에 새로운 피자를 추천할 수 있었습니다. 문장의 의미를 검사할때 상태에 따라서 좀 더 적합한 대답을 선택할 수 있습니다.
하지만 상태가 많아질수록 전체적인 구조를 파악하고 상태간의 전이를 처리하기 힘들다는 단점이 있습니다. 하지만 제한된 범위에서 챗봇을 구현할때 FSM이 유용하게 사용될 것이라 생각합니다.... 더보기
챗봇을 구현할때 시나리오에 따라 대화의 흐름을 제어할 필요가 있습니다. 이때 많이 사용하는 방법이 유한상태기계(FSM)입니다. FSM은 상태를 변화시키며 그에 맞는 행동을 수행하는데, 특히 게임에서 캐릭터 인공지능에 유용하게 사용됩니다. (출처 : https://www.slideshare.net/yonghakim900/2009-ndc) 위의 그림은 게임에서 몬스터 인공지능을 FSM으로 구현한 것입니다. |
챗봇 기획 - 봇 설계는 이렇게 한다
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9791188621118&orderClick=LEA&Kc=#N
< 목차 >
- 1. 봇이란 무엇인가?
- 2. 봇의 유형
- 3. 주요 플랫폼
- 4. 주요 사용 사례
- 5. 봇 해부학
- 6. 브랜딩, 성격 그리고 사람의 개입
- 7. 인공 지능
- 8. 대화
- 9. 리치 인터랙션
- 10. 문맥과 기억
- 11. 봇의 발견과 설치
- 12. 참여 방법
- 13. 수익화
- 14. 기획 프로세스 개요
- 15. 사용 사례 정의 및 탐구
- 16. 대화 스크립트 작성하기
- 17. 기획과 테스트
- 18. 봇 제작 개요
- 19. 분석과 지속적인 개선
- 20. 봇의 미래
국내에서 챗봇에 대한 책이 예전에 한 권 나온 적이 있지만, 실제 개발에 관련된 도서는 이것이 처음이 아닐까 생각합니다. 다만 프로그래밍 방법에 대한 것은 아니고 기획이나 구조 설계 등을 다루고 있습니다.
사실 지금 자연어처리나 인공지능 기술은 한계가 있습니다. 인간의 말을 완벽히 알아듣고 스스로 상황을 판단하여 적절한 행동을 하는 것은 거의 불가능합니다. 그러므로 대화의 시나리오를 미리 작성하고 그 흐름을 유연하게 조정할 수 있는 기획력이 훨씬 중요합니다.
그런 면에서 이 책이 많은 도움이 될 것 같습니다. 챗봇의 대화를 어떻게 설계할 것인가와 실제로 스크립트를 작성하는 과정까지 자세히 설명하고 있습니다. 그 중에서 핵심적인 내용만 간단하게 정리해 보았습니다.
대화 흐름 설계
챗봇을 기획할 때 가장 먼저 해야하는 일은 대화의 흐름을 결정하는 것입니다. 위의 플로차트는 피자를 주문하는 과정을 간단히 정리한 것입니다. 이렇게 전체적인 구조를 설계한 다음, 각 상황에 맞는 대화 문장이나 사진, 링크 같은 정보를 스크립트 문서로 작성합니다.
처음 소개 및 사용법
챗봇을 처음 시작하면 사용자에게 간단한 소개와 사용 방법을 알려줄 필요가 있습니다. Poncho에서는 날씨를 알려주기 위한 지역을 설정하고 알람을 받을 것인지 물어봅니다. 이 밖에도 직접 몇몇 문장을 입력해보도록 하는 튜토리얼을 추가할 수도 있습니다.
메뉴 UI
리스트, 퀵 리플라이, 고정 메뉴 같은 UI를 추가하면 좀 더 쉽게 챗봇을 사용할 수 있습니다. 하지만 메뉴는 되도록 최소화 하고 대화를 주고받으며 자연스럽게 접근하는 것이 중요합니다. 그리고 UI가 표시된 상태에서도 직접 문장을 입력하여 세부 사항을 결정하거나 다른 주제로 변경이 가능해야 합니다.
코스 교정
챗봇을 설계할 때 가장 피해야 되는 것은 '이해하지 못했습니다'하고 대화가 끝나버리는 상황입니다. 위의 사진을 보면 '어떤 모델을 원하시나요?'란 질문에 단지 '싫어'라고 대답을 하였습니다. 이렇게 의도하지 않은 답변을 하더라도 계속 적절한 질문을 하여 대화를 이어가야 합니다. 또한 찾는 품목이 없을 경우 비슷한 제품을 보여주며 다른 선택을 유도하는 것을 볼 수 있습니다.
이야기 전환
소프트뱅크의 로봇인 페퍼를 보면 사용자에게 계속 질문을 하면서 대화를 적극적으로 주도하고 있습니다. 챗봇 역시 수동적으로 질문에만 대답하는 것보다는 먼저 상황에 맞는 얘기를 하면서 상대방의 관심을 끄는 것이 필요합니다. 예를 들어, 피자를 주문하는 챗봇에서 신제품을 소개하거나 할인을 받을 수 있는 품목을 알려주는 것도 가능합니다.
문맥
챗봇을 구현하는데 있어 중요한 요소 중 하나는 대화의 문맥을 유지하는 것입니다. '불고기피자의 가격은 얼마야?'하고 물었을 때는 사용자의 의도를 정확히 알 수 있습니다.
하지만 위의 사진처럼 '이건 가격이 얼마야?'라고 질문하면 이 문장만으로는 올바른 판단을 할 수가 없습니다. 그래서 지금 '불고기피자'를 얘기하고 있다는 정보를 저장하고 이를 활용하여 대답을 해야합니다. 보통은 대화 흐름에 따른 상태나 개체들을 변수로 설정하는 방법을 많이 사용합니다.
기억
사용자가 이전에 했던 행동이나 말을 기억하고 현재 명령을 수행할 때 참조할 수 있습니다. 위의 예제처럼 자주 구입했던 제품이나 주소 등을 파악하여 쉽게 주문을 완료할 수 있습니다.
챗봇은 앱이나 웹과 같은 다른 매체와 달리 직접 질문을 하는 것이 자연스럽습니다. 또한 대화를 하면서 상대방의 취향이나 정보 등을 쉽게 알 수 있습니다. 그래서 각 사용자에 맞는 개인화를 하기에 적합하다는 것이 큰 장점입니다. 앞으로 챗봇이 성공하기 위한 핵심적인 요소가 되지 않을까 생각합니다.... 더보기
1. 봇이란 무엇인가? - 2. 봇의 유형 - 3. 주요 플랫폼 - 4. 주요 사용 사례 - 5. 봇 해부학 - 6. 브랜딩, 성격 그리고 사람의 개입 - 7. 인공 지능 - 8. 대화 - 9. 리치 인터랙션 - 10. 문맥과 기억 - 11. 봇의 발견과 설치 - 12. 참여 방법 - 13. 수익화 - 1... |
구글은 챗봇이 나쁜 생각이었다고 인정했다
https://www.fastcompany.com/90243776/google-admits-chatbots-were-a-bad-idea
'Google admits chatbots were a bad idea'란 기사를 번역해 보았습니다. 중요한 부분만 요약하고 제 생각을 조금 추가하였습니다. 최근 구글 어시스턴트가 시각적인 인터페이스를 강조하여 업데이트가 되었는데요. 앞으로 챗봇이 메신저의 대화창에서 점점 앱 기반의 대화 서비스로 발전할거라 예상됩니다.
구글 어시스턴트가 몇년 전에 출시했을때, 챗봇은 페이스북 메신저나 스카이프 같은 제품들에서 크게 유행했었습니다. 대화창 위주의 대화 방식은 기존 앱에서 터치를 하는 것보다 효과적이라고 여겨졌고, 많은 사람들은 챗봇이 소프트웨어 디자인의 미래라고 선전하였습니다. 구글 어시스턴트 역시 처음에는 구글의 메신저 앱인 알로(Allo)에 포함된 기능으로 시작하였습니다.
하지만 구글은 최근 이런 접근 방식에 실망을 하고 알로의 개발을 중지하였습니다. 그 이후 독립된 프로그램으로 출시된 구글 어시스턴트는 최근 안드로이드에서 새로운 버전으로 업데이트 되었고 아이폰은 몇 주 이내로 나올 예정입니다. 특히 시각적인 반응을 강조하였는데, 터치로 사용자가 바로 조작을 할 수 있으며 연속되는 질문에도 화면의 그림이 계속 유지됩니다. 또한 대화 표시가 하단에서 상단으로 이동하였고 이전과 달리 현재 대화만 볼 수 있습니다. 전체적인 느낌은 메신저보다는 앱에 가깝습니다.
과거 대화창 기반의 방식은 제한적인 모델이었이며 여러가지 면에서 구현할 수 있는 영역에 한계가 있었습니다. 챗봇 스타일의 중요한 문제점 하나는 너무 선형적이라는 것입니다. 예를 들어, 날씨를 물어봤을때 비주얼 카드(visual card)가 표시됩니다. 그리고 내일 날씨에 대해 연속해서 질문을 하면 이전 시각 정보가 위로 밀리고 새로운 화면이 보입니다. 이럴 경우 유저 입장에서 상당히 혼란스러울 수 있습니다. 그래서 새로운 버전에서는 기존 비주얼 카드의 정보를 바로 업데이트 하도록 변경하였습니다.
시각 정보는 금방 사라지거나 이동하기 보다는 계속 유지되는 편이 대화에 도움을 줍니다. 게다가 구글 어시스턴트가 포함된 모든 기기에서 대화창 방식이 가능하지도 않습니다. 인공지능 스피커인 구글홈, 디스플레이가 달린 구글홈 허브, 자동차에 들어가는 안드로이드 오토, 크롬 캐스트와 안드로이드 TV 등 다른 제품에서는 챗봇 스타일이 적합하지 않습니다.
심지어 스마트폰에서도 사용자들은 가상 비서와 단순히 대화만 하지는 않습니다. 오히려 상호작용의 절반 이상이 터치와 연관되어 있습니다. 그렇기 때문에 구글 어시스턴트를 좀 더 비주얼하게 다시 디자인을 함으로써, 모든 기기와 상황에서 일관적인 경험을 하도록 만들었습니다.
물론 대화의 요소가 완전히 사라진 것은 아닙니다. 여전히 화면의 상단에는 대화가 표시되며 하단에는 추천 명령어 버튼을 보여줍니다. 또한 아래로 스와이프를 하면 이전 질문들 역시 확인이 가능합니다. 하지만 예전과 달리 길게 이어진 대화 목록이 더 이상 중요하지 않습니다.
구글은 어시스턴트의 새로운 디자인이 앱 자체를 대체한다고 강조하지는 않습니다. 구글 어시스턴트가 트위터의 글들을 보여주거나 인스타그램의 카메라 기능을 제공할거라 기대하면 안됩니다. 그냥 해당 앱을 연결해주는 걸로 충분합니다.
하지만 음성 비서와 앱과의 경계가 점점 흐릿해지는 건 사실입니다. 예를 들어, 지금 항공편 예약을 하려면 항공사나 Expedia 같은 앱을 사용합니다. 만약 구글 어시스턴트가 앞으로 이런 작업을 대신하여 각각에 맞는 (시각적인) 인터페이스와 검색 방법 등을 제공한다면 굳이 자체 앱이 필요할까요?
구글은 현재 서드파티 개발자들이 자신만의 비주얼한 대답을 생성할 수 있도록 준비 작업을 하고 있습니다. 스타벅스 같은 회사들이 사용자의 주문에 대해서 더 많은 제품들을 사진과 함께 보여주여(해당 서비스에 맞는 UI를 통해) 판매를 촉진할 수도 있습니다. 구글 어시스턴트의 인터페이스는 유저들이 원하는 목표를 달성하도록 각각 다른 외부 스킬과 연동하는 중개자 역할을 할 것입니다.
(과연 서드파드 개발자에게 어느정도 자유도를 줄 수 있을까요. 안드로이드나 아이폰에서 앱을 개발할때 사용하는 SDK와 비슷하면 좋을 텐데요. 직접 화면 임의의 좌표에 이미지를 출력하고 터치로 상호작용을 할 수 있는 방식으로. 최소한 지금 페이스북 메신저처럼 몇몇 템플릿을 제공하는 수준은 아닐 것 같습니다.)... 더보기
https://www.fastcompany.com/90243776/google-admits-chatbots-were-a-bad-idea |
챗봇의 한계와 미래
챗봇이 주목을 받기 시작했던 것은 2016년 4월 페이스북 F8 컨퍼런스가 그 시작입니다. 마크 저커버그는 앞으로 챗봇이 대세가 될거라 예측하면서 많은 지원 방안을 내놓았습니다. 그 이후 여러 업체들이 앞다투어 챗봇을 개발하고 홍보를 하였지만 최근들어 분위기가 많이 가라앉은 상태입니다. 언론에서도 작년 초에는 하루에 수십개씩 챗봇 관련된 기사가 쏟아져 나왔지만, 지금은 거의 찾아보기가 어렵습니다.
이렇게 거품이 꺼지게 된 이유는 무엇보다 사용자들이 챗봇을 멀리하기 때문입니다. 처음에는 기대를 가지고 사용해보지만 곧 불편함을 느끼고 다시 앱으로 돌아갑니다. 물론 자연어처리의 한계로 인해 대답을 잘 못한다는 점도 있지만, 그것보다는 대화창 위주의 챗봇이 가진 근본적인 문제가 더 크다고 생각합니다.
메신저 기반 챗봇의 단점
현재 대부분의 챗봇은 카카오톡이나 페이스북 같은 메신저 플랫폼에서 동작합니다. 인스톨을 할 필요없이 바로 사용이 가능하다는 장점도 있지만 오히려 그 밖에 단점들이 훨씬 많습니다.
1. 실행이 불편
메신저에서 챗봇을 추가해도 항상 대화 목록이나 주소록에서 해당 챗봇을 찾아서 시작해야 합니다. 목록에 보이지 않아 검색을 하려면 챗봇 이름을 기억하고 있어야 해서 상당히 번거롭습니다. 자주쓰는 앱은 바탕화면에서 눈에 띄는 곳에 아이콘을 놓아서 한번에 실행할 수 있다는 것과 비교하면 매우 큰 단점입니다.
2. 메신저가 제공하는 기능만 사용가능
현재 카카오톡 플러스친구는 페이스북과 같이 대답 버튼이나 캐러셀 메뉴 등을 표시할 수 없습니다. 물론 곧 공개될 카카오i 오픈빌더에서 지원을 할 예정이지만 결국 사용가능한 기능에 제한이 있기 마련입니다.
3. 수익모델 없음
앱스토어가 활성화된 가장 큰 이유는 거기서 돈을 벌 수 있었기 때문입니다. 그래서 많은 회사나 개인 개발자가 다양한 앱들을 올리고 생태계가 유지될 수 있었습니다. 하지만 메신저 챗봇에서는 광고를 달 수 없습니다. 또한 결제를 하려면 외부 웹페이지와 연결을 해야 하는데 구현하기도 부담스럽고 유저들이 사용하기도 어렵습니다.
4. 챗봇 스토어가 없음
앱스토어의 장점 중 하나는 새로 출시되거나 인기있는 앱들을 카테고리별로 쉽게 찾아볼 수 있다는 것입니다. 그래서 유저들이 관심을 가지고 계속 다양한 앱들을 사용하게 됩니다. 하지만 메신저에서는 직접 이름으로 검색을 하는 방법 밖에 없어서 접근성이 매우 떨어집니다.
대화창 챗봇의 한계
지금도 메신저가 아니라 별도의 앱으로 만들어진 챗봇들이 있습니다. 하지만 대부분 메신저의 화면과 거의 유사한 방식으로 되어 있습니다. 솔직히 개인적으로는 대화창 기반의 챗봇은 잡담이나 고객 상담 같은 용도로만 적당하지, 정보를 찾거나 기능을 수행하는데는 어울리지 않다고 생각합니다.
우리는 보통 메신저를 친구들과 일상 대화를 하는데 사용하고 물건을 구입하는 목적으로는 쓰지 않습니다. 사람과도 메세지를 주고받으면서 쇼핑을 하지 않는데 과연 인공지능 챗봇으로 상품을 검색하고 주문을 하는게 효과적일지 의문입니다.
1. 처음 메뉴를 파악하기 어려움
보통 챗봇의 장점으로 복잡한 메뉴를 배울 필요없이 사용하기가 쉽다는 것을 들곤 합니다. 하지만 오히려 반대일 수도 있습니다. 메뉴가 있기 때문에 이것저것 눌러보면서 어떤 기능이 있는지 파악하고 조금씩 배워갑니다.
그러나 챗봇의 경우 처음 시작시 무엇을 해야할지 몰라 막막하기만 합니다. 물론 캐러셀 모양의 메뉴를 보여주기도 하지만 한 눈에 들어오지도 않고 어떤 문장을 입력해야 하는지 알기도 힘듭니다. 그래서 생각나는데로 대화를 해보지만 대부분 말을 못알아들어서(의도 파악을 못하기 보다는 지원을 안하는 기능일 경우가 많습니다) 금방 실망하고 챗봇을 떠납니다.
2. 화면이 작고 다양한 표현 불가
우선 글씨나 그림이 대화창 안에 들어가기 때문에 가로폭이 좁습니다. 게다가 전체 화면을 사용하는 일반적인 앱에 비해서 표시되는 영역이 아주 작습니다. 그리고 글자 크기나 색, 아이콘, 그림 등을 다양하게 배치를 못해서 가독성이 매우 떨어집니다.
또한 챗봇에서는 캐러셀 메뉴가 가로로 스크롤이 되는데 이것 역시 큰 단점 중 하나입니다. 지금까지 웹과 앱에서는 모두 세로 방향으로 화면을 이동하는데 익숙해졌기 때문입니다.
3. 인터페이스가 불편
항상 모든 경우에서 대화가 편한 것은 아닙니다. 화면을 보고 터치로 선택하는 것이 훨씬 빠르고 직관적일 수도 있습니다. 물론 챗봇에서도 버튼이나 템플릿 등으로 사용자가 선택할 수 있도록 하지만 매우 제한적이라 사용자 경험을 향상시키는데 크게 도움이 되지 않습니다.
챗봇의 미래
지금처럼 메신저나 대화창 위주의 챗봇은 점점 사라질 것이라 생각합니다. 그 대신 기존과 같은 앱을 기반으로 대화 기능이 추가되어 보다 편하게 사용하는 방향으로 발전할 것 같습니다. 현재 나온 스마트폰 앱 중에서 '페이지'와 '말해'가 이런 흐름과 가장 비슷하게 구현되었습니다. 다만 아직 초기 단계라 기능이나 UX 면에서 많이 부족해서 그런지 크게 인기를 얻지는 못하고 있습니다.
1. 앱에서 대화 기능이 추가됨
스마트폰 앱에서는 모든 기능이 메뉴로 표시되어 있습니다. 처음에는 메뉴를 따라가며 앱을 사용하지만 대부분의 경우 여러번 터치를 하는 것보다 말로 명령을 내리는 것이 더 빠릅니다. 그래서 차츰 유저들도 터치에서 대화로 사용 습관이 바뀌게 됩니다. 이미 메뉴에서 가능한 기능이 정해져 있기 때문에 지원을 안하는 명령을 했을때 동작을 하지 않아도 당연하게 받아들인다는 장점도 있습니다.
2. 음성 위주
연구결과를 보면 타이핑을 하는 것보다 음성이 3배 이상 빠르다고 합니다. 인공지능 스피커처럼 앱 기반의 챗봇도 음성 명령이 대세가 될 것입니다. 물론 손으로 입력을 할 수도 있겠지만 특정한 상황이 아니면 거의 대부분 말로 사용하게 됩니다.
3. 스마트 디스플레이와 유사
최근들어 아마존이나 구글에서 스마트 디스플레이가 속속 발표되고 있습니다. 개인적으로는 인공지능 스피커는 대화 인터페이스로 가는 과도기일 뿐이라 생각합니다. 음성만으로는 정보를 주고받는데 한계가 있기 때문에 반드시 화면이 추가되어야 합니다. 앞으로 스마트 디스플레이와 스마트폰의 앱이 매우 비슷한 방향으로 발전하리라 예상합니다.
대화 인터페이스는 계속된다
일찍부터 챗봇에 관심이 가졌던 분들은 현재 상황에 실망하고 다른 쪽으로 방향을 틀고 있을지도 모릅니다. 메신저 챗봇은 인기가 없고 인공지능 스피커 앱도 아직 시장이 작기 때문에 진출하기가 어렵습니다.
그러나 대화가 인간과 기계 인터페이스의 표준이 될거란 사실은 명확합니다. 시기가 문제이긴 하지만 지금도 관련 기술과 분위기가 어느 정도는 성숙되어 있습니다. 몇 년안에 스마트 디스플레이가 대중화되면 자연스럽게 앱 시장도 커지게 됩니다. 또한 이미 대화 방식에 익숙해진 유저들에게 스마트폰 앱에서도 이런 기능이 핵심적인 차별점이 될 것입니다. 지금부터 미리 준비하는 사람만이 앞으로 맞이할 새로운 시대에서 주도적인 역할을 하리라 생각합니다.
... 더보기
챗봇이 주목을 받기 시작했던 것은 2016년 4월 페이스북 F8 컨퍼런스가 그 시작입니다. 마크 저커버그는 앞으로 챗봇이 대세가 될거라 예측하면서 많은 지원 방안을 내놓았습니다. 그 이후 여러 업체들이 앞다투어 챗봇을 개발하고 홍보를 하였지만 최근들어 분위기가 많이 가라앉은 상태입니다. 언론에서도 작년 초에는 하루에 수십개씩 챗봇 관련된 기사가 쏟아져 나왔지만, 지금은 거의 찾아보기가 어렵습니다. 이렇게 ... |
챗봇, 그것이 알고싶다
https://www.slideshare.net/deepseaswjh/ss-122978927
이번주 일요일에 있는 챗봇 강연에서 발표할 내용의 일부입니다. 처음 1시간은 챗봇에 대한 전체적인 개념을 소개하고 과거와 현재, 그리고 미래를 정리해 봅니다.
나머지 3시간은 각각 Landbot.io, Chatfuel, Dialogflow로 아주 간단한 챗봇들을 만드는 실습입니다. 개발자에게는 딱히 필요하지 않을 것 같습니다. 챗봇 빌더가 무엇인지, 또 어떤 방식으로 구현을 하는지 궁금한 초보자들을 대상으로 합니다.
12월 1일에 한국인공지능연구소 주최 챗봇 해커톤이 열리는데 그에 대한 교육 과정으로 기획되었습니다. 코딩은 못하지만 멋진 아이디어와 기획력, 대화작성 능력이 있으신 분들에게 도움이 되었으면 좋겠습니다.
< 왕초보, 코딩없이 챗봇 만들기 >
- 11월 18일(일) 오후 2시~6시
- 1부. 챗봇, 그것이 알고 싶다. (1시간)
- 2부. Landbot.io로 영화홍보 챗봇 만들기 (1시간)
- 3부. Chatfuel로 타로 챗봇 만들기 (1시간)
- 4부. Dialogflow로 트와이스 챗봇 만들기 (1시간)
- https://event-us.kr/chatbothon/event/4039…
< 챗봇 개발자 모임 >
- 페이스북 그룹에 가입하시면 챗봇에 대한 최신 정보를 쉽게 받으실 수 있습니다.
- https://www.facebook.com/groups/ChatbotDevKR/... 더보기
이번주 일요일에 있는 챗봇 강연에서 발표할 내용의 일부입니다. 처음 1시간은 챗봇에 대한 전체적인 개념을 소개하고 과거와 현재, 그리고 미래를 정리해 봅니다. 나머지 3시간은 각각 Landbot.io, Chatfuel, Dialogflow로 아주 간단한 챗봇들을 만드는 실습입니다. 개발자에게는 딱히 필요하지 않을 것 같습니다. 챗봇 빌더가 무엇인지, 또 어떤 방식으로 ... |
사례중심으로 본 감성챗봇의 미래
http://aidev.co.kr/chatbot/7026
자연어처리 컨퍼런스인 LangCon 2019에서 발표한 자료입니다. 언어의 목적은 크게 기능적 측면과 감성적 측면으로 구분할 수 있습니다. 현재 대부분의 챗봇들은 특정 목적을 위한 기능 수행에 치중하고 있습니다.
하지만 우리 생활에서 언어의 70%는 잡담과 같은 일상 대화라고 합니다. 마찬가지로 많은 사람들은 챗봇이나 인공지능 스피커에서도 감성적인 대화를 나누고 싶어합니다.
앞으로 감성적인 부분을 인공지능으로 어떻게 구현해야 할지, 다양한 사례를 통해 살펴보았습니다.
< 챗봇 개발자 모임 >
- 페이스북 그룹에 가입하시면 챗봇에 대한 최신 정보를 쉽게 받으실 수 있습니다.
- https://www.facebook.com/groups/ChatbotDevKR/... 더보기
자연어처리 컨퍼런스인 LangCon 2019에서 발표한 자료입니다. 언어의 목적은 크게 기능적 측면과 감성적 측면으로 구분할 수 있습니다. 현재 대부분의 챗봇들은 특정 목적을 위한 기능 수행에 치중하고 있습니다. 하지만 우리 생활에서 언어의 70%는 잡담과 같은 일상 대화라고 합니다. 마찬가지로 많은 사람들은 챗봇이나 인공지능 스피커에서도 감성적인... |
챗봇의 종류 및 적용 분야
http://aidev.co.kr/chatbot/3768
최근 인공지능 스피커가 업계의 큰 화제가 되면서 챗봇 역시 많은 관심을 받고 있습니다. 해외뿐 아니라 국내에서도 많은 기업들이 챗봇을 도입하기 시작하였습니다. 현재까지 다양한 챗봇들이 출시되었는데 그 성격과 사용 방식에 따라 다음과 같이 여러 종류로 구분할 수 있습니다.
주문 및 예약
현재 가장 많이 활용되는 분야가 아닐까 합니다. 쇼핑몰에서 물건을 구입하거나 호텔에 예약을 하는 등 사람이 하는 업무를 챗봇이 대신할 수 있습니다. ... 더보기
최근 인공지능 스피커가 업계의 큰 화제가 되면서 챗봇 역시 많은 관심을 받고 있습니다. 해외뿐 아니라 국내에서도 많은 기업들이 챗봇을 도입하기 시작하였습니다. 현재까지 다양한 챗봇들이 출시되었는데 그 성격과 사용 방식에 따라 다음과 같이 여러 종류로 구분할 수 있습니다. 주문 및 예약 현재 가장 많이 활용되는 분야가 아닐까 합니다. 쇼핑몰에서 물건을 구입하거나 호텔에 예약을 하는 등 사람이 하는 ... |