본문 바로가기
etc/프로그래밍

Dialogflow for chatbot

by 칸타렌서 2019. 4. 3.

1. 사이트에 로그인하기

https://console.dialogflow.com/

사이트 콘솔에 들어가면 제일 먼저 뜨는 화면이다. 도움말을 볼 수 있지만 영어로 되어 있기 때문에 그리 쑥쑥 읽히지는 않는다. 그래도 Dialogflow가 한국어 자연어 처리를 지원하기 때문에 무척 유용한 툴이 될 것 같다. 

 

2. Intents (의도)

새로운 Agent를 만들고 나면 바로 볼 수 있는 화면이다. Intents란 뜻 그대로 의도라는 것인데, 덥다 = 후끈하다 = 땀난다. = 시원하면 좋겠다 등의 언어가 에어콘을 틀어라, 온도를 내려라는 말과 같다는 것을 인공지능에게 가르쳐 주는 메뉴이다. 특히 처음 만드는 인공지능 챗봇은 대부분 대화에서 사용자의 의도를 파악하기 어려울 것이기 때문에 "당신의 의도를 파악할 수 없습니다."라는 대사를 많이 하게 될 것이다. 

 

3. Training phrases

이건 사용자의 의도를 연습 시켜주는 메뉴이다. 사용자가 챗봇에게 유재석 흥해라, 방탄은 최고야라는 키워드가 담긴 입력을 하게 되면 챗봇은 아, 이 사람이 연예인 이야기 하려고 그러는구나 하면서 의도를 파악하게 되는 것이다. 구문히 학습 되었기 때문에 아이유 너무 좋아 대신에 김연아 너무 좋아라고 입력해도 챗 봇은 사용자가 연예인 이야기를 하려는 줄 알아차린다. 

 

4. Action and parameters

연예인 이야기를 하려면 대상 연예인이 꼭 있어야 된다. 그러므로 Action and parameters는 연예인의 이름을 입력 받도록 되묻는 역할을 하게 한다. 우리가 불분명한 연예인 이름을 넣어서 칭찬하면 챗봇이 어떤 연예인 이야기를 하시는 건지 물어보고 사용자의 입력을 기다리는 것이다. 

 

5. Responses

사용자가 입력하고 나면 그 입력 값을 가져와서 대답에 사용해 주는 메뉴이다. $star_name이란 스타들의 이름을 저장 해 놓은 엔티티 집합을 말하는 데 거기에 입력 된 값과 사용자의 입력 값이 일치 되는 것이 있어야. 챗봇이 어떤 연예인인지 알아차린다. 

 

6. Entities

엔티티는 명사들의 집합을 말한다고 보면 된다. 일종의 검색어 같은 것이다. 이 엔티티가 많아질수록 챗봇이 아는 것이 늘어난다. 

댓글