managarten/services/mana-stt/.env.example
Till JS 22a73943e1 chore: complete ManaCore → Mana rename (docs, go modules, plists, images)
Final cleanup of references missed in previous rename commits:

- Dockerfiles: PUBLIC_MANA_CORE_AUTH_URL → PUBLIC_MANA_AUTH_URL
- Go modules: github.com/manacore/* → github.com/mana/* (7 go.mod files)
- launchd plists: com.manacore.* → com.mana.* (14 files renamed + content)
- Image assets: *_Manacore_AI_Credits* → *_Mana_AI_Credits* (11 files)
- .env.example files: ManaCore brand strings → Mana
- .prettierignore: stale apps/manacore/* paths → apps/mana/*
- Markdown docs (CLAUDE.md, /docs/*): mana-core-auth → mana-auth, etc.

Excluded from rename: .claude/, devlog/, manascore/ (historical content),
client testimonials, blueprints, npm package refs (@mana-core/*).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 12:26:10 +02:00

70 lines
1.9 KiB
Text

# Mana STT Service Configuration
# Copy to .env and adjust values as needed
# Server
PORT=3020
# Whisper (Lightning MLX)
WHISPER_MODEL=large-v3
# Voxtral (Local Models)
# Options: voxtral-mini-3b, voxtral-realtime-4b, voxtral-small-24b
VOXTRAL_MODEL=voxtral-realtime-4b
# WhisperX (CUDA GPU Server)
# Enable WhisperX for rich transcription (diarization, word alignment)
# Requires NVIDIA GPU + requirements-cuda.txt
USE_WHISPERX=false
# WhisperX batch size (higher = faster but more VRAM, 16 works well for RTX 3090)
WHISPERX_BATCH_SIZE=16
# Device and compute type for CUDA
# WHISPER_DEVICE=cuda
# WHISPER_COMPUTE_TYPE=float16
# HuggingFace token for pyannote speaker diarization models
# Required for diarization. Accept terms at:
# https://huggingface.co/pyannote/speaker-diarization-3.1
# https://huggingface.co/pyannote/segmentation-3.0
HF_TOKEN=
# Model Loading
# Set to true to preload models on startup (slower startup, faster first request)
PRELOAD_MODELS=false
# Load Management
# Maximum concurrent transcription requests before API fallback
MAX_CONCURRENT_REQUESTS=3
# API Fallback
# Enable automatic fallback to Mistral API when overloaded
API_FALLBACK_ENABLED=true
# Mistral API Key (required for API fallback)
# Get your key at https://console.mistral.ai/
MISTRAL_API_KEY=
# CORS Origins (comma-separated)
CORS_ORIGINS=https://mana.how,https://chat.mana.how,http://localhost:5173
# ===========================================
# Authentication
# ===========================================
# Enable API key authentication (default: true for production)
REQUIRE_AUTH=true
# API Keys (comma-separated, format: key:name)
# Example: sk-abc123:myapp,sk-def456:testuser
API_KEYS=
# Internal API key (no rate limit, for internal services)
# Generate with: openssl rand -hex 32
INTERNAL_API_KEY=
# Rate Limiting
# Requests per window per API key
RATE_LIMIT_REQUESTS=60
# Window size in seconds
RATE_LIMIT_WINDOW=60