diff --git a/.env.example b/.env.example index 92c331a..e2f92df 100644 --- a/.env.example +++ b/.env.example @@ -56,6 +56,13 @@ OLLAMA_BASE_URL=http://127.0.0.1:11434 # Korean on factual/tool replies; can occasionally leak a trailing CJK phrase on # free-form chit-chat. Swap back to qwen3:8b for the strongest tool-calling. OLLAMA_CHAT_MODEL=qwen2.5:3b +# Model for the auxiliary small-model calls: intent judge, tool router, weather +# place extraction, query decomposition. BLANK (default) reuses OLLAMA_CHAT_MODEL +# so the stack runs on one already-warm model. The code's built-in default +# (gemma4:e2b) is NOT pulled by this stack, so leaving this unset previously made +# every router/extractor call silently fail. Only set this if you also pull the +# model into Ollama. +OLLAMA_INTENT_MODEL= OLLAMA_EMBED_MODEL=nomic-embed-text WHISPER_MODEL=small diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index c347c29..16f83a7 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -9,6 +9,13 @@ set -euo pipefail : "${VNC_RESOLUTION:=1920x1080}" : "${OLLAMA_BASE_URL:=http://ollama:11434}" : "${OLLAMA_CHAT_MODEL:=qwen3:8b}" +# Auxiliary small-model calls (intent judge, tool router, weather place +# extraction, query decomposition). The code default is gemma4:e2b, which this +# stack does not pull, so those calls would silently fail and fall open — +# crippling tool routing and arg extraction. Reuse the (already warm) chat model +# by default so everything runs on one resident model; override if you pull a +# dedicated small model. +: "${OLLAMA_INTENT_MODEL:=${OLLAMA_CHAT_MODEL}}" : "${OLLAMA_EMBED_MODEL:=nomic-embed-text}" : "${WHISPER_MODEL:=small}" : "${WHISPER_DEVICE:=cuda}" @@ -25,7 +32,7 @@ set -euo pipefail : "${XDG_RUNTIME_DIR:=/run/user/0}" : "${PULSE_SERVER:=unix:${XDG_RUNTIME_DIR}/pulse/native}" -export VNC_RESOLUTION OLLAMA_BASE_URL OLLAMA_CHAT_MODEL OLLAMA_EMBED_MODEL \ +export VNC_RESOLUTION OLLAMA_BASE_URL OLLAMA_CHAT_MODEL OLLAMA_INTENT_MODEL OLLAMA_EMBED_MODEL \ WHISPER_MODEL WHISPER_DEVICE WHISPER_COMPUTE_TYPE JARVIS_DB_PATH \ PIPER_VOICE PIPER_VOICE_DIR TTS_PIPER_MODEL_PATH BRIDGE_HOST BRIDGE_PORT \ XDG_RUNTIME_DIR PULSE_SERVER diff --git a/docker/jarvis-config.template.json b/docker/jarvis-config.template.json index 2b95c6a..a83fec0 100644 --- a/docker/jarvis-config.template.json +++ b/docker/jarvis-config.template.json @@ -4,6 +4,7 @@ "ollama_base_url": "${OLLAMA_BASE_URL}", "ollama_embed_model": "${OLLAMA_EMBED_MODEL}", "ollama_chat_model": "${OLLAMA_CHAT_MODEL}", + "intent_judge_model": "${OLLAMA_INTENT_MODEL}", "tts_enabled": true, "tts_engine": "piper", "tts_piper_model_path": "${TTS_PIPER_MODEL_PATH}",