Fix missing sklearn module in miku-bot; upgrade miku-stt to CUDA 12.8.1 + PyTorch 2.7.1
- miku-bot: Re-add scikit-learn to requirements.txt (needed for vision color extraction) - miku-stt: Upgrade from CUDA 12.6.2 to 12.8.1, PyTorch 2.5.1 to 2.7.1 per RealtimeSTT PR #295 - miku-stt: Use Ubuntu 24.04 with Python 3.12 (single installation, no dual Python) - miku-stt: Add requirements-gpu-torch.txt for separate PyTorch installation - miku-stt: Use --break-system-packages flag for Ubuntu 24.04 pip compatibility
This commit is contained in:
@@ -14,6 +14,7 @@ Pillow
|
|||||||
opencv-contrib-python
|
opencv-contrib-python
|
||||||
numpy
|
numpy
|
||||||
transformers
|
transformers
|
||||||
|
scikit-learn
|
||||||
PyNaCl>=1.5.0
|
PyNaCl>=1.5.0
|
||||||
websockets>=12.0
|
websockets>=12.0
|
||||||
discord-ext-voice-recv
|
discord-ext-voice-recv
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
# RealtimeSTT Container
|
# RealtimeSTT Container
|
||||||
# Uses Faster-Whisper with CUDA for GPU-accelerated inference
|
# Uses Faster-Whisper with CUDA for GPU-accelerated inference
|
||||||
# Includes dual VAD (WebRTC + Silero) for robust voice detection
|
# Includes dual VAD (WebRTC + Silero) for robust voice detection
|
||||||
|
#
|
||||||
|
# Updated per RealtimeSTT PR #295:
|
||||||
|
# - CUDA 12.8.1 (latest stable)
|
||||||
|
# - PyTorch 2.7.1 with cu128 support
|
||||||
|
# - Ubuntu 24.04 base
|
||||||
|
# - Single Python 3.11 installation
|
||||||
|
|
||||||
FROM nvidia/cuda:12.6.2-cudnn-runtime-ubuntu22.04
|
FROM nvidia/cuda:12.8.1-cudnn-runtime-ubuntu24.04
|
||||||
|
|
||||||
# Prevent interactive prompts during build
|
# Prevent interactive prompts during build
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
@@ -11,35 +17,23 @@ ENV PYTHONUNBUFFERED=1
|
|||||||
# Set working directory
|
# Set working directory
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Install system dependencies
|
# Install system dependencies (Ubuntu 24.04 has Python 3.12 by default)
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
python3.11 \
|
|
||||||
python3.11-venv \
|
|
||||||
python3.11-dev \
|
|
||||||
python3-pip \
|
python3-pip \
|
||||||
build-essential \
|
|
||||||
ffmpeg \
|
ffmpeg \
|
||||||
libsndfile1 \
|
libsndfile1 \
|
||||||
libportaudio2 \
|
libportaudio2 \
|
||||||
portaudio19-dev \
|
|
||||||
git \
|
git \
|
||||||
curl \
|
curl \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Upgrade pip
|
# Install PyTorch with CUDA 12.8 support (installed first for layer caching)
|
||||||
RUN python3.11 -m pip install --upgrade pip
|
COPY requirements-gpu-torch.txt .
|
||||||
|
RUN python3 -m pip install --break-system-packages --no-cache-dir -r requirements-gpu-torch.txt
|
||||||
|
|
||||||
# Copy requirements first (for Docker layer caching)
|
# Copy and install other Python dependencies
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
|
RUN python3 -m pip install --break-system-packages --no-cache-dir -r requirements.txt
|
||||||
# Install Python dependencies
|
|
||||||
RUN python3.11 -m pip install --no-cache-dir -r requirements.txt
|
|
||||||
|
|
||||||
# Install PyTorch with CUDA 12.1 support (compatible with CUDA 12.6)
|
|
||||||
RUN python3.11 -m pip install --no-cache-dir \
|
|
||||||
torch==2.5.1+cu121 \
|
|
||||||
torchaudio==2.5.1+cu121 \
|
|
||||||
--index-url https://download.pytorch.org/whl/cu121
|
|
||||||
|
|
||||||
# Copy application code
|
# Copy application code
|
||||||
COPY stt_server.py .
|
COPY stt_server.py .
|
||||||
@@ -52,7 +46,7 @@ EXPOSE 8766
|
|||||||
|
|
||||||
# Health check - use netcat to check if port is listening
|
# Health check - use netcat to check if port is listening
|
||||||
HEALTHCHECK --interval=30s --timeout=10s --start-period=120s --retries=3 \
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=120s --retries=3 \
|
||||||
CMD python3.11 -c "import socket; s=socket.socket(); s.settimeout(2); s.connect(('localhost', 8766)); s.close()" || exit 1
|
CMD python3 -c "import socket; s=socket.socket(); s.settimeout(2); s.connect(('localhost', 8766)); s.close()" || exit 1
|
||||||
|
|
||||||
# Run the server
|
# Run the server
|
||||||
CMD ["python3.11", "stt_server.py"]
|
CMD ["python3", "stt_server.py"]
|
||||||
|
|||||||
5
stt-realtime/requirements-gpu-torch.txt
Normal file
5
stt-realtime/requirements-gpu-torch.txt
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# PyTorch with CUDA 12.8 support
|
||||||
|
# Updated per RealtimeSTT PR #295 for better performance
|
||||||
|
torch==2.7.1+cu128
|
||||||
|
torchaudio==2.7.1+cu128
|
||||||
|
--index-url https://download.pytorch.org/whl/cu128
|
||||||
Reference in New Issue
Block a user