-
[Dialogflow] 구글 다이어로그 C++ 학습보조 웹 어플리케이션 만들기Chatbot/Dialogflow 2020. 1. 22. 13:08
[Dialogflow] 구글 다이어로그 C++ 학습보조 웹 어플리케이션 만들기
1월~2월 한달 간 구글의 Dialogflow를 이용하여 C++학습보조 웹 어플리케이션을 만들어보겠습니다.
챗봇은 사용자와 대화를 주고 받으며, 사용자가 의도한 요청대로 결과를 전달해주는 역할을 합니다.
사용자와 대화를 하는 과정중에 가장 어려운 것은 자연어 처리입니다. 하지만, 이와 같은 자연어 처리는
구글의 Dialogflow에서 해결해 줄 수 있습니다.
구글의 Dialogflow는 구글의 인공지능 플랫폼입니다. UI가 사용자에 맞게 편리하게 구성되어 있으므로
코딩을 전혀 모르는 사용자 또한 손쉽게 챗봇을 만들 수 있습니다.
챗봇을 만들기에 앞서, 용어를 두 가지 이해하고 넘어가야합니다.
Intent
Entity
Intent(의도)
챗봇을 생성한 후 Intent를 선택하면 다음과 같이 2가지 항목이 화면에 뜨게 됩니다.
2가지 항목은 기본 인텐트로 챗봇을 생성한 후 자동으로 생성되게 됩니다.
Default Fallback Intent
Default Welcome Intent
Default Fallback Intent는 사용자가 입력한 문장이 챗봇이 학습되어 있지 않거나, 모르는 경우 발생하는
응답입니다. 주로, 잘모르겠어요, 다시 말씀해주시겠어요?와 같은 문장을 리턴합니다.
Default Welcom Intent는 사용자와 챗봇이 대화를 처음 시작하거나, 인사와 같은 문장을 입력 시 발생하는
응답입니다. 주로, 안녕하세요, 안녕!과 같은 문장을 리턴합니다.
우리가 만들 챗봇은 C++학습보조 챗봇을 만들 것이기 때문에 Create Intent버튼을 클릭하여 새로운 Intent를 생성할 준비를 합니다.
Create Intent를 클릭하게 되면 다음과 같은 6가지 항목이 화면에 나옵니다.
처음으로 제일 상단에 있는 빈 칸에 인텐트 이름을 작성해주세요.
다음으로 6가지의 항목을 살펴보면
Context, Event, Training phrase, Action and Parameter, Response, fulfillment 6가지 항목으로 구성되어 있습니다.
Context
-
Event
-
Training phrase
-사용자가 말할 가능성이 있는 문구, 몇 개의 예시를 입력하였을때, Dialogflow에서 학습을 통해 이와 유사한 문장을 찾아 일치할 수 있습니다.
- 위와 같이 5개의 문장을 입력하면, Dialogflow에서 5개의 문장을 학습하여 해당 문장과 일치하지 않아도 해당 문장에 대한 응답을 사용자에게 리턴합니다.
Action and Parameter
-
Response
-Training phrases에서 학습된 문구를 입력 시 해당 문장과 비슷하거나, 일차하는 문장이 사용자로 부터 입력되었을 경우 Responses에 저장된 응답들 중 한개를 사용자에게 리턴합니다.
-현재 Intent의 경우 목록을 알기 위한 Intent이기 때문에 응답을 하나로 정의하였습니다.
fulfillment
-