02 Aug

chatscript 예제

그러나 인수 {s}를 사용하여 JS 함수를 호출하려고합니다. 예를 들어, 함수 testPrint가 …… 명사 및 대명사와 동일 – 그것은 그것의 명목 단수 형태를 추가 하기에 충분, 다음 다른 모든 단어 변형 CS 후드 에서 수행 됩니다 일치를 찾는. 패턴에서 패턴의 일부 위치에 있는 단어 집합을 사용하여 일치하는 구의 변형을 확장할 수도 있습니다. 예제를 확장하면 다음과 같은 것을 추가할 수 있습니다: Fibonacci 시퀀스는 ChatScript의 예제 코드로 어떻게 간주합니까? 예를 들어 동사를 “be”로 지정하면 패턴에 동사를 추가하면 이 단어의 일치 항목도 모든 형식에 포함됩니다. 그러나 보조 동사 (will, have, do, …)로 입력하려면 CS가 별도의 단어의 형태에만 신경 을 써야합니다. 이를 위해 다른 패턴 기능(곱슬 대괄호에 있는 선택적 단어: 예를 들어 데이터베이스의 레코드를 기반으로 ChatScript 대화 상자 규칙을 자동으로 업데이트할 수 있음)을 사용하는 것이 좋습니다. RAWDATA/HARRY의 simplecontrol.top 주제를 FOOD 폴더에 복사합니다(봇과 상호 작용하는 데 필요한 스크립트입니다) 선택적으로 각 봇 메시지 전에 표시하려는 문자열에 $botprompt 변수의 9 번째 줄 값에서 simplecontrol.top에서 변경할 수 있습니다. 그러나 이미 HARRY로 설정되어 있으므로 남길 수 있습니다 :이 부분은 행동을 전혀 변경하지 않습니다.

내 예에서 다음 하나의 프롬프트 $botprompt = ^”fastfood> “: 밑줄 _는 일치 변수입니다 (모든 단어에 대해 와일드카드 _* 사용또는 두 단어에 대해 _*2를 사용하여 기억하려는 단어 수를 지정할 수 있습니다). 결과적으로 “I want” 후 입력의 단어는 단기 메모리에 저장됩니다. 이 값에 액세스하려면 _0이 두 번째 줄에 사용되므로 패턴에 필요에 따라 많은 일치 변수가 포함될 수 있지만(실제로는 최대 20개이지만 실제로는 충분함) 밑줄과 내부의 일치 순서 를 사용하여 값을 가져오는 동안 패턴. 이 예제에서는 $order 사용자 변수이며 _0 안에 있는 것을 저장합니다. 이 프로젝트에서는 몇 가지 다른 테마로 챗봇을 구현해야 하는 과제에 직면했습니다. 그들 각각은 동일한 입력 메시지를 가질 수 있지만, 당신이 얘기하는 테마에 따라 다른 입력으로 처리해야합니다. 이 문제를 해결하기 위해 두 가지 방법을 발견했습니다. 첫 번째 옵션은 메시지 계층에 있습니다. 별도의 테마와 관련된 추가 접두사를 지정하고 이 테마의 컨텍스트에서 처리해야 하는 각 메시지에 추가할 수 있습니다.

예를 들어, 우리는 채식 패스트 푸드, 그리고 일반적인 하나. 이 경우 “어떤 샐러드가 있습니까?” 라는 질문에는 다른 대답이 있어야 합니다. 이 방법을 사용하면 CS에서 구문 처리 및 학습 정보를 처리하는 논리를 구현하는 것이 쉽지만 웹에서 사용하려면 백 엔드와의 연결을 설정해야 합니다. 안타깝게도 CS는 http를 통해 요청을 보낼 수 있는 가능성을 제공하지 않습니다. 그래도 이 목적을 위해 tcp 소켓을 사용할 수 있습니다. NodeJS와 연결을 설정하려면 `net` 패키지가 필요하며 CS로 보내기 전에 특별한 종류의 문자열을 형성해야 합니다. 우선 메시지에 접두사와 후두를 추가해야 합니다. 접두사는 컨트롤 스크립트에 사용되는 출력 매크로의 사용자 이름과 이름사이에 특수 분할 문자로 구성됩니다.