wolf-core icon indicating copy to clipboard operation
wolf-core copied to clipboard

Slot Entity Types

Open kevinleung23 opened this issue 6 years ago • 3 comments

Description: Allow slots to list entity types or "tags", which will allow Wolf to more intelligently match entities with potential slot matches and improve fill accuracy.

Current implementation: slot names are tightly coupled with entity types.

kevinleung23 avatar Jul 31 '18 15:07 kevinleung23

In v3 we will be introducing an architecture change to support many-to-many relationships between slots and abilities. The support for tags may be introduced in a minor release for v3 if we see a more developer need.

The argument for example: JFK and LAX are both [airport] but one is a destination and one is an origin. The simple fact that an entity is an [airport] may help Wolf understand that slots with the [airport] tags are a higher likely match.

kevinleung23 avatar Jan 25 '19 22:01 kevinleung23

Right now a user has conform the name of the NLU to the name of the slot. However that is not possible when using LUIS' builtin entities. The other solution is to create a tranformation mapping after the NLU stage and before invoking wolf. This is not optimal either because the user has to keep track of this mapping external to wolf.

It would be ideal that we can use this tag mechanism to look for the slot to fill, effectively doing the mapping for the user.

discussion topic: What if there are multiple slots associated with the same tag (ie 'builtin.number')? Do we expose an user-defined disambiguation function for the user to decide what to do?

howlowck avatar Mar 01 '19 18:03 howlowck

@KSLHacks, during testing this week, with latest fixes to wolf-core-alpha we actually ran into this case/issue after prompting for a slot, when the entity returned in the NLU maps to a different slot than the prompted one.

dnastrain avatar Mar 21 '19 22:03 dnastrain