import yaml from colorama import Fore def clean_input(prompt: str = ""): try: return input(prompt) except KeyboardInterrupt: print("You interrupted Auto-GPT") print("Quitting...") exit(0) def validate_yaml_file(file: str): try: with open(file, encoding="utf-8") as fp: yaml.load(fp.read(), Loader=yaml.FullLoader) except FileNotFoundError: return (False, f"The file {Fore.CYAN}`{file}`{Fore.RESET} wasn't found") except yaml.YAMLError as e: return ( False, f"There was an issue while trying to read with your AI Settings file: {e}", ) return (True, f"Successfully validated {Fore.CYAN}`{file}`{Fore.RESET}!") def readable_file_size(size, decimal_places=2): """Converts the given size in bytes to a readable format. Args: size: Size in bytes decimal_places (int): Number of decimal places to display """ for unit in ["B", "KB", "MB", "GB", "TB"]: if size < 1024.0: break size /= 1024.0 return f"{size:.{decimal_places}f} {unit}"