remove_old_models.py 1.2 KB

12345678910111213141516171819202122232425
  1. import argparse
  2. from datetime import datetime
  3. from huggingface_hub import delete_repo, list_models
  4. if __name__ == "__main__":
  5. parser = argparse.ArgumentParser(description="Remove old testing models from HF hub")
  6. parser.add_argument("--author", type=str, default="bloom-testing", help="auth token for from_pretrained")
  7. parser.add_argument("--seconds_since_last_updated", type=int, default=7 * 24 * 60 * 60)
  8. parser.add_argument("--use_auth_token", type=str, default=None, help="auth token for from_pretrained")
  9. parser.add_argument("--dry_run", action="store_true")
  10. args = parser.parse_args()
  11. for model in list_models(author=args.author, full=True):
  12. last_modified = datetime.strptime(model.lastModified, "%Y-%m-%dT%H:%M:%S.%fZ")
  13. if model.modelId.endswith("-main") or "/test-" not in model.modelId:
  14. continue # remove only test models
  15. if (datetime.now() - last_modified).total_seconds() > args.seconds_since_last_updated:
  16. if args.dry_run:
  17. print(f"{model.modelId} can be deleted")
  18. else:
  19. delete_repo(token=args.use_auth_token, name=model.modelId, organization=args.author)