.net - LUIS Intent 不返回带有空格的实体的全部值
问题描述
我创建了一个这样的 LUIS 话语,其中包含一个简单的实体:客户 abc 的订单处理中
其中 abc 被简单实体 vf_NARCName 替换
当我在机器人中输入以下问题时:客户动物皮肤病医院的订单正在处理中
这里的客户名称是 Animal Dermatology Hospital,它由空格分隔,然后当我通过 LUIS Rest API 获取数据时,我将 Animal 作为实体值而不是 Animal Dermatology Hospital,有时也没有返回实体值
{
"query": " orders in process for customer Animal Dermatology Service",
"topScoringIntent": {
"intent": "OrderDetails_2a598c9b-7cb5-4113-9aca-435b55bbe19e",
"score": 0.7547371
},
返回数据
{
"query": "how many orders are currently in process for customer Animal Dermatology Service",
"topScoringIntent": {
"intent": "OrderDetails_2a598c9b-7cb5-4113-9aca-435b55bbe19e",
"score": 0.6452578
},
"entities": []
}
但是如果我只用 Animal 查询它,那么正确的数据就会返回
返回数据
{
"query": "how many orders are currently in process for customer Animal",
"topScoringIntent": {
"intent": "OrderDetails_2a598c9b-7cb5-4113-9aca-435b55bbe19e",
"score": 0.8928922
},
"entities": [
{
"entity": "animal",
"type": "vf_NARCName",
"startIndex": 54,
"endIndex": 59,
"score": 0.500023663
}
]
}
解决方案
您的 LUIS 应用本质上需要更多关于该实体如何发生的表述。
我会说 stategy 1.) 可能是最有用的,但请列出您可能包含的其他选项以帮助您进行实体检测。
- 添加更多具有 vf_NARCName 实体的有价值变体的话语
如“构建应用程序”部分下的文档中的第一个教程中所述,请确保您包括:
- 每个意图至少15 个话语,其中包括实体如何出现的不同方式
您应该注意包括的变化是:
- 词序的差异(实体可以出现在话语中)
- 时态(如“was”、“is”、“will be”,如本教程所示)
- 语法正确
- 话语和实体本身的长度(字数)
最后一点可能是您应该包含更多示例的内容。因此,请检查您的话语是否包含vf_NARCName
长度不只是 1 个单词,而是 2 或 3 个甚至更长的实体(如果在您的应用中可能的话)。
- 添加短语列表
作为描述短语列表状态的文档,
短语列表包括一组属于同一类的值(单词或短语),并且必须以类似方式对待
这是您可以帮助向 LUIS 发送另一个信号以帮助检测您的vf_NARCName
实体的另一种方式。
关于如何在此处添加短语列表的教程。
- 最后,您可能想研究使用 Pattern.any
正如Pattern.any 文档在这里所说,
使用 pattern.any 实体从话语中提取数据,其中话语格式正确,并且数据的结尾可能很容易与话语的其余单词混淆
因此,如果您知道您可能拥有vf_NARCName
实体本身的字数非常长的潜在实体,那么您可能会从使用 Pattern.any 实体中受益。
例如,也许您将“ The Department of People Who like Really Long Names, But Hate Novels
”作为一个vf_NARCName
实体。LUIS 可能很难确定该实体的确切结束位置,但可以使用 Pattern.any 来确定。
推荐阅读
- angular - 如何在ionic 3中将长文本裁剪为...
- python-3.x - 错误:打开 Google App Engine Python 域时出现错误的网关 502
- matplotlib - 为什么 IDLE 和 Spyder 中的 Matplotlib GUI 会发生变化?
- python - 如何获取工作 ID 或气流 DataFlowJavaOperator() 的结果?
- c# - 选择 Tag Helper 获取值和文本
- css - 如何针对仅限 Chrome 的浏览器 CSS
- java - 获取反应流的排列
- sql-server - TFS 构建:System.IO.FileNotFoundException:找不到文件
- r - 如何复制问题的嵌套 JSON 列表?
- reactjs - dockerized React 应用程序中的 VSCode + Typescript