add: absorb soprano_to_rvc as regular subdirectory
Voice conversion pipeline (Soprano TTS → RVC) with Docker support. Previously tracked as bare gitlink; removed .git/ directories and absorbed into main repo for unified tracking. Includes: Soprano TTS, RVC WebUI integration, Docker configs, WebSocket API, and benchmark scripts. Updated .gitignore to exclude large model weights (*.pth, *.pt, *.onnx, *.index). 287 files (3.1GB of ML weights properly excluded via gitignore).
This commit is contained in:
69
soprano_to_rvc/setup_cuda_venv.sh
Executable file
69
soprano_to_rvc/setup_cuda_venv.sh
Executable file
@@ -0,0 +1,69 @@
|
||||
#!/bin/bash
|
||||
# Setup CUDA venv for Soprano on GTX 1660
|
||||
|
||||
set -e
|
||||
|
||||
echo "Setting up CUDA environment for Soprano..."
|
||||
|
||||
cd /home/koko210Serve/docker/miku-discord/soprano_to_rvc
|
||||
|
||||
# Remove old venv if exists
|
||||
if [ -d ".venv-cuda" ]; then
|
||||
echo "Removing old CUDA venv..."
|
||||
rm -rf .venv-cuda
|
||||
fi
|
||||
|
||||
# Create fresh venv with Python 3.11
|
||||
echo "Creating Python 3.11 venv..."
|
||||
python3.11 -m venv .venv-cuda
|
||||
|
||||
# Activate CUDA venv
|
||||
source .venv-cuda/bin/activate
|
||||
|
||||
echo "Upgrading pip..."
|
||||
pip install --upgrade pip
|
||||
|
||||
echo "Step 1: Installing latest CUDA PyTorch..."
|
||||
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
|
||||
|
||||
echo "Step 2: Installing Soprano from source with lmdeploy..."
|
||||
cd soprano
|
||||
pip install -e '.[lmdeploy]'
|
||||
cd ..
|
||||
|
||||
echo "Step 3: Installing IPC libraries..."
|
||||
pip install redis pyzmq numpy
|
||||
|
||||
echo "Step 4: Verifying CUDA setup..."
|
||||
python -c "
|
||||
import torch
|
||||
print(f'PyTorch version: {torch.__version__}')
|
||||
print(f'CUDA available: {torch.cuda.is_available()}')
|
||||
print(f'CUDA version: {torch.version.cuda}')
|
||||
print(f'Device count: {torch.cuda.device_count()}')
|
||||
if torch.cuda.is_available():
|
||||
print(f'Device 0: {torch.cuda.get_device_name(0)}')
|
||||
"
|
||||
|
||||
echo "Step 5: Testing Soprano..."
|
||||
python -c "
|
||||
from soprano import SopranoTTS
|
||||
print('✓ Soprano imported successfully')
|
||||
model = SopranoTTS(backend='lmdeploy', device='cuda', cache_size_mb=500, decoder_batch_size=2)
|
||||
print(f'✓ Soprano loaded on {model.device} using {model.backend} backend')
|
||||
"
|
||||
|
||||
echo ""
|
||||
echo "========================================"
|
||||
echo "✓ CUDA environment setup complete!"
|
||||
echo "========================================"
|
||||
echo ""
|
||||
echo "GPU: NVIDIA GTX 1660 (6GB VRAM)"
|
||||
echo "Backend: lmdeploy"
|
||||
echo "Device: cuda:0"
|
||||
echo ""
|
||||
echo "NOTE: When running scripts, avoid running from"
|
||||
echo "the soprano_to_rvc directory due to the soprano/"
|
||||
echo "subdirectory shadowing the installed package."
|
||||
echo "Run from /tmp or remove current dir from sys.path"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user