안녕하세요 오늘은 dialogflow 이용해서 챗봇을 만드는 방법에 대해 알려드리겠습니다.
dialogflow는 자연 언어 대화를 기반으로 한 google 에서 제공해주는 도구입니다.
특징
dialogflow는 수년간 지식 및 자연어 이해를 통해 학습되어 사용자의 질문에 대한 응답을 분석하고 응답하고
어려운 질문에는 학습시켜 그에 해당하는 답을 할 수 있게 합니다. 그리고 챗봇 자체에서 멀티 플랫폼 지원을
하고 있어 쉽게 연동시켜 사용할 수 있습니다.
스페인어, 프랑스어, 한국어 등 포함한 14개 이상의 언어가 지원하고 있습니다.
눈으로 보면서 따라하기
로그인하신 후 Go to Console(빨간 줄) 들어가시면 dialogflow 사용하실 수 있습니다.
dialogflow라는 도구는 처음에 Create new agent를 클릭하셔서 새로운 agent를 만들어야 합니다.
test라는 이름으로 Agent를 만들었습니다.
언어 설정, 시간 설정을 할 수 있습니다. 하지만 시간이 한국시간이 없어 Tokyo로 했습니다.
이제부터 dialogflow를 시작할 수 있습니다.
이제 intents를 만들어야 합니다.
intents는 간단하게 설명드리자면 질문-응답을 설정한다고 이해하시면 됩니다.
처음 intents클릭 시 기본적으로 Default Fallback intent, Default Welcome intent가 생성되어 있습니다.
Default Fallback intent : 알아들을 수 없는 질문에 대한 응답을 설정해주는 intents입니다.
Default Welcome intent : 인사말 관련된 응답이 설정되어 있습니다.
주제: 호텔 방 예약하는 대화를 예시로 만들어 보겠습니다.
1. intents 이름(reservation)을 정해줍니다.
2. Training phrases
여기에 사용자가 질문할 것 같은 예상 질문들을 등록합니다.
질문 등록 후 save
*응답을 만들 때 Entities를 사용하기 때문에 Entities를 만들겠습니다.
3. Entities 만들기
이름만 정해주고 save
Create Entity -> 저는 이름을 rootinformation으로 해서 만들었습니다.
4. 다시 intents로 들어와서 방 종류를 roominfomation에 저장하는 거라고 이해하시면 됩니다.
Entities로 저장하고 싶은 단어를 드래그 후 방금 만들었던 entities이름 검색하면 나옵니다.
질문: 디럭스 -> roominformation = 디럭스
슈페리어 -> roominformation = 슈페리어
이런 식으로 저장됩니다.
roominformation이 하나의 변수라고 생각하시면 됩니다.
5. 응답 만들기
Responses에 사진과 같이 응답을 만들면 사용자가 어떤 방을 선택하냐에 따라 해당 방 이름을 알려줍니다.
6. 테스트
저장 후 오른쪽 보시면 Try it now라는 곳에 intents에서 질문으로 등록한 질문을 하면 위 사진과 같이
디럭스 -> roominformation = 디럭스
슈페리어 -> roominformation = 슈페리어
변수가 들어가서 응답을 해줍니다.
Entities 변수를 활용해 데이터베이스에 있는 정보를 가져와 응답할 수도 있습니다.
차차 알아가 보겠습니다.