nikraf's picture
Upload folder using huggingface_hub
714cf46 verified
import os
import torch
import shutil
import pyfiglet
from functools import partial
torch_load = partial(torch.load, map_location='cpu', weights_only=True)
def clear_screen():
os.system('cls' if os.name == 'nt' else 'clear')
def print_message(message: str):
try:
terminal_width = shutil.get_terminal_size().columns
except:
terminal_width = 50
print('\n' + '-' * terminal_width)
print(f'\n{message}\n')
print('-' * terminal_width + '\n')
def print_title(title: str):
print(pyfiglet.figlet_format(title, font='3d-ascii'))
def print_done():
print(pyfiglet.figlet_format('== Done ==', font='js_stick_letters'))
def expand_dms_ids_all(dms_ids, mode: str = None):
"""
Expand 'all' to actual DMS IDs from benchmarks.proteingym.dms_ids.
"""
if any(str(x).lower() == 'all' for x in dms_ids):
if mode == 'indels':
from benchmarks.proteingym.dms_ids import ALL_INDEL_DMS_IDS
dms_ids = list(ALL_INDEL_DMS_IDS)
else:
from benchmarks.proteingym.dms_ids import ALL_SUBSTITUTION_DMS_IDS
dms_ids = list(ALL_SUBSTITUTION_DMS_IDS)
return dms_ids
def maybe_compile(model: torch.nn.Module):
if os.name == 'posix':
try:
torch.compile(model, dynamic=True)
print_message("Model compiled")
except:
print_message("Not linux system, will not compile model")
return model
if __name__ == '__main__':
folders_to_clean = ['logs', 'results', 'plots', 'embeddings', 'weights']
for folder in folders_to_clean:
if os.path.exists(folder):
files = os.listdir(folder)
if files:
response = input(f"Do you want to delete all files in '{folder}' folder? ({len(files)} files) [y/N]: ")
if response.lower() == 'y':
for file in files:
file_path = os.path.join(folder, file)
if os.path.isfile(file_path):
os.remove(file_path)
print(f"All files in '{folder}' have been deleted.")
else:
print(f"Skipped cleaning '{folder}' folder.")
else:
print(f"'{folder}' folder is already empty.")
else:
print(f"'{folder}' folder does not exist.")