empathetic-speech-v4 / upload_model.py
eeeebbb2's picture
Upload model file: upload_model.py
3116e64 verified
from huggingface_hub import HfApi
import os
from tqdm import tqdm
def should_upload_file(filepath):
"""
Проверяет, нужно ли загружать данный файл.
Игнорирует .git директорию и временные файлы.
"""
# Игнорируем .git директорию
if '.git' in filepath:
return False
# Игнорируем временные файлы
if filepath.endswith('.tmp') or filepath.endswith('.temp'):
return False
return True
def upload_model_to_hf(local_path, repo_id):
"""
Загружает файлы модели на Hugging Face Hub.
"""
try:
api = HfApi()
# Собираем список файлов для загрузки
files_to_upload = []
print("Сканирование файлов...")
for root, _, files in os.walk(local_path):
for file in files:
file_path = os.path.join(root, file)
# Пропускаем файлы, которые не нужно загружать
if not should_upload_file(file_path):
continue
relative_path = os.path.relpath(file_path, local_path)
files_to_upload.append((file_path, relative_path))
print(f"Найдено файлов для загрузки: {len(files_to_upload)}")
# Загружаем файлы
for file_path, relative_path in tqdm(files_to_upload, desc="Загрузка файлов"):
try:
api.upload_file(
path_or_fileobj=file_path,
path_in_repo=relative_path,
repo_id=repo_id,
commit_message=f"Upload model file: {relative_path}"
)
except Exception as e:
print(f"\nОшибка при загрузке {relative_path}: {str(e)}")
print("\nЗагрузка завершена успешно!")
print(f"Проверьте файлы по адресу: https://huggingface.co/{repo_id}")
except Exception as e:
print(f"Произошла ошибка: {str(e)}")
if __name__ == "__main__":
local_path = "." # Текущая директория
repo_id = "eeeebbb2/empathetic-speech-v4" # Ваш репозиторий
upload_model_to_hf(local_path, repo_id)