Initial implementation: Chatterbox TTS with ROCm and Wyoming
All checks were successful
Build ROCm Image / build (push) Successful in 15m27s
All checks were successful
Build ROCm Image / build (push) Successful in 15m27s
Wyoming-only server built around the official chatterbox TTS model. Includes ROCm/AMD GPU support, sentence-level streaming, config.yaml management, and Gitea CI for container builds. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
43
Dockerfile.rocm
Normal file
43
Dockerfile.rocm
Normal file
@@ -0,0 +1,43 @@
|
||||
FROM rocm/dev-ubuntu-22.04:latest
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
PYTHONDONTWRITEBYTECODE=1 \
|
||||
PYTHONUNBUFFERED=1 \
|
||||
HF_HOME=/app/hf_cache \
|
||||
PIP_NO_CACHE_DIR=1
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
python3 \
|
||||
python3-pip \
|
||||
python3-dev \
|
||||
git \
|
||||
ffmpeg \
|
||||
libsndfile1 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Step 1: Install ROCm-compatible PyTorch stack first.
|
||||
# This must happen before anything else to prevent pip from pulling CPU wheels.
|
||||
COPY requirements-rocm-init.txt .
|
||||
RUN pip3 install -r requirements-rocm-init.txt
|
||||
|
||||
# Step 2: Install remaining dependencies (pinned to avoid overwriting torch).
|
||||
COPY requirements-rocm.txt .
|
||||
RUN pip3 install -r requirements-rocm.txt
|
||||
|
||||
# Step 3: Install chatterbox with --no-deps so pip cannot replace ROCm torch.
|
||||
RUN pip3 install --no-deps chatterbox-tts
|
||||
|
||||
# Application source
|
||||
COPY engine.py config.py wyoming_handler.py wyoming_voices.py main.py ./
|
||||
|
||||
# Default config (can be overridden by volume mount)
|
||||
COPY config.yaml .
|
||||
|
||||
# Create default directories
|
||||
RUN mkdir -p voices reference_audio hf_cache
|
||||
|
||||
EXPOSE 10200
|
||||
|
||||
CMD ["python3", "main.py"]
|
||||
Reference in New Issue
Block a user