def name_entity_creation()

in microservices/extraction_service/src/utils/utils_functions.py [0:0]


def name_entity_creation(entity_dict, name_list):
  """
    This function is to create name from Fname and Gname.
    Can be re-used if it helps
    Parameters
    ----------
    entity_dict: extracted entities dict
    name_list: list of varibles required to create name
    Returns : derived name entitity dict
    -------
  """
  name = ""
  confidence = 0

  # loop through all the name variables used for name creation
  for each_name in name_list:
    parser_extracted_name = entity_dict[each_name]["value"]
    if parser_extracted_name:
      name += parser_extracted_name
      confidence += entity_dict[each_name]["extraction_confidence"]

  if name.strip():
    name = name.strip()
    confidence = round(confidence / len(name_list), 2)
  else:
    name = None
    confidence = None

  name_dict = {
      "entity": "Name", "value": name,
       "extraction_confidence": confidence,
       "manual_extraction": False,
        "corrected_value": None}

  return name_dict