|
import os |
|
import sys |
|
import subprocess |
|
from huggingface_hub import hf_hub_download |
|
|
|
|
|
def run_command(command: str, cwd: str = None) -> tuple: |
|
"""Run a shell command in the specified directory and return the output.""" |
|
process = subprocess.Popen( |
|
command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=cwd |
|
) |
|
stdout, stderr = process.communicate() |
|
if process.returncode != 0: |
|
print(f"Error: {stderr.decode()}") |
|
else: |
|
print(f"Output: {stdout.decode()}") |
|
return stdout, stderr |
|
|
|
|
|
def download_dataset(): |
|
"""Download the dataset.""" |
|
print("Downloading the autocast dataset...") |
|
repo_id = "valory/autocast" |
|
base_dir = os.getcwd() |
|
output_dir = os.path.join( |
|
base_dir, "olas-predict-benchmark", "benchmark", "data", "autocast" |
|
) |
|
if not os.path.exists(output_dir): |
|
os.makedirs(output_dir, exist_ok=True) |
|
filenames = [ |
|
"autocast_questions_filtered.json", |
|
"autocast_questions_filtered.pkl", |
|
] |
|
for filename in filenames: |
|
hf_hub_download( |
|
repo_id=repo_id, |
|
filename=filename, |
|
local_dir=output_dir, |
|
repo_type="dataset", |
|
) |
|
print("Dataset downloaded successfully.") |
|
|
|
|
|
def start(): |
|
"""Start commands.""" |
|
print("Starting commands...") |
|
base_dir = os.getcwd() |
|
olas_dir = os.path.join(base_dir, "olas-predict-benchmark") |
|
mech_dir = os.path.join(olas_dir, "benchmark", "mech") |
|
|
|
commands = [ |
|
("git submodule init", base_dir), |
|
("git submodule update --init --recursive", base_dir), |
|
("git submodule update --remote --recursive", base_dir), |
|
( |
|
'git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"', |
|
olas_dir, |
|
), |
|
("git remote update", olas_dir), |
|
("git fetch --all", olas_dir), |
|
("git checkout main", olas_dir), |
|
("git pull origin main", olas_dir), |
|
("git checkout main", mech_dir), |
|
("git pull origin main", mech_dir), |
|
("pip install -e .", os.path.join(olas_dir, "benchmark")), |
|
("pip install -e .", mech_dir), |
|
("pip install lxml[html_clean]", base_dir), |
|
("pip install --upgrade huggingface_hub", base_dir), |
|
] |
|
|
|
for command, cwd in commands: |
|
run_command(command, cwd=cwd) |
|
|
|
|
|
sys.path.append(os.path.join(olas_dir, "benchmark")) |
|
|
|
|
|
download_dataset() |
|
|
|
|
|
start() |
|
|