Bots 如何使用API.ai Dialogflow编写服务来更正实体中的拼写?

Bots 如何使用API.ai Dialogflow编写服务来更正实体中的拼写?,bots,botframework,dialogflow-es,Bots,Botframework,Dialogflow Es,在问这个问题之前,我彻底搜索了[api.ai]和[dialogflow]标记。 我每20秒查询一个API以获得一个json数组,下面的代码片段显示了数组中的一些对象 { "id": "pivx", "name": "PIVX", "symbol": "PIVX", "rank": "46", "price_usd": "8.65711", "price_btc": "0.00052161", "24h_volume_usd": "7948150.0", "market_cap_us

在问这个问题之前,我彻底搜索了[api.ai]和[dialogflow]标记。 我每20秒查询一个API以获得一个json数组,下面的代码片段显示了数组中的一些对象

{
"id": "pivx", 
"name": "PIVX", 
"symbol": "PIVX", 
"rank": "46", 
"price_usd": "8.65711", 
"price_btc": "0.00052161", 
"24h_volume_usd": "7948150.0", 
"market_cap_usd": "477700707.0", 
"available_supply": "55180159.0", 
"total_supply": "55180159.0", 
"max_supply": null, 
"percent_change_1h": "0.07", 
"percent_change_24h": "21.92", 
"percent_change_7d": "69.6", 
"last_updated": "1513821853", 
"price_eur": "7.2916846395", 
"24h_volume_eur": "6694543.93755", 
"market_cap_eur": "402356318.0"
}
我有一个机器人,其中的人经常键入“PIVY to USD”之类的内容。如何将“PIVY”更正为“PIVX”我想到了一些方法

  • 我将“PIVY to USD”标记为“PIVY”、“to”和“USD”,我删除了停止词,留下了“PIVY”和“USD”。我将每个词与数组中的所有符号进行比较,以获得levenshein分数最低的候选集。这种方法有意义吗
  • 如果我在API.ai上运行“PIVY to USD”,我只会得到USD,因为PIVY是实体PIVX的拼写错误
  • 我还有其他意图,所以如果这个人键入“你好”,我不想在这里用我数组中的所有符号标记和搜索每个单词
  • 如何纠正特定目的的拼写错误?一种方法是有两种意图:1)在纠正拼写错误之前检测货币的存在;2)实际转换货币?我正在使用Bot框架


    请给出你的建议。感谢您抽出时间阅读这一长长的问题

    在您的查询中,有几种方法可以遵循: 1) 如果您的用例仅用于将PIVX转换为美元,则基于意图的解决方案。 2) 如果要转换多个转换,则需要创建一个字典并检查键值对中的对话以避免错误。(并非每次都是为了在你的短语中获得转换和PIVY的意图)

    我希望这对你有帮助。 如果您需要更多帮助,请务必告诉我。

    谢谢您的回复:)非常感谢1)我的案例不仅限于pivx,因为我正在从任何东西转换为任何东西让我们谈谈2)我没有听您的,我已经有一个json,上面有所有符号,用户将PIVY键入USD,我们在这里做什么?模糊匹配每个单词?消除停止语?一旦我检查了拼写并得到了正确的实体值PIVX,我就可以把它发送给api,ai,它会变魔术的