Spaces:
Running
Running
File size: 1,775 Bytes
b3722a8 d390139 b3722a8 d390139 b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc b3722a8 49d0cfc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
import os
import yaml
from huggingface_hub import HfApi, HfFileSystem, hf_hub_download
from mlip_arena.models import MLIP
from mlip_arena.models import REGISTRY as MODEL_REGISTRY
with open(os.path.join(os.path.dirname(__file__), "registry.yaml")) as f:
REGISTRY = yaml.load(f, Loader=yaml.FullLoader)
class Task:
def __init__(self):
self.name: str = self.__class__.__name__ # display name on the leaderboard
def run_local(self, model: MLIP):
"""Run the task using the given model and return the results"""
raise NotImplementedError
def run_hf(self, model: MLIP):
"""Run the task using the given model and return the results"""
raise NotImplementedError
# Calcualte evaluation metrics and postprocessed data
api = HfApi()
api.upload_file(
path_or_fileobj="results.json",
path_in_repo=f"{self.__class__.__name__}/{model.__class__.__name__}/results.json", # Upload to a specific folder
repo_id="atomind/mlip-arena",
repo_type="dataset",
)
def run_nersc(self, model: MLIP):
"""Run the task using the given model and return the results"""
raise NotImplementedError
def get_results(self):
"""Get the results from the task"""
# fs = HfFileSystem()
# files = fs.glob(f"datasets/atomind/mlip-arena/{self.__class__.__name__}/*/*.json")
for model, metadata in MODEL_REGISTRY.items():
results = hf_hub_download(
repo_id="atomind/mlip-arena",
filename="results.json",
subfolder=f"{self.__class__.__name__}/{model}",
repo_type="dataset",
revision=None,
)
return results
|