in src/alpaca_eval/annotators/base.py [0:0]
def save(self, path: Optional[utils.AnyPath] = None):
"""Save all annotations to json."""
path = path or self.caching_path
if path is not None:
logging.info(f"Saving all annotations to {path}.")
# to make sure that we don't overwrite the annotations we load again from file (ideally would use a DB)
self._refresh_annotations_()
if not self.is_store_missing_annotations:
self.df_annotations = self.df_annotations[~self.df_annotations[self.annotation_key].isna()]
self.df_annotations.to_json(path, orient="records", indent=2)