keyworder

0.1.0 • Public • Published

Keyworder - Intent prediction form PrgChatbot

Predict user intents with cool machine learning tool, Facebook FastText.

Preparing the model

  1. Install Facebook FastText
  2. Follow instructions

Using with Prg-Chatbot

Usage

const { Router } = require('prg-chatbot');
const keyworder = require('keyworder');
const path = require('path');
 
keyworder.setResolver({
    model: path.join(process.cwd(), 'models', 'model.bin')
});
 
const app = new Router();
 
app.use(keyworder('hello'), (req, res, postBack, next) => {
    res.text('Hello too!');
});
 

API

Functions

keyworder(tag, [threshold], [namespace])function

Create resolver middleware for PrgChatbot

setResolver(configuration, [namespace])
resolve(text, [threshold], [namespace])Promise.<{tag:string, score:number}>

Resolve single text

Typedefs

Configuration : Object

keyworder(tag, [threshold], [namespace]) ⇒ function

Create resolver middleware for PrgChatbot

Kind: global function

Param Type Description
tag string tag for matching
[threshold] number override success threshold
[namespace] string resolver namespace

Example

const keyworder = require('keyworder');
 
router.use(keyworder('hello-intent'), (req, res) => {
    res.text('Welcome too!');
});

setResolver(configuration, [namespace])

Kind: global function

Param Type Description
configuration Configuration the resolver configuration
[namespace] string set resolver for diferent namespace

Example

const keyworder = require('keyworder');
const path = require('path');
 
keyworder.setResolver({
    model: path.join(__dirname, 'model.bin')
});

resolve(text, [threshold], [namespace]) ⇒ Promise.<{tag:string, score:number}>

Resolve single text

Kind: global function

Param Type Description
text string query text
[threshold] number override the threshold
[namespace] string use other than default resolver

Configuration : Object

Kind: global typedef
Properties

Name Type Description
model string path to trained fast text model
threshold number prediction threshold (0.95 recommended)
cacheSize number keep this amount of results cached
filter function text preprocessor
logger function resolver logger function

Package Sidebar

Install

npm i keyworder

Weekly Downloads

1

Version

0.1.0

License

MIT

Last publish

Collaborators

  • vaclav.obornik
  • davidmenger
  • pragonauts