| from pathlib import Path |
| from huggingface_hub import snapshot_download |
|
|
| |
| local_dir = "/Users/jeqin/work/code" |
| |
| repos = { |
| "Qwen/Qwen2.5-0.5B-Instruct": [], |
| |
| } |
|
|
| def download(repo, files): |
| folder = repo.split('/')[-1] |
| print(f"start download {repo}") |
| for retry in range(5): |
| try: |
| if not files: |
| |
| snapshot_download(repo_id=repo, local_dir=f"{local_dir}/{folder}", |
| |
| |
| local_dir_use_symlinks=False) |
| print(f"download {repo} finished") |
| break |
| else: |
| |
| snapshot_download(repo_id=repo, local_dir=f"{local_dir}/{folder}", allow_patterns=files, |
| local_dir_use_symlinks=False) |
| print(f"download {repo} finished") |
| break |
| except Exception as e: |
| print(e) |
| print(f"download failed, retry: {retry + 1}") |
|
|
|
|
| def main(): |
| for repo, files in repos.items(): |
| download(repo, files) |
|
|
|
|
| if __name__ == '__main__': |
| main() |
|
|