my_voice_assistant_v3/tests
Dieter Schlüter 81d4cf6fd8 fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache
Bisher wurde `language` zwar an STT/TTS übergeben, aber nie an den LLM.
Lokales Modell antwortete deshalb immer auf Englisch/Deutsch, egal ob
Französisch, Spanisch o.a. eingestellt war.

Lösung: `language`-Parameter durch die gesamte LLM-Schicht gezogen:
- base.py: `lang_instruction()` helper + Signatur erweitert
- local_openai_compatible.py: Sprachanweisung ("Respond in Français.")
  wird als letzter System-Part in den Message-Stack eingefügt
- openrouter.py: Explizite Sprachanweisung ergänzt den bestehenden
  "Answer in the same language as the user"-Prompt
- fallback.py: FallbackLLMProvider leitet `language` durch
- orchestrator.py: alle 3 LLM-Aufrufstellen übergeben `language`
- Tests: alle Stub-LLMs um `language=None` ergänzt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 14:12:16 +02:00
..
conftest.py feat: Audio-Streaming als Default (Admin abschaltbar via AUDIO_STREAM_DEFAULT) 2026-06-17 18:07:36 +02:00
test_admin_settings.py feat(admin): Provider & Sprache — Eigener-Wert-Eingabe + Tests (v14) 2026-06-19 12:30:52 +02:00
test_audio_router.py Initial commit: Voice Assistant Gateway mit Konfig-/Routing-Fundament 2026-06-17 01:48:56 +02:00
test_auth.py feat(tts): echtes lokales TTS via piper (kein Stub mehr) 2026-06-17 22:11:20 +02:00
test_basic_layout.py Initial commit: Voice Assistant Gateway mit Konfig-/Routing-Fundament 2026-06-17 01:48:56 +02:00
test_chatterbox_tts.py feat(tts): Chatterbox-Provider (hohe Qualitaet + Voice-Cloning) anbinden 2026-06-18 09:44:31 +02:00
test_config_profiles.py Initial commit: Voice Assistant Gateway mit Konfig-/Routing-Fundament 2026-06-17 01:48:56 +02:00
test_cookie_auth.py feat(auth): Forward-Auth via JWT-Cookie (YunoHost yunohost.portal) 2026-06-18 08:44:33 +02:00
test_emergency_llm.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_endpoints_e2e.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_forward_auth.py feat(web): Remote-Web-UI mit Mikrofon + Forward-Auth (YunoHost-SSO) 2026-06-18 04:37:16 +02:00
test_local_llm_messages.py fix(llm): System-Nachrichten zu einer fuehrenden zusammenfuehren (Qwen3-Template) 2026-06-18 04:45:21 +02:00
test_memory.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_memory_extraction.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_openrouter_tts.py fix(tts): OpenRouter-TTS bei transient leerer/5xx-Antwort wiederholen 2026-06-18 00:06:47 +02:00
test_piper_tts.py perf(tts): piper in-process mit gecachtem Modell statt Subprozess pro Satz 2026-06-18 08:22:04 +02:00
test_quota_safety.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_realtime.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_resilience.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_routing.py feat: Cloud-Fundament - Auth, Persistenz und Mandanten-Trennung 2026-06-17 02:14:25 +02:00
test_streaming.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00
test_tts_normalizer.py feat(tts): Aussprache-Lexikon befüllt (verifizierte Vokallängen-Fixes) + case-insensitiv 2026-06-17 23:19:17 +02:00
test_warmup.py perf(startup): lokale Modelle beim Start vorladen (Warm-up) 2026-06-18 08:27:37 +02:00
test_ws.py fix(llm): LLM antwortet jetzt in der konfigurierten Systemsprache 2026-06-19 14:12:16 +02:00