diff --git a/Dockerfile b/Dockerfile index 231a3be..9b37f14 100644 --- a/Dockerfile +++ b/Dockerfile @@ -35,7 +35,8 @@ ENV PATH="$VIRTUAL_ENV/bin:$PATH" RUN pip install --upgrade pip # Install ARM64 CUDA 13 wheels for PyTorch stack -RUN pip install --no-cache-dir torch torchvision torchaudio \ +# Pinned to the versions validated on GB10 (CUDA graphs on SM121). +RUN pip install --no-cache-dir torch==2.12.1 torchvision==0.27.1 torchaudio==2.11.0 \ --index-url https://download.pytorch.org/whl/cu130 # Install faster-qwen3-tts and server dependencies diff --git a/README.md b/README.md index 8cb994e..69f27fb 100644 --- a/README.md +++ b/README.md @@ -19,8 +19,8 @@ One Docker image covers all four backends, with two semantic tag aliases: | Tag | Use for | |---|---| -| `:latest` / `:v6` | VoiceClone, VoiceDesign, CustomVoice | -| `:latest-streaming` / `:v6-streaming` | Streaming VoiceClone | +| `:latest` / `:v6` / `:v6.11` | VoiceClone, VoiceDesign, CustomVoice | +| `:latest-streaming` / `:v6-streaming` / `:v6.11-streaming` | Streaming VoiceClone | Both tags point to the same image — the `-streaming` suffix is a semantic convention so compose files and version pins are unambiguous. @@ -381,6 +381,7 @@ The first request after container startup can be slower because CUDA graph captu ### v6.11 — 2026-09-21 **Feature: Language Aliases for VoiceClone Voices** - OpenAI-compatible clients that send a route alias such as `FR`, `FR_F` or `FR_M` in the `voice` field now get a configured speaker in that language (case-insensitive) instead of silently falling back to the default English voice. Unknown aliases still return the default voice or a 400 as before. +- **Reproducible builds:** the PyTorch stack is pinned to the versions validated on GB10 (`torch==2.12.1`, `torchvision==0.27.1`, `torchaudio==2.11.0`) so a rebuild no longer picks up an untested PyTorch release. ### v6.10.1 — 2026-09-21 **Fix: Fresh `docker build` Crashes on Model Load**