如何处理在 dialogflow 中分为 2 个实体的实体?

How to handle entities that is dividied in 2 entiries in dialogflow?

我有一个短语

"Suggest me some good name for my son"
"Suggest me some good name for my daughter"

我创建了 2 个实体,一个是男性,一个是女性。我将它们分成 2 个实体。现在我想处理这两个实体。我应该为男女各处制作 2 个短语,还是有一种方法可以让我简单地写下我的一个短语,这将帮助我避免重复的短语。

我需要知道我的代码中有人在谈论女性和男性。谢谢

您可以有一个 composite entity Gender,其中 MaleFemale

然后在您的意图中创建一个 Template Mode 训练短语

@ Suggest me some good name for my @Gender:Gender

当你输入

Suggest me some good name for my daughter

您将获得 Gender 作为参数。

Gender.Female = 'daughter'

Gender.Male = 'son'如果你使用son

I need to know in my code where someone is talking about a Female and Male. Thanks

Javascript 例子

const parameters = result.parameters;

if(parameters.Gender && !!parameters.Gender.Female)
   console.log('Female');
else if(parameters.Gender && !!parameters.Gender.Male)
   console.log('Male');

没有复合实体的替代方案

创建一个 Gender(或任何你喜欢的)实体,具有 2 个值:malefemale 以及尽可能多的同义词。

male, male, boy, son, sons
female, female, girl, daughter, daughters

现在使用相同的 Template Mode 训练短语,您将获得一个参数:Gender,值为 femalemale