Skip to content
Rob Ellis edited this page Jan 31, 2016 · 15 revisions

IntroductionTriggersRepliesConversationsTopicsPlugins and FunctionsKnowledgeUnder the Hood


Introduction

What is SuperScript?

SuperScript is a dialog system + bot engine for creating human-like conversation chat bots. It exposes an expressive script for crafting dialogue and features text-expansion using WordNet and information retrieval and extraction using ConceptNet.

What comes in the box

  • Dialog engine
  • Multi-user platform for easy integration with group chat systems
  • Message pipeline with POS tagging, sentence analysis and question tagging
  • Extensible plugin architecture
  • A built in graph database using LevelDB and each user has their own SubLevelDB.
  • Works with ConceptNet, a general purpose database for knowledge extraction.
  • WordNet, a database for word and concept expansion.

Where can I use this?

SuperScript is platform agnostic. There are example clients for Slack and Telnet and has been tested on Twillio, IRC, Slack, WebRTC, SocketIO, Telegram and TCP.

How it works

The message pipeline contains many steps, and varies from other implementations. When input comes into the system we convert the input into a message object. The message object contains multiple permutations of the original object and has been analyzed for parts of speech and question classification. The message is first handled by the reasoning system, before being sent to the dialog engine for processing.

Glossary

  • Topic: the main entry point into your application. All your conversations start within a topic depending on what exactly was said the first topic could vary. SuperScript will continue to search topics until it finds a matching gambit, then replies. A topic includes one or more gambits, and each gambit includes at least one reply.
  • Gambit: a set of rules that tells the bot how to reply to a specific user action. In SuperScript, the gambit includes two parts: the input (the basis of the trigger that we match on) and one or more replies that the bot offers, either randomly or under specific conditions.
  • Trigger: a rule that analyzes the user input and tries to match specific conditions.
  • Input: the message sent by the user to the bot.
  • Reply: a specific reply given by the bot under certain conditions, and is part of a gambit. A reply can also have a series of gambits attached to them thus creating a thread of conversation.

Installing

A detailed walkthrough can be find here: Installing


Continue to Triggers

Clone this wiki locally