Would a custom featurizer allow entities to drive stories?

I wrote a small fuzzy-entity-extractor using RegexExtractor as a reference and rapidfuzz.

My intentions were to be able to use the entities in the stories/rules e.g.

  intent: create-something
  examples: |
    - I want to create [what]
    - Could you help me create [what]
    - create [what]
  - story: Use wants to create something we don't know how yet
      - intent: create-something
      - action: utter-create-something-fallback
  - story: User wants to create a post
      - intent: create-something
          - what: post
      - action: create-post

But it looks like this doesn’t work that way and one would need to create synthetic slots for this purpose. I feel that this is going to be tedious and harder to keep in sync so I’m exploring alternatives before commiting to the approach.

Entities can only direct a story based on the name , value is not taken into consideration.

I understand that this is because the available featurizer (e.g. RegexFeaturizer) only tell’s rasa about the existence of an entity, but not about it’s value. i.e. The entity type is there or not.

Suppose I know how many values an entity can have at training time.

  • Would it be possible to build a featurizer that would help the entities to drive the stories?
  • What else would I need to provide (any changes in elements from the policies/ pipeline)?

Alternatively, would it be possible to automate with some pipeline element the slot creation/sync?