Welcome to BINS - Bot Input Normalization Service!
  • FAQ
  • Sign In/Up
  • Pattern Editor
  • Service Access
Login Checking ...
Qid: _qid Log out
 
  • What is Bot Input Normalization Service (BINS)?
  • Who needs BINS?
  • What problems does it solve?
  • How does BINS work? (from a client's perspective)
  • How does BINS work?(a slightly technical perspective)
  • Is it free?

What is BINS?

BINS is a web service, intended as a filtering service to pre-process the text input from Chatbot/Robot users.

It has a proprietary Pattern Matching and Substitution Engine that performs the heavy lifting of sophisticated pattern matching and substitution - it works just like a RegEx engine, only more powerful and much easier to program.

It offers a Web API for programmatic access, as well as a web User Interface for registered clients to create/manage their own patterns.

Who needs BINS?

Usage Scenario:

	A developer is making a chatbot server. After training, the NLU engine works great in parsing user input.

	Once in a while, particular user expressions are encountered that the NLU engine has difficulty interpreting.

	He has the option of tweaking the NLU engine - which is ongoing and necessary, or sometimes he may prefer the
	alternative: preprocessing user input before feeding to the chatbot, to convert those pecular expressions to
	a more NLU readable form.

	BINS is a light-weight and easy-to-use web service designed exactly for this purpose.

Why or when would a developer prefer to use a preprocessor, rather than tweaking the NLU engine directly?

It turns out, there are a number of situations where it is a more convenient alternative.

There may be issues that are temporary, in which case he wants the NLU engine stay intact and yet be able accommodate the new expressions.

Or there may be something with not all but only a small fraction of the users.

Or there may be a special issue that is in conflict with existing training data, which means changing the NLU engine will negatively impact other already working cases.

A developer can utilize the BINS preprocessor exactly like a professional photographer putting a filter lens in front of his high-end photo camera. BINS will help the AI engine to understand a much big variety of human expressions -- especially those that are exceptions to the (syntatic and/or semantic) rules: there are always many different ways for humans to say the same thing, and BINS can help your AI to recognize them all.

What problem does it solve? with examples.

The NLU technology a chatbot uses is NEVER perfect - by off-loading some of the work to a pre-processor like BINS, a chatbot developer can seamlessly integrate the strength of both. BINS as a text pre-processor is light-weight, flexible, yet powerful.

An NLU engine Specifically, it can perform the following actions

  • There are always common sense user input texts that it can not parse correctly: we call these "corner cases".
  • Synonym conversion
  • including dates. dates are in various format, NLU unit may not deal with each onemptied

    Acronym/emoji expansion

    Howdy => How are you
    Morning => How are you

  • Context aware differentiation -
  • The same word may mean different things in different context. Context can be: user identity, application specific situation, etc.

How does BINS work internally?

BINS works like an RegEx engine - except that it is much more powerful and much easier to use.

At its core is a proprietary Pattern Matching and Substibution Engine. It matches user input text against a set of client (e.g. a chatbot developer) specified patterns, and perform required actions (by client, e.g. a chatbot developer) when a match is discovered.

The client specified patterns are expressed in our proprietary Natural Expression pattern description language, which is intuitive, yet powerful and expressive. It does support RegEx as a subset.

The core engine and the pattern data resides in the cloud. A client (e.g. a chatbot developer) manages the pattern data through a web page, i.e. the BINS Pattern Editor.

A chatbot end user input is processed through a Web Service API.

How much work is involved if I try to use BINS?

1. Register an account & log in on the Sin In/Up page.

2. Set up/edit patterns. Here is a tutorial.

3. Manually verify or test how the patterns work - for this you need to stay logged in, and the BINS server will use a cookie to identify you.

4. Set up programmatic access - for this you need to use your QID (query id), which is generated when you sign up, and it serves as your service access password. You can easily regenerate it whenever necessary.

BINS usage is free for developers, within a daily quota of access limit (10K daily queries for now).

If you use BINS in real chatbot production deployment, a reasonable utility fee will be assessed, through mutual agreement (i.e. it'll be negotiable, not fixed yet).