Je suis en train de construire un bot avec Messenger botkit et le traitement du langage se fait via api.ai.Comment extraire uniquement les entités non intentes en chaîne à l'aide de NLP?
Les intentions d'Apiai sont un excellent moyen de guider l'utilisateur à travers l'expérience du bot. J'utilise des intentions prédéfinies pour comprendre ce que l'utilisateur veut faire et commencer une conversation avec lui en utilisant l'objet convo de botkit. À ce stade, j'ai des questions prédéfinies auxquelles l'utilisateur doit répondre.
Par exemple l'une des questions est "Quand est-ce arrivé?" et l'utilisateur peut répondre en texte brut. Je n'ai pas besoin d'apiai pour me dire l'intention (et je ne veux pas passer de temps à m'entraîner pour ça) parce que je sais déjà à quoi m'attendre. Donc je cherche un moyen d'extraire simplement le système et les entités définies par le développeur en chaîne. Donc, si l'utilisateur fournit la réponse "Je suis arrivé hier", je pourrais valider que j'ai des entités de date mais l'entité de temps est vide, donc je vais me promettre de donner aussi du temps.
J'ai lu des documents d'experts et d'autres concurrents et je n'ai trouvé aucun moyen de le faire. Il s'agit toujours de définir des intentions. Donc, fondamentalement - trouver et extraire des entités de la chaîne. Est-il possible et si - comment? Actuellement apiai est mon outil mais je suis prêt à le changer si nécessaire.
Avez-vous vérifié cela? https://docs.api.ai/docs/concept-entities#section-date-and-time est-ce que c'est ce que vous cherchez, ou a-t-il des restrictions qui ne fonctionnent pas pour vous? – jgranstrom
Oui, il y a des restrictions. L'utilisateur peut répondre de plusieurs façons différentes comme "hier", "j'étais hier", "c'est arrivé hier", .... Et former ce que je comprends, je suis obligé de créer l'intention pour cette question et former l'agent pour toutes ces réponses possibles des utilisateurs. Mais cela me semble stupide parce que je connais déjà l'intention. Ces entités du système sont très puissantes, donc je me demande pourquoi un développeur ne peut pas simplement chercher une chaîne pour lui. –
Je vois, vous cherchez un service hébergé pour ce faire, ou est-ce une option pour configurer vos propres API en utilisant des outils open source? – jgranstrom