How to handle if an entity is not recognized from an phrase

I am using SpacyEnityExtractor (mostly) and DIETclassifier (rarely) to extract a person’s name from a user input phrase during Form filling. But for some cases neither of this extractor, extract the entity from input phrase. Can someone tell me how to handle this situation

  1. I have one solution in my mind, if the extractor fails 2 or 3 times then store the user input text into a slot, without using an entity extractor (tracker.latest_message.get(“text”)), But I don’t know how to handle it.

This is how my code is right now

def extract_person(self, dispatcher, tracker, domain):
    extractor_list = tracker.latest_message['entities']
    if len(extractor_list)>0:
        confid = 0
        for elements in extractor_list[::-1]:
            if elements['entity']== 'PERSON':
                if elements['extractor'] == 'SpacyEntityExtractor':
                    person_name = elements['value']
                    break
                if elements['extractor'] == 'DIETClassifier':
                    if elements['confidence_entity'] > confid:
                        person_name = elements['value']
    return{"person":person_name}

Try having more examples. The extraction for names is especially difficult since they can be so different. Try using Lookup Tables like this one.

but that won’t cover 1 % of possible name, could you please suggest me a way to get the count of fallback or the number of times a slot being requested in a session.