@messageflow/trentity
v0.0.4
Published
Train your Dialogflow with better entities in simple way
Downloads
6
Maintainers
Readme
One of the challenging tasks in Dialogflow is training your comprehensive list of entities that contains all the synonyms for each reference value. It is kind of tedious to input every possible synonym manually. This package can help generating entities in Dialogflow much easier by combining a list of reference values and their own synonyms plus an optional list of replacers which replace a word or even a phrase within each synonyms.
Table of contents
Pre-requisites
Setup
Install
# Install via NPM
$ npm install --save trentity
Usage
Node.js
// No default import
const {
generateEntitySync,
generateEntity,
revertEntitySync,
revertEntity,
} = require('trentity');
/**
* OR
* const { generateEntitySync, generateEntity } = require('trentity/generate-entity');
* const { revertEntitySync, revertEntity } = require('trentity/revert-entity');
*
*/
/** To generate entity list with replacers */
void async function main() {
const d = await generateEntity([
[
'Accessories for car',
[
'accessories for car',
'car accessory',
]
]
], {
accessories: [
'accessory',
'access',
'accesory',
'acessory',
],
car: [
'cars',
'vehicle',
'vehicles',
],
});
assert(d, "Accessories for car","accessories for car","accessory for car","access for car","accesory for car","acessory for car","car accessory","accessories for cars","accessories for vehicle","accessories for vehicles","cars accessory","vehicle accessory","vehicles accessory"); // OK
}();
/** To revert generated entity list */
void async function main() {
const d = await revertEntity('"Accessories for car","accessories for car","accessory for car","access for car","accesory for car","acessory for car","car accessory","accessories for cars","accessories for vehicle","accessories for vehicles","cars accessory","vehicle accessory","vehicles accessory"');
assert(d, [
[
"Accessories for car",
[
"accessories for car",
"accessory for car",
"access for car",
"accesory for car",
"acessory for car",
"car accessory",
"accessories for cars",
"accessories for vehicle",
"accessories for vehicles",
"cars accessory",
"vehicle accessory",
"vehicles accessory"
]
]
]); // OK
}();
Native ES modules or TypeScript
// No default import
import {
generateEntitySync,
generateEntity,
revertEntitySync,
revertEntity,
} from 'trentity';
/**
* OR
* import { generateEntitySync, generateEntity } from 'trentity/generate-entity';
* import { revertEntitySync, revertEntity } from 'trentity/revert-entity';
*
*/
/** To generate entity list with replacers */
void async function main() => {
const d = await generateEntity([
[
'Accessories for car',
[
'accessories for car',
'car accessory',
]
]
], {
accessories: [
'accessory',
'access',
'accesory',
'acessory',
],
car: [
'cars',
'vehicle',
'vehicles',
],
});
assert(d, "Accessories for car","accessories for car","accessory for car","access for car","accesory for car","acessory for car","car accessory","accessories for cars","accessories for vehicle","accessories for vehicles","cars accessory","vehicle accessory","vehicles accessory"); // OK
}();
/** To revert generated entity list */
void async function main() => {
const d = await revertEntity('"Accessories for car","accessories for car","accessory for car","access for car","accesory for car","acessory for car","car accessory","accessories for cars","accessories for vehicle","accessories for vehicles","cars accessory","vehicle accessory","vehicles accessory"');
assert(d, [
[
"Accessories for car",
[
"accessories for car",
"accessory for car",
"access for car",
"accesory for car",
"acessory for car",
"car accessory",
"accessories for cars",
"accessories for vehicle",
"accessories for vehicles",
"cars accessory",
"vehicle accessory",
"vehicles accessory"
]
]
]); // OK
}();
API Reference
generateEntity(list[, replacer])
- list <Array<[string, string[]]>> A list of reference values and synonyms.
- replacer <Object> Optional list of replacers to replace words or phrases in each synonyms.
- returns: <Promise<string>> Promise which resolves with a combination of
list
andreplacer
.
generateEntitySync(list[, replacer])
This methods works the same as generateEntity(list[, replacer])
except that this is the synchronous version.
revertEntity(entityList)
- entityList <string> A string consists of reference values and synonyms.
- returns: <Promise<<Array<[string, string[]]>>> Promise which resolves with a list of reference values and synonyms.
revertEntitySync(entityList)
This methods works the same as revertEntity(entityList)
except that this is the synchronous version.
License
MIT License © Rong Sen Ng