def default_entities_extraction()

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


def default_entities_extraction(parser_entities, default_entities,doc_type):
  """
   This function extracted default entities
   Parameters
   ----------
   parser_entities: Specialized parser entities
   default_entities: Default entites that need to extract from parser entities
   Returns : Default entites dict
   -------
  """
  parser_entities_dict = {}

  # retrieve parser given entities
  for each_entity in parser_entities:
    key, val, confidence = each_entity.get("type", ""), \
                           each_entity.get("mentionText", ""), round(
      each_entity.get("confidence", 0), 2)
    val = strip_value(val)
    parser_entities_dict[key] = [val, confidence]

  entity_dict = {}

  # create default entities
  for key in default_entities:
    if key in parser_entities_dict:
      entity_dict[default_entities[key][0]] = {
                 "entity": default_entities[key][0],
                 "value": parser_entities_dict[key][0],
                 "extraction_confidence": parser_entities_dict[key][1],
                 "manual_extraction": False,
                 "corrected_value": None}
    else:
      entity_dict[default_entities[key][0]] = {
                 "entity": default_entities[key][0], "value": None,
                 "extraction_confidence": None,
                 "manual_extraction": False,
                 "corrected_value": None}
  if doc_type == "utility_bill":
    if "supplier_address" in parser_entities_dict:
      if parser_entities_dict["supplier_address"][0] == "":
        if "receiver_address" in parser_entities_dict \
        and parser_entities_dict["receiver_address"][0]!="":
          entity_dict["reciever address"]["value"] = \
          parser_entities_dict["receiver_address"][0]
        else:
          if "service_address" in parser_entities_dict:
            entity_dict["reciever address"]["value"] = \
            parser_entities_dict["service_address"][0]
  return entity_dict