e19831f7d5
Windows-Desktop-Script: Energy VAD + Whisper Wake Detection, faster-whisper STT, mss Screen Capture, MC2 Vision/Chat API, Edge TTS Ausgabe, pystray System Tray. Kein Account nötig — Wake Word frei konfigurierbar via WAKE_WORDS in config.py. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
63 lines
3.4 KiB
Python
63 lines
3.4 KiB
Python
# Hermes Voice Client — Konfiguration
|
||
# Alle Einstellungen hier anpassen, kein Code-Edit nötig.
|
||
|
||
# ── AI-Box ──────────────────────────────────────────────────────────────
|
||
MC2_BASE_URL = "http://192.168.178.151:9001/v1"
|
||
|
||
# Modell für reine Text-Anfragen (kein Screenshot)
|
||
CHAT_MODEL = "Hermes-4-14B"
|
||
|
||
# Modell wenn ein Screenshot mitgeschickt wird
|
||
VISION_MODEL = "Qwen3-VL-2B-Instruct"
|
||
|
||
# ── Wake Word ────────────────────────────────────────────────────────────
|
||
# Einfach den gewünschten Trigger-Text hier eintragen — kein Account, kein Download.
|
||
# Whisper transkribiert Sprache und prüft ob eines der Wörter enthalten ist.
|
||
# Mehrere Varianten möglich: ["hey hermes", "hermes", "hey jarvis"]
|
||
WAKE_WORDS = ["hey hermes", "hermes"]
|
||
|
||
# Whisper-Modell für die schnelle Wake-Detection (tiny = 39MB, sehr schnell)
|
||
WAKE_WHISPER_MODEL = "tiny"
|
||
|
||
# ── Spracheingabe ────────────────────────────────────────────────────────
|
||
# faster-whisper Modellgröße: "tiny", "base", "small", "medium"
|
||
# "small" läuft gut auf CPU (~244 MB), "base" ist schneller aber ungenauer
|
||
WHISPER_MODEL_SIZE = "small"
|
||
WHISPER_LANGUAGE = "de" # "de" für Deutsch, "en" für Englisch, None = auto
|
||
|
||
# Sekunden Stille bis Aufnahme endet
|
||
SILENCE_TIMEOUT = 1.5
|
||
# Maximale Aufnahmedauer in Sekunden (Sicherheitsnetz)
|
||
MAX_RECORD_SECONDS = 20
|
||
|
||
# ── Sprachausgabe ────────────────────────────────────────────────────────
|
||
# Edge TTS Stimmen: https://speech.microsoft.com/portal/voicegallery
|
||
# Deutsch: "de-DE-KillianNeural", "de-DE-SeraphinaMultilingualNeural"
|
||
# Englisch: "en-US-AndrewNeural", "en-US-AriaNeural"
|
||
TTS_VOICE = "de-DE-KillianNeural"
|
||
TTS_RATE = "+0%" # Geschwindigkeit: "+10%" schneller, "-10%" langsamer
|
||
TTS_PITCH = "+0Hz" # Tonhöhe
|
||
|
||
# ── Screen Capture ───────────────────────────────────────────────────────
|
||
# Screenshot bei jeder Anfrage mitschicken?
|
||
SCREENSHOT_ON_QUERY = True
|
||
# Monitor-Index (0 = alle, 1 = primär, 2 = zweiter Monitor)
|
||
SCREENSHOT_MONITOR = 1
|
||
# Auflösung für Screenshot (kleinere = schnellere Übertragung)
|
||
SCREENSHOT_WIDTH = 1280
|
||
SCREENSHOT_HEIGHT = 720
|
||
|
||
# ── Agent-Verhalten ──────────────────────────────────────────────────────
|
||
MAX_RESPONSE_TOKENS = 200 # kurze gesprochene Antworten
|
||
REQUEST_TIMEOUT = 30 # Sekunden bis Timeout
|
||
|
||
SYSTEM_PROMPT = """Du bist Hermes, ein KI-Assistent der direkt in den lokalen AI-Homelab integriert ist.
|
||
Du hörst die Stimme des Nutzers und siehst seinen Bildschirm.
|
||
|
||
Regeln für Antworten:
|
||
- Kurz und präzise (2–4 Sätze maximum)
|
||
- Kein Markdown, keine Aufzählungen, keine Codeblöcke — du wirst gesprochen
|
||
- Wenn du einen offensichtlichen Fehler auf dem Bildschirm siehst, weise kurz darauf hin
|
||
- Antworte auf Deutsch wenn der Nutzer Deutsch spricht, auf Englisch wenn Englisch
|
||
- Sei direkt und hilfreich, kein unnötiges Smalltalk"""
|