Whisperx diarization нет модуля с именем 'julius'
Я пытаюсь запустить этот файл python, который принимает mp3-файл и преобразует его в текст с уникальными идентификаторами дикторов:
import whisperx
import gc
device ="cuda"
batch_size = 32
compute_type = "float16"
audio_file = "MEGA64 PODCAST 483.mp3"
audio = whisperx.load_audio(audio_file)
model = whisperx.load_model("large-v2", device, compute_type=compute_type)
result = model.transcribe(audio, batch_size=batch_size)
print(result["segments"])
model_a, metadata = whisperx.load_align_model(language_code=result["language"], device=device)
result = whisperx.align(result["segments"], model_a, metadata, audio, device, return_char_alignments=False)
# https://huggingface.co/settings/tokens
# new read token
HUGGING_FACE_TOKEN="xxxx"
diarize_model = whisperx.DiarizationPipeline(use_auth_token=HUGGING_FACE_TOKEN, device=device)
diarize_segments = diarize_model(audio, min_speakers=2, max_speakers=2)
print(diarize_segments)
print(diarize_segments.speaker.unique())
result = whisperx.assign_word_speakers(diarize_segments, result)
print(diarize_segments)
print(result["segments"]) # segments area now assigned speaker IDs
Я использую виртуальную среду python3, поэтому, когда я активирую ее и пытаюсь запустить мой вышеуказанный скрипт с python ex.py
, я получаю эту ошибку:
(venv_name) C:\Users\martin\Documents\projects\diarisation\Test2>python ex.py
C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\pyannote\audio\core\io.py:43: UserWarning: torchaudio._backend.set_audio_backend has been deprecated. With dispatcher enabled, this function is no-op. You can remove the function call.
torchaudio.set_audio_backend("soundfile")
Traceback (most recent call last):
File "C:\Users\martin\Documents\projects\diarisation\Test2\ex.py", line 1, in <module>
import whisperx
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\whisperx\__init__.py", line 1, in <module>
from .transcribe import load_model
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\whisperx\transcribe.py", line 10, in <module>
from .asr import load_model
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\whisperx\asr.py", line 13, in <module>
from .vad import load_vad_model, merge_chunks
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\whisperx\vad.py", line 9, in <module>
from pyannote.audio import Model
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\pyannote\audio\__init__.py", line 29, in <module>
from .core.inference import Inference
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\pyannote\audio\core\inference.py", line 37, in <module>
from pyannote.audio.core.model import Model, Specifications
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\pyannote\audio\core\model.py", line 47, in <module>
from pyannote.audio.core.task import (
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\pyannote\audio\core\task.py", line 40, in <module>
from torch_audiomentations import Identity
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\torch_audiomentations\__init__.py", line 2, in <module>
from .augmentations.band_pass_filter import BandPassFilter
File "C:\Users\martin\Documents\projects\diarisation\venv_name\Lib\site-packages\torch_audiomentations\augmentations\band_pass_filter.py", line 1, in <module>
import julius
ModuleNotFoundError: No module named 'julius'
(venv_name) C:\Users\martin\Documents\projects\diarisation\Test2>
После появления ошибки No module named 'julius'
я пытаюсь установить его с помощью pip install julius
и подтверждаю его установку с помощью pip freeze > requirements.txt
, что показывает julius==0.2.7
, но повторный запуск скрипта приводит к той же самой ошибке без изменений, как будто julius все еще не установлен.
Как мне исправить эту ошибку julius, чтобы разблокировать мой скрипт от запуска?