- 인쇄
- PDF
대화 캔버스 튜토리얼
- 인쇄
- PDF
Classic/VPC 환경에서 이용 가능합니다.
대화 캔버스를 사용하여 대화 흐름을 만드는 방법
CLOVA Chatbot 빌더에 대화 흐름을 설계하면서 AiCall 봇 제작이 가능한 대화 캔버스 기능이 추가되었습니다. 웰컴 메시지로 시작하는 기본적인 대화 흐름을 만든 후 간단한 AiCall 봇을 만드는 방법을 설명합니다.
기본 사항
본격적인 실습에 앞서 가장 기본적인 AiCall의 대화 흐름을 만드는 방법은 다음과 같습니다.
- 왼쪽 메뉴에서 대화 캔버스를 클릭해 주십시오.
- 캔버스 왼쪽 상단의 [+] 버튼을 클릭해 주십시오. 드롭다운 메뉴에서는 다양한 종류의 대화 상자를 볼 수 있습니다.
- 웰컴메시지를 캔버스로 끌어다 놓은 뒤, 대화 흐름에 맞게 원하는 대화 상자를 추가해 주십시오.
- 대화 상자 연결을 위해서는 연결을 시작하고자 하는 상자의 오른쪽 하단의 점을 클릭하고 연결할 상자로 화살표를 끌어서 연결해 주십시오.
손쉬운 연결을 위해 연결 가능한 포인트의 점과 화살표 색깔이 바뀌는 힌트 기능을 추가하였습니다.
시스템 응답을 연결하는 경우
컨텍스트를 연결하는 경우
- 모든 대화 흐름이 끝난 뒤에는 통화종료 박스를 마지막에 연결하여 대화흐름을 마무리 할 수 있습니다.
대화캔버스로 AiCall 만들어보기
대화캔버스로 AiCall 만들어보기 1탄: 택배 접수
기본적인 대화 흐름을 만들었다면 본격적으로 하나의 서비스를 수행하는 AiCall 봇을 만드는 방법을 설명합니다. 첫 번째 스텝에서는 택배회사에서 고객의 택배 접수 의사를 확인하는 대화를 만드는 방법을 설명합니다.
웰컴 메시지 만들기
어떤 서비스든 첫 만남이 가장 중요한 법입니다.
택배 접수를 받기 위해서는 가장 먼저, 고객에게 회사에 대해 간략히 소개하는 웰컴 메시지를 노출해야 합니다.
- [+] 버튼을 클릭하고 웰컴 메시지 상자를 캔버스에 끌어다 놓아 주십시오.
- 해당 웰컴 메시지를 선택하면 오른쪽에 편집 패널이 나타납니다. 시스템 응답란에 '안녕하세요 고객님. 진심을 다하는 OO택배입니다.'라고 적은 뒤, [저장] 버튼을 클릭해 주십시오.
시스템 응답 만들기
웰컴메시지를 만들었다면 고객이 택배 접수를 할 수 있도록 안내하는 시스템 응답 메시지를 만드는 방법을 설명합니다.
- [+] 버튼을 클릭하고, 시스템 응답 상자를 캔버스에 끌어다 놓아 주십시오.
- 시스템 응답 상자의 답변에 '택배 접수를 도와드릴까요?'라고 적은 뒤, [저장] 버튼을 클릭해 주십시오. 저장된 답변은 버튼 아래에 표시됩니다.
- 이제 두 상자를 연결하여 대화 흐름을 만들어보도록 하겠습니다. 웰컴 메시지의 시스템 응답을 클릭하고 화살표를 끌어서 시스템 응답 상자에 연결해 주십시오.
일반 대화로 YES, NO 선택지 만들기
이제는 고객이 답변할 차례입니다. 택배 접수를 원하면 '네' 아니라면 '아니요'라고 답변할 수 있도록 선택지 두 개를 만드는 방법을 설명합니다.
[+] 버튼을 클릭하여 일반 대화 상자를 캔버스에 끌어다 놓아 주십시오.
일반 대화 상자에서는 해당 상자의 목적에 따라 대화 이름을 바꿀 수 있습니다. 편집 패널에서 title을 두 번 클릭하고 상자의 이름을 '대답_yes'로 수정해 주십시오.
이제 사용자가 응답할 수 있는 발화들을 입력해 보겠습니다. 편집 창의 [사용자 발화] 탭에서 질문으로 '네'를 입력하고 [저장] 버튼을 클릭해 주십시오. 저장된 질문은 [저장] 버튼 아래에 표시됩니다. 사용자의 질문은 많이 입력할 수록 모델이 학습하기 쉬워집니다.
이번엔 시스템 응답을 입력해보겠습니다. [시스템 응답] 탭에서 답변으로 '식품이나 가전제품 등 파손될 수 있는 제품들은 택배로 배송할 수 없습니다. 짐의 내용물이 의류/잡화/서적과 같은 일반적인 것들인지 확인해주세요.'라고 적은 뒤, 저장 버튼을 클릭해 주십시오. 작성된 답변은 [저장] 버튼 아래에 표시됩니다.
'아니요' 에 대한 흐름도 위와 마찬가지로 만들어 주십시오. 일반 대화 상자를 캔버스에 끌어다 놓은 뒤, 상자 이름을 '대답_no'로 수정해 주십시오.
[사용자 발화] 탭에서 질문으로 '아니요'를 입력해 주십시오. [시스템 응답] 탭에서는 고객이 택배 접수를 원하지 않을 경우 나올 수 있는 답변인 '네, 알겠습니다. oo택배를 이용해주셔서 감사합니다.'라는 답변을 입력해 주십시오.
- 이전에 만든 시스템 응답 상자의 output 컨텍스트의 점을 클릭하고 화살표를 끌어 만들어둔 '대답_yes', '대답_no' 상자에 연결해 주십시오.
통화종료하기
고객이 택배 접수를 하겠냐는 물음에 '아니요'라고 답한다면, 더 이상 AiCall은 대화를 이어갈 수 없습니다. 통화종료 박스로 해당 대화를 마무리 지어 주십시오.
- [+] 버튼을 누른 뒤, 통화종료 상자를 캔버스에 끌어다 놓아 주십시오.
- '대답_no' 상자의 시스템 응답의 점을 클릭하고 화살표를 끌어 통화종료 상자에 연결해 주십시오.
저장하기
대화 내용은 자동으로 저장되지만, 상단 메뉴에서 수동으로 저장하거나 Ctrl/Command + s를 눌러 대화흐름을 저장할 수 있습니다.
마무리
지금까지 대화 캔버스를 이용하여 택배 접수를 하는 간단한 AiCall봇을 만들어 보았습니다. 최종적으로 만들어진 대화 흐름은 아래와 같습니다.
두 번째 스텝에서 택배 접수의사가 있는 고객에 대해 대화 그룹 연결 기능을 통하여 전화번호 등 고객정보를 확인하는 시나리오를 만드는 방법을 설명합니다.
대화 그룹
AiCall 봇을 만들다 보면 고민해야 할 부분이 많습니다. 예를 들어 식당 예약 봇을 만든다면, 메인 Flow인 식당 예약 외에도 영업시간/주차장 위치와 같은 FAQ 질문에 대한 응답도 구성해야 하고, 예약 실패 시 다시 원래 흐름으로 돌아올 수 있도록 Repair 시나리오도 작성해야 합니다. 이러한 모든 시나리오를 한곳에 작성하다 보면 대화 흐름은 복잡해지고, 수정 시에도 시간이 오래 걸립니다. 이를 방지하고자 대화 캔버스에서는 대화 그룹 기능을 제공합니다. 대화 그룹 추가를 통해 각각의 그룹별 Flow를 그릴 수 있고 이를 통해 전체 대화 캔버스가 복잡해지는 것을 방지할 수 있습니다.
- 새 그룹을 만들기 위해 홈 탭 옆에 있는 [+] 버튼을 클릭해 주십시오.
- 그룹 이름을 더블 클릭하면 원하는 대로 이름을 입력할 수 있습니다.
- 각각의 대화 그룹 아래에 대화 플로우를 만들어 주십시오.
대화그룹 연결
위의 실습을 통해 대화 그룹을 여러 개 만들었다면 해당 대화 그룹들을 연결하여 하나의 흐름으로 이어줍니다.
- 대화 링크 상자를 캔버스로 끌어다 놓아 주십시오.
- 연결할 대화 그룹 및 대화 이름을 클릭해 주십시오.
- 이제 상자를 연결해 주십시오. 연결해야 할 위치는 선택한 대화 유형(<예시> 일반 대화 또는 시스템 응답)에 따라 달라집니다.
- 상황 1: 선택한 대화의 유형이 일반 대화 상자인 경우, 일반 대화 상자의 output 컨텍스트의 점을 클릭하고 화살표를 끌어서 대화 그룹1에 연결해 주십시오.
- 상황 2: 선택한 대화의 유형이 시스템 응답 상자인 경우, 시스템 응답의 점을 클릭하고 화살표를 끌어서 대화그룹1 상자에 연결해 주십시오.
- 상황 1: 선택한 대화의 유형이 일반 대화 상자인 경우, 일반 대화 상자의 output 컨텍스트의 점을 클릭하고 화살표를 끌어서 대화 그룹1에 연결해 주십시오.
- 연결이 제대로 되었다면 연결된 대화 그룹에 다른 대화 링크 상자가 나타납니다.
대화캔버스로 AiCall 만들어보기 2탄: 택배 접수
첫 번째 스텝에서는 고객에게 택배 접수 의사가 있는지를 확인하는 스텝의 시나리오를 만들어 보았습니다.
두 번째 스텝에서는 택배 접수 의사가 있는 고객에 대해 대화 그룹 연결 기능을 통하여 전화번호 등의 정보를 확인하는 대화를 만드는 방법을 설명합니다.
이번 스텝에서는 대화 흐름을 더 잘 관리하기 위해 대화 그룹을 나누어 보도록 하겠습니다.
대화캔버스로 AiCall 만들어보기 1탄에서 만든 주요 대화 흐름에 일반 대화 상자를 추가해 주십시오.
일반 대화의 이름을 '배송가능물품_확인'으로 변경한 후 [사용자 입력] 탭에서 질문으로 '네'를 입력한 뒤, [저장] 버튼을 클릭해 주십시오.
[시스템 응답] 탭에서 응답 유형으로 답변 없음을 선택한 후 [저장] 버튼을 클릭해 주십시오.
'대답_yes' 상자의 output 컨텍스트의 점을 클릭하고 화살표를 끌어 방금 만든 '배송가능물품_확인' 상자에 연결해 주십시오.
다음으로, [Home] 탭 옆에 있는 [+] 아이콘을 클릭해 새로운 그룹을 만들고, 그룹명을 '전화번호 확인'으로 바꿔 주십시오.
시스템 응답 상자를 전화번호 확인 그룹 캔버스에 끌어다 놓아 주십시오.
해당 박스의 이름을 '시스템응답_전화번호'로 변경한 후 '고객님의 전화번호를 알려주시겠어요?'라고 입력한 뒤 [저장] 버튼을 클릭해 주십시오. 성공적으로 등록된 답변은 버튼 아래에 표시됩니다.
이제 이 흐름을 Home에 있는 대화 흐름과 연결시켜 주십시오. 메인 플로우가 들어있는 [Home] 탭으로 돌아가서 대화 캔버스에 대화 링크 상자를 끌어다 놓아 주십시오.
편집 패널에서 연결할 대화 그룹으로 전화번호 확인을 선택한 다음, 연결할 대화 상자로 전화번호 확인을 클릭해 주십시오.
상자를 연결해 주십시오.
완성된 전체 흐름은 이와 같습니다.
성공적으로 연결되었는지 확인하려면 연결된 대화 그룹인 전화번호 확인 탭으로 이동하여 연결된 대화 상자 앞에 또 다른 대화 링크 상자가 나타났는지 확인해 주십시오.
모든 단계가 완료되었습니다. 대화는 자동 저장되지만 소중한 자료가 날아가지 않도록 반드시 상단 메뉴에서 수동으로 저장하거나 Ctrl/Command + s를 눌러 저장해 주십시오..
대화목록 내보내기
다음으로는 대화캔버스와 챗봇의 대화목록을 유기적으로 쓸 수 있도록 만들어진 기능인 내보내기와 불러오기를 써보도록 하겠습니다. 대화 캔버스를 사용하여 대화 흐름을 만든 뒤, 대화 목록으로 내보내기를 할 수 있으며 반대로 대화목록에서 대화캔버스로 대화를 불러오기하여 대화 흐름을 보면서 편집할 수 있습니다.
오른쪽 상단에 있는 [내보내기] 버튼을 클릭해 주십시오. 내보내기 중 오류가 발생할 경우, 팝업 창에 해당 내용이 표시됩니다.
내보낸 대화를 확인하려면 왼쪽 메뉴에서 대화 목록을 선택해 주십시오. 내보낸 대화가 제대로 들어갔는지 확인이 가능합니다.
자주 하는 질문을 먼저 확인해 보십시오.
- 내보내기와 불러오기란 무엇인가요?
- 대화 캔버스를 사용하여 만든 대화는 별도로 저장되며 수동으로 내보내기 또는 불러오기를 선택할 때까지 챗봇과 동기화되지 않습니다.
- 내보내기를 클릭하면 대화 캔버스를 사용하여 만든 대화가 챗봇으로 내보내집니다. 반대로 불러오기를 클릭하면 챗봇을 사용하여 만든 대화를 대화 캔버스로 가져올 수 있습니다.
- 이전에 대화 캔버스에 작성한 레이아웃은 챗봇에서 불러오기를 한 뒤에 유지되지 않을 수 있습니다. 캔버스에서 내보내기를 한 뒤 불러오기를 하는 것을 권장합니다.
- 일부 기능(<예시> 이미지, 객관식, 스티커, flex 답변, JSON)은 Chatbot에서는 사용할 수 있지만, 대화캔버스에서는 사용할 수 없으므로, 이러한 기능은 불러오기 시 삭제될 수 있습니다.
- 내보내기가 실패했을 때 어떻게 해결할 수 있을까요?
- 번호 연결 시에 번호를 입력하지 않고 내보내기를 하면 내보내기 기능이 수행되지 않습니다.
- 내보내기에 실패하면, 어떤 이유로 내보내기에 실패했는지 이유를 alert창을 통해 보여줍니다. 해당 오류를 수정하고 나면 챗봇으로 다시 내보내기가 가능합니다.
- 챗봇과 대화 캔버스를 함께 사용할 수 있나요?
- 내보내기 및 불러오기 기능을 사용하면 챗봇과 대화 캔버스를 동기화 시킬 수 있지만 하단과 같은 경우는 주의가 필요합니다.
- 대화 캔버스의 특정 대화를 수정 후, 내보내기를 하지 않고 챗봇에서 불러오기를 하면 챗봇의 해당 대화 내용이 내용이 덮어쓰기 되어 그 전에 대화 캔버스에서 수정한 내용이 유지되지 않습니다.
- 일부 기능(<예시> 이미지, 객관식, 스티커, flex 답변, JSON)은 Chatbot에서는 사용할 수 있지만, 대화 캔버스에서는 사용할 수 없으므로, '불러오기'시 삭제될 수 있습니다.
- 여러 대화상자가 있는데 무엇이 다른 걸까요?
번호 | 항목 | 설명 |
---|---|---|
1 | 대화 | 일반대화 대화를 만드는 기본 상자로 사용자 발화와 시스템 응답 입력 가능 시스템 응답 시스템 응답만 입력하는 경우 사용 가능 태스크 대화 설정한 모든 슬롯이 채워지면 다음 단계로 넘어가는 대화를 만들 때 사용 |
2 | 공통메시지 | 실패 메시지 사용자 발화 내용을 시스템이 이해하지 못할 때 응답할 메시지 입력 웰컴 메시지 사용자가 챗봇을 처음 호출할 때, 챗봇이 건네는 첫 인사 입력 무응답 메시지 사용자가 응답하지 않을 때, 챗봇이 응답할 메시지를 입력 |
3 | 도구 | 대화 링크 다른 대화그룹에 있는 대화와 연결하려면 해당 링크 사용 컨텍스트 대화 흐름이 복잡할 경우, 대화 컨텍스트를 설정하여 연결 화살표를 최소화하려면 해당 옵션 사용 번호 연결 해당 박스를 통해 전화 번호 연결 통화 종료 대화 흐름이 종료되면 통화 종료 박스를 연결 노트 대화 캔버스의 내용 중 메모하거나, 요약, 주석 또는 강조 표시할 때 사용 |