处理拼写错误的实体

Handling misspelled entities

让我描述一下我的问题。我有 NLU 意图 get_food,示例如下:

version: "2.0"


nlu:
  - intent: get_food
    examples: |
      - I want to know more about [apple](food).
      - I am interested in [pear](food) nutrition facts.
      - Tell me something about [banana](food).
      - ...

  - lookup: food
    examples: |
      - apple
      - banana
      - peach
      - pear
      - avocado

想法是将提取的实体 food 存储到插槽 food 中(几乎)按预期工作。问题是当用户将 apple 拼错为 appel 时。它仍然被完美提取,但它将拼写错误的值 appel 存储到 food 槽中。有什么方法可以让我的 RASA 助手以最高的置信度选择查找 table 中列出的确切值,将此值存储到 food 槽中并忽略此查找中未列出的所有内容 table?例如,如果用户询问有关 appel 的详细信息,它将存储 applefood 槽中,但如果用户询问有关 pineapple 的详细信息,它将存储 null进入 food 或类似的东西。感谢您的任何建议。

您需要调用 custom action 来清除拼写错误。