Google Dialogflow로 챗봇 만들기 — basic (1) 에이전트 만들기

정민수
4 min readAug 29, 2020

--

Google Dialogflow로 챗봇 만들기 — basic (1) 에이전트 만들기, 2020.08.29.

Google Dialogflow는 Google에서 공개한 오픈 챗봇 빌더입니다. 구글 계정이 있다면 무료로 사용할 수 있으며, 기업용 솔루션은 별도로 제공하고 있습니다. 제가 Google Dialogflow를 이용하는 이유는, (1) 한글에서의 높은 정확도, (2) Google Assistant와 결합, (3) 확장성입니다.

Dialogflow는 대기업의 제품답게 여러 언어에서 좋은 성능을 보인다는 평이 있습니다. 따라서 충분한 챗봇 빌딩 시에 충분한 training phrase만 있다면 사용하는 데 불편함이 없습니다. 또한, Google Assistant와의 결합으로 스마트 기기에서 STT(Speech-To-Text)와 TTS(Text-To-Speech)를 이용할 수 있습니다. 아이폰이나 애플 제품에서도, 앱스토어에서 Google Assistant를 다운 받아 Dialogflow를 실행할 수 있습니다. 그리고 개발자 도구를 이용하면, 챗봇의 규칙을 추가하거나, 원하는 부분에 딥러닝 모델을 적용해서 사용할 수 도 있습니다. 가장 좋은 부분이라고 생각하며, 개인적으로 Generation 모델이나 Ranking 모델을 이용해서 챗봇의 기능 일부를 딥러닝 모델로 대체하기도 했습니다.

Dialogflow의 작동 방식은 사용자의 입력에 대한 의도를 파악하여 해당 대답을 리턴하는 방식을 기본으로 합니다. 여기서 사용자의 의도를 파악하는 부분을 에이전트라고 합니다. 에이전트는 규칙기반 방식과 학습기반 방식을 모두 사용하기 때문에 높은 정확도를 낸다고 소개되어 있습니다. Dialogflow의 기본적인 내용은 Google Cloud의 문서를 참고하시면 됩니다.

그럼 더 자세한 내용은 직접 만들어 보면서 살펴보도록 하겠습니다.

Dialogflow 콘솔로 이동

Dialogflow 첫 화면

Dialogflow 콘솔로 이동하면, 위와 같이 첫 화면이 뜹니다. 서비스 약관에 따른 내용이므로 확인하시고 체크박스에 체크한 후, ACCEPT를 누릅니다.

ACCEPT를 누른 다음, 우측 하단에 CREATE AGENT를 눌러서 에이전트를 생성하도록 하겠습니다.

다음, 빨간 네모박스에 해당하는 부분을 수정합니다. 먼저, 에이전트 이름을 입력합니다. 저는 basic-chatbot이라고 하겠습니다. 그리고 DEFAULT LANGUAGE는 챗봇의 언어를 설정하는 부분입니다. 사진과 같이 “Korean (South Korea) — ko”를 선택합니다. 다 되었으면 우측 상단 CREATE 버튼을 눌러 에이전트를 생성합니다.

에이전트를 생성하면 위와 같이 Dialogflow 콘솔 화면이 생겼습니다. 화면 왼쪽은 해당 기능들로 이동할 수 있는 메뉴이고, 가장 오른쪽은 챗봇을 테스트할 수 있는 부분입니다.

에이전트를 구성하는 요소는 화면 왼쪽을 보면 알 수 있습니다. 가장 중요한 것이 Intents입니다. 따라서, Dialogflow 콘솔의 첫 화면도 에이전트의 intents화면입니다. Intents는 말 그대로 사용자의 발화의도입니다. 사용자의 입력에 대한 의도를 미리 정의하면, 그 의도를 분류, 파악해서 챗봇이 답변을 출력하는 구조입니다.

다음에서 intents와 entity의 정의와 활용을 살펴보겠습니다.

정민수, omicro03@gmail.com

--

--

정민수
정민수

No responses yet