Le traitement automatique du langage naturel (TALN) vous permet de comprendre les messages que les personnes envoient et d’en extraire des informations significatives (intentions, entités et caractéristiques). Vous pouvez alors utiliser ces informations pour identifier l’intention, automatiser certaines de vos réponses, acheminer la conversation vers une personne grâce à une discussion en direct et recueillir des données d’audience.
Si vous tirez actuellement profit d’une API de TALN, vous devez passer un appel supplémentaire lorsque vous recevez le message de l’utilisateur·trice, ce qui ajoute de la latence et de la complexité (par exemple : asynchronisme, dépannage, etc.). Avec le TALN intégré, les intentions et les entités sont automatiquement détectées dans chacun des messages texte envoyés.
Lorsque le TALN intégré de Messenger est activé pour votre Page Facebook, il détecte automatiquement la signification et l’intention des messages texte avant qu’ils soient envoyés à votre expérience Messenger. Le message vous est retransmis comme d’habitude, avec toutes les entités détectées dans le corps. Consultez la section Gestion d’un message avec des entités.
Par défaut, le TALN intégré de Messenger détecte les informations suivantes :
Informations | Entité ou caractéristique |
---|---|
Salutations (en anglais uniquement) |
|
Remerciements (en anglais uniquement) |
|
Au revoir (en anglais uniquement) |
|
Date/heure |
|
Quantité d’argent |
|
Numéro de téléphone |
|
Adresse e-mail |
|
Distance |
|
Quantité |
|
Température |
|
Volume |
|
Lieu |
|
Durée |
|
URL |
|
Sentiment |
|
Les dates et heures sont automatiquement localisées en fonction du paramètre régional envoyé dans le profil de l’utilisateur.
Par exemple, si une personne envoie le message « demain à 14 h » ou « 2 jours avant Noël », vous recevrez le timestamp exact avec le message.
Par défaut, le TALN intégré prend en charge les langues mentionnées ici. Pour les autres langues, consultez la section Personnalisation du TALN par Wit.ai.
Langue | Code de langue | Modèle d’API Graph |
---|---|---|
Arabe | ar | ARABIC |
Chinois (simplifié et traditionnel) | zh, zh-Hans, zh-Hant | CHINESE |
Croate | hr | CROATIAN |
Danois | da | DANISH |
Néerlandais | nl | DUTCH |
Anglais | en | ENGLISH |
Français | fr | FRENCH_STANDARD |
Géorgien | ka | GEORGIAN |
Allemand | de | GERMAN_STANDARD |
Grec | el | GREEK |
Irlandais | ga | IRISH |
Italien | it | ITALIAN_STANDARD |
Hébreu (moderne) | he | HEBREW |
Hongrois | hu | HUNGARIAN |
Coréen | ko | KOREAN |
Norvégien (Bokmål) | nb | NORWEGIAN_BOKMAL |
Polonais | pl | POLISH |
Portugais | pt | PORTUGUESE |
Roumain | ro | ROMANIAN |
Espagnol | es | SPANISH |
Suédois | sv | SWEDISH |
Vietnamien | vi | VIETNAMESE |
Pour activer le TALN intégré, procédez comme suit :
Le TALN intégré prend également en charge les paramètres avancés suivants, qui vous permettent de personnaliser davantage l’objet nlp
inclus dans les évènements webhook messages
. Pour activer ou désactiver ces paramètres, cliquez sur le bouton Paramètres avancés :
Vous pouvez également utiliser l’API Graph pour activer le TALN intégré au moyen d’un programme :
curl -i -X POST \
-d "access_token=$PAGE_APP_ACCESS_TOKEN" \
"https://graph.facebook.com/v7.0/me/nlp_configs?nlp_enabled=$NLP_ENABLED"
Vous devez ajouter le paramètre nlp_enabled
qui activera ou désactivera le TALN pour cette Page.
Lorsque le TALN intégré est activé, une clé nlp
apparaît dans la requête envoyée à votre webhook message
.
Par exemple, le message « salut, on se voit demain à 16 h » pourrait inclure les informations suivantes :
{...,
"entities": {
"wit$datetime:datetime": [
{
"id": "340464963587159",
"name": "wit$datetime",
"role": "datetime",
"start": 8,
"end": 23,
"body": "tomorrow at 4pm",
"confidence": 0.9704,
"entities": [],
"type": "value",
"grain": "hour",
"value": "2020-06-16T16:00:00.000-07:00",
"values": [
{
"type": "value",
"grain": "hour",
"value": "2020-06-16T16:00:00.000-07:00"
}
]
}
]
},
"traits": {
"wit$sentiment": [
{
"id": "5ac2b50a-44e4-466e-9d49-bad6bd40092c",
"value": "neutral",
"confidence": 0.6162
}
]
}
Pour chaque message, la plateforme Messenger renvoie un mappage des valeurs entities
et traits
qui ont été capturées avec leurs données structurées. Les informations clés ici sont les éléments confidence
et value
pour chaque entité ou caractéristique.
confidence
est une valeur comprise entre 0 et 1 qui indique la probabilité, selon l’analyseur, que sa reconnaissance soit correcte.
value
est la sortie de l’analyseur. Par exemple, 2pm peut être converti en une chaîne ISO que vous pouvez utiliser, telle que « 2017-05-10T14:00:00.000-07:00 ».
Pour en savoir plus sur la structure JSON de toutes les entités et caractéristiques, reportez-vous à la documentation Wit.ai.
Dans votre webhook messages
, vous pouvez mettre à jour la logique utilisée pour répondre aux messages en tirant profit du TALN par défaut. Par exemple, si vous avez une fonction handleMessage()
dans votre webhook qui répond à chaque message que vous recevez, vous pouvez utiliser l’entité greetings
pour envoyer une réponse appropriée :
function firstTrait(nlp, name) {
return nlp && nlp.entities && nlp.traits[name] && nlp.traits[name][0];
}
function handleMessage(message) {
// check greeting is here and is confident
const greeting = firstTrait(message.nlp, 'wit$greetings');
if (greeting && greeting.confidence > 0.8) {
sendResponse('Hi there!');
} else {
// default logic
}
}
Répliquez cette logique pour d’autres entités et caractéristiques et l’utilisation du TALN intégré n’aura alors plus de secret pour vous !
L’identification de la langue vous permet de gérer plusieurs langues. Elle est automatiquement activée avec le TALN intégré. La clé nlp
dans la requête envoyée à votre message
webhook renverra les principales langues détectées pour le message. Par exemple, le message « bonjour les amis » pourrait inclure :
{
...,
"detected_locales": [
{
"locale": "fr_XX",
"confidence": 0.9986
},
{
"locale": "ar_AR",
"confidence": 0.0014
}
]
}
avec un niveau de fiabilité compris entre 0 et 1.
Vous pouvez ensuite utiliser ces informations pour gérer correctement les requêtes entrantes.
Vous pouvez affecter une application Wit.ai différente (en utilisant au choix un modèle par défaut ou un modèle personnalisé pour les langues prises en charge) à chacune des langues que vous voulez prendre en charge. Lorsque la plateforme Messenger reçoit un message, elle commence par détecter la langue principale, puis utilise l’application Wit.ai pour extraire les entités. Si aucune application Wit.ai n’est associée à la langue principale détectée, le modèle de langue par défaut est utilisé.
Vous pouvez personnaliser le TALN intégré de Messenger afin de détecter des intentions, des entités et des caractéristiques supplémentaires en anglais, ainsi que dans les 132 langues prises en charge par Wit.ai.
Pour personnaliser le TALN avec Wit.ai, procédez comme suit :
Vous pouvez également mettre à jour les paramètres du TALN grâce à un programme avec une requête POST
à l’API Graph :
curl -i -X POST \
-d "access_token=$PAGE_APP_ACCESS_TOKEN" \
"https://graph.facebook.com/v2.8/me/nlp_configs?nlp_enabled=$NLP_ENABLED&&custom_token=$CUSTOM_TOKEN"
Les paramètres de requête suivants sont pris en charge :
Propriété | Type | Description |
---|---|---|
| Booléen | Facultatif. Indique si le TALN est activé pour la Page. |
| Énumération | Facultatif. Indique le modèle TALN à utiliser. Soit un modèle par défaut, soit un modèle « CUSTOM » (personnalisé). |
| Chaîne | Facultatif. Token de serveur Wit.ai pour l’intégration d’un modèle personnalisé. |
| Chaîne | Facultatif. Indique la version de l’API Wit à utiliser. |
| Entier | Facultatif. Le nombre maximum d’entités, de caractéristiques et de langues détectées à renvoyer, par ordre décroissant de fiabilité. Valeur minimale : 1. Valeur maximale : 8. Valeur par défaut : 1. |
| JSON | Facultatif. Indique le mappage d’assistance linguistique à utiliser. Accepte un objet JSON de code de langue ISO 639-1 valide mappé sur un objet présenté sous la forme {"model": Enum, ?"token": string}. Le modèle est « default » ou « custom » et le « token » est nécessaire lorsque « custom » est indiqué. Exemple : {"en": {"model": "default"}, "zh: {"model": "custom", "token": $TOKEN}}. Remplace la valeur précédente. |
Grâce à l’intégration du TALN intégré à la messagerie de la Page, vous pouvez créer automatiquement une application Wit.ai et l’amorcer à l’aide d’anciennes conversations de votre Page, directement depuis les paramètres de la console de votre application Facebook. Ces échantillons compilés dans votre application Wit.ai sont basés sur de vraies conversations avec vos utilisateurs et utilisatrices, telles qu’elles peuvent être lues sur votre Page.
Pour tester la nouvelle fonctionnalité de messagerie de Page à TALN intégré avec votre expérience Messenger, procédez comme suit :
Des échantillons aléatoires d’anciennes conversations de la messagerie de Page seront compilés et apparaîtront dans la nouvelle application Wit. Vous pourrez identifier instantanément ces échantillons dans votre application Wit.ai.