textual<9,>=8.2

[all]
av>=11.0.0
emoji>=2.15.0
espnet==202511
espnet-model-zoo==0.1.7
faster-whisper>=1.2.1
huggingface-hub<1,>=0.34
librosa>=0.10.1
matplotlib>=3.8
modelscope>=1.14
nltk>=3.9.4
numpy<3,>=2
onnxruntime>=1.17
pyannote.audio<4,>=3.1
resemblyzer>=0.1.4
soundfile>=0.12.1
speechbrain>=1.0.0
stanza>=1.13.0
torch>=2.2
torchaudio>=2.2
transformers<5,>=4.39
fastapi>=0.110
python-multipart>=0.0.9
uvicorn[standard]>=0.29
yt-dlp>=2024.3.10
webrtcvad==2.0.10

[complete]
av>=11.0.0
emoji>=2.15.0
espnet==202511
espnet-model-zoo==0.1.7
faster-whisper>=1.2.1
huggingface-hub<1,>=0.34
librosa>=0.10.1
matplotlib>=3.8
modelscope>=1.14
nltk>=3.9.4
numpy<3,>=2
onnxruntime>=1.17
pyannote.audio<4,>=3.1
resemblyzer>=0.1.4
sherpa-onnx<1.14,>=1.13.4
sherpa-onnx-bin<1.14,>=1.13.4
soundfile>=0.12.1
speechbrain>=1.0.0
stanza>=1.13.0
torch>=2.2
torchaudio>=2.2
transformers<5,>=4.39
yt-dlp>=2024.3.10

[controller]
av>=11.0.0
emoji>=2.15.0
librosa>=0.10.1
nltk>=3.9.4
numpy<3,>=2
onnxruntime>=1.17
soundfile>=0.12.1
yt-dlp>=2024.3.10

[local]
av>=11.0.0
emoji>=2.15.0
espnet==202511
espnet-model-zoo==0.1.7
faster-whisper>=1.2.1
huggingface-hub<1,>=0.34
librosa>=0.10.1
matplotlib>=3.8
modelscope>=1.14
nltk>=3.9.4
numpy<3,>=2
onnxruntime>=1.17
pyannote.audio<4,>=3.1
resemblyzer>=0.1.4
soundfile>=0.12.1
speechbrain>=1.0.0
stanza>=1.13.0
torch>=2.2
torchaudio>=2.2
transformers<5,>=4.39
yt-dlp>=2024.3.10

[preview]
numpy<3,>=2
sherpa-onnx<1.14,>=1.13.4
sherpa-onnx-bin<1.14,>=1.13.4
webrtcvad==2.0.10

[server]
av>=11.0.0
espnet==202511
espnet-model-zoo==0.1.7
fastapi>=0.110
faster-whisper>=1.2.1
huggingface-hub<1,>=0.34
librosa>=0.10.1
matplotlib>=3.8
modelscope>=1.14
numpy<3,>=2
onnxruntime>=1.17
pyannote.audio<4,>=3.1
python-multipart>=0.0.9
resemblyzer>=0.1.4
sherpa-onnx<1.14,>=1.13.4
sherpa-onnx-bin<1.14,>=1.13.4
soundfile>=0.12.1
speechbrain>=1.0.0
torch>=2.2
torchaudio>=2.2
transformers<5,>=4.39
uvicorn[standard]>=0.29

[translation]
accelerate>=1.2
pillow>=10
sentencepiece>=0.2
torch>=2.4
transformers<5,>=4.57.3
