e0d1c44137
The 2026-09-06 headscale cutover retired irv-ml1's wg0 tunnel IP 10.100.79.3 (now 10.6.110.50). Repointed all LIVE canonical refs to the DNS NAME so the next move can't re-break them: homepage.href/siteMonitor labels across 25 stack composes, load-bearing env defaults (asset-engine INFERENCE_HOST, open-webui AUDIO_TTS_OPENAI_API_BASE_URL, skaldsong SKALDSONG_TTS_BASE_URL, zonos-gateway ZONOS_URL, dia), homepage services.yaml manual cards (Voice Design Studio, IRV-ML1), and servers/irv-ml1/ssh-target. Updated the stale 'WG tunnel' comment to the mesh reality. Left as-is: README curl-examples and .env.example comments (docs), and historical mentions in CLAUDE.md/persistent-memory. NOTE: applying the label repoints to the RUNNING irv-ml1 containers needs a recreate per service (labels read at creation); deployed .env values are separate from these canonical defaults.
82 lines
3.3 KiB
YAML
82 lines
3.3 KiB
YAML
# Dia2 (Nari Labs' dialogue-focused TTS) served via devnen/Dia-TTS-Server.
|
|
#
|
|
# Dialogue scenes none of the other bench TTS own cleanly: multi-speaker
|
|
# turn-taking in one pass with inline [S1]/[S2] tags + nonverbals
|
|
# (laughs)/(coughs)/(sighs). OpenAI-compat POST /v1/audio/speech.
|
|
#
|
|
# This stack runs TWO fixed-model instances from the dia2-capable image
|
|
# (local/dia:v2 — built in two stages: the upstream devnen wrapper image
|
|
# local/dia:v1, then dia2-image/Dockerfile layers in the dia2 package +
|
|
# its missing runtime deps; see README). The wrapper serves whatever model
|
|
# is loaded and IGNORES per-request model selection, so the only way to
|
|
# offer multiple Dia2 models to asset-engine as real choices is one fixed
|
|
# instance per model — which is exactly this:
|
|
# * dia2-2b — Dia2 2B, highest quality (:8200, the primary dia port)
|
|
# * dia2-1b — Dia2 1B, streaming/faster (:8202)
|
|
# Each pins ONE model via its mounted config.yaml. Legacy Dia 1.6B retired
|
|
# (operator decision 2026-05-31).
|
|
#
|
|
# All tunables live in .env — edit that, not this file.
|
|
|
|
services:
|
|
dia2-2b:
|
|
image: local/dia:${DIA_TAG}
|
|
container_name: dia2-2b
|
|
restart: unless-stopped
|
|
runtime: nvidia
|
|
ports:
|
|
- "${DIA_BIND:-0.0.0.0}:${DIA2_2B_PORT}:8003"
|
|
environment:
|
|
- NVIDIA_VISIBLE_DEVICES=${DIA2_2B_GPU:-0}
|
|
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
- HF_HUB_ENABLE_HF_TRANSFER=1
|
|
- HF_HOME=/app/hf_cache
|
|
volumes:
|
|
- ${DIA_REFERENCE_DIR}:/app/reference_audio
|
|
- ${DIA_CACHE_DIR}:/app/hf_cache
|
|
# Pins model.repo_id=nari-labs/Dia2-2B (highest quality).
|
|
- ${DIA2_2B_CONFIG}:/app/config.yaml
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "python3 -c \"import urllib.request,sys; urllib.request.urlopen('http://127.0.0.1:8003/health', timeout=5); sys.exit(0)\""]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
# First boot pulls the Dia2-2B checkpoint — generous deadline.
|
|
start_period: 600s
|
|
labels:
|
|
- homepage.group=AI Systems
|
|
- homepage.name=Dia2 2B (HQ)
|
|
- homepage.icon=mdi-account-voice
|
|
- homepage.description=Dialogue TTS — Dia2 2B, highest quality (irv-ml1)
|
|
- homepage.href=http://irv-ml1.nh3.internal:${DIA2_2B_PORT}
|
|
|
|
dia2-1b:
|
|
image: local/dia:${DIA_TAG}
|
|
container_name: dia2-1b
|
|
restart: unless-stopped
|
|
runtime: nvidia
|
|
ports:
|
|
- "${DIA_BIND:-0.0.0.0}:${DIA2_1B_PORT}:8003"
|
|
environment:
|
|
- NVIDIA_VISIBLE_DEVICES=${DIA2_1B_GPU:-0}
|
|
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
- HF_HUB_ENABLE_HF_TRANSFER=1
|
|
- HF_HOME=/app/hf_cache
|
|
volumes:
|
|
- ${DIA_REFERENCE_DIR}:/app/reference_audio
|
|
- ${DIA_CACHE_DIR}:/app/hf_cache
|
|
# Pins model.repo_id=nari-labs/Dia2-1B (streaming, lower latency).
|
|
- ${DIA2_1B_CONFIG}:/app/config.yaml
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "python3 -c \"import urllib.request,sys; urllib.request.urlopen('http://127.0.0.1:8003/health', timeout=5); sys.exit(0)\""]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 600s
|
|
labels:
|
|
- homepage.group=AI Systems
|
|
- homepage.name=Dia2 1B (Streaming)
|
|
- homepage.icon=mdi-account-voice
|
|
- homepage.description=Dialogue TTS — Dia2 1B, streaming/faster (irv-ml1)
|
|
- homepage.href=http://irv-ml1.nh3.internal:${DIA2_1B_PORT}
|