Spaces:
Sleeping
Sleeping
| import os | |
| from huggingface_hub import hf_hub_download | |
| import shutil | |
| def download_models(): | |
| # Create directories if they don't exist | |
| os.makedirs("weights/icon_detect", exist_ok=True) | |
| os.makedirs("weights/icon_caption_florence", exist_ok=True) | |
| # Define file mappings (repository path -> local path) | |
| files_to_download = { | |
| "icon_caption_florence/config.json": "weights/icon_caption_florence/config.json", | |
| "icon_caption_florence/generation_config.json": "weights/icon_caption_florence/generation_config.json", | |
| "icon_caption_florence/model.safetensors": "weights/icon_caption_florence/model.safetensors", | |
| "icon_detect/best.pt": "weights/icon_detect/best.pt" | |
| } | |
| # Download each file | |
| for repo_path, local_path in files_to_download.items(): | |
| if not os.path.exists(local_path): | |
| print(f"Downloading {repo_path}...") | |
| try: | |
| downloaded_file = hf_hub_download( | |
| repo_id="banao-tech/OmniParser", | |
| filename=repo_path, | |
| local_dir="temp" | |
| ) | |
| # Move the file to the correct location | |
| os.makedirs(os.path.dirname(local_path), exist_ok=True) | |
| shutil.move(downloaded_file, local_path) | |
| print(f"Successfully downloaded and moved to {local_path}") | |
| except Exception as e: | |
| print(f"Error downloading {repo_path}: {str(e)}") | |
| # Clean up temp directory | |
| if os.path.exists("temp"): | |
| shutil.rmtree("temp") | |
| if __name__ == "__main__": | |
| download_models() |