Slot 노드는? 되묻기!
피자를 주문 받을 때! 메뉴, 사이즈, 수량이라는 3가지 정보가 필요하다 가정하겠습니다. 주문하는 사람이 처음부터 “페퍼로니 피자 미디움 사이즈로 1판 주세요.”라고 빠짐없이 이야기 하면 좋겠습니다. 하지만 3가지 정보 중 몇가지를 빼먹고 이야기 하는 경우가 있을 수 있습니다. 따라서 필요한 정보들이 모두 입력되었는지 체크하고, 누락된 내용들을 다시 질문하여 원하는 정보를 받아내면, 더 자연스러운 대화가 될 것입니다.
이번 단계에서는 “피자메뉴” 정보가 들어왔는지 Slot 노드를 이용해 체크하고, 질문을 통해 정보를 얻어내는 것까지 해보겠습니다.
Slot 노드
Slot 노드는 파라미터를 기준으로 질문메시지를 정의할 수 있습니다. 필수로 얻어야 하는 정보를 파라미터로 정의하고 Slot 노드에 파라미터 값을 얻기 위한 질문을 추가해야 합니다. 필수로 얻어야하는 정보가 여러 개라면 각각 파라미터로 정의하고 질문을 만들면 됩니다.
Slot 노드 생성 및 질문 메시지 정의
1) “피자주문하기” 대화흐름빌더 상세 페이지에서 상단의 Slot 노드를 클릭하여 Slot 노드를 추가해주세요. 그리고 Listen 노드 > Slot 노드 > Speak 노드 순으로 배치한 후 선을 연결해주세요. 기존에 연결되어 있던 선을 삭제하려면 선을 선택한 후 [Delete]키를 누르면 됩니다. (Mac에서는 function + backspace)
2) Slot 노드를 더블 클릭하여 상세 패널을 열고, ”질문 추가” 버튼을 클릭하여 1개의 질문 메시지를 생성해주세요.
3) #1의 Select Box에서 “피자메뉴” 파라미터를 선택하고, 메시지 입력란에 “어떤 피자를 주문할까요?”라고 입력해주세요
선택지 버튼 추가 및 파라미터 값 정의
1) 텍스트로 답을 받을 수도 있지만 사용자로부터 정확한 답을 받기 위해서 버튼 형태로 선택지를 줄 수도 있습니다. “버튼 추가”를 클릭하여 “선택지” 옵션을 선택해주세요.
2) “피자메뉴” 엔티티의 각 메뉴 추출 항목을 버튼으로 입력해주세요. “버튼명”은 채팅창 버튼에 표시되는 텍스트이고, 우측의 입력란에는 “피자메뉴” 파라미터에 담을 값을 입력하면 됩니다. (최초 입력시에 비워두면 버튼명이 파라미터값으로 자동 설정됩니다.)
Slot 노드 테스트
1) “변경내용 저장” 버튼을 클릭한 후 우측의 테스트 패널에서 테스트를 해보세요. “피자 주문해줘”라고 입력하면 Slot 노드에서 정의한 질문 메시지가 나타나고, 버튼을 클릭하면 Speak 노드에서 정의한 응답 메시지가 나타납니다.
3) 여기서 잠깐! “페퍼로니 피자 주문해줘”라고 입력하면 어떻게 될까요? 이미 “피자메뉴”에 대한 정보가 “페퍼로니”라고 들어왔기 때문에 Slot 노드를 건너뛰고, 바로 Speak 노드 메시지가 나타납니다.
다음 Step에서는
Slot 노드를 이용하여 피자메뉴를 버튼으로 선택할 수 있게 만들어 보았습니다. 사용자가 메뉴 선택을 좀 더 직관적으로 할 수 있도록 사진도 함께 보여주면 더 좋을 것 같은데요. 다음 Step에서는 Carousel 노드를 이용하여, 카드 형태로 메시지를 만드는 방법을 배워보겠습니다.
함께해요! 챗봇시대 :)
모든 사물, 디지털 매체와 말이 통하는 시대! 단비Ai와 함께 반드시 오게될 챗봇시대를 열어갔으면 좋겠습니다.
혹시 서비스 소개서를 찾고 있나요?
단비Ai 서비스 소개서는 아래 링크를 클릭해 다운로드 하실 수 있습니다.
서비스 소개서 다운로드
챗봇을 교육용도로 활용하고 싶으신가요?
단비Ai를 기반으로 만들어진 Ai교육, 에이아이런을 만나보세요 :)