front-end of conversational interface
commit
dea6a52e3c
@ -0,0 +1,2 @@
|
|||||||
|
assistant_id: proj_9X1nGB88Kx6
|
||||||
|
skills: []
|
@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"id" : "proj_9X1nGB88Kx6",
|
||||||
|
"name" : "XPUB",
|
||||||
|
"intents" : [ {
|
||||||
|
"id" : "jocavdh:answer_yes",
|
||||||
|
"type" : "registry",
|
||||||
|
"version" : "0.6.0",
|
||||||
|
"language" : "en",
|
||||||
|
"slots" : [ {
|
||||||
|
"name" : "user_choice",
|
||||||
|
"id" : "slot_imported_oeLMta25N",
|
||||||
|
"entityId" : "entity_4noq4GNymOe",
|
||||||
|
"missingQuestion" : "",
|
||||||
|
"required" : false
|
||||||
|
} ],
|
||||||
|
"name" : "answer_yes",
|
||||||
|
"enabledByDefault" : false
|
||||||
|
}, {
|
||||||
|
"id" : "jocavdh:ask",
|
||||||
|
"type" : "registry",
|
||||||
|
"version" : "0.5.0",
|
||||||
|
"language" : "en",
|
||||||
|
"slots" : [ ],
|
||||||
|
"name" : "ask",
|
||||||
|
"enabledByDefault" : true
|
||||||
|
} ],
|
||||||
|
"createdAt" : "2019-03-29T19:35:28.294Z",
|
||||||
|
"language" : "en",
|
||||||
|
"version" : {
|
||||||
|
"nluModel" : "0.19.0"
|
||||||
|
},
|
||||||
|
"platform" : {
|
||||||
|
"type" : "raspberrypi"
|
||||||
|
},
|
||||||
|
"asr" : {
|
||||||
|
"type" : "snips"
|
||||||
|
},
|
||||||
|
"analyticsEnabled" : true,
|
||||||
|
"heartbeatEnabled" : true,
|
||||||
|
"hotword" : "hey_snips"
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,159 @@
|
|||||||
|
{
|
||||||
|
"entityNameToFilename": {
|
||||||
|
"choice": "e_0.snips"
|
||||||
|
},
|
||||||
|
"intentNameToDisambigs": {
|
||||||
|
"jocavdh:answer_yes": {
|
||||||
|
"start": "`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`START",
|
||||||
|
"end": "`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`END"
|
||||||
|
},
|
||||||
|
"724cf256-45e2-4ab7-a741-5e7ca82a9756": {
|
||||||
|
"start": "`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`START",
|
||||||
|
"end": "`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`END"
|
||||||
|
},
|
||||||
|
"jocavdh:ask": {
|
||||||
|
"start": "`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`START",
|
||||||
|
"end": "`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`END"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"injectionsEngine": {
|
||||||
|
"version": 2
|
||||||
|
},
|
||||||
|
"language": "en",
|
||||||
|
"decoderConfig": {
|
||||||
|
"useFinalProbs": true,
|
||||||
|
"latticeBeamSize": 4.0,
|
||||||
|
"mbrConfig": {
|
||||||
|
"confidenceAdditionnalExponent": 1.0,
|
||||||
|
"unkProba": 0.5,
|
||||||
|
"unkThreshold": 0.3
|
||||||
|
},
|
||||||
|
"maxActive": 2500,
|
||||||
|
"minActive": 200,
|
||||||
|
"acousticScale": 0.83,
|
||||||
|
"beamSize": 12.0
|
||||||
|
},
|
||||||
|
"cacheSizeDynamic": 536870912,
|
||||||
|
"asrModel": {
|
||||||
|
"version": "0.1.0"
|
||||||
|
},
|
||||||
|
"asrLmAdaptation": {
|
||||||
|
"version": "0.19.7"
|
||||||
|
},
|
||||||
|
"endpointingRules": {
|
||||||
|
"rule3": {
|
||||||
|
"maxRelativeCost": 8.0,
|
||||||
|
"minTrailingSilence": 1.0,
|
||||||
|
"minUtteranceLength": 0.0,
|
||||||
|
"mustContainNonsilence": true
|
||||||
|
},
|
||||||
|
"rule2": {
|
||||||
|
"maxRelativeCost": 5.5,
|
||||||
|
"minTrailingSilence": 0.7,
|
||||||
|
"minUtteranceLength": 0.0,
|
||||||
|
"mustContainNonsilence": true
|
||||||
|
},
|
||||||
|
"rule1": {
|
||||||
|
"maxRelativeCost": 10000000000.0,
|
||||||
|
"minTrailingSilence": 4.0,
|
||||||
|
"minUtteranceLength": 0.0,
|
||||||
|
"mustContainNonsilence": false
|
||||||
|
},
|
||||||
|
"rule5": {
|
||||||
|
"maxRelativeCost": 10000000000.0,
|
||||||
|
"minTrailingSilence": 0.0,
|
||||||
|
"minUtteranceLength": 10.0,
|
||||||
|
"mustContainNonsilence": false
|
||||||
|
},
|
||||||
|
"rule4": {
|
||||||
|
"maxRelativeCost": 2.5,
|
||||||
|
"minTrailingSilence": 0.5,
|
||||||
|
"minUtteranceLength": 0.0,
|
||||||
|
"mustContainNonsilence": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"postprocessors": [
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`START (.*?) `INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`END",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": "$1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`START ",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`START (.*?) `INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`END",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": "$1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`START ",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`START (.*?) `INTENT`ca101149-1495-494f-92f6-e9e042eb9266`END",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": "$1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`START ",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`START (.*?) `ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`END",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": "$1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Regex": {
|
||||||
|
"pattern": "`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`START ",
|
||||||
|
"flags": "i",
|
||||||
|
"replacement": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"asrEngine": {
|
||||||
|
"version": "0.1.0"
|
||||||
|
},
|
||||||
|
"entitiesFstMap": [
|
||||||
|
[
|
||||||
|
51,
|
||||||
|
"__root__"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
52,
|
||||||
|
"e_0.snips"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"entityNameToDisambigs": {
|
||||||
|
"choice": {
|
||||||
|
"start": "`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`START",
|
||||||
|
"end": "`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`END",
|
||||||
|
"empty": [
|
||||||
|
"",
|
||||||
|
4
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"inferenceEngine": {
|
||||||
|
"version": 2
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,20 @@
|
|||||||
|
1 good
|
||||||
|
1 okay
|
||||||
|
1 by no means
|
||||||
|
1 amen
|
||||||
|
1 yea
|
||||||
|
1 nope
|
||||||
|
1 never
|
||||||
|
1 yeah
|
||||||
|
1 fine
|
||||||
|
1 affirmative
|
||||||
|
1 nix
|
||||||
|
1 no
|
||||||
|
1 not
|
||||||
|
1 not at all
|
||||||
|
1 yes
|
||||||
|
1 all right
|
||||||
|
1 true
|
||||||
|
1 no way
|
||||||
|
1 nay
|
||||||
|
1 no not at all
|
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"choice": {
|
||||||
|
"vanilla": "b048ef60-c29a-472d-bd67-8e5cc65a1e72.vanilla",
|
||||||
|
"ngram": true,
|
||||||
|
"added": "b048ef60-c29a-472d-bd67-8e5cc65a1e72.added",
|
||||||
|
"pruningThresholds": [],
|
||||||
|
"order": 3
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,92 @@
|
|||||||
|
<eps> 0
|
||||||
|
's#1 1
|
||||||
|
a#1 2
|
||||||
|
affirmative#1 3
|
||||||
|
all#1 4
|
||||||
|
amen#1 5
|
||||||
|
ask#1 6
|
||||||
|
at#1 7
|
||||||
|
by#1 8
|
||||||
|
cancel#1 9
|
||||||
|
choose#1 10
|
||||||
|
fine#1 11
|
||||||
|
for#1 12
|
||||||
|
go#1 13
|
||||||
|
good#1 14
|
||||||
|
i#1 15
|
||||||
|
is#1 16
|
||||||
|
it#1 17
|
||||||
|
me#1 18
|
||||||
|
means#1 19
|
||||||
|
nay#1 20
|
||||||
|
never#1 21
|
||||||
|
nix#1 22
|
||||||
|
no#1 23
|
||||||
|
nope#1 24
|
||||||
|
not#1 25
|
||||||
|
okay#1 26
|
||||||
|
question#1 27
|
||||||
|
right#1 28
|
||||||
|
something#1 29
|
||||||
|
that#1 30
|
||||||
|
think#1 31
|
||||||
|
to#1 32
|
||||||
|
true#1 33
|
||||||
|
want#1 34
|
||||||
|
way#1 35
|
||||||
|
yea#1 36
|
||||||
|
yeah#1 37
|
||||||
|
yes#1 38
|
||||||
|
yo#1 39
|
||||||
|
#0 40
|
||||||
|
<s> 41
|
||||||
|
</s> 42
|
||||||
|
`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`END 43
|
||||||
|
`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`END 44
|
||||||
|
`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`START 45
|
||||||
|
`INTENT`ca101149-1495-494f-92f6-e9e042eb9266`END 46
|
||||||
|
`ENTITY`b048ef60-c29a-472d-bd67-8e5cc65a1e72`START 47
|
||||||
|
`INTENT`724cf256-45e2-4ab7-a741-5e7ca82a9756`START 48
|
||||||
|
`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`END 49
|
||||||
|
`INTENT`4c40d5ef-686e-489f-8dcf-175ea8eb7b82`START 50
|
||||||
|
``ROOT 51
|
||||||
|
b048ef60-c29a-472d-bd67-8e5cc65a1e72 52
|
||||||
|
all 53
|
||||||
|
right 54
|
||||||
|
yea 55
|
||||||
|
is 56
|
||||||
|
it 57
|
||||||
|
affirmative 58
|
||||||
|
go 59
|
||||||
|
at 60
|
||||||
|
want 61
|
||||||
|
cancel 62
|
||||||
|
okay 63
|
||||||
|
yes 64
|
||||||
|
fine 65
|
||||||
|
for 66
|
||||||
|
no 67
|
||||||
|
not 68
|
||||||
|
means 69
|
||||||
|
question 70
|
||||||
|
to 71
|
||||||
|
that 72
|
||||||
|
choose 73
|
||||||
|
way 74
|
||||||
|
nay 75
|
||||||
|
nope 76
|
||||||
|
me 77
|
||||||
|
good 78
|
||||||
|
's 79
|
||||||
|
yo 80
|
||||||
|
amen 81
|
||||||
|
never 82
|
||||||
|
yeah 83
|
||||||
|
nix 84
|
||||||
|
ask 85
|
||||||
|
true 86
|
||||||
|
by 87
|
||||||
|
a 88
|
||||||
|
i 89
|
||||||
|
think 90
|
||||||
|
something 91
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"error": "error.wav",
|
||||||
|
"end_of_input": "end_of_input.wav",
|
||||||
|
"start_of_input": "start_of_input.wav"
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"language": "de",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:abbrechen|brich ab|verwerfen|zur[üu]cknehmen|annullieren|stornieren|r[üu]ckbuchen|widerrufen|zur[üu]ckziehen)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:ja|von mir aus|auf alle F[äa]lle|meinetwegen|auf jeden Fall|klar|unbedingt|absolut|einverstanden|passt|OK|sicher|bestimmt|joa)(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(nein|auf keinen Fall|na|nee)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "tut mir leid, aber ich verstehe nicht, was Sie wollen",
|
||||||
|
"answer_misunderstanding": "Ich konnte Ihre Antwort nicht verstehen"
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"language": "en",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:cancel)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:yes)(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(?:no)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "Sorry I didn't understand what you want",
|
||||||
|
"answer_misunderstanding": "I couldn't understand your answer"
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"language": "es",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:cancelar)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:s(?:í|i))(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(?:no)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "Lo siento no entendí lo que dijo",
|
||||||
|
"answer_misunderstanding": "No entendí su respuesta"
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"language": "fr",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:annuler)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:oui)(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(?:non)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "Désolé je n'ai pas compris ce que vous avez dit",
|
||||||
|
"answer_misunderstanding": "Je n'ai pas compris votre réponse"
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"language": "it",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:annullare)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:sì)(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(?:no)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "Scusami, non ho capito cosa hai detto",
|
||||||
|
"answer_misunderstanding": "Non ho capito la tua risposta"
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"language": "ko",
|
||||||
|
"confirmation_cancel_pattern": "(?i)(?:\\W+|^)(?:취소)(?:\\W+|$)",
|
||||||
|
"confirmation_yes_pattern": "(?i)(?:\\W+|^)(?:응)(?:\\W+|$)",
|
||||||
|
"confirmation_no_pattern": "(?i)(?:\\W+|^)(?:아니(에요|야)?)(?:\\W+|$)",
|
||||||
|
"general_misunderstanding": "죄송합니다, 뭣을 원하는지 이해 못했습니다",
|
||||||
|
"answer_misunderstanding": "당신의 대답을 이해 못했습니다"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"dither": 1.0,
|
||||||
|
"featurizer": "mel",
|
||||||
|
"frame_length_ms": 25.0,
|
||||||
|
"frame_shift_ms": 10.0,
|
||||||
|
"high_freq": 0,
|
||||||
|
"hotword_key": "hey_snips",
|
||||||
|
"input_node_name": "input_node",
|
||||||
|
"mel_low_freq": 20,
|
||||||
|
"model_id": "workflow-hey_snips_subww_feedback_10seeds-2018_12_04T12_13_05_evaluated_model_0002",
|
||||||
|
"num_mel_bins": 20,
|
||||||
|
"output_node_name": "output_node",
|
||||||
|
"preemphasis_coefficient": 0.97,
|
||||||
|
"remove_dc_offset": false,
|
||||||
|
"sample_rate": 16000,
|
||||||
|
"streamable": true,
|
||||||
|
"use_log_fbank": true,
|
||||||
|
"w_max": 100,
|
||||||
|
"w_smooth": 30,
|
||||||
|
"window_type": "povey"
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,128 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"threshold": 0.998,
|
||||||
|
"recall": 0.8845846645367411,
|
||||||
|
"sensitivity": 0.0,
|
||||||
|
"far": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.998,
|
||||||
|
"recall": 0.8845846645367411,
|
||||||
|
"sensitivity": 0.05,
|
||||||
|
"far": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.987,
|
||||||
|
"recall": 0.9636581469648562,
|
||||||
|
"sensitivity": 0.1,
|
||||||
|
"far": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.98,
|
||||||
|
"recall": 0.9692492012779553,
|
||||||
|
"sensitivity": 0.15,
|
||||||
|
"far": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.707,
|
||||||
|
"recall": 0.9912140575079872,
|
||||||
|
"sensitivity": 0.2,
|
||||||
|
"far": 0.3461397298829652
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.934,
|
||||||
|
"recall": 0.9828274760383386,
|
||||||
|
"sensitivity": 0.25,
|
||||||
|
"far": 0.04326746623537065
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.92,
|
||||||
|
"recall": 0.9844249201277955,
|
||||||
|
"sensitivity": 0.3,
|
||||||
|
"far": 0.04326746623537065
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.894,
|
||||||
|
"recall": 0.9864217252396166,
|
||||||
|
"sensitivity": 0.35,
|
||||||
|
"far": 0.04326746623537065
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.842,
|
||||||
|
"recall": 0.9892172523961661,
|
||||||
|
"sensitivity": 0.4,
|
||||||
|
"far": 0.08653493247074126
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.807,
|
||||||
|
"recall": 0.9892172523961661,
|
||||||
|
"sensitivity": 0.45,
|
||||||
|
"far": 0.1298023987061119
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.787,
|
||||||
|
"recall": 0.9896166134185304,
|
||||||
|
"sensitivity": 0.5,
|
||||||
|
"far": 0.17306986494148255
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.749,
|
||||||
|
"recall": 0.990814696485623,
|
||||||
|
"sensitivity": 0.55,
|
||||||
|
"far": 0.2596047974122239
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.72,
|
||||||
|
"recall": 0.9912140575079872,
|
||||||
|
"sensitivity": 0.6,
|
||||||
|
"far": 0.3461397298829652
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.695,
|
||||||
|
"recall": 0.9916134185303515,
|
||||||
|
"sensitivity": 0.65,
|
||||||
|
"far": 0.3461397298829652
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.683,
|
||||||
|
"recall": 0.9916134185303515,
|
||||||
|
"sensitivity": 0.7,
|
||||||
|
"far": 0.3461397298829652
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.504,
|
||||||
|
"recall": 0.9924121405750799,
|
||||||
|
"sensitivity": 0.75,
|
||||||
|
"far": 0.6490119935305596
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.356,
|
||||||
|
"recall": 0.9936102236421726,
|
||||||
|
"sensitivity": 0.8,
|
||||||
|
"far": 1.2980239870611205
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.289,
|
||||||
|
"recall": 0.994408945686901,
|
||||||
|
"sensitivity": 0.85,
|
||||||
|
"far": 1.6441637169440853
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.216,
|
||||||
|
"recall": 0.9952076677316294,
|
||||||
|
"sensitivity": 0.9,
|
||||||
|
"far": 2.2499082442392764
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.156,
|
||||||
|
"recall": 0.9964057507987221,
|
||||||
|
"sensitivity": 0.95,
|
||||||
|
"far": 2.8556527715344644
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.12,
|
||||||
|
"recall": 0.9972044728434505,
|
||||||
|
"sensitivity": 1.0,
|
||||||
|
"far": 3.807537028712616
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"language": "en",
|
||||||
|
"gazetteer_parser": null
|
||||||
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"language": "en",
|
||||||
|
"parser_directory": "parser",
|
||||||
|
"parser_usage": 2
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"parsers_metadata": [
|
||||||
|
{
|
||||||
|
"entity_identifier": "choice",
|
||||||
|
"entity_parser": "parser_1"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1 @@
|
|||||||
|
{"version":"0.6.0","parser_filename":"parser","threshold":0.9,"stop_words":[],"edge_cases":[]}
|
Binary file not shown.
@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"ignore_stop_words": true,
|
||||||
|
"max_pattern_length": 1000,
|
||||||
|
"max_queries": 500,
|
||||||
|
"unit_name": "deterministic_intent_parser"
|
||||||
|
},
|
||||||
|
"group_names_to_slot_names": {
|
||||||
|
"group0": "user_choice"
|
||||||
|
},
|
||||||
|
"language_code": "en",
|
||||||
|
"patterns": {
|
||||||
|
"jocavdh:answer_yes": [
|
||||||
|
"^\\s*(?P<group0>%CHOICE%)\\s*$",
|
||||||
|
"^\\s*(?P<group0>%CHOICE%)\\s*(?P<group0_2>%CHOICE%)\\s*$",
|
||||||
|
"^\\s*i\\s*go\\s*for\\s*(?P<group0>%CHOICE%)\\s*$",
|
||||||
|
"^\\s*i\\s*choose\\s*(?P<group0>%CHOICE%)\\s*$",
|
||||||
|
"^\\s*i\\s*think\\s*it\\s*is\\s*(?P<group0>%CHOICE%)\\s*$",
|
||||||
|
"^\\s*s\\s*(?P<group0>%CHOICE%)\\s*$"
|
||||||
|
],
|
||||||
|
"jocavdh:ask": [
|
||||||
|
"^\\s*i\\s*want\\s*ask\\s*question\\s*$",
|
||||||
|
"^\\s*ask\\s*$",
|
||||||
|
"^\\s*ask\\s*something\\s*$",
|
||||||
|
"^\\s*ask\\s*question\\s*$"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"slot_names_to_entities": {
|
||||||
|
"jocavdh:answer_yes": {
|
||||||
|
"user_choice": "choice"
|
||||||
|
},
|
||||||
|
"jocavdh:ask": {}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "deterministic_intent_parser"
|
||||||
|
}
|
@ -0,0 +1,176 @@
|
|||||||
|
{
|
||||||
|
"builtin_entity_parser": "builtin_entity_parser",
|
||||||
|
"config": {
|
||||||
|
"intent_parsers_configs": [
|
||||||
|
{
|
||||||
|
"ignore_stop_words": true,
|
||||||
|
"max_pattern_length": 1000,
|
||||||
|
"max_queries": 500,
|
||||||
|
"unit_name": "deterministic_intent_parser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"intent_classifier_config": {
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"max_unknown_words": 5,
|
||||||
|
"min_utterances": 20,
|
||||||
|
"noise_factor": 5,
|
||||||
|
"unknown_word_prob": 0.5,
|
||||||
|
"unknown_words_replacement_string": "unknownword"
|
||||||
|
},
|
||||||
|
"featurizer_config": {
|
||||||
|
"added_cooccurrence_feature_ratio": 0,
|
||||||
|
"cooccurrence_vectorizer_config": {
|
||||||
|
"filter_stop_words": true,
|
||||||
|
"keep_order": true,
|
||||||
|
"unit_name": "cooccurrence_vectorizer",
|
||||||
|
"unknown_words_replacement_string": "unknownword",
|
||||||
|
"window_size": 5
|
||||||
|
},
|
||||||
|
"pvalue_threshold": 0.4,
|
||||||
|
"tfidf_vectorizer_config": {
|
||||||
|
"unit_name": "tfidf_vectorizer",
|
||||||
|
"use_stemming": false,
|
||||||
|
"word_clusters_name": null
|
||||||
|
},
|
||||||
|
"unit_name": "featurizer"
|
||||||
|
},
|
||||||
|
"random_seed": null,
|
||||||
|
"unit_name": "log_reg_intent_classifier"
|
||||||
|
},
|
||||||
|
"slot_filler_config": {
|
||||||
|
"crf_args": {
|
||||||
|
"algorithm": "lbfgs",
|
||||||
|
"c1": 0.1,
|
||||||
|
"c2": 0.1
|
||||||
|
},
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"capitalization_ratio": 0,
|
||||||
|
"min_utterances": 200
|
||||||
|
},
|
||||||
|
"feature_factory_configs": [
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 1,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_digit",
|
||||||
|
"offsets": [
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_first",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_last",
|
||||||
|
"offsets": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"drop_out": 0.1,
|
||||||
|
"factory_name": "entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 1
|
||||||
|
},
|
||||||
|
"factory_name": "builtin_entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"cluster_name": "brown_clusters",
|
||||||
|
"use_stemming": false
|
||||||
|
},
|
||||||
|
"factory_name": "word_cluster",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"random_seed": null,
|
||||||
|
"tagging_scheme": 1,
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
},
|
||||||
|
"unit_name": "probabilistic_intent_parser"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"unit_name": "nlu_engine"
|
||||||
|
},
|
||||||
|
"custom_entity_parser": "custom_entity_parser",
|
||||||
|
"dataset_metadata": {
|
||||||
|
"entities": {
|
||||||
|
"choice": {
|
||||||
|
"automatically_extensible": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"language_code": "en",
|
||||||
|
"slot_name_mappings": {
|
||||||
|
"jocavdh:answer_yes": {
|
||||||
|
"user_choice": "choice"
|
||||||
|
},
|
||||||
|
"jocavdh:ask": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"intent_parsers": [
|
||||||
|
"deterministic_intent_parser",
|
||||||
|
"probabilistic_intent_parser"
|
||||||
|
],
|
||||||
|
"model_version": "0.19.0",
|
||||||
|
"training_package_version": "0.19.4",
|
||||||
|
"unit_name": "nlu_engine"
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"added_cooccurrence_feature_ratio": 0,
|
||||||
|
"cooccurrence_vectorizer_config": {
|
||||||
|
"filter_stop_words": true,
|
||||||
|
"keep_order": true,
|
||||||
|
"unit_name": "cooccurrence_vectorizer",
|
||||||
|
"unknown_words_replacement_string": "unknownword",
|
||||||
|
"window_size": 5
|
||||||
|
},
|
||||||
|
"pvalue_threshold": 0.4,
|
||||||
|
"tfidf_vectorizer_config": {
|
||||||
|
"unit_name": "tfidf_vectorizer",
|
||||||
|
"use_stemming": false,
|
||||||
|
"word_clusters_name": null
|
||||||
|
},
|
||||||
|
"unit_name": "featurizer"
|
||||||
|
},
|
||||||
|
"cooccurrence_vectorizer": null,
|
||||||
|
"language_code": "en",
|
||||||
|
"tfidf_vectorizer": "tfidf_vectorizer"
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "featurizer"
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "tfidf_vectorizer"
|
||||||
|
}
|
@ -0,0 +1,77 @@
|
|||||||
|
{
|
||||||
|
"builtin_entity_scope": [],
|
||||||
|
"config": {
|
||||||
|
"unit_name": "tfidf_vectorizer",
|
||||||
|
"use_stemming": false,
|
||||||
|
"word_clusters_name": null
|
||||||
|
},
|
||||||
|
"language_code": "en",
|
||||||
|
"vectorizer": {
|
||||||
|
"idf_diag": [
|
||||||
|
2.8132656744490188,
|
||||||
|
4.850147601710058,
|
||||||
|
3.751535313041949,
|
||||||
|
5.255612709818223,
|
||||||
|
2.904237452654745,
|
||||||
|
4.002849741322855,
|
||||||
|
4.562465529258278,
|
||||||
|
2.8132656744490188,
|
||||||
|
4.562465529258278,
|
||||||
|
3.176171168138387,
|
||||||
|
3.463853240590168,
|
||||||
|
5.255612709818223,
|
||||||
|
5.255612709818223,
|
||||||
|
5.255612709818223,
|
||||||
|
4.850147601710058,
|
||||||
|
4.157000421150114,
|
||||||
|
4.850147601710058,
|
||||||
|
3.751535313041949,
|
||||||
|
5.255612709818223,
|
||||||
|
3.176171168138387,
|
||||||
|
5.255612709818223,
|
||||||
|
4.562465529258278,
|
||||||
|
4.562465529258278,
|
||||||
|
3.3097025607629096,
|
||||||
|
4.850147601710058,
|
||||||
|
5.255612709818223,
|
||||||
|
1.248279524585752,
|
||||||
|
4.339321977944068,
|
||||||
|
5.255612709818223,
|
||||||
|
4.850147601710058,
|
||||||
|
4.562465529258278
|
||||||
|
],
|
||||||
|
"vocab": {
|
||||||
|
"a": 0,
|
||||||
|
"affirmative": 1,
|
||||||
|
"all": 2,
|
||||||
|
"amen": 3,
|
||||||
|
"ask": 4,
|
||||||
|
"at": 5,
|
||||||
|
"choose": 6,
|
||||||
|
"entityfeaturechoice": 7,
|
||||||
|
"go": 8,
|
||||||
|
"i": 9,
|
||||||
|
"me": 10,
|
||||||
|
"means": 11,
|
||||||
|
"nay": 12,
|
||||||
|
"never": 13,
|
||||||
|
"nix": 14,
|
||||||
|
"no": 15,
|
||||||
|
"nope": 16,
|
||||||
|
"not": 17,
|
||||||
|
"okay": 18,
|
||||||
|
"question": 19,
|
||||||
|
"right": 20,
|
||||||
|
"s": 21,
|
||||||
|
"something": 22,
|
||||||
|
"that": 23,
|
||||||
|
"think": 24,
|
||||||
|
"true": 25,
|
||||||
|
"unknownword": 26,
|
||||||
|
"want": 27,
|
||||||
|
"way": 28,
|
||||||
|
"yeah": 29,
|
||||||
|
"yo": 30
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,144 @@
|
|||||||
|
{
|
||||||
|
"coeffs": [
|
||||||
|
[
|
||||||
|
-1.0374157810990547,
|
||||||
|
0.633619767235112,
|
||||||
|
0.7372475243386986,
|
||||||
|
0.38284583474049527,
|
||||||
|
-1.3600826255189982,
|
||||||
|
0.8134583411451991,
|
||||||
|
0.8986872140618797,
|
||||||
|
3.554419457078398,
|
||||||
|
0.16314088088125106,
|
||||||
|
0.3445369394584642,
|
||||||
|
-0.9165347001719316,
|
||||||
|
0.23360903890786305,
|
||||||
|
1.1524651452580534,
|
||||||
|
0.33180106338312115,
|
||||||
|
0.48498974977694526,
|
||||||
|
1.2516939449237432,
|
||||||
|
0.5316360033005338,
|
||||||
|
0.5666083145529897,
|
||||||
|
0.35215073148782644,
|
||||||
|
-0.9907775840286289,
|
||||||
|
0.3374659097080911,
|
||||||
|
0.7079400370443054,
|
||||||
|
-0.3298378158067186,
|
||||||
|
-0.17358208630788993,
|
||||||
|
0.6048960467702141,
|
||||||
|
0.23651935061108662,
|
||||||
|
-3.525915132020811,
|
||||||
|
-0.35523659828154625,
|
||||||
|
0.5579766754453421,
|
||||||
|
0.43686831357718425,
|
||||||
|
-0.31477391530849086
|
||||||
|
],
|
||||||
|
[
|
||||||
|
0.24458121106943134,
|
||||||
|
-0.3043976292684496,
|
||||||
|
-0.5978710607834349,
|
||||||
|
-0.27182797039871176,
|
||||||
|
3.540429144436167,
|
||||||
|
-0.39938978480463266,
|
||||||
|
-0.3995531301322729,
|
||||||
|
-1.7607368726782489,
|
||||||
|
-0.4904247365559499,
|
||||||
|
-0.3661002914872161,
|
||||||
|
1.6709050048788299,
|
||||||
|
-0.1793723844176087,
|
||||||
|
-0.10839833711699075,
|
||||||
|
-0.18732547768632993,
|
||||||
|
-0.3458216797286632,
|
||||||
|
-0.3557921817645556,
|
||||||
|
-0.38451315274351544,
|
||||||
|
-0.4343273668218032,
|
||||||
|
-0.18966265427871212,
|
||||||
|
1.8678411826645283,
|
||||||
|
-0.21180432455282772,
|
||||||
|
-0.3735301742207613,
|
||||||
|
1.1246264932497645,
|
||||||
|
-1.1374314330216024,
|
||||||
|
-0.27715493741809394,
|
||||||
|
-0.10878481563632597,
|
||||||
|
-2.942597012010665,
|
||||||
|
1.1685288249516357,
|
||||||
|
-0.06816268590210585,
|
||||||
|
-0.2162190612138176,
|
||||||
|
1.0417427717981054
|
||||||
|
],
|
||||||
|
[
|
||||||
|
-0.3855717431315145,
|
||||||
|
-0.4453437245754687,
|
||||||
|
-0.47516117213444276,
|
||||||
|
-0.25049332462167745,
|
||||||
|
-2.2446290230043413,
|
||||||
|
-0.4900020676923015,
|
||||||
|
-0.5082280644267757,
|
||||||
|
-2.3030099598496947,
|
||||||
|
-0.12051551256944733,
|
||||||
|
-0.5702159034650061,
|
||||||
|
-1.1836773091413573,
|
||||||
|
-0.15732392952745264,
|
||||||
|
-0.5173289130792248,
|
||||||
|
-0.22523876460498382,
|
||||||
|
-0.38113137888580306,
|
||||||
|
-0.7404673816769594,
|
||||||
|
-0.28748275723928834,
|
||||||
|
-0.4962914300334628,
|
||||||
|
-0.1927561144830759,
|
||||||
|
-1.3042796691683933,
|
||||||
|
-0.2175602057409886,
|
||||||
|
-0.4801007195400196,
|
||||||
|
-0.6304630376984848,
|
||||||
|
0.15486833742122622,
|
||||||
|
-0.2785523307648488,
|
||||||
|
-0.17961358760015905,
|
||||||
|
2.5454949595918746,
|
||||||
|
-0.628316294281119,
|
||||||
|
-0.2812174050543778,
|
||||||
|
-0.34929461342392343,
|
||||||
|
-0.5528173485705276
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"config": {
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"max_unknown_words": 5,
|
||||||
|
"min_utterances": 20,
|
||||||
|
"noise_factor": 5,
|
||||||
|
"unknown_word_prob": 0.5,
|
||||||
|
"unknown_words_replacement_string": "unknownword"
|
||||||
|
},
|
||||||
|
"featurizer_config": {
|
||||||
|
"added_cooccurrence_feature_ratio": 0,
|
||||||
|
"cooccurrence_vectorizer_config": {
|
||||||
|
"filter_stop_words": true,
|
||||||
|
"keep_order": true,
|
||||||
|
"unit_name": "cooccurrence_vectorizer",
|
||||||
|
"unknown_words_replacement_string": "unknownword",
|
||||||
|
"window_size": 5
|
||||||
|
},
|
||||||
|
"pvalue_threshold": 0.4,
|
||||||
|
"tfidf_vectorizer_config": {
|
||||||
|
"unit_name": "tfidf_vectorizer",
|
||||||
|
"use_stemming": false,
|
||||||
|
"word_clusters_name": null
|
||||||
|
},
|
||||||
|
"unit_name": "featurizer"
|
||||||
|
},
|
||||||
|
"random_seed": null,
|
||||||
|
"unit_name": "log_reg_intent_classifier"
|
||||||
|
},
|
||||||
|
"featurizer": "featurizer",
|
||||||
|
"intent_list": [
|
||||||
|
"jocavdh:answer_yes",
|
||||||
|
"jocavdh:ask",
|
||||||
|
null
|
||||||
|
],
|
||||||
|
"intercept": [
|
||||||
|
-0.09850373441643659,
|
||||||
|
-0.23771042380504273,
|
||||||
|
-0.06139137859192325
|
||||||
|
],
|
||||||
|
"t_": 701.0
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "log_reg_intent_classifier"
|
||||||
|
}
|
@ -0,0 +1,152 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"intent_classifier_config": {
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"max_unknown_words": 5,
|
||||||
|
"min_utterances": 20,
|
||||||
|
"noise_factor": 5,
|
||||||
|
"unknown_word_prob": 0.5,
|
||||||
|
"unknown_words_replacement_string": "unknownword"
|
||||||
|
},
|
||||||
|
"featurizer_config": {
|
||||||
|
"added_cooccurrence_feature_ratio": 0,
|
||||||
|
"cooccurrence_vectorizer_config": {
|
||||||
|
"filter_stop_words": true,
|
||||||
|
"keep_order": true,
|
||||||
|
"unit_name": "cooccurrence_vectorizer",
|
||||||
|
"unknown_words_replacement_string": "unknownword",
|
||||||
|
"window_size": 5
|
||||||
|
},
|
||||||
|
"pvalue_threshold": 0.4,
|
||||||
|
"tfidf_vectorizer_config": {
|
||||||
|
"unit_name": "tfidf_vectorizer",
|
||||||
|
"use_stemming": false,
|
||||||
|
"word_clusters_name": null
|
||||||
|
},
|
||||||
|
"unit_name": "featurizer"
|
||||||
|
},
|
||||||
|
"random_seed": null,
|
||||||
|
"unit_name": "log_reg_intent_classifier"
|
||||||
|
},
|
||||||
|
"slot_filler_config": {
|
||||||
|
"crf_args": {
|
||||||
|
"algorithm": "lbfgs",
|
||||||
|
"c1": 0.1,
|
||||||
|
"c2": 0.1
|
||||||
|
},
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"capitalization_ratio": 0,
|
||||||
|
"min_utterances": 200
|
||||||
|
},
|
||||||
|
"feature_factory_configs": [
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 1,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_digit",
|
||||||
|
"offsets": [
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_first",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_last",
|
||||||
|
"offsets": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"drop_out": 0.1,
|
||||||
|
"factory_name": "entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 1
|
||||||
|
},
|
||||||
|
"factory_name": "builtin_entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"cluster_name": "brown_clusters",
|
||||||
|
"use_stemming": false
|
||||||
|
},
|
||||||
|
"factory_name": "word_cluster",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"random_seed": null,
|
||||||
|
"tagging_scheme": 1,
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
},
|
||||||
|
"unit_name": "probabilistic_intent_parser"
|
||||||
|
},
|
||||||
|
"slot_fillers": [
|
||||||
|
{
|
||||||
|
"intent": "jocavdh:answer_yes",
|
||||||
|
"slot_filler_name": "slot_filler_0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"intent": "jocavdh:ask",
|
||||||
|
"slot_filler_name": "slot_filler_1"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "probabilistic_intent_parser"
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,131 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"crf_args": {
|
||||||
|
"algorithm": "lbfgs",
|
||||||
|
"c1": 0.1,
|
||||||
|
"c2": 0.1
|
||||||
|
},
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"capitalization_ratio": 0,
|
||||||
|
"min_utterances": 200
|
||||||
|
},
|
||||||
|
"feature_factory_configs": [
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"language_code": "en",
|
||||||
|
"n": 1,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"language_code": "en",
|
||||||
|
"n": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_digit",
|
||||||
|
"offsets": [
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_first",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_last",
|
||||||
|
"offsets": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"entities": [
|
||||||
|
"choice"
|
||||||
|
],
|
||||||
|
"tagging_scheme_code": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"drop_out": 0.1,
|
||||||
|
"factory_name": "entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"entity_labels": [
|
||||||
|
"snips/amountOfMoney",
|
||||||
|
"snips/datetime",
|
||||||
|
"snips/duration",
|
||||||
|
"snips/number",
|
||||||
|
"snips/ordinal",
|
||||||
|
"snips/percentage",
|
||||||
|
"snips/temperature"
|
||||||
|
],
|
||||||
|
"language_code": "en",
|
||||||
|
"tagging_scheme_code": 1
|
||||||
|
},
|
||||||
|
"factory_name": "builtin_entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"cluster_name": "brown_clusters",
|
||||||
|
"use_stemming": false
|
||||||
|
},
|
||||||
|
"factory_name": "word_cluster",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"random_seed": null,
|
||||||
|
"tagging_scheme": 1,
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
},
|
||||||
|
"crf_model_file": "modeloKIr8e.crfsuite",
|
||||||
|
"intent": "jocavdh:answer_yes",
|
||||||
|
"language_code": "en",
|
||||||
|
"slot_name_mapping": {
|
||||||
|
"user_choice": "choice"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
}
|
@ -0,0 +1,114 @@
|
|||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"crf_args": {
|
||||||
|
"algorithm": "lbfgs",
|
||||||
|
"c1": 0.1,
|
||||||
|
"c2": 0.1
|
||||||
|
},
|
||||||
|
"data_augmentation_config": {
|
||||||
|
"add_builtin_entities_examples": false,
|
||||||
|
"capitalization_ratio": 0,
|
||||||
|
"min_utterances": 200
|
||||||
|
},
|
||||||
|
"feature_factory_configs": [
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 1,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"common_words_gazetteer_name": "top_10000_words_stemmed",
|
||||||
|
"n": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"factory_name": "ngram",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_digit",
|
||||||
|
"offsets": [
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_first",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {},
|
||||||
|
"factory_name": "is_last",
|
||||||
|
"offsets": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 2,
|
||||||
|
"use_stemming": true
|
||||||
|
},
|
||||||
|
"drop_out": 0.1,
|
||||||
|
"factory_name": "entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"tagging_scheme_code": 1
|
||||||
|
},
|
||||||
|
"factory_name": "builtin_entity_match",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"args": {
|
||||||
|
"cluster_name": "brown_clusters",
|
||||||
|
"use_stemming": false
|
||||||
|
},
|
||||||
|
"factory_name": "word_cluster",
|
||||||
|
"offsets": [
|
||||||
|
-2,
|
||||||
|
-1,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"random_seed": null,
|
||||||
|
"tagging_scheme": 1,
|
||||||
|
"unit_name": "crf_slot_filler"
|
||||||
|
},
|
||||||
|
"crf_model_file": null,
|
||||||
|
"intent": "jocavdh:ask",
|
||||||
|
"language_code": "en",
|
||||||
|
"slot_name_mapping": {}
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"author": "Adrien Ball, Cl\u00e9ment Doumouro",
|
||||||
|
"description": "Language resources for English",
|
||||||
|
"email": "adrien.ball@snips.ai, clement.doumouro@snips.ai",
|
||||||
|
"gazetteers": [
|
||||||
|
"top_10000_words_stemmed"
|
||||||
|
],
|
||||||
|
"language": "en",
|
||||||
|
"license": "Apache License, Version 2.0",
|
||||||
|
"name": "snips_nlu_en",
|
||||||
|
"noise": "noise",
|
||||||
|
"snips-nlu-version": ">=0.1.0,<1.0.0",
|
||||||
|
"stems": "stems",
|
||||||
|
"stop_words": "stop_words",
|
||||||
|
"url": "https://snips-nlu.readthedocs.io",
|
||||||
|
"version": "0.2.1",
|
||||||
|
"word_clusters": [
|
||||||
|
"brown_clusters"
|
||||||
|
]
|
||||||
|
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,46 @@
|
|||||||
|
!
|
||||||
|
?
|
||||||
|
a
|
||||||
|
about
|
||||||
|
allright
|
||||||
|
alright
|
||||||
|
although
|
||||||
|
an
|
||||||
|
and
|
||||||
|
any
|
||||||
|
besides
|
||||||
|
but
|
||||||
|
can
|
||||||
|
hello
|
||||||
|
hey
|
||||||
|
hi
|
||||||
|
instead
|
||||||
|
just
|
||||||
|
lol
|
||||||
|
man
|
||||||
|
me
|
||||||
|
my
|
||||||
|
now
|
||||||
|
ok
|
||||||
|
only
|
||||||
|
please
|
||||||
|
pls
|
||||||
|
so
|
||||||
|
some
|
||||||
|
such
|
||||||
|
that
|
||||||
|
the
|
||||||
|
then
|
||||||
|
these
|
||||||
|
this
|
||||||
|
those
|
||||||
|
though
|
||||||
|
to
|
||||||
|
too
|
||||||
|
very
|
||||||
|
while
|
||||||
|
yo
|
||||||
|
you
|
||||||
|
your
|
||||||
|
yours
|
||||||
|
yourself
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1 @@
|
|||||||
|
{"model_version":"0.19.0"}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"sample_rate": 16000,
|
||||||
|
"frame_length_ms": 25.0,
|
||||||
|
"frame_shift_ms": 10.0,
|
||||||
|
"num_mfcc": 40,
|
||||||
|
"num_mel_bins": 40,
|
||||||
|
"mel_low_freq": 20,
|
||||||
|
"cepstral_lifter": 0.0,
|
||||||
|
"dither": 1.0,
|
||||||
|
"window_type": "povey",
|
||||||
|
"use_energy": false,
|
||||||
|
"energy_floor": 0.0,
|
||||||
|
"raw_energy": true,
|
||||||
|
"preemphasis_coefficient": 0.0,
|
||||||
|
"w_smooth": 30,
|
||||||
|
"w_max": 100
|
||||||
|
}
|
Binary file not shown.
@ -0,0 +1,68 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"threshold": 0.99997336,
|
||||||
|
"recall": 0.0013297872340425532,
|
||||||
|
"sensitivity": 0,
|
||||||
|
"far": 0.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.48656777,
|
||||||
|
"recall": 0.9295212765957447,
|
||||||
|
"sensitivity": 0.1,
|
||||||
|
"far": 0.0017921146953405018
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.42605102,
|
||||||
|
"recall": 0.9401595744680851,
|
||||||
|
"sensitivity": 0.2,
|
||||||
|
"far": 0.002986857825567503
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.42605102,
|
||||||
|
"recall": 0.9401595744680851,
|
||||||
|
"sensitivity": 0.3,
|
||||||
|
"far": 0.002986857825567503
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.3095676,
|
||||||
|
"recall": 0.9561170212765957,
|
||||||
|
"sensitivity": 0.4,
|
||||||
|
"far": 0.011350059737156512
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.2795505,
|
||||||
|
"recall": 0.961436170212766,
|
||||||
|
"sensitivity": 0.5,
|
||||||
|
"far": 0.016129032258064516
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.2795505,
|
||||||
|
"recall": 0.961436170212766,
|
||||||
|
"sensitivity": 0.6,
|
||||||
|
"far": 0.016129032258064516
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.24352217,
|
||||||
|
"recall": 0.964095744680851,
|
||||||
|
"sensitivity": 0.7,
|
||||||
|
"far": 0.022301871764237355
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.24352217,
|
||||||
|
"recall": 0.964095744680851,
|
||||||
|
"sensitivity": 0.8,
|
||||||
|
"far": 0.022301871764237355
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.09038606,
|
||||||
|
"recall": 0.9800531914893617,
|
||||||
|
"sensitivity": 0.9,
|
||||||
|
"far": 0.13102349661489446
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"threshold": 0.0,
|
||||||
|
"recall": 1.0,
|
||||||
|
"sensitivity": 1.0,
|
||||||
|
"far": 1.0
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,49 @@
|
|||||||
|
# Generated Snips skill
|
||||||
|
|
||||||
|
This is a generated python script using the `snips-template` tool. It is supposed to be used by Home Assistant.
|
||||||
|
It uses the `hass` object to call Home Assistant services, check https://www.home-assistant.io/components/python_script/
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
Actions expected to happen when installing the final folder (on device)
|
||||||
|
- move python code in the Hass `python_scripts` folder. Scripts name MUST be lowercased.
|
||||||
|
- add `mqtt:` broker & port that Snips uses
|
||||||
|
- add `python_script:` component
|
||||||
|
- add `snips:` component to Hass configuration, see https://www.home-assistant.io/components/snips/
|
||||||
|
- edit Hass' `configuration.yaml` to point to the scripts that were added.
|
||||||
|
|
||||||
|
For instance, if you use Snips' Smart lights bundle, this is what your `configuration.yaml` would look like:
|
||||||
|
|
||||||
|
```
|
||||||
|
mqtt:
|
||||||
|
broker: 127.0.0.1
|
||||||
|
port: 1883
|
||||||
|
|
||||||
|
python_script:
|
||||||
|
|
||||||
|
snips:
|
||||||
|
|
||||||
|
intent_script:
|
||||||
|
lightsTurnOnSet:
|
||||||
|
action:
|
||||||
|
- service: python_script.action_lightsTurnOnSet_Smart_lights
|
||||||
|
data_template:
|
||||||
|
house_room: "{{ house_room }}"
|
||||||
|
number: "{{number}}"
|
||||||
|
unit: "{{unit}}"
|
||||||
|
|
||||||
|
lightsTurnOff:
|
||||||
|
action:
|
||||||
|
- service: python_script.action_lightsTurnOff_Smart_lights
|
||||||
|
data_template:
|
||||||
|
house_room: "{{house_room}}"
|
||||||
|
```
|
||||||
|
|
||||||
|
The `data_template` section is exposing Snips' intents `slot_value` to the python script. Therefore you'll be able to get slot values in the python script:
|
||||||
|
`house_room = data.get('house_room')`
|
||||||
|
|
||||||
|
## Executables
|
||||||
|
|
||||||
|
This dir contains a number of python executables named `action_*.py`.
|
||||||
|
One such file is generated per intent supported. These are standalone
|
||||||
|
executables and will be run by Hass when an intent is triggered.
|
@ -0,0 +1,2 @@
|
|||||||
|
{{#each action_code as |a|}}{{a}}
|
||||||
|
{{/each}}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name":"homeassistant",
|
||||||
|
"language":"PYTHON",
|
||||||
|
"prelude": "\"\"\"\n<intent_slot_name> = data.get('<intent_slot_name>')\nservice_data = {'entity_id': '<intent_slot_name>' }\nhass.services.call('<hass_component>', '<hass_component_method>', service_data, False)\"\"\"",
|
||||||
|
"postlude": ""
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
# Generated Snips skill
|
||||||
|
|
||||||
|
This is a generated javascript snips skill using the `snips-template` tool.
|
||||||
|
It is compatible with the format expected by the `snips-skill-server`
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
This skill requires some javascript dependencies to work properly, these are
|
||||||
|
listed in the `package.json` file. You can use the `setup.sh` script to install
|
||||||
|
them.
|
||||||
|
|
||||||
|
## Executables
|
||||||
|
|
||||||
|
This dir contains a number of javascript executables named `action-*.js`.
|
||||||
|
One such file is generated per intent supported. These are standalone
|
||||||
|
executables and will perform a connection to MQTT and register on the
|
||||||
|
given intent using the `hermes-javascript` helper lib.
|
@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
const ini = require('ini')
|
||||||
|
const fs = require('fs')
|
||||||
|
|
||||||
|
const { withHermes } = require('hermes-javascript')
|
||||||
|
const configFile = fs.readFileSync('./config.ini', 'utf8')
|
||||||
|
const config = ini.parse(configFile)
|
||||||
|
|
||||||
|
withHermes((hermes, done) => {
|
||||||
|
try {
|
||||||
|
const dialog = hermes.dialog()
|
||||||
|
|
||||||
|
dialog.flow('intent/{{intent_id}}', async (message, flow) => {
|
||||||
|
{{#each action_code as |a|}}
|
||||||
|
{{a}}
|
||||||
|
{{/each}}
|
||||||
|
})
|
||||||
|
} catch (error) {
|
||||||
|
console.error(error.toString())
|
||||||
|
done()
|
||||||
|
}
|
||||||
|
})
|
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"name": "snips-action-template",
|
||||||
|
"description": "Auto-generated snips action template.",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"dependencies": {
|
||||||
|
"hermes-javascript": "^0.1.0",
|
||||||
|
"ini": "^1.3.5"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
#/usr/bin/env bash -e
|
||||||
|
|
||||||
|
npm install
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name":"javascript",
|
||||||
|
"language":"JAVASCRIPT",
|
||||||
|
"prelude": "/*\n Your action code will be wrapped inside a function with the following signature:\n\n function(message, flow, config) { /* action code */ }\n\n Where:\n - 'message' is the intent message object\n - 'flow' is the hermes-javascript flow object (see: https://github.com/snipsco/hermes-protocol/tree/develop/platforms/hermes-javascript#dialogflow for mode details)\n - 'config' is an object containing your App parameters\n `config.global.parameterName` or `config.secret.secretParameterName`\n*/\n",
|
||||||
|
"postlude": ""
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
# Generated Snips skill
|
||||||
|
|
||||||
|
This is a generated Python 2 snips app using the `snips-template` tool.
|
||||||
|
It is compatible with the format expected by the `snips-skill-server`
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
This app requires some python dependencies to work properly, these are
|
||||||
|
listed in the `requirements.txt`. You can use the `setup.sh` script to
|
||||||
|
create a python virtualenv that will be recognized by the skill server
|
||||||
|
and install them in it.
|
||||||
|
|
||||||
|
## Executables
|
||||||
|
|
||||||
|
This dir contains a number of python executables named `action-*.py`.
|
||||||
|
One such file is generated per intent supported. These are standalone
|
||||||
|
executables and will perform a connection to MQTT and register on the
|
||||||
|
given intent using the `hermes-python` helper lib.
|
@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env python2
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
import ConfigParser
|
||||||
|
from hermes_python.hermes import Hermes
|
||||||
|
from hermes_python.ffi.utils import MqttOptions
|
||||||
|
from hermes_python.ontology import *
|
||||||
|
import io
|
||||||
|
|
||||||
|
CONFIGURATION_ENCODING_FORMAT = "utf-8"
|
||||||
|
CONFIG_INI = "config.ini"
|
||||||
|
|
||||||
|
class SnipsConfigParser(ConfigParser.SafeConfigParser):
|
||||||
|
def to_dict(self):
|
||||||
|
return {section : {option_name : option for option_name, option in self.items(section)} for section in self.sections()}
|
||||||
|
|
||||||
|
|
||||||
|
def read_configuration_file(configuration_file):
|
||||||
|
try:
|
||||||
|
with io.open(configuration_file, encoding=CONFIGURATION_ENCODING_FORMAT) as f:
|
||||||
|
conf_parser = SnipsConfigParser()
|
||||||
|
conf_parser.readfp(f)
|
||||||
|
return conf_parser.to_dict()
|
||||||
|
except (IOError, ConfigParser.Error) as e:
|
||||||
|
return dict()
|
||||||
|
|
||||||
|
def subscribe_intent_callback(hermes, intentMessage):
|
||||||
|
conf = read_configuration_file(CONFIG_INI)
|
||||||
|
action_wrapper(hermes, intentMessage, conf)
|
||||||
|
|
||||||
|
|
||||||
|
def action_wrapper(hermes, intentMessage, conf):
|
||||||
|
{{#each action_code as |a|}}{{a}}
|
||||||
|
{{/each}}
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
mqtt_opts = MqttOptions()
|
||||||
|
with Hermes(mqtt_options=mqtt_opts) as h:
|
||||||
|
h.subscribe_intent("{{intent_id}}", subscribe_intent_callback) \
|
||||||
|
.start()
|
@ -0,0 +1,3 @@
|
|||||||
|
# Bindings for the hermes protocol
|
||||||
|
hermes-python>=0.2
|
||||||
|
|
@ -0,0 +1,20 @@
|
|||||||
|
#/usr/bin/env bash -e
|
||||||
|
|
||||||
|
VENV=venv
|
||||||
|
|
||||||
|
if [ ! -d "$VENV" ]
|
||||||
|
then
|
||||||
|
|
||||||
|
PYTHON=`which python2`
|
||||||
|
|
||||||
|
if [ ! -f $PYTHON ]
|
||||||
|
then
|
||||||
|
echo "could not find python"
|
||||||
|
fi
|
||||||
|
virtualenv -p $PYTHON $VENV
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
. $VENV/bin/activate
|
||||||
|
|
||||||
|
pip install -r requirements.txt
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name":"python2",
|
||||||
|
"language":"PYTHON_2",
|
||||||
|
"prelude": "\"\"\" Write the body of the function that will be executed once the intent is recognized. \nIn your scope, you have the following objects : \n- intentMessage : an object that represents the recognized intent\n- hermes : an object with methods to communicate with the MQTT bus following the hermes protocol. \n- conf : a dictionary that holds the skills parameters you defined. \n To access global parameters use conf['global']['parameterName']. For end-user parameters use conf['secret']['parameterName'] \n \nRefer to the documentation for further details. \n\"\"\" ",
|
||||||
|
"postlude": ""
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
# Generated Snips skill
|
||||||
|
|
||||||
|
This is a generated Python 3 snips app, using the `snips-template` tool.
|
||||||
|
It is compatible with the format expected by the `snips-skill-server`
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
This app requires some python dependencies to work properly, these are
|
||||||
|
listed in the `requirements.txt`. You can use the `setup.sh` script to
|
||||||
|
create a python virtualenv that will be recognized by the skill server
|
||||||
|
and install them in it.
|
||||||
|
|
||||||
|
## Executables
|
||||||
|
|
||||||
|
This dir contains a number of python executables named `action-*.py`.
|
||||||
|
One such file is generated per intent supported. These are standalone
|
||||||
|
executables and will perform a connection to MQTT and register on the
|
||||||
|
given intent using the `hermes-python` helper lib.
|
@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
import configparser
|
||||||
|
from hermes_python.hermes import Hermes
|
||||||
|
from hermes_python.ffi.utils import MqttOptions
|
||||||
|
from hermes_python.ontology import *
|
||||||
|
import io
|
||||||
|
|
||||||
|
CONFIGURATION_ENCODING_FORMAT = "utf-8"
|
||||||
|
CONFIG_INI = "config.ini"
|
||||||
|
|
||||||
|
class SnipsConfigParser(configparser.SafeConfigParser):
|
||||||
|
def to_dict(self):
|
||||||
|
return {section : {option_name : option for option_name, option in self.items(section)} for section in self.sections()}
|
||||||
|
|
||||||
|
|
||||||
|
def read_configuration_file(configuration_file):
|
||||||
|
try:
|
||||||
|
with io.open(configuration_file, encoding=CONFIGURATION_ENCODING_FORMAT) as f:
|
||||||
|
conf_parser = SnipsConfigParser()
|
||||||
|
conf_parser.readfp(f)
|
||||||
|
return conf_parser.to_dict()
|
||||||
|
except (IOError, configparser.Error) as e:
|
||||||
|
return dict()
|
||||||
|
|
||||||
|
def subscribe_intent_callback(hermes, intentMessage):
|
||||||
|
conf = read_configuration_file(CONFIG_INI)
|
||||||
|
action_wrapper(hermes, intentMessage, conf)
|
||||||
|
|
||||||
|
|
||||||
|
def action_wrapper(hermes, intentMessage, conf):
|
||||||
|
{{#each action_code as |a|}}{{a}}
|
||||||
|
{{/each}}
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
mqtt_opts = MqttOptions()
|
||||||
|
with Hermes(mqtt_options=mqtt_opts) as h:
|
||||||
|
h.subscribe_intent("{{intent_id}}", subscribe_intent_callback) \
|
||||||
|
.start()
|
@ -0,0 +1,3 @@
|
|||||||
|
# Bindings for the hermes protocol
|
||||||
|
hermes-python>=0.2
|
||||||
|
|
@ -0,0 +1,20 @@
|
|||||||
|
#/usr/bin/env bash -e
|
||||||
|
|
||||||
|
VENV=venv
|
||||||
|
|
||||||
|
if [ ! -d "$VENV" ]
|
||||||
|
then
|
||||||
|
|
||||||
|
PYTHON=`which python3`
|
||||||
|
|
||||||
|
if [ ! -f $PYTHON ]
|
||||||
|
then
|
||||||
|
echo "could not find python"
|
||||||
|
fi
|
||||||
|
virtualenv -p $PYTHON $VENV
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
. $VENV/bin/activate
|
||||||
|
|
||||||
|
pip install -r requirements.txt
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name":"python3",
|
||||||
|
"language":"PYTHON_3",
|
||||||
|
"prelude": "\"\"\" Write the body of the function that will be executed once the intent is recognized. \nIn your scope, you have the following objects : \n- intentMessage : an object that represents the recognized intent\n- hermes : an object with methods to communicate with the MQTT bus following the hermes protocol. \n- conf : a dictionary that holds the skills parameters you defined. \n To access global parameters use conf['global']['parameterName']. For end-user parameters use conf['secret']['parameterName'] \n \nRefer to the documentation for further details. \n\"\"\" ",
|
||||||
|
"postlude": ""
|
||||||
|
}
|
Loading…
Reference in New Issue