/
grenki70
/
siames
Обзор
Документация
Войти
/
grenki70
/
siames
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
main.py
56 строк
2 KB
grenki70
first_commit
28 май 2026, 06:18
28 май 2026, 06:18
f3a78a4
Код
Авторство
О чём код?
import os import random import numpy as np import torch # Монтируем Google Drive (если в Colab) try: if not os.path.exists('/content/drive'): from google.colab import drive drive.mount('/content/drive') except ImportError: pass from config import Config from utils import calculate_optimal_length from trainer import Trainer from evaluator import Evaluator def set_seed(seed: int = 42): random.seed(seed) np.random.seed(seed) torch.manual_seed(seed) if torch.cuda.is_available(): torch.cuda.manual_seed_all(seed) torch.backends.cudnn.deterministic = True torch.backends.cudnn.benchmark = False def main(config_path: str = "config.yaml"): # Загружаем конфиг cfg = Config.from_yaml(config_path) # Фиксируем seed set_seed(cfg.training.seed) # Вычисляем оптимальную длину аудио cfg.max_audio_len = calculate_optimal_length(cfg) print(f"Оптимальная длина аудио (фреймы): {cfg.max_audio_len}") # Обучение trainer = Trainer(cfg) trainer.train() # Тестирование (в том же MLflow run) import mlflow mlflow.set_tracking_uri(cfg.paths.mlflow_tracking_uri) mlflow.set_experiment(cfg.paths.mlflow_experiment) with mlflow.start_run(run_id=mlflow.last_active_run().info.run_id): evaluator = Evaluator(cfg, trainer.model) evaluator.evaluate() if __name__ == "__main__": main()