Documentation

Do you use documentation to use NewBot Framework

Utiliser le système natif de NewBot Framework

Vous pouvez utiliser le système natif NLP afin de s'affranchir des plateformes tierces.

Avantages

  • Indépendant des plateformes tierces (pas besoin de DialogFlow ou autres)
  • Vous pouvez intégrer ce système directement dans le navigateur. Utile pour créer un chatbot offline

Inconvénients

  • Vous n'avez pas de visibilité sur les phrases utilisées par l'utilisateur. Sur les plateformes tierces, elles enregistrent les nouvelles phrases dans le but de les ajouter dans la compréhension du chatbot.
  • Extraction d'entités (un lieu, le nom d'une personne, etc.) est moins élaborée
  • Côté navigateur, votre chatbot sera plus lourd

cela permettra de générer du code différent côté navigateur et côté serveur

Créer des intentions avec des phrases à entraîner.

Dans le script conversationnel de la compétence, utilisons le décorateur Intent pour créer une intention :

@Intent('buy.product', [
    'I want an ice cream',
    'I want to buy a coffee'
])
buyProduct() {
    > Ok, I take your order
}

@Intent('buy.stop', [
    'cancel my order',
    'delete my purchase'
])
buyStop() {
    > Ok, I cancel the order
}

Après avoir créer des intentions, entraîner votre chatbot en tapant newbot train dans le terminal. Un fichier model/model.nlp est alors créé.

En construisant vos sources newbot build ou en testant avec newbot serve, l'entraînement est fait automatiquement

Phrases dans plusieurs langues.

Vous disposez de deux moyens

Ajouter les langues dans le script conversationnel

Dans le script conversationnel, voici comment nous pouvons ajouter des phrases par langue

@Intent('buy.product', {
    fr: [
        'Je veux une glace',
        'Je veux acheter un café'
    ],
    en: [
        'I want an ice cream',
        'I want to buy a coffee'
    ]
})
buyProduct() {
    > Ok, I take your order
}

Ajouter les langues dans le fichier .json

  1. Suivez le tutorial sur l'internationalisation
  2. Ajoutons plutôt les identifiants dans le tableau :

En admettant que le fichier languages/en_EN.json est le suivant

[
    {
        "want_ice_cream": "I want an ice cream",
        "want_coffee": "I want to buy a coffee"
    }, 
    {
        "plurial": {
            "p": [
                "s"
            ]
        }
    }
]

Voici le script conversationnel :

@Intent('buy.product', [
    '#want_ice_cream',
    '#want_coffee'
])
buyProduct() {
    > Ok, I take your order
}

Utiliser dans NodeJS

Intégrer le système NLP dans le navigateur

© 2019 NewBot