botfuel-module-collect-tool
v0.1.2
Published
Collect all the transformation steps for each input in a given CSV input file and generate an JSON output file containing the results
Downloads
1
Maintainers
Readme
Botfuel module collect tool
This module allow to simulate user inputs using a CSV input file that will be processed and generate an output file with the different input transformation steps.
Install
npm i -D botfuel-module-collect-tool
How to use
Configuration
To make it work your configuration file must:
- include the module
- use the adapter provided in the module
- use the nlu module provided in the module
- provide the path of the CSV input file
// file collect-config.js
module.exports = {
adapter: {
name: 'collect',
files: {
input: './input.csv',
output: './output.json', // optional
},
},
nlu: {
name: 'botfuel-collect',
},
modules: ['botfuel-module-collect-tool'],
logger: 'info',
};
Run
The module come with it's own start command botfuel-collect-run
,
to use it you can create a new script in your package.json like the following:
// file package.json
{
...
"scripts": {
...
"start:collect": "BOTFUEL_APP_TOKEN=<the BOTFUEL_APP_TOKEN> BOTFUEL_APP_ID=<the BOTFUEL_APP_ID> BOTFUEL_APP_KEY=<the BOTFUEL_APP_KEY> botfuel-collect-run collect-config",
...
},
...
}
and then run the bot using the new command, in this case:
npm run start:collect
Or without creating the new script you can run directly:
BOTFUEL_APP_TOKEN=<the BOTFUEL_APP_TOKEN> BOTFUEL_APP_ID=<the BOTFUEL_APP_ID> BOTFUEL_APP_KEY=<the BOTFUEL_APP_KEY> node_modules/.bin/botfuel-collect-run collect-config
Format
Input file format
The input .csv
file must have the following format:
| raw_sentence | correct_intent | |--------------|----------------| | Bonjour | greetings | | Hello | greetings |
The out .json
file will have the following format:
[
...
{
"raw_sentence": "Utterance",
"correct_intent": "Correct intent label",
"sentence_after_in_middleware": "Utterance after in middlewares",
"sentence_after_spellchecking": "Utterance after spellchecking",
"classification_results": <CLASSIFICATION_RESULTS_LIST>,
"sentence_after_out_middleware": "Utterance after out middlewares",
"bot_messages": <BOT_MESSAGES_LIST>
},
...
]