프로그래밍/RiveScript

[Tutorial] FIRST STEPS - Hello, Human!

프리월드 2017. 3. 6. 15:23

환경설정은 각각의 환경에 맞춰서 해줘야 되지만 목적은 기본적은 Tutorial을 실행하면서 사용방법을 익히는게 목적이므로 아래 링크에서 온라인으로 테스트가 가능합니다.

온라인 테스트 : https://play.rivescript.com/

해당 링크로 접속하면 기본적인 스크립트가 포함된 창이 생성되지만 아래와 같이 나머지 스크립트는 제거해 줍니다.

! version = 2.0

+ hello bot
- Hello, human!

상단에  Run버튼을 클릭해서 왼쪽 하단에 hello bot이라고 입력하면 Hello, human!이라는 응답을 받을 수 있습니다.


The Code, Explained

RiveScript는 한줄씩 입력하는 라인 기반의 스크립트 언어고 각 라인의 시작은 각각의 명령 심볼(!, + , -)을 통해서 시작합니다.

! version = 2.0를 해석하자면 버전 2.0의 RiveScript 사양을 따른다라는 의미 입니다. 이렇게 함으로써 어떤 버전을 기준으로 스크립트를 작성했는지 알 수 있고 향후 새로운 버전이나 하위 버전에 대응 할 수 있는 장점이 있습니다.

+커멘드는 트리거[1]를 정의하는 방법입니다. 여기서 트리거란 정해진 조건에 만족할 때 자동으로 수행하는 동작을 말하며 사용자의 메시지를 일치시키는데 사용하는 텍스트 행입니다. "hello bot" 이라는 트리거를 정의했고 이에 만족하는 텍스트가 입력 되었을 경우에 동작하도록 합니다.

* RiveScript는 대소문자 구분없이 문자가 일치했는지 만을 판단합니다. "Hello bot", "hello Bot" 모두 동일한 트리거로 판단.

-커멘드는 트리거에 대한 응당을 정의하는 방법입니다. 여기에서 "hell bot"이라는 트리거와 일치하면 "Hello human"이라고 말함으로써 사용자에게 응답하게 됩니다.


한글로 변환

우리의 목적은 한국어 버전의 챗봇으로 영어로 정의한 트리거와 응답을 한국어로 바꿔보겠습니다. + hello bot, - Hello human을 + 안녕 봇, - 반가워 인간 으로 바꿔보겠습니다. 다시 Run 버튼을 눌러주면 아래와 같은 오류가 발생합니다.


한글은 UTF-8 모드로 설정해줘야 정상적으로 동작하고 아래의 UTF-8 Mode 버튼을 클릭해서 다시 Run을 하면 정상적으로 동작합니다. 테스를 하게 되면 정상적으로 출력되는 것을 확인 할 수 있습니다.



[1] 트리거(trigger) : http://terms.naver.com/entry.nhn?docId=860900&cid=42346&categoryId=42346


'프로그래밍 > RiveScript' 카테고리의 다른 글

[Tutorial] TRIGGERS  (0) 2017.03.07
[Tutorial] The Begin File  (0) 2017.03.07
[Tutorial] FIRST STEPS - Line Breaking  (0) 2017.03.06
[Tutorial] FIRST STEPS - Random Replies  (0) 2017.03.06
What is RiveScript?  (0) 2017.03.06