Files
esh-pfi-infrastructure/stacks/scriberr/.env.example
T
vh 0176ec0a5b scriberr: fit GPU 1 beside intern-decision — 120 s Parakeet slices + expandable_segments
Measured Parakeet peak on a 35-min file (n=3 each, deterministic): 300 s
9,384 MiB, 120 s 6,510, 60 s 5,976, 10 s 5,634 (fixed floor); with
expandable_segments 120 s 5,496 and 60 s 5,502. Verified 5,496 under the
recreated container's own env. Transcripts: 95.8% word-sequence similarity
vs 300 s, diffs mostly casing/punctuation.
2026-09-30 09:02:45 -07:00

51 lines
3.1 KiB
Bash

# Scriberr — copy to .env on the host at /opt/docker/compose/scriberr/.env
# Real .env is gitignored and lives only on fv-ml1.
# ── Image ────────────────────────────────────────────────────────────────
# Built locally from Dockerfile.cuda.12.9 — see the compose header for why
# the published scriberr-cuda image is NOT usable on these Blackwell cards.
SCRIBERR_IMAGE=scriberr:local-blackwell
# ── Network ──────────────────────────────────────────────────────────────
SCRIBERR_PORT=8080
SCRIBERR_BIND=0.0.0.0
# CORS. Must list every origin the UI is actually reached from, or the
# browser blocks the API calls. Comma-separated, no spaces, no trailing /.
SCRIBERR_ALLOWED_ORIGINS=http://10.251.50.54:8080,http://scriberr.fv.internal:8080
# ── GPU ──────────────────────────────────────────────────────────────────
# GPU0 is fully committed to the `gen` seat; GPU1 is the one with headroom.
SCRIBERR_GPU_ID=1
# ── Storage (on /tank — NOT the root pool, weights are multi-GB) ─────────
SCRIBERR_DATA_DIR=/tank/scriberr/data
SCRIBERR_ENV_DIR=/tank/scriberr/whisperx-env
# ── Runtime ──────────────────────────────────────────────────────────────
# ⚠ 10001, not the fleet-usual 1000. The Blackwell image's `appuser` IS 10001
# and its PUID remapping is broken — at 1000 the app cannot open its SQLite DB
# and crash-loops. The /tank dirs are chowned to 10001:10001 to match.
# See README "The PUID trap".
SCRIBERR_PUID=10001
SCRIBERR_PGID=10001
# Keep false while the app is served over plain HTTP. Setting this true
# without TLS makes login silently fail (cookie marked Secure, dropped).
SCRIBERR_SECURE_COOKIES=false
# ── Optional: summarisation / transcript chat ────────────────────────────
# Scriberr speaks the OpenAI API. Point it at the LiteLLM gateway so this
# costs nothing and stays on-prem, rather than a paid vendor key.
# Configure the base URL in the Scriberr UI (Settings -> AI provider):
# base URL : http://10.250.50.70:4000/v1
# model : summarizer (or gen / gen-reasoning)
# The key below is the shared all-agents gateway key.
# ⚠ That key also reaches PAID passthrough models (GLM, Kimi) on a shared
# tab — keep the configured model on a free local seat.
# SCRIBERR_OPENAI_API_KEY=
# GPU 1 memory budget (2026-09-30). Parakeet slice length in seconds and the
# torch allocator mode; see compose.yaml for the measurements. Defaults apply
# when unset; override only with a re-measured peak.
# SCRIBERR_PARAKEET_CHUNK_SECS=120
# SCRIBERR_PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True