From 74f69707b8ff74551d17ef60304132aeaf05da1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Thu, 27 Nov 2025 14:34:37 +0100 Subject: [PATCH] Pin transformers<4.40.0 for PyTorch 2.1 compatibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit transformers 4.40+ uses serialized_type_name kwarg in _register_pytree_node() which doesn't exist in PyTorch 2.1. Pin to older version. Also removes the ineffective pytree shim. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- main.py | 14 -------------- requirements.txt | 6 +++++- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/main.py b/main.py index e7582ba..d412677 100644 --- a/main.py +++ b/main.py @@ -16,20 +16,6 @@ os.chdir(PROJECT_ROOT) # Add project root to path sys.path.insert(0, str(PROJECT_ROOT)) -# PyTorch pytree compatibility shim for AudioCraft -# The API changed between PyTorch versions: -# - Older: _register_pytree_node (private, with underscore) -# - Newer: register_pytree_node (public, without underscore) -# Create aliases in both directions to support any version -try: - import torch.utils._pytree as _pytree - if hasattr(_pytree, '_register_pytree_node') and not hasattr(_pytree, 'register_pytree_node'): - _pytree.register_pytree_node = _pytree._register_pytree_node - if hasattr(_pytree, 'register_pytree_node') and not hasattr(_pytree, '_register_pytree_node'): - _pytree._register_pytree_node = _pytree.register_pytree_node -except Exception: - pass # Ignore if torch not installed or patch fails - from config.settings import get_settings from src.core.gpu_manager import GPUMemoryManager from src.core.model_registry import ModelRegistry diff --git a/requirements.txt b/requirements.txt index 1130f5b..4b8de82 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,9 +1,13 @@ -# Core ML - Pin to AudioCraft-compatible versions (2.4+ breaks pytree API) +# Core ML - Pin to AudioCraft-compatible versions torch>=2.1.0,<2.4.0 torchaudio>=2.1.0,<2.4.0 audiocraft>=1.3.0 xformers>=0.0.22 +# Pin transformers to version compatible with PyTorch 2.1 +# Newer versions use serialized_type_name kwarg not in PyTorch 2.1 +transformers>=4.30.0,<4.40.0 + # UI gradio>=4.0.0