Voordelen
Nadelen
Componenten Chatbot
States
states: [
state_name: { phrase: 'Dit vraagt de chatbot' }
...
]
Rules
rules: [
state_name: [
{ next_state: :next_state, keywords: [
'woorden', 'om', 'te', 'herkennen'
] },
...
]
Shingles
Shingle: woord opgedeeld in deelwoorden van vaste lengte k
Voorbeeld 2-shingles:
'appel' -> ['ap', 'pp', 'pe', 'el']
Idee: Input opsplitsen in shingles en tellen hoeveel shingles voorkomen in elk keyword
Similarity functie
score = matches / shingle_size(keyword)
Score
Matches
Score
Matches
score = sqrt(matches) / sqrt(shingle_size(keyword))