Luigi commited on
Commit
9453a6f
·
1 Parent(s): 766564c

fix: unable to import improved_diarization.py on HF Spaces

Browse files
Files changed (1) hide show
  1. src/diarization.py +30 -5
src/diarization.py CHANGED
@@ -20,14 +20,39 @@ from typing import List, Tuple, Optional, Callable, Dict, Any
20
  import streamlit as st
21
  import logging
22
 
23
- # Import the improved diarization pipeline
24
  try:
25
- import sys
26
- sys.path.append('/home/luigi/VoxSum')
27
- from improved_diarization import enhance_diarization_pipeline
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  ENHANCED_DIARIZATION_AVAILABLE = True
29
  print("✅ Enhanced diarization pipeline loaded successfully")
30
- except ImportError as e:
31
  ENHANCED_DIARIZATION_AVAILABLE = False
32
  logging.warning(f"Enhanced diarization not available - using fallback: {e}")
33
 
 
20
  import streamlit as st
21
  import logging
22
 
23
+ # Import the improved diarization pipeline (robust: search repo tree)
24
  try:
25
+ from importlib import import_module
26
+ # Try direct import first (works when repo root is in PYTHONPATH)
27
+ try:
28
+ mod = import_module('improved_diarization')
29
+ except Exception:
30
+ # Search up to 6 parent directories for improved_diarization.py
31
+ repo_root = None
32
+ current = Path(__file__).resolve()
33
+ for parent in list(current.parents)[:6]:
34
+ candidate = parent / 'improved_diarization.py'
35
+ if candidate.exists():
36
+ repo_root = parent
37
+ break
38
+
39
+ if repo_root is None:
40
+ # Fallback to CWD
41
+ cwd_candidate = Path.cwd() / 'improved_diarization.py'
42
+ if cwd_candidate.exists():
43
+ repo_root = Path.cwd()
44
+
45
+ if repo_root is not None:
46
+ import sys
47
+ sys.path.insert(0, str(repo_root))
48
+ mod = import_module('improved_diarization')
49
+ else:
50
+ raise ImportError('improved_diarization module not found in repository tree')
51
+
52
+ enhance_diarization_pipeline = getattr(mod, 'enhance_diarization_pipeline')
53
  ENHANCED_DIARIZATION_AVAILABLE = True
54
  print("✅ Enhanced diarization pipeline loaded successfully")
55
+ except Exception as e:
56
  ENHANCED_DIARIZATION_AVAILABLE = False
57
  logging.warning(f"Enhanced diarization not available - using fallback: {e}")
58