Ein echter Game-Changer - Alexa ersetzen mit Home Assistant, Voice Satellite, LLM, MCP und SearXNG

Wie ich Alexa mit Home Assistant, Voice Satellite, einem LLM und eigener Websuche ersetze

Ich möchte hier meinen aktuellen Stand mit Home Assistant Voice teilen, weil daraus inzwischen etwas geworden ist, das für mich erstmals wirklich das Potenzial hat, Alexa komplett zu ersetzen.

Nicht nur als Sprachschalter für Lampen.

Sondern als richtiger Assistent, der mein Haus kennt, natürliche Sprache versteht, aktuelle Informationen aus dem Internet recherchieren kann und bei Bedarf mehrere Werkzeuge miteinander kombiniert.

Der Kern besteht bei mir aus:

  • Home Assistant
  • Assist beziehungsweise Voice Satellites
  • einem LLM als Conversation Agent
  • Big Pickle als Modell
  • MCP als Werkzeug-Schnittstelle
  • einer selbst gehosteten SearXNG-Suche
  • MetaMCP als MCP-Gateway

Die wichtigste Erkenntnis dabei war: Ein gutes LLM allein reicht nicht. Erst Werkzeuge machen daraus einen wirklich brauchbaren Assistenten.


Wo die Idee herkam: OpenCode für Home Assistant

Der eigentliche Auslöser für dieses Projekt war die Home-Assistant-App beziehungsweise das Add-on OpenCode von Magnus Øverli.

OpenCode für Home Assistant auf GitHub

Das Projekt bringt den OpenCode-AI-Coding-Agent direkt in Home Assistant. Es ist speziell auf Home-Assistant-Konfiguration zugeschnitten und besitzt eine sehr tiefe MCP-Integration. Laut Projektbeschreibung stellt das Add-on aktuell unter anderem zahlreiche Tools, Ressourcen und Prompts zur Verfügung und kann dadurch sehr viel mehr, als nur Text an ein LLM zu schicken. GitHub

OpenCode kann außerdem über sehr viele verschiedene LLM-Provider arbeiten. Für den schnellen Einstieg gibt es OpenCode Zen als kostenlosen Zugang zu ausgewählten Modellen. GitHub

Genau dort bin ich auf Big Pickle gestoßen.

Was mir beim Benutzen von OpenCode auffiel: Der Agent konnte Dinge erledigen und Fragen beantworten, für die das eigentliche Modell allein gar nicht ausreichend aktuelles Wissen besitzen musste.

Und damit kam mir der entscheidende Gedanke:

Wenn OpenCode ein LLM mit Werkzeugen versorgen kann, warum sollte ich nicht dasselbe Prinzip auf meinen Sprachassistenten übertragen?

Mein Voice-Setup funktionierte bereits. Das LLM konnte mein Smart Home bedienen und deutlich natürlicher mit mir kommunizieren als Alexa.

Was ihm fehlte, war der Zugriff auf die Gegenwart.


Voice Satellite statt Echo-Geräte

Home Assistant hat mit Assist Satellite inzwischen eine ziemlich gute Grundlage für eigene Sprachgeräte.

Ein Assist Satellite repräsentiert einen entfernten Sprachendpunkt, der die Assist-Pipeline von Home Assistant nutzt. Home Assistant kennt dabei Zustände wie Listening, Processing und Responding und unterstützt inzwischen auch Aktionen wie Durchsagen, Fragen und das Starten von Gesprächen. Home Assistant

Home Assistant: Assist Satellite

Das Grundprinzip sieht für mich so aus:

Mikrofon / Voice Satellite
        ↓
Wake Word
        ↓
Speech-to-Text
        ↓
Home Assistant Assist
        ↓
Conversation Agent / LLM
        ↓
Text-to-Speech
        ↓
Lautsprecher

Damit kann man im Prinzip genau das ersetzen, was bei mir bisher die Echo-Geräte erledigt haben.

Der Unterschied liegt in der Intelligenz hinter der Sprachpipeline.


Warum ein LLM so viel interessanter ist als Alexa

Bei einem klassischen Sprachassistenten arbeitet man im Wesentlichen mit festen Intents, Skills und vorgegebenen Funktionsbereichen.

Ein LLM kann dagegen aus normaler Sprache eine Absicht ableiten.

Statt:

„Schalte Wohnzimmerlampe 1 und Wohnzimmerlampe 2 auf 35 Prozent.“

kann ich eher sagen:

„Mach es im Wohnzimmer etwas gemütlicher, aber nicht zu dunkel.“

Das Modell kann den Kontext verstehen und die entsprechenden Home-Assistant-Werkzeuge auswählen.

Das ist der Punkt, an dem Sprachsteuerung für mich zum ersten Mal wirklich natürlich wird.

Aber dabei entsteht sofort ein neues Problem.


Das große Problem: Das LLM lebt in der Vergangenheit

Ein Sprachmodell hat einen Wissensstand.

Ohne weitere Werkzeuge kann es zwar enorm viel wissen, aber es kann nicht wissen, was heute Morgen passiert ist.

Fragen wie:

„Was ist heute bei Home Assistant erschienen?“

„Wer ist momentan Fußball-Weltmeister?“

„Welche Version dieser Software ist aktuell?“

„Wie ist das Spiel gestern ausgegangen?“

können deshalb mit altem Modellwissen beantwortet werden.

Und genau das wollte ich nicht.

Ein Assistent, der mein Haus im Jahr 2026 steuert, aber bei Wissensfragen in seinem Trainingsjahr hängen bleibt, ist nur die halbe Lösung.


MCP: Die Verbindung zwischen LLM und Werkzeugen

Hier kommt Model Context Protocol, kurz MCP, ins Spiel.

Home Assistant besitzt inzwischen selbst eine MCP-Integration und kann dabei als MCP-Client arbeiten. Externe MCP-Server können dem Conversation Agent zusätzliche Tools bereitstellen.

Home Assistant nennt eine Websuche sogar ausdrücklich als Beispiel für genau diesen Anwendungsfall. Home Assistant

Home Assistant: Model Context Protocol

Das ist konzeptionell sehr mächtig.

Das LLM muss die Websuche nicht selbst besitzen.

Es bekommt einfach ein Werkzeug:

web_search(query)

und kann selbst entscheiden, wann es dieses Werkzeug braucht.

Damit wird aus:

LLM

ein:

LLM + Werkzeuge

Und genau das hatte ich bei OpenCode gesehen.


Meine aktuelle Architektur

Der Aufbau sieht bei mir inzwischen so aus:

                    ┌─────────────────────┐
                    │    Voice Satellite  │
                    └─────────┬───────────┘
                              │
                              ▼
                    ┌─────────────────────┐
                    │ Home Assistant      │
                    │ Assist              │
                    └─────────┬───────────┘
                              │
                              ▼
                    ┌─────────────────────┐
                    │ Local OpenAI LLM    │
                    │ Big Pickle          │
                    └─────────┬───────────┘
                              │
                ┌─────────────┴─────────────┐
                │                           │
                ▼                           ▼
       Home-Assistant-Tools            MCP Tools
       Licht / Heizung /                  │
       Sensoren / Geräte                  ▼
                                      MetaMCP
                                          │
                                          ▼
                                     mcp-searxng
                                          │
                                          ▼
                                       SearXNG
                                          │
                                          ▼
                                       Internet

Das Modell besitzt damit zwei Arten von Wissen beziehungsweise Handlungsmöglichkeiten:

Home Assistant sagt ihm, was im Haus passiert.

MCP gibt ihm zusätzliche externe Werkzeuge.


Warum SearXNG?

Für die Websuche wollte ich möglichst keinen weiteren kommerziellen API-Dienst benötigen.

Deshalb habe ich SearXNG selbst gehostet.

SearXNG besitzt eine HTTP-Such-API und kann Suchergebnisse unter anderem als JSON ausgeben. Das JSON-Format muss dafür in der Konfiguration aktiviert sein. SearXNG Dokumentation

SearXNG Search API

SearXNG selbst ist allerdings noch kein MCP-Server.

Dafür verwende ich:

mcp-searxng von ihor-sokoliuk

mcp-searxng auf GitHub

Dieses Projekt verbindet einen MCP-Client mit einer vorhandenen SearXNG-Instanz und stellt Websuche und das Lesen von Webseiten als Tools bereit. Es besitzt außerdem einen HTTP-Modus mit /mcp als MCP-Endpunkt und /health als Healthcheck. GitHub

In meinem Aufbau stehen dem LLM dadurch unter anderem diese Werkzeuge zur Verfügung:

searxng_web_search
searxng_search_suggestions
web_url_read
searxng_instance_info

Das Entscheidende dabei ist web_url_read.

Das LLM kann also zunächst suchen, ein relevantes Ergebnis auswählen und danach auch den Inhalt der gefundenen Seite lesen. GitHub


MetaMCP als zentrale Werkzeugschicht

Zwischen Home Assistant und mcp-searxng läuft bei mir zusätzlich MetaMCP.

MetaMCP auf GitHub

MetaMCP ist ein MCP-Aggregator beziehungsweise Gateway.

Man kann mehrere MCP-Server zu sogenannten Namespaces zusammenfassen und diese wiederum über einen gemeinsamen Endpoint veröffentlichen. MetaMCP unterstützt dabei sowohl SSE- als auch Streamable-HTTP-Endpunkte. GitHub

Das ist für meine aktuelle Websuche eigentlich schon fast überdimensioniert.

Aber strategisch gefällt mir die Lösung sehr.

Heute hängt dort nur SearXNG.

Später können dort weitere Werkzeuge hinzukommen.

Home Assistant sieht trotzdem nur einen Tool Provider.

Zum Beispiel könnte man dort irgendwann ergänzen:

SearXNG
Kalender-MCP
Dokumenten-MCP
lokale Wissensdatenbank
weitere APIs

und für den Conversation Agent sieht das alles wie ein gemeinsamer Werkzeugkasten aus.


Der aktuelle Docker-Stack

Bei mir läuft Home Assistant OS als virtuelle Maschine unter Proxmox.

Die Websuch-Komponenten laufen separat auf einem Docker-Host und werden über Portainer verwaltet.

Der Stack besteht derzeit aus:

SearXNG
mcp-searxng
MetaMCP
PostgreSQL für MetaMCP

Alle Komponenten befinden sich in einem gemeinsamen Docker-Netzwerk.

Dadurch kann beispielsweise mcp-searxng intern einfach auf:

http://searxng:8080

zugreifen.

Und MetaMCP erreicht mcp-searxng intern über dessen Docker-Servicenamen.

Nach außen muss nur das veröffentlicht werden, was Home Assistant tatsächlich erreichen soll.


Und dann kam die lange Fehlersuche

Eigentlich hätte es jetzt funktionieren müssen.

Tat es aber nicht.

Home Assistant meldete beim Hinzufügen des MCP-Servers nur:

Verbindung fehlgeschlagen

oder:

Unerwarteter Fehler

Das Interessante war: Jeder einzelne technische Baustein funktionierte.

Der MCP-Healthcheck war erreichbar.

Ein manueller initialize-Request funktionierte.

Die Antwort enthielt eine gültige MCP-Session-ID.

Der Event-Stream funktionierte.

notifications/initialized funktionierte.

tools/list funktionierte.

Und alle vier SearXNG-Tools wurden sauber zurückgegeben.


Der entscheidende Test mit dem offiziellen MCP-Python-SDK

Um auszuschließen, dass MetaMCP oder mcp-searxng mit Home Assistants MCP-Version inkompatibel sind, habe ich einen separaten Python-Container gestartet.

Darin wurde dieselbe MCP-SDK-Version verwendet wie in Home Assistant.

Ein sehr kleiner Testclient konnte den Endpoint problemlos verwenden:

import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client

URL = "http://server/metamcp/home-assistant-websearch/mcp"

async def main():
    async with streamable_http_client(URL) as (read, write, _):
        async with ClientSession(read, write) as session:
            result = await session.initialize()
            print("INITIALIZE OK:", result.serverInfo)

            tools = await session.list_tools()

            for tool in tools.tools:
                print(tool.name)

asyncio.run(main())

Das Ergebnis war sinngemäß:

INITIALIZE OK

SearXNG__searxng_web_search
SearXNG__searxng_search_suggestions
SearXNG__web_url_read
SearXNG__searxng_instance_info

Damit war der MCP-Server als Ursache praktisch ausgeschlossen.


Der mutmaßliche Fehler in Home Assistant 2026.8.0

Beim Durchsehen des Home-Assistant-Codes fiel anschließend etwas auf.

In der von mir verwendeten Version wurde die MCP-Session bereits innerhalb von mcp_client() initialisiert:

await session.initialize()
yield session

Der Config Flow bekam diese Session anschließend zurück und rief nochmals:

response = await session.initialize()

auf.

Die gleiche Session wurde beim Einrichten also effektiv zweimal initialisiert.

Unser Test-Patch bestand darin, mcp_client() nur noch Transport und ClientSession erzeugen zu lassen:

yield session

Die Initialisierung passiert anschließend genau einmal am jeweiligen Aufrufer.

Beim Abrufen der Tools beispielsweise:

async with mcp_client(...) as session:
    await session.initialize()
    result = await session.list_tools()

Und beim Aufruf eines Tools entsprechend:

async with mcp_client(...) as session:
    await session.initialize()
    result = await session.call_tool(...)

Wichtig: Ich bezeichne das bewusst als mutmaßlichen Bug beziehungsweise reproduzierbares Problem in meiner 2026.8.0-Installation, solange Home-Assistant-Core-Maintainer das Issue noch nicht bestätigt haben.

Ich habe dazu inzwischen ein Issue mit vollständiger Beweiskette eingereicht.


Der Moment, an dem es funktionierte

Nach dem Patch habe ich Home Assistant neu gestartet und exakt denselben MetaMCP-Endpoint wieder hinzugefügt.

Diesmal meldete Home Assistant:

Konfiguration für metamcp-unified-… erstellt.

Danach erschien der neue MCP-Provider im Local-OpenAI-LLM-Agenten unter:

Tool Providers

Dort musste ich ihn nur noch aktivieren.

Und damit hatte Big Pickle plötzlich Zugriff auf die Websuche.


Der erste Test

Meine Testfrage war:

„Suche im Internet nach den neuesten Nachrichten über Home Assistant vom heutigen Tag. Nenne mir drei Meldungen mit Quelle.“

Die Antwort enthielt tatsächlich aktuelle Informationen des gleichen Tages, inklusive Quellen.

Damit funktionierte erstmals die komplette Kette:

Sprache
   ↓
Voice Satellite
   ↓
Home Assistant Assist
   ↓
Big Pickle
   ↓
MCP Tool Call
   ↓
MetaMCP
   ↓
mcp-searxng
   ↓
SearXNG
   ↓
Internet
   ↓
Ergebnis zurück zum LLM
   ↓
Sprachantwort

Das war für mich der Punkt, an dem das Projekt von „interessant“ zu „wirklich alltagstauglich“ gekippt ist.


Der nächste Schritt: Das Modell soll selbst entscheiden, wann es suchen muss

Natürlich möchte ich nicht jedes Mal sagen:

„Suche im Internet nach …“

Das Modell soll selbst erkennen, wann sein eigenes Wissen möglicherweise veraltet ist.

Der System-Prompt meines Agents enthält deshalb Regeln nach diesem Prinzip:

Nutze die Websuche selbstständig, wenn eine Frage Informationen betrifft,
die sich seit deinem Wissensstand geändert haben könnten.

Dazu gehören insbesondere:

- Nachrichten und aktuelle Ereignisse
- Sportergebnisse
- Softwareversionen und Releases
- aktuelle Preise
- aktuelle Personen und Ämter
- Termine und Veranstaltungen
- Informationen mit Zeitbezug wie:
  aktuell, heute, gestern, neueste, derzeit, momentan

Verlasse dich bei solchen Fragen nicht auf dein internes Trainingswissen.
Nutze stattdessen die Websuche.

Bei stabilen Fakten ist keine Websuche notwendig.

Wenn du unsicher bist, ob dein Wissen noch aktuell ist,
bevorzuge eine Websuche.

Damit soll das LLM beispielsweise:

„Wie hoch ist der Eiffelturm?“

ohne Tool beantworten.

Aber bei:

„Was ist heute bei Home Assistant passiert?“

selbstständig suchen.

Genau das unterscheidet für mich einen echten Agenten von einem Chatbot.


Warum das für mich wirklich Alexa ersetzen kann

Der interessante Punkt ist nicht, dass Home Assistant jetzt ebenfalls Wetter oder Fußballergebnisse beantworten kann.

Der interessante Punkt ist, dass dieselbe Intelligenz gleichzeitig Zugriff auf mein Zuhause und auf externe Informationen besitzt.

Der Assistent kann also verstehen:

„Mach es hier etwas heller.“

und ein Home-Assistant-Tool verwenden.

Er kann aber auch verstehen:

„Was ist heute bei Home Assistant neu?“

und die Websuche benutzen.

Und grundsätzlich kann er auch beide Welten kombinieren.

Das ist ein ganz anderes Modell als klassische Smart-Speaker-Skills.


Und was ist mit Datenschutz?

Für mich ist das ebenfalls ein wesentlicher Punkt.

Das bedeutet natürlich nicht automatisch, dass mein gesamter Sprachassistent vollständig offline ist.

Das hängt davon ab, welche Komponenten man verwendet:

  • Speech-to-Text
  • Text-to-Speech
  • LLM
  • externe APIs
  • Suchmaschinen

Man kann Teile davon lokal betreiben und andere nicht.

Aber der fundamentale Unterschied ist:

Ich entscheide selbst, welche Komponente welche Daten erhält.

Voice Satellite und Home Assistant können lokal laufen.

SearXNG läuft bei mir selbst.

MCP und MetaMCP laufen bei mir selbst.

Die Haussteuerung läuft bei mir selbst.

Und wenn ich später ein ausreichend gutes lokales LLM einsetzen möchte, kann auch dieser Teil ersetzt werden.

Das System ist also nicht an einen einzigen Cloudanbieter und dessen Smart-Speaker-Ökosystem gebunden.


Mein aktueller Stack

Zusammengefasst:

Proxmox
│
├── Home Assistant OS VM
│   │
│   ├── Assist
│   ├── Voice Satellite
│   ├── Local OpenAI LLM
│   ├── Big Pickle
│   └── MCP Integration
│
└── Docker Host / Portainer
    │
    ├── SearXNG
    ├── mcp-searxng
    ├── MetaMCP
    └── PostgreSQL

OpenCode gehört dabei ausdrücklich nicht zu dieser Runtime-Kette.

OpenCode war der Ideengeber.

Ich habe dort gesehen, wie mächtig ein LLM wird, wenn man ihm über MCP gute Werkzeuge gibt. Das Konzept habe ich anschließend auf meinen Home-Assistant-Sprachassistenten übertragen.


Nützliche Referenzen

Für alle, die das nachbauen oder sich tiefer einlesen wollen:

OpenCode Home-Assistant-Add-on von Magnus Øverli

Home Assistant MCP-Integration

Home Assistant Assist Satellite

mcp-searxng

MetaMCP

SearXNG Search API


Fazit

Der Weg dahin war deutlich länger als gedacht.

Vor allem der MCP-Fehler in Home Assistant hat viel Zeit gekostet.

Aber das Ergebnis ist für mich ziemlich beeindruckend:

Mein Home-Assistant-Sprachassistent kann mein Haus steuern, mit einem LLM frei kommunizieren und selbstständig aktuelle Informationen aus dem Internet beschaffen.

Damit ist Voice Satellite für mich nicht mehr nur ein Bastelprojekt, um „Alexa ohne Amazon“ nachzubauen.

Es ist inzwischen eher das Gegenteil:

Alexa wird zum Vergleichsmaßstab für das alte Konzept eines Sprachassistenten.

Das Interessante an Home Assistant + LLM + MCP ist, dass ich nicht mehr auf die Funktionen beschränkt bin, die ein Hersteller vorgesehen hat.

Ich kann dem Agenten neue Werkzeuge hinzufügen.

Heute ist das eine Websuche.

Morgen vielleicht Dokumente, lokale Wissensdatenbanken oder andere interne Dienste.

Und genau deshalb glaube ich inzwischen:

Ein echter Alexa-Ersatz mit Home Assistant ist nicht nur möglich – er kann deutlich leistungsfähiger sein.

9 „Gefällt mir“

Cooles Projekt! Ich plane momentan etwas ähnliches. Ich nutze diese HACS-Integration: GitHub - skye-harris/llm_intents: Exposes internet search tools for use by LLM-backed Assist in Home Assistant · GitHub um dem LLM mehr Tools zu geben. Damit kann man Tools wie Wikipedia oder SearXNG direkt einbinden. Dann braucht man nicht einmal MCP :slight_smile:
Die Frage mit dem Datenschutz behandle ich ähnlich. Piper (TTS) und Whisper (STT) laufen bei mir in einem seperaten Proxmox-LXC, sodass diese recht performant sind und ihc nur das externe LLM nutzen muss

Sehr interessant wäre, noch die entstehenden Kosten durch das LLM. Ich schaue gerade, wie ich die möglichst gering halte. Ansonsten ist man ja shcon immer geneigt, lieber etwas selbst zu tun als für jeden Befehl Geld (wenn auch nur sehr wenig) zu zahlen :grin:

4 „Gefällt mir“

Da ich mich nach und nach von allen Cloud Diensten befreien möchte ist dies eines meiner Projekte für 2026

2 „Gefällt mir“

Das wundert mich nicht. Big Pickle ist kein eigenständiges Modell, sondern nur ein Alias auf ein anderes Free Modell. In letzter Zeit steckt immer Deepseek V4 Flash 0731 Free dahinter. Das ist sehr leistungsfähig bei einem sehr geringen Token-Preis. Und durch das Update letzte Woche noch deutlich besser geworden.

Ich nutze es im Hermes Agent und Opencode Desktop in Verbindung mit meinem Opencode Go Abo. Es liegt auf Platz 3 in meiner Vergleichstabelle. Dort habe ich die Benchmark-Ergebnisse von Artificial Analysis und die monatliche Usage, die man für das 10$ Abo bekommt, aufgeführt. Aktuell sind es 158k Requests pro Monat. Das ist mehr als genug. Allerdings hat Deepseek heute leider eine Preiserhöhung angekündigt. Mal abwarten, wie hoch sie ausfällt und ob es die Free Version noch weiter geben wird.

5 „Gefällt mir“

Dann hast du anscheinend noch nicht Alexa+ ausprobiert :wink: Das ist ein echter Gamechanger. Vorallem bei der Smarthome Steuerung. Statt den vorgegebenen Intents wird jetzt ein LLM verwendet. Somit funktioniert das, was du oben beschrieben hast, jetzt auch auf allen meinen Echo Geräten. Die Unterhaltungen sind jetzt viel natürlicher und kontextbezogen. Wie man es halt von anderen KI Chatbots, wie z.B. ChatGPT, kennt. Aktuelle Ereignisse sind logischerweise jetzt auch problemlos abfragbar.

2 „Gefällt mir“

Gute Info, Danke! Tabelle gleich mal abgespeichert :star_struck:

2 „Gefällt mir“

Zwei Dinge, die hier für mich entscheidend sind, um Alexa+ nicht zu nutzen:

  1. Ich möchte nicht den ganzen Tag von Amazon abgehört werden. Denn das ist definitiv so. Das haben wir mal getestet, indem wir uns mehrfach gezielt über ein Thema zu Hause unterhalten haben, ohne dazu irgendwas zu googeln oder ähnliches und plötzlich gezielte Werbung genau zu diesem Thema bekommen haben. Es waren NUR die ALEXAS aktiv. War so eine Art Feldversuch.

  2. Ich möchte nicht dazu verpflichtet werden, ein Prime Abo, was ja auch nicht mehr ganz preiswert ist, abzuschließen, um den Dienst zu benutzen.

4 „Gefällt mir“

Ich wusste nicht, dass es das gibt. Wird sofort gecheckt. :+1:

Ich glaube nicht, dass das so ist. Aber Glaube und Wissen ist oft nicht das gleiche.
Es gibt auch Leute, damit meine ich nicht dich @GB-Homebase, die an Chemtrails oder geplante Vergiftung von Trinkwasser glauben.
Aber ich will diesen Thread nicht entführen. Wenn zu den letzten Bemerkungen Diskussionsbedarf besteht - bitte ein neues Thema aufmachen.

2 „Gefällt mir“

Spielt am Ende ja auch keine große Rolle, ob da jetzt wirklcih irgendwas abgehört wird o.Ä.
Ich versuche auch Alexa/ Google Home zu vermeiden. Lokal ist ja immer besser. Ob die Daten bei Alexa nicht zumindest fürs AI Training genutzt wird, wird man wohl nie wissen. Bei einer eigenen Lösung hat man einfach immer mehr Kontrolle :slight_smile:

5 „Gefällt mir“

Dann darf bei der eigenen Lösung aber konsequenterweise kein LLM in der Cloud verwendet werden. Im Falle von Big Pickle aka Deepseek V4 Flash gehen die Daten direkt nach China und werden dort zum AI Training verwendet.

Bei Amazon werden die Daten bestimmt auch zum AI Training verwendet. Die wären schön blöd, wenn sie das nicht machen würden :wink:

2 „Gefällt mir“

Ja, das stimmt schon. Da sollte man dann zumindest einen halbwegs vertrauenswürdigen Provider mit ZDR nutzen. Das kann man ja in OpenRouter ganz gut konfigurieren, auch wenn man da natürlich auch nicht zu 100% drauf vertrauen darf.
Aber zumindest bleiben die Sprachdaten ja zuhause, das ist schonmal ein riesen Vorteil :grin:

2 „Gefällt mir“

Hi @GB-Homebase, danke für die weitere Möglichkeit zur Anleitung der Sprachsteuerung in HA. Inzwischen gibt es wirklich ein paar Wege HA mit KI (cloud/lokal) zu verbinden.

Ich selber nutze jetzt schon eine ganze Weile den Hermes Agent in Verbindung mit HA und meinen täglichen Aufgaben. Gefällt mir immer noch sehr gut und wird täglich genutzt.

Mein Wiki, News, mobiles NAS und tägliche cronjobs verwalte ich damit. Die Sprachsteuerung von HA und/oder Hermes geht damit auch problemlos. Ach und Hermes hat jetzt auch ein Funktion bekommen, so dass er wie alexa/google ständig zu hört und auf das hinterlegte Wakeword wartet. Damit kann man also schon super eine lokale Sprachsteuerung umsetzen und die neue Funktion bei Bedarf aktivieren.

HA ist bei mir über cli und das HA Tool in Hermes installiert und integriert. Die Installation ist dabei denkbar einfach, ohne zusätzliche Dienste wie Piper oder so, die eingerichtet werden müssen. Kleines Beispiel, letzte Woche hatte ich im Wochenthema meinen kleinen HA Buddy kurz gezeigt, der über ESPHome in HA läuft. Im Anschluss habe ich meinem Hermes Agent gesagt, du hast aber sofort über das ESPHome Gerät die Möglichkeit mir gegenüber 12 Emotionen ausdrücken zu können. Nun nutzt er das immer fleißig und sobald ich ihm eine Aufgabe stelle, zeigt er eine der Emotionen um mir seinen Gemütszustand bzw. seine aktuelle Aufgabe anzuzeigen. Funktioniert wirklich gut!

Der Harness vom Hermes Agent ist sehr gut und bietet eine Menge Werkzeuge standardmäßig an. Das Websearch Tool z.B. macht er einfach, weil es ein Standard-Werkzeug in Hermes ist.

Genutzt wird Hermes bei mir inzwischen nur noch mit lokalem ornith 1.0 (35B oder 27B) und das läuft sehr, weil ornith als lokales LLM wirklich sehr gut die Tools und Skills in Hermes nutzen kann. Läuft meiner Meinung nach besser, wie mit Qwen3.6/3.5.

Das Alexa+ Abo hatte ich mir zum Anfang auch angeschaut, bin aber nicht bereit im Monat 23€ für eine einfache „erweiterte“ Sprachfunktion auszugeben, dann sage ich doch lieber weiter meine statischen Sätze, „schalte PC-Licht ein“, statt wieder ein Abo zu bedienen. Bei Prime war das Alexa+ glaube ich enthalten, somit rechnet es sich wieder etwas besser, aber wie gesagt, für die Funktion gebe ich kein Geld aus. Zumal ich das wirklich gerne komplett lokal haben möchte.

Größtes Problem ist für mich aktuell die Mikrofonproblematik. Eigentlich alle freien Sprachassistenten(boxen) haben leider meist schlechte Mikrofone verbaut und die Rauschunterdrückung ist einfach schlecht. Daher bieten Alexa/Google noch immer die besseren Ergebnisse in Sachen Verständnis und das ist leider mit das Wichtigste. Wenn der Fernseher eingeschaltet und nebenher ein normales Gespräch geführt wird, dann muss der Sprachassistent trotzdem funktionieren! Hilft ja nicht weiter, wenn man vorher in der Runde sagen muss, jetzt mal leise bitte, so dass ich den Sprachassistenten ansprechen kann.

Nächstes Problem, ist die lange Zeit der Antwort. Durch die Umwandlung von Sprache zu Text, heraussuchen, aufarbeiten, Antwort wieder von Text zu Sprache und das Ausführen der eigentlichen Aktion, dauert es doch ein paar Sekunden, bevor man die Antwort erhält. Das stört mich gewaltig für die tägliche Nutzung!. Ich möchte nach Möglichkeit, schnell eine Antwort geliefert bekommen (wie gewohnt) und nicht wenn ich das Licht einschalte erst zwei, drei Sekunden warten bevor geschalten wird.

Das ist ein Grund warum die Echos (meist erste/zweite Generation) noch immer bei mir laufen und wohl auch noch weiterlaufen werden.

Ich werde am Wochenende mal etwas dazu schreiben, wie ich das alles in Zusammenspiel mit Hermes bei mir gemacht habe.

5 „Gefällt mir“

Mache ich auch genau so. Ich bin ein grosser Fan von Hermes Agent. Hab ihn auch als Sprachassistent in Home Assistant eingebunden. Auf dem Mac greife ich über die Desktop App und auf iPhone/iPads über die Moshi App oder Telegram zu. Läuft auf meinem Proxmox Server und hat dort Zugriff auf 3 Helfer LXC.

  • SearXNG (Websuche)
  • Camoufox (falls eingebautes Browser Tool geblockt wird)
  • Agent Reach (uneingeschränkter Zugriff auf X und Reddit Posts)
2 „Gefällt mir“