Compare commits
2 commits
33ed27abd8
...
989ffb032c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
989ffb032c | ||
|
|
987c005305 |
2 changed files with 55 additions and 11 deletions
44
.env.example
Normal file
44
.env.example
Normal file
|
|
@ -0,0 +1,44 @@
|
||||||
|
# DeutschLernen Environment Configuration
|
||||||
|
# Copy this file to .env and fill in your actual values
|
||||||
|
# This file is in .gitignore and will NOT be committed to git
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# JWT Configuration
|
||||||
|
# ============================================
|
||||||
|
JWT_KEY=your-super-secret-key-at-least-32-characters-long
|
||||||
|
JWT_ISSUER=DeutschLernen
|
||||||
|
JWT_AUDIENCE=DeutschLernen
|
||||||
|
JWT_EXPIREHOURS=24
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# Mistral AI Configuration
|
||||||
|
# Use the API key from appsettings.Development.json
|
||||||
|
# ============================================
|
||||||
|
MISTRAL_APIKEY=YOUR_MISTRAL_API_KEY_HERE
|
||||||
|
MISTRAL_BASEURL=https://api.mistral.ai/v1/
|
||||||
|
MISTRAL_DEFAULTMODEL=mistral-medium
|
||||||
|
MISTRAL_TIMEOUTSECONDS=30
|
||||||
|
MISTRAL_MAXRETRIES=3
|
||||||
|
MISTRAL_RATELIMITPERMINUTE=10
|
||||||
|
MISTRAL_ENABLECACHING=true
|
||||||
|
MISTRAL_CACHETTLMINUTES=60
|
||||||
|
MISTRAL_CIRCUITBREAKERFAILURETHRESHOLD=5
|
||||||
|
MISTRAL_CIRCUITBREAKERRESETMINUTES=1
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# Vosk Speech Recognition Configuration
|
||||||
|
# ============================================
|
||||||
|
VOSK_PYTHONPATH=python3
|
||||||
|
VOSK_MODELPATH=./models/vosk-model-de-0.22
|
||||||
|
VOSK_SAMPLERATE=16000
|
||||||
|
VOSK_TIMEOUTSECONDS=30
|
||||||
|
VOSK_BEAMWIDTH=20
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
# Coqui TTS Configuration
|
||||||
|
# ============================================
|
||||||
|
COQUI_PYTHONPATH=python3
|
||||||
|
COQUI_MODELNAME=tts_models/de/deu/fairseq/vits
|
||||||
|
COQUI_AUDIOSTORAGEPATH=./tmp/tts-audio
|
||||||
|
COQUI_MAXTEXTLENGTH=5000
|
||||||
|
COQUI_TIMEOUTSECONDS=60
|
||||||
|
|
@ -34,17 +34,17 @@ services:
|
||||||
Jwt__Issuer: ${JWT_ISSUER:-DeutschLernen}
|
Jwt__Issuer: ${JWT_ISSUER:-DeutschLernen}
|
||||||
Jwt__Audience: ${JWT_AUDIENCE:-DeutschLernen}
|
Jwt__Audience: ${JWT_AUDIENCE:-DeutschLernen}
|
||||||
Jwt__ExpireHours: ${JWT_EXPIREHOURS:-24}
|
Jwt__ExpireHours: ${JWT_EXPIREHOURS:-24}
|
||||||
# Mistral API Configuration (from Woodpecker secrets or environment)
|
# Mistral API Configuration (from appsettings.Development.json)
|
||||||
Mistral__ApiKey: ${MISTRAL_APIKEY:-}
|
Mistral__ApiKey: Odq70O3NUQ1H8hMhGJAFAz5OJfukX6lT
|
||||||
Mistral__BaseUrl: ${MISTRAL_BASEURL:-https://api.mistral.ai/v1/}
|
Mistral__BaseUrl: https://api.mistral.ai/v1/
|
||||||
Mistral__DefaultModel: ${MISTRAL_DEFAULTMODEL:-mistral-medium}
|
Mistral__DefaultModel: mistral-medium
|
||||||
Mistral__TimeoutSeconds: ${MISTRAL_TIMEOUTSECONDS:-30}
|
Mistral__TimeoutSeconds: 30
|
||||||
Mistral__MaxRetries: ${MISTRAL_MAXRETRIES:-3}
|
Mistral__MaxRetries: 3
|
||||||
Mistral__RateLimitPerMinute: ${MISTRAL_RATELIMITPERMINUTE:-10}
|
Mistral__RateLimitPerMinute: 10
|
||||||
Mistral__EnableCaching: ${MISTRAL_ENABLECACHING:-true}
|
Mistral__EnableCaching: true
|
||||||
Mistral__CacheTTLMinutes: ${MISTRAL_CACHETTLMINUTES:-60}
|
Mistral__CacheTTLMinutes: 60
|
||||||
Mistral__CircuitBreakerFailureThreshold: ${MISTRAL_CIRCUITBREAKERFAILURETHRESHOLD:-5}
|
Mistral__CircuitBreakerFailureThreshold: 5
|
||||||
Mistral__CircuitBreakerResetMinutes: ${MISTRAL_CIRCUITBREAKERRESETMINUTES:-1}
|
Mistral__CircuitBreakerResetMinutes: 1
|
||||||
depends_on:
|
depends_on:
|
||||||
db:
|
db:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue