41 lines
1.1 KiB
YAML
41 lines
1.1 KiB
YAML
# Sample Configuration for zhealth-backend
|
|
# Copy this to config.yaml and update values as needed.
|
|
# Secrets should be loaded from environment variables using ${VAR_NAME} syntax.
|
|
|
|
server:
|
|
host: "127.0.0.1"
|
|
port: 3000
|
|
|
|
paths:
|
|
database: "./data/zhealth.db"
|
|
logs: "./logs"
|
|
uploads: "./data/uploads"
|
|
max_upload_mb: 50 # Maximum file upload size in MB
|
|
|
|
logging:
|
|
level: "info" # Options: trace | debug | info | warn | error
|
|
|
|
auth:
|
|
session_secret: "${SESSION_SECRET}"
|
|
session_expiry_hours: 24
|
|
cookie_name: "zhealth_session"
|
|
cookie_secure: false # Set to true in production with HTTPS
|
|
|
|
# Default admin user (created on first startup)
|
|
admin:
|
|
username: "admin"
|
|
password: "${ADMIN_PASSWORD}" # Use env var in production
|
|
|
|
ai:
|
|
provider: "gemini" # Options: gemini | openai | anthropic
|
|
model: "gemini-3-flash-preview"
|
|
api_key: "${AI_API_KEY}"
|
|
|
|
# Mistral OCR for document parsing
|
|
# Note: API key is set per-user in Profile settings (BYOK)
|
|
mistral:
|
|
ocr_model: "mistral-ocr-latest"
|
|
max_pages_per_request: 8
|
|
max_retries: 2 # Max retry attempts per chunk
|
|
timeout_secs: 120 # Request timeout in seconds
|