config: add env schema and localization foundation

This commit is contained in:
2026-05-10 22:51:52 +03:00
parent 986d4aca46
commit 28f67aefc2
6 changed files with 1912 additions and 29 deletions
+63 -3
View File
@@ -31,25 +31,85 @@ ONLY_FOR_CREATOR_MODE=false
# Use user names in AI prompts
USE_NAMES_IN_PROMPT=true
# Custom system prompt for AI (or put it into data/SYSTEM_PROMPT.md)
SYSTEM_PROMPT=
# Maximum photo size in pixels
MAX_PHOTO_SIZE=1280
# Directory with localization JSON files
LOCALES_DIR=locales
# ============================================
# AI MODELS CONFIGURATION (Optional)
# ============================================
# Google Gemini
GEMINI_API_KEY=
# google: official Gemini API via @google/genai; openai: OpenAI-compatible Gemini endpoint; auto: infer from GEMINI_BASE_URL
GEMINI_API_MODE=google
GEMINI_MODEL=gemini-2.5-flash
GEMINI_IMAGE_MODEL=gemini-2.5-flash-image
GEMINI_TRANSCRIPTION_MODEL=gemini-2.5-flash
GEMINI_TTS_MODEL=gemini-2.5-flash-preview-tts
GEMINI_TTS_VOICE=Kore
GEMINI_MAX_CONCURRENT_REQUESTS=3
# Mistral AI
MISTRAL_API_KEY=
MISTRAL_MODEL=mistral-small-latest
MISTRAL_TRANSCRIPTION_MODEL=voxtral-mini-latest
MISTRAL_TTS_MODEL=
MISTRAL_TTS_VOICE_ID=
MISTRAL_MAX_CONCURRENT_REQUESTS=3
# Ollama (Local AI Model)
OLLAMA_ADDRESS=
OLLAMA_MODEL=
OLLAMA_CHAT_MODEL=
OLLAMA_IMAGE_MODEL=
OLLAMA_THINK_MODEL=
OLLAMA_AUDIO_MODEL=gemma4:e2b
OLLAMA_API_KEY=
OLLAMA_EMBEDDING_MODEL=nomic-embed-text
OLLAMA_RAG_CHUNK_SIZE=1400
OLLAMA_RAG_CHUNK_OVERLAP=220
OLLAMA_RAG_TOP_K=8
OLLAMA_RAG_MAX_CONTEXT_CHARS=14000
OLLAMA_RAG_MIN_SCORE=0.12
OLLAMA_RAG_MAX_ARCHIVE_FILES=200
OLLAMA_RAG_MAX_ARCHIVE_BYTES=52428800
OLLAMA_RAG_MAX_ARCHIVE_DEPTH=2
OLLAMA_MAX_CONCURRENT_REQUESTS=1
# Custom system prompt for AI
SYSTEM_PROMPT=
# OpenAI
OPENAI_API_KEY=
OPENAI_BASE_URL=
OPENAI_MODEL=gpt-4.1-nano
OPENAI_IMAGE_MODEL=gpt-image-1-mini
OPENAI_TRANSCRIPTION_MODEL=gpt-4o-mini-transcribe
OPENAI_TTS_MODEL=gpt-4o-mini-tts
OPENAI_TTS_VOICE=alloy
OPENAI_TTS_INSTRUCTIONS=
OPENAI_MAX_CONCURRENT_REQUESTS=3
# Per-capability AI endpoint overrides
# Pattern:
# <PROVIDER>_<CAPABILITY>_MODEL=
# <PROVIDER>_<CAPABILITY>_BASE_URL=
# <PROVIDER>_<CAPABILITY>_API_KEY=
#
# Providers: OLLAMA, GEMINI, MISTRAL, OPENAI
# Capabilities: CHAT, VISION, OCR, THINKING, EXTENDED_THINKING, TOOLS, AUDIO,
# DOCUMENTS, OUTPUT_IMAGES, SPEECH_TO_TEXT, TEXT_TO_SPEECH
# Endpoint aliases are also supported: *_ENDPOINT and *_ADDRESS.
# Provider-wide fallback endpoints: OPENAI_BASE_URL, MISTRAL_BASE_URL,
# GEMINI_BASE_URL, OLLAMA_ADDRESS or OLLAMA_BASE_URL.
# Capability aliases are also supported: IMAGE, THINK, RAG, EMBEDDING,
# TRANSCRIPTION, STT, TTS.
#
# Examples:
# OPENAI_SPEECH_TO_TEXT_MODEL=gpt-4o-mini-transcribe
# OPENAI_SPEECH_TO_TEXT_BASE_URL=https://api.openai.com/v1
# OPENAI_SPEECH_TO_TEXT_API_KEY=
# MISTRAL_TTS_BASE_URL=
# OLLAMA_DOCUMENTS_ADDRESS=http://localhost:11434