글 수 14

봇 설계는 이렇게 한다

조회 수 1319 추천 수 0 2018.03.18 03:50:24


x9791188621118_1.jpg

 

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. 봇의 미래

 

 

 

국내에서 챗봇에 대한 책이 예전에 한 권 나온 적이 있지만, 실제 개발에 관련된 도서는 이것이 처음이 아닐까 생각합니다. 다만 프로그래밍 방법에 대한 것은 아니고 기획이나 구조 설계 등을 다루고 있습니다.

 

사실 지금 자연어처리나 인공지능 기술은 한계가 있습니다. 인간의 말을 완벽히 알아듣고 스스로 상황을 판단하여 적절한 행동을 하는 것은 거의 불가능합니다. 그러므로 대화의 시나리오를 미리 작성하고 그 흐름을 유연하게 조정할 수 있는 기획력이 훨씬 중요합니다.

 

그런 면에서 이 책이 많은 도움이 될 것 같습니다. 챗봇의 대화를 어떻게 설계할 것인가와 실제로 스크립트를 작성하는 과정까지 자세히 설명하고 있습니다. 그 중에서 핵심적인 내용만 간단하게 정리해 보았습니다.

 

 

 

대화 흐름 설계

 

pizzabot-2.png

 

챗봇을 기획할 때 가장 먼저 해야하는 일은 대화의 흐름을 결정하는 것입니다. 위의 플로차트는 피자를 주문하는 과정을 간단히 정리한 것입니다. 이렇게 전체적인 구조를 설계한 다음, 각 상황에 맞는 대화 문장이나 사진, 링크 같은 정보를 스크립트 문서로 작성합니다.

 

 

 

처음 소개 및 사용법

 

a.jpg

 

챗봇을 처음 시작하면 사용자에게 간단한 소개와 사용 방법을 알려줄 필요가 있습니다. Poncho에서는 날씨를 알려주기 위한 지역을 설정하고 알람을 받을 것인지 물어봅니다. 이 밖에도 직접 몇몇 문장을 입력해보도록 하는 튜토리얼을 추가할 수도 있습니다.

 

 

 

메뉴 UI

 

Untitled-1.jpg

 

리스트, 퀵 리플라이, 고정 메뉴 같은 UI를 추가하면 좀 더 쉽게 챗봇을 사용할 수 있습니다. 하지만 메뉴는 되도록 최소화 하고 대화를 주고받으며 자연스럽게 접근하는 것이 중요합니다. 그리고 UI가 표시된 상태에서도 직접 문장을 입력하여 세부 사항을 결정하거나 다른 주제로 변경이 가능해야 합니다.

 

 

 

코스 교정

 

1_tYtbZWbzjmBa1szbM98htA.jpeg

 

챗봇을 설계할 때 가장 피해야 되는 것은 '이해하지 못했습니다'하고 대화가 끝나버리는 상황입니다. 위의 사진을 보면 '어떤 모델을 원하시나요?'란 질문에 단지 '싫어'라고 대답을 하였습니다. 이렇게 의도하지 않은 답변을 하더라도 계속 적절한 질문을 하여 대화를 이어가야 합니다. 또한 찾는 품목이 없을 경우 비슷한 제품을 보여주며 다른 선택을 유도하는 것을 볼 수 있습니다.

 

 

 

이야기 전환

 

 

소프트뱅크의 로봇인 페퍼를 보면 사용자에게 계속 질문을 하면서 대화를 적극적으로 주도하고 있습니다. 챗봇 역시 수동적으로 질문에만 대답하는 것보다는 먼저 상황에 맞는 얘기를 하면서 상대방의 관심을 끄는 것이 필요합니다. 예를 들어, 피자를 주문하는 챗봇에서 신제품을 소개하거나 할인을 받을 수 있는 품목을 알려주는 것도 가능합니다.

 

 

 

문맥

 

K-001.png

 

챗봇을 구현하는데 있어 중요한 요소 중 하나는 대화의 문맥을 유지하는 것입니다. '불고기피자의 가격은 얼마야?'하고 물었을 때는 사용자의 의도를 정확히 알 수 있습니다.

 

하지만 위의 사진처럼 '이건 가격이 얼마야?'라고 질문하면 이 문장만으로는 올바른 판단을 할 수가 없습니다. 그래서 지금 '불고기피자'를 얘기하고 있다는 정보를 저장하고 이를 활용하여 대답을 해야합니다. 보통은 대화 흐름에 따른 상태나 개체들을 변수로 설정하는 방법을 많이 사용합니다.

 

 

 

기억

 

K-002.png

 

사용자가 이전에 했던 행동이나 말을 기억하고 현재 명령을 수행할 때 참조할 수 있습니다. 위의 예제처럼 자주 구입했던 제품이나 주소 등을 파악하여 쉽게 주문을 완료할 수 있습니다.

 

챗봇은 앱이나 웹과 같은 다른 매체와 달리 직접 질문을 하는 것이 자연스럽습니다. 또한 대화를 하면서 상대방의 취향이나 정보 등을 쉽게 알 수 있습니다. 그래서 각 사용자에 맞는 개인화를 하기에 적합하다는 것이 큰 장점입니다. 앞으로 챗봇이 성공하기 위한 핵심적인 요소가 되지 않을까 생각합니다.

 

 

 

< 챗봇 개발자 모임 >

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

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

List of Articles
번호 제목 글쓴이 날짜 조회 수
14 메시징 플랫폼, 디자인이 필요할까? 깊은바다 2018-05-18 12
13 챗봇 분석: 챗봇에서 나오는 데이터와 인사이트 깊은바다 2018-05-08 59
12 100일 간의 챗봇 디자인 실패기 깊은바다 2018-05-03 73
» 봇 설계는 이렇게 한다 file 깊은바다 2018-03-18 1319
10 챗봇, 어떤 로직을 구현할 것인가? - 지능형 vs 메뉴선택 깊은바다 2017-12-20 236
9 FSM 기반의 챗봇 대화 구조 file 깊은바다 2017-11-30 817
8 챗봇 기획과 프로젝트 운영, Best Practices 깊은바다 2017-11-29 189
7 챗봇이 주는 가치와 설계시 고려할 점 깊은바다 2017-10-18 259
6 대화형 챗봇으로 사용자 리서치 하기 깊은바다 2017-09-26 199
5 챗봇의 구조: 챗봇은 AI가 필요한가? file 깊은바다 2017-05-27 502
4 챗봇의 9가지 UX 원칙 깊은바다 2017-05-27 359
3 대화형 챗봇 설계의 과제 file 깊은바다 2017-05-21 497
2 챗봇 인터페이스의 특징 file 깊은바다 2017-05-12 411
1 챗봇에서 개인화의 중요성 file 깊은바다 2017-04-13 320