<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def load_gpi(self, gpi_path):
 """ Loads a GPI as a file from the `config.gpi_authority_path` """

    if self.config.gpi_authority_path is not None:
        gpis = dict()
        parser = entityparser.GpiParser()
        with open(self.config.gpi_authority_path) as gpi_f:
            entities = parser.parse(file=gpi_f)
            for entity in entities:
                gpis[entity["id"]] = {
                    "symbol": entity["label"],
                    "name": entity["full_name"],
                    "synonyms": entitywriter.stringify(entity["synonyms"]),
                    "type": entity["type"]
                }
        return gpis

    # If there is no config file path, return None
    return None