우리가 만든 봇이 항상 똑같은 방식으로 반응 한다면 빨리 지루해질 수 있습니다.
이러한 이유로 RiveScript를 사용하면 임의의 응담을 트리거에 쉽게 추가 할 수 있습니다!
Random Replies을 사용하는 방법은 아래와 같이 사용할 수 있습니다.
+ how are you - I'm great, how are you? - I'm good, you? - Good :) you? - Great! You? - I'm fine, thanks for asking!
테스트를 하게되면 우리의 봇은 "how are you"라는 트리거에 아래의 5가지 메시지를 랜덤으로 응답하게 됩니다.
또 다른 방법으로는 {random}태그를 사용하여 임의의 응답을 랜덤으로 받는 방법도 있습니다.
+ say something random - This {random}message|sentence{/random} has a random word.
이렇게 사용입력한 스크립트를 테스트하게 되면 다음과 같은 결과를 얻을 수 있습니다.
{random}과{/random}사이에 |로 문자열을 분리하면 분리된 문자열 내에서 랜덤으로 하나씩 선택해서 응답하게 됩니다.
A Note About Style
RiveScript 문서를 멋지고 깔끔하고 읽기 쉽도록 유지하려면 다음과 같은 지침의 가이드 라인을 제공합니다.
빈 줄을 사용하여 논리 그룹 코드를 분리하십시오.
예를 들어, 트리거와 그 응답은 함께 그룹화되어야 하며 공백 행은 다른 트리거 및 응답 사이를 구분합니다.
그렇게 하면 아래와 같이 구분되어질 것입니다.
! version = 2.0 + hello bot - Hello, human! + how are you - I'm great, how are you? - I'm good, you? - Good :) you? - Great! You? - I'm fine, thanks for asking!
Let's Talk About Weight
랜덤 응답은 확실히 유용하지만, 일부 응답은 다른 응답보다 빈도수를 조정하고 싶을 수도 있습니다.
응답 커멘드에서 {weight}태그를 사용하여 다른 응답에 비해 빈도수를 재정의 할 수 있습니다.
+ greetings - Hi there!{weight=20} - Hello!{weight=25} - Yos kyoco duckeb!
여기에서 각 응답에 가중치(weight)를 할당하고 하나의 횡성수설 한 응답 하나를 남겼습니다. "Hi there!" 은 46번의 응답 중에 20번 선택 됩니다. "Hello!"는 46번의 응답 중 25번 선택 될 것이고, "Yos kyoco duckeb!"는 46번 중 1번만 선택됩니다. 가중치 태그를 포함하지 않는 응답의 가중치는 1입니다. 이렇게 응답의 확률은 가중치를 합으로 나눈 값입니다. (20 + 25 + 1 = 46, 그래서 각각의 응답은 46의 확률 중에서 선택)
* 가중치는 0이 될 수 없으며 음수가 될 수 없습니다.
* {random}태그 안에는 가중치를 사용할 수 없습니다.
'프로그래밍 > 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 - Hello, Human! (0) | 2017.03.06 |
What is RiveScript? (0) | 2017.03.06 |