2017-06-16 2 views
0

Sur Watson Conversation, lorsque l'utilisateur a mis une mauvaise date (ie. 30/02/2017), même si @ sys jour entité renvoie deux dates (01/01/2017 et 31/12/2017). Je voudrais savoir comment ignorer ce retour.Comment ignorer un retour du @ sys-date à laquelle la date de prise est différente forme l'entrée utilisateur

+0

Quel est le contexte (jeu de mots)? Est-ce une partie de la boîte de dialogue ou dans une application? Vous pouvez utiliser des prédicats –

Répondre

0

Dans votre cas, avec une date non valide, vous devriez avoir les informations suivantes capturé pour vous d'évaluer:

  • La date 01/01/2017 avec un emplacement faisant référence au texte d'entrée 30/02/2017. Livré en tant qu'entité sys-date.
  • Une autre date de 31/12/2017 avec le même emplacement se référant au texte d'entrée 30/02/2017. Encore une fois un sys-date.
  • Optionnellement entités de sys-number avec les valeurs 30, 2, 2017 avec le point d'emplacement à des parties de 30/02/2017.

Vous devez vérifier si deux dates système sont présentes et si elles se réfèrent au même emplacement. Là, vous pouvez obtenir l'entrée d'origine et lancer vos propres vérifications.

BTW: Je l'ai testé cela avec un espace de travail presque vide, puis avec my conversation tool qui déverse l'ensemble de l'objet de réponse.

Full response object: 
--------------------- 
{ 
    "entities": [ 
    { 
     "confidence": 1, 
     "metadata": { 
     "timezone": "GMT", 
     "calendar_type": "GREGORIAN" 
     }, 
     "location": [ 
     18, 
     22 
     ], 
     "value": "2017-01-01", 
     "entity": "sys-date" 
    }, 
    { 
     "confidence": 1, 
     "metadata": { 
     "timezone": "GMT", 
     "calendar_type": "GREGORIAN" 
     }, 
     "location": [ 
     18, 
     22 
     ], 
     "value": "2017-12-31", 
     "entity": "sys-date" 
    }, 
    { 
     "confidence": 1, 
     "metadata": { 
     "numeric_value": 30 
     }, 
     "location": [ 
     12, 
     14 
     ], 
     "value": "30", 
     "entity": "sys-number" 
    }, 
    { 
     "confidence": 1, 
     "metadata": { 
     "numeric_value": 2 
     }, 
     "location": [ 
     15, 
     17 
     ], 
     "value": "2", 
     "entity": "sys-number" 
    }, 
    { 
     "confidence": 1, 
     "metadata": { 
     "numeric_value": 2017 
     }, 
     "location": [ 
     18, 
     22 
     ], 
     "value": "2017", 
     "entity": "sys-number" 
    } 

...

"input": { 
"text": "What day is 30/02/2017 on" 

}}