대화형 디자인 필수 사항: 챗봇 구축을 위한 팁

게시 됨: 2022-03-10
간략한 요약 ↬ 자세히 살펴보면 인간의 상호 작용은 매우 매력적입니다. 사회적 어색함, 의사 소통 스타일, 지식이 전달되는 방식, 이야기가 전달되고 신뢰가 구축되는 방식. 하지만 기계가 같은 반응을 불러일으키면 어떻게 될까요? 대화형 인터페이스는 UX 디자인의 새로운 핫이 되었습니다. Google은 새로운 가상 비서 챗봇을 출시할 예정입니다. Facebook은 이미 챗봇이 포함된 업데이트된 Messenger 플랫폼을 출시했습니다. Microsoft는 미래의 운영 체제가 Windows가 아니라 "플랫폼으로서의 대화"라고 주장하기까지 했습니다.

사회적 어색함, 의사 소통 스타일, 지식이 전달되는 방식, 이야기가 전달되고 신뢰가 구축되는 방식 등 인간의 상호 작용을 자세히 살펴보면 매우 매력적입니다.

하지만 기계가 같은 반응을 불러일으키면 어떻게 될까요?

대화형 인터페이스는 UX 디자인의 새로운 핫이 되었습니다. Google은 새로운 가상 비서 챗봇을 출시할 예정입니다. Facebook은 이미 챗봇이 포함된 업데이트된 Messenger 플랫폼을 출시했습니다. Microsoft는 미래의 운영 체제가 Windows가 아니라 "플랫폼으로서의 대화"라고 주장하기까지 했습니다.

SmashingMag에 대한 추가 정보:

  • 대화형 인터페이스: 오늘날 우리는 어디에 있습니까? 우리는 어디로 가고 있습니까?
  • 대화가 챗봇 UX를 해치거나 도움이 되나요?
  • Node.js로 채팅 봇을 개발하는 방법
점프 후 더! 아래에서 계속 읽기 ↓

모든 대기업 관계자들이 이미 알고 있는 사실은 인공 지능(AI)의 발전이 매우 중요한 UX 문제를 해결할 수 있다는 것입니다. 얼굴 없는 브랜드 웹사이트와 앱을 정말 개인적으로 느끼게 만드는 것입니다.

Facebook Messenger 프레젠테이션: 이동 중에 호텔 객실 예약하기
Facebook Messenger 프레젠테이션: 이동 중에 호텔 객실 예약(큰 버전 보기)

챗봇은 매장에서의 경험과 비교할 수 있는 보다 진정한 맞춤형 경험을 제공할 수 있습니다. 판매원의 미소, 잡담, 친절한 윙크를 통해 전체 구매 경험을 보다 개인적이고 즐겁게 만듭니다. . 브랜드의 경우 이는 고객과의 관계를 확장 및 관리하고 "단순한 제품"을 넘어설 수 있는 기회를 나타냅니다.

그러나 진정으로 유용하고 매력적인 챗봇을 구축하는 것은 UX 관점에서 여전히 어려운 과제입니다. 인공 지능과 자연어 처리(NLP) 기술을 발전시키는 뛰어난 기계 학습이 있지만 우리는 여전히 만들 수 있는 도우미 유형이 다소 제한적이며 우리가 가진 것을 최대한 활용해야 합니다. Chatbots Magazine의 창립자인 Matt Schlicht는 챗봇 생태계의 현재 상태와 디자이너를 위한 기회를 요약한 매우 포괄적인 가이드를 만들었습니다.

최근에는 잠재 고객과 채팅을 하고 회사 및 제공 서비스를 소개하고 이메일 문의를 보내는 Facebook 메신저 봇인 Alty의 챗봇 프로젝트에 참여했습니다.

챗봇
(큰 버전 보기)

그 경험은 비교적 새롭고 도전적이었습니다. 표준 GUI(그래픽 사용자 인터페이스)와 달리 앱은 사용자 입력이 거의 없이 원활하게 작동하고 저장된 정보를 활용하여 새로운 가치를 제공하며 사용자의 요구를 예측해야 했습니다. 표준 패턴과 흐름은 대화형 디자인에서 실제로 작동하지 않거나 상당한 재조정이 필요합니다. Mockuuup 및 Botframe에서 제공하는 Messenger 플랫폼용 Bot UI 키트를 확인하십시오. 이 도구는 Alsadir Monk가 개발한 대화를 에뮬레이트하기 위한 간단한 프로토타이핑 도구로 이 플랫폼의 일반적인 흐름에 대한 더 나은 아이디어를 얻을 수 있습니다.

1. 툴킷 선택

이미 언급했듯이 가장 먼저 직면하게 될 문제는 응용 프로그램의 모양을 거의 제어할 수 없다는 것입니다. 타이포그래피, 레이아웃 또는 스타일에 너무 신경 쓸 필요가 없습니다. 음성 제어 챗봇을 구축하는 경우 시각적인 측면도 없습니다! 따라서 대부분의 표준 도구를 버리고 새롭고 유용한 도구로 도구 키트를 강화하십시오.

우리 프로젝트에서는 가장 단순한 도구인 Chatfuel을 선택했습니다. 이 도구는 끌어서 놓기 인터페이스가 있고 코딩이 거의 필요하지 않은 직관적인 무료 Facebook Manager 봇 빌더입니다.

그러나 고급 봇을 구축하려는 경우 다음 도구를 살펴보는 것이 좋습니다.

  • Twine 이 비선형 텍스트 편집기는 대화 상자에 대한 텍스트 스크립트와 메시지 시퀀스를 생성합니다.
  • Wit 이 필수 도구는 음성 및 텍스트 명령을 작업으로 변환하는 데 도움이 됩니다. 수십 개의 편리한 명령이 커뮤니티에서 생성되었으며 사용자 지정 명령을 추가할 수 있습니다.
  • Botkit Howdy의 Botkit은 첫 번째 Slack 챗봇을 구축하는 데 필요한 편리한 명령 세트와 기성 코드를 제공합니다.
  • Api.ai 최근 Google이 인수한 이 강력하고 포괄적인 플랫폼은 모든 유형의 대화형 UX 인터페이스를 구축하는 데 도움이 됩니다.
  • Botwiki 이 위키는 모든 일반적인 챗봇 질문에 답합니다.

표준 앱에서 사용하는 표준 컨트롤이나 스타일 중 일부는 대화형 디자인에 적용됩니다.

2. 사용자에게 시작하는 방법에 대한 힌트

대화형 디자인은 사용자가 앱과 상호 작용하는 방식을 완전히 바꿉니다. 일반적으로 사용자가 새 iOS 앱을 열면 메뉴, 로그인 또는 계정 생성을 위한 패널, 버튼 등과 같은 친숙한 요소가 표시됩니다. 스키마.

그러나 챗봇과의 첫 만남은 덜 일반적입니다. 사용자는 다음에 해야 할 일이나 앱과 상호 작용하는 방법에 대한 가정을 잃은 채 빈 화면을 응시할 것입니다. 그들은 두 가지 간단한 문제에 직면해 있습니다.

  • "나는 내가 무엇을 해야할지 모르겠어."
  • "이 일이 나를 위해 정확히 무엇을 할 수 있습니까?"

챗봇은 아직 대부분의 사용자에게 직관적이지 않은 것 같습니다. 따라서 첫 번째 작업은 다음에 일어날 일에 대해 사용자에게 프롬프트를 표시하는 것입니다. 다음과 같이 간단한 소개와 간단한 클릭 유도문안으로 시작하세요.

챗봇
(큰 버전 보기)

짧고 간단하게 유지하십시오. 사용자가 앱의 빠른 이점을 한 번 경험하고 그 결과를 즉시 즐길 수 있도록 초대합니다.

Alty의 봇의 경우 몇 가지 주요 이유로 대화에 버튼을 포함하기로 결정했습니다.

  • 이동 중에 입력하는 것은 일부 사용자에게는 번거로울 수 있으며 챗봇이 항상 오타를 감지할 만큼 충분히 똑똑하지는 않습니다(나중에 이에 대해 다루겠지만).
  • 버튼은 봇이 어떤 종류의 질문에 대답할 수 있고 어떤 작업을 수행할 수 있는지 사용자에게 힌트를 줄 수 있습니다.

3. 올바른 대화 흐름 만들기

로봇이 장애물이 아니라 마법사처럼 보이길 원하시나요?

챗봇을 디자인할 때 가장 어려운 부분 중 하나는 대화 흐름을 최대한 자연스럽고 효율적으로 만드는 것입니다. 그러나 인간의 상호 작용은 일반적으로 지저분하고 비선형적입니다. 다음은 앱 성능을 최적화하기 위한 몇 가지 팁입니다.

다양한 유형의 질문을 구별하도록 봇 교육

봇이 효율적으로 처리하고 답변할 수 있는 질문의 초기 범위를 만듭니다. 질문에 답변하는 방법에 대한 40개 이상의 하위 분류가 있는 qTypes라는 훌륭한 라이브러리를 사용할 수 있습니다. qType은 사용자가 기대하는 응답 유형을 나타내고 qSubType은 질문 형식을 나타냅니다.

  • CH . 대안 선택 질문에서 봇은 두 가지 대안(예: "이 셔츠는 빨간색인가요 초록색인가요?") 중에서 선택해야 합니다.
  • . 누가, 무엇을, 언제, 어디서, 왜로 시작하는 질문입니다.
  • YN . 예 또는 아니오 질문입니다(예: "개가 있습니까?").
  • TG . 태그 질문은 실제 질문이 아니라 대화를 계속 이어갈 수 있는 옵션입니다(예: "이 해변은 아름답죠?").

봇이 표준 질문 중 하나를 받으면 라이브러리의 데이터를 기반으로 더 정확한 응답을 생성할 수 있습니다.

챗봇

대부분의 사용자는 챗봇이 단지 예의 바르게 행동하는 경우에도 어쨌든 응답하는 경향이 있으므로 수사학적 질문을 하지 마십시오.

이제 봇이 질문을 이해할 수 있으므로 다음 과제는 그에 대한 대가로 적절한 명령을 렌더링하도록 앱을 가르치는 것입니다.

입력 데이터를 보다 효과적으로 검증

표준 GUI를 사용하면 입력된 데이터를 처리할 때 쉽게 세분화할 수 있습니다. 이 이메일 주소가 유효합니까? 이 사용자 이름을 사용할 수 있습니까? 이 전화번호가 유효합니까? 입력된 데이터를 처리하기 전에 쉽게 제한하고 수정할 수 있습니다.

그러나 대화형 디자인에서는 상황이 조금 더 복잡해집니다. 사용자는 원하는 대로 말하거나 입력할 수 있습니다. 따라서 질문을 구성하고 답변을 처리할 때 현명해야 합니다.

힌트를 제공합니다 . 개방형 질문은 일반적으로 더 많은 혼란을 일으키기 때문에 가능한 한 피하십시오. 그 대신에 기대하는 종류의 답변을 요청하십시오. 예를 들어:

어떤 사례 연구를 보고 싶습니까? 여행, 소셜 네트워킹, 디자인 및 개인 금융 앱을 위한 앱이 있습니다.

또는 구축 중인 플랫폼의 형식에 따라 정보를 표시할 수 있습니다(예: Facebook Messenger의 경우 목록:

챗봇
(큰 버전 보기)

또한 확인 합니다. 대답이 유효하면 모든 것이 올바른지 확인하기 위해 반복하고 다음 질문으로 넘어갑니다.

알았다. 여행 앱. 그리고 어떤 예산을 염두에 두고 계십니까?

또는 무엇이 잘못되었는지 제안 하십시오. 입력한 데이터가 유효하지 않다면 어떤 답변이 필요한지 다시 설명해주세요. 이상적으로는 이해할 수 없는 답변과 괜찮지만 받아들일 수 없는 답변을 구별하십시오.

챗봇
(큰 버전 보기)

사용자가 앱과 대화하고 있다는 사실을 잊지 마십시오. 그들은 같은 것을 설명하기 위해 다른 단어를 사용할 수 있습니다. 예를 들어 "Thu", "Thursday", "tomorrow" 또는 오타가 있는 단어입니다. 입력 확인을 요청하거나 챗봇을 위한 고급 메시지 시퀀스 생성에 집중할 수 있습니다.

영국 및 캐나다 철자를 미국 영어로 변환하고 일반적인 약어를 설명하고 4,000개 이상의 철자가 틀린 단어를 수정하는 라이브러리인 Normalizer를 통해 입력된 데이터를 실행하여 정제할 수 있습니다.

중요한 입력을 기다립니다. 어떤 경우에는 사용자가 없이는 진행할 수 없는 몇 가지 필수 정보를 입력해야 합니다. 표준 GUI에서 문제는 일반적으로 사용자가 작업을 완료할 때까지 모든 항목에 대한 액세스를 차단하는 팝업 모달 창으로 해결됩니다.

그러나 대화형 디자인에서는 이 문제를 약간 다른 방식으로 해결해야 합니다. 이러한 종류의 루프는 로봇에게 다소 짜증날 수 있으므로 필요한 정확한 작업과 왜 그렇게 중요한지 설명해야 합니다. 챗봇이 반복되지 않도록 이 목적을 위해 몇 가지 대화 스니펫을 준비하세요.

챗봇
(큰 버전 보기)

일반적으로 진행하려면 특정 정보가 중요한지 여부에 대해 두 번 생각하십시오. 가능하면 추측을 하거나 다음 단계에서 동일한 정보를 다시 요청하십시오.

또 다른 옵션은 사용자가 질문하고 답변할 때 선택할 수 있는 버튼과 미리 제안된 텍스트 를 사용하는 것입니다. 버튼은 사용자 입력의 전반적인 품질을 개선해야 하지만 참여 요소를 약간 감소시킬 수 있습니다. 따라서 진행을 위해 필수적인 데이터를 수신해야 할 때만 사용하는 것이 가장 좋습니다.

AI 기술이 발전함에 따라 봇이 특정 응답을 하도록 훈련하고 데이터베이스에 저장된 이전 상호 작용을 기반으로 사용자의 의도를 두 번째 추측하도록 가르치는 것이 더 쉬워질 수 있습니다. 그러나 오늘날 대부분의 챗봇에는 사용자에게 응답할 멋진 AI 두뇌가 없습니다. 따라서 더 나은 UX를 위해서는 이 작업을 직접 해결해야 합니다.

4. 현미경에 초점

디자이너는 챗봇을 개발할 때 카피라이터처럼 생각해야 합니다. 콘텐츠와 대화 상자는 제품의 스타일을 정의합니다. 최고의 앱은 일반적으로 재미있는 대화 방식을 특징으로 하는 앱입니다. 따라서 다음에 중점을 둡니다.

  • 실제로 사람과 대화하는 경우와 동일한 사용자 흐름을 따르십시오.
  • 봇은 복잡한 문법이나 언어 구조를 사용하여 너무 영리하게 들리지 않아야 합니다. 간단하고 간결하게 유지하십시오.
  • 대화의 상대방이 누구인지 알 수 없으므로 성별에 따른 대명사를 사용하지 마십시오.
  • 좀 더 인간적인 대화를 만들기 위해 약간 다른 미리 준비된 답장을 준비하세요.
  • 사용자가 길을 잃었다고 느낄 때 도움말 메시지와 제안을 추가합니다.
  • 봇이 멍청해 보이지 않도록 지원되지 않는 주제에 대해 재치 있는 답변을 작성하세요.

5. 점진적으로 기능 공개

표준 GUI는 일반적으로 화면에서 사용할 수 있는 모든 기능을 한 번에 표시합니다. 사용자는 아이콘 위로 마우스를 이동하고 버튼을 클릭하고 메뉴에 액세스하여 앱이 수행할 수 있는 작업을 확인할 수 있습니다.

그러나 챗봇과 상호 작용하는 것은 사용자가 허공에 대해 말하는 것처럼 보일 수 있습니다. 따라서 각 다음 단계에 힌트를 주고 익숙하지 않은 기능을 점차적으로 강조 표시합니다. 이것이 무엇을 의미하는지 알아보자.

사용자로부터 초기 명령을 받은 후 다음에 일어날 일과 로봇이 작업을 완료하기 위해 무엇을 할 것인지 설명하십시오. 다음 가능한 단계를 제안하거나 FAQ 페이지 또는 사용자 매뉴얼에 대한 링크를 제공합니다.

첫 번째 성공적인 상호 작용 후 추가 기능을 잠금 해제 하십시오. "트레이닝 모드"를 비활성화하고 추가 기능 및 고급 팁 제안을 시작합니다. 이러한 기능과 팁은 사용자의 기록과 이전에 입력한 데이터를 기반으로 합니다.

타코벨 챗봇으로 타코 주문하기
Taco Bell의 챗봇으로 타코 주문하기 (이미지: Taco Bell) (큰 버전 보기)

사용자에게 수행할 새로운 작업 에 대해 묻습니다. 예를 들어 로봇의 다른 멋진 기능을 사전에 제안하십시오.

이봐, 당신은 파티가 올거야! 큰 피자 5개 주문할까요?

예를 들어 대화의 민첩성은 Taco 봇의 핵심 강점 중 하나입니다. 이 회사는 Wit.ai를 사용하여 다양한 대화 시나리오에 힘을 실어주고 심지어 농담을 하기도 했습니다. 현재 Facebook의 M Virtual Assistant에도 사용되는 플랫폼의 자연어 처리 기술을 통해 봇은 다양한 주문 스타일을 렌더링할 수 있습니다. 예를 들어 “부리또 먹을래요?”, “부리또 주세요”, “나 취했어” 요청에 유쾌하게 대답하면 “Ok. 주문에 물 한 컵이 추가되었습니다.”라고 답장합니다. 또한 사용자는 "산스 치즈"와 같은 한 줄 주석을 입력할 수 있으며 봇은 해당 정보가 이전에 주문한 부리또를 참조한다는 것을 이해합니다.

그러나 챗봇이 대화를 시작하면 불쾌한 스패머처럼 보이고 싶지 않기 때문에 관련 제안을 제공하는지 확인하십시오.

챗봇 및 음성 인식

음성 명령은 Siri 및 Google Now와 함께 일이 되고 있지만 이러한 봇을 개발하려면 분명히 인적 및 물적 자원이 필요합니다. 음성 인식을 담당하는 가장 강력한 신경망조차도 현재로서는 훈련하기가 다소 어렵습니다. 가장 일반적인 문제는 작은 오류는 제거하기에 충분히 간단하지만, Andrew Gibiansky가 지적한 것처럼 더 큰 반복 오류는 곱셈으로 인해 더 커질 수 있다는 것입니다.

예를 들어 악센트가 있는 사용자가 Apple을 Eupple 로 발음하는 경우 네트워크는 이러한 방식으로 명령을 기억할 수 있습니다. 동음이의어는 음성 인식의 또 다른 주요 과제입니다. "꽃"과 "밀가루"와 같은 단어는 동일하게 들리므로 올바른 문맥을 이해하는 것이 어려울 수 있습니다.

따라서 간단한 챗봇을 구축하는 것이 목표라면 아키텍처와 고급 기계 학습 기술 스택에 막대한 투자를 할 준비가 되어 있지 않다면 음성 명령을 선택하는 것이 현재 최선의 선택이 아닐 수 있습니다.

최종 메모

챗봇은 보다 개인화된 고객 경험을 만들기 위한 훌륭한 도구가 될 수 있지만 대화형 디자인에는 여전히 특정 제한 사항이 있습니다. Mariya Yao가 지적했듯이 대화가 UX에 도움이 될 수도 있고 상처를 줄 수도 있는 분명한 경우가 있습니다.

비즈니스를 위한 챗봇을 구축하기 전에 그 목적과 사용자에게 제공할 수 있는 정확한 가치를 명확하게 정의해야 합니다. 봇에게 일기 예보를 전달하거나 회사의 서비스 범위를 소개하는 것과 같은 한 가지 일을 매우 잘 수행하도록 가르치기 전에 고급 기능을 추가로 실험하십시오. 이것이 사용자 피드백을 기반으로 April 봇을 개발할 때 우리가 배운 핵심 교훈입니다.