챗봇 만들기 — QnA Maker로 만드는 FAQ챗봇

Minkang Heo
Aug 24, 2017 · 5 min read

챗봇 만들기 — QnA Maker로 만드는 FAQ 챗봇

CC-BY-ND @Dennis Skley

Telegram 메신저의 키보드 기능을 활용해서 카카오톡 플러스 친구처럼 만들었던 간단한 FAQ 챗봇 기억나시나요?

메시지 입력 없이 이용할 수 있지만 정의된 키보드만으로 모두 처리하여 자주 묻는 질문에는 편리하지만 많은 문의 사항을 처리하기에는 한계가 있습니다.

가장 좋은 방법은 사용자가 입력한 문의 내용을 파악해서 적절한 답변을 제공하는 방법입니다.

그에 대한 솔루션으로 Microsoft의 QnA Maker는 아직 Preview이긴 하지만 원하는 기능을 테스트해보기엔 충분해 보입니다.

0. 준비사항

BotHub.Studio를 이용한 챗봇 제작이 처음이시라면 챗봇 시작하기 튜토리얼을 먼저 확인해주세요.

1. QnA Maker 둘러보기

QnA Maker는 API를 통해 Q&A를 처리할 수 있는 기능을 제공하고 있습니다. 아래 구성을 참조하시기 바랍니다.

출처: QnA Maker

문서나, URL을 통해서 질문과 답변 내용을 등록할 수 있고, 이 기본 데이터를 바탕으로 Indexing & Ranking 이 이루어집니다. 이를 통해 사용자의 질문에 가장 적절한 답변을 제공하게 됩니다.

Microsoft의 Bot Framework뿐만 아니라 다른 Bot Platform에서도 쉽게 이용할 수 있습니다. 덕분에 BotHub.Studio에서도 손쉽게 이용이 가능합니다

Microsoft계정으로 이용하실 수 있으며, 로그인 후 이름에서 Subscription keys 로 이동하시면 key를 확인하실 수 있습니다.

기본으로 등록된 Service를 통해 간단히 메뉴를 둘러보면,
직접 Q&A를 입력하는 항목도 존재하며, 사이트에 FAQ가 존재한다면 해당 URL을 입력하여 자동으로 입력하는 기능도 제공하고 있습니다.

예시를 위하여 카카오 사이트의 FAQ URL을 입력해 보았습니다.

Knowledge Base 메뉴에 보시면 자동으로 입력된 내용을 보실 수 있습니다. 몇몇 사이트를 테스트 해봤는데 모두 잘 가져왔습니다.

URL 외에 File을 불러오는 방법도 가능합니다.

Q&A내용을 모두 입력 하셨다면 꼭 Save and retrain 후 Publish를 해주셔야 반영됩니다.

2. QnA API 구현

qna.py

답변은 일치도에 따라 score가 포함되어 있습니다. 하지만 기본으로는 1개의 답변만 요청하게 되어 있습니다. 여러개의 답변을 받아 상황에 따라 유사 답변을 함께 받아 제공할 수 있습니다.

3. 챗봇 연결하기

챗봇의 큰 흐름은 다음과 같습니다.

사용자는 챗봇에 문의 내용 입력 -> QnA Maker API를 통해 등록된 질문 중 유사도가 높은 순서대로 답변을 제공 -> 답변 내용을 사용자에게 제공

사용자의 문의 내용을 바로 API로 요청하고 답변을 바로 전달해 주는 과정입니다.

bot.py

kbid 및 secret(Subscription-Key) QnA Maker의 My services에서 View Code를 보시면 확인 가능합니다.

이제 QnA Maker에 등록된 내용을 바탕으로 직접 챗봇에게 질문을 해보시고 잘 답변하는지 확인해 보세요.

4. 참고자료


본 아티클 관련 문의는 BotHub.Studio Community를 통해 지원받으실 수 있습니다. 챗봇 도입 및 제휴 문의는 bothub@bothub.sutdio로 연락해주세요.

BotHub.Studio (ko)

News, tutorials about BotHub.Studio chatbot hosting service

)

Minkang Heo

Written by

BotHub.Studio (ko)

News, tutorials about BotHub.Studio chatbot hosting service

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade