LLM Vision + Google Gemini v Home Assistante: Inteligentné AI notifikácie z kamery
Home Assistant už dnes dokáže oveľa viac než len posielať upozornenia typu „Person detected“. LLM Vision Home Assistant umožňuje vytvoriť inteligentné AI notifikácie z bezpečnostných kamier pomocou Google Gemini.
Pomocou integrácie LLM Vision a modelu Google Gemini môžete získať notifikácie, ktoré opisujú, čo sa na kamere skutočne deje.
Namiesto strohej správy:
Person detected
môžete dostať napríklad:
👤 Muž prechádza popri dome smerom do záhrady.
alebo
📦 Kuriér vstupuje na pozemok a nesie kartónový balík.
Presne takúto automatizáciu som si vytvoril vo svojom Home Assistante a v tomto návode ukážem celý postup vrátane všetkých detailov, na ktoré som počas konfigurácie narazil.
Čo budeme potrebovať
Na vytvorenie inteligentných AI notifikácií budete potrebovať:
- Home Assistant
- nainštalovaný HACS
- integráciu LLM Vision
- Google Gemini API
- bezpečnostnú kameru (v mojom prípade TP-Link VIGI cez ONVIF)
- Home Assistant Companion App
Automatizácie som vytváral pomocou Claude Desktop pripojeného cez Home Assistant MCP.
Ak ešte MCP nemáte nastavené, odporúčam najskôr tento návod:
Ako pripojiť Claude Desktop k Home Assistantu pomocou MCP
Vďaka MCP Claude dokáže:
- čítať entity,
- zisťovať názvy služieb,
- vytvárať automatizácie,
- testovať ich,
- opravovať chyby.
Nemusíte teda ručne písať YAML ani hľadať názvy entít.
Prečo práve LLM Vision?
Veľa používateľov si myslí, že AI kamera musí sama rozpoznávať všetko.
Ja používam kameru TP-Link VIGI, ktorá už dokáže spoľahlivo detegovať osoby.
To však nestačí.
Kamera síce vie povedať:
Person detected
ale nevie odpovedať na otázky:
- Čo osoba robí?
- Kam ide?
- Nesie balík?
- Iba prechádza okolo domu alebo vstupuje na pozemok?
Presne toto rieši LLM Vision.
Kamera iba oznámi:
Našiel som osobu.
A Google Gemini následne analyzuje obrázok a opíše situáciu.
Vďaka tomu sa AI nespúšťa neustále, ale iba pri reálnych udalostiach, čo výrazne šetrí API požiadavky aj čas spracovania.
Inštalácia LLM Vision a Google Gemini
LLM Vision nie je súčasťou štandardného Home Assistanta, preto je potrebné ho najskôr nainštalovať. Integrácia je dostupná cez HACS a jej inštalácia zaberie len niekoľko minút.
Po úspešnej inštalácii sa v Home Assistante objaví nová integrácia LLM Vision.

Po otvorení integrácie kliknite na Pridať službu (Add Service). Ako prvú je potrebné vytvoriť všeobecnú konfiguráciu LLM Vision.
Táto konfigurácia slúži na nastavenie predvoleného správania integrácie. Vo väčšine prípadov nie je potrebné nič meniť, preto som ponechal všetky hodnoty na predvolených nastaveniach.
Výber AI poskytovateľa
Po vytvorení základnej konfigurácie môžeme pridať samotného AI poskytovateľa.
LLM Vision podporuje množstvo modelov a služieb, medzi ktoré patria napríklad:
- Google Gemini
- OpenAI
- Anthropic Claude
- Ollama
- Groq
- Azure OpenAI
- AWS Bedrock
- OpenRouter
- LocalAI
Ja som sa rozhodol pre Google Gemini.
Dôvod je jednoduchý. Gemini ponúka veľmi kvalitné výsledky pri analýze obrázkov, jednoduchú konfiguráciu a zároveň bezplatný API limit, ktorý je pre bežné domáce použitie úplne postačujúci. Pokiaľ nebudete analyzovať stovky obrázkov denne, pravdepodobne sa do bezplatného limitu bez problémov zmestíte.

Vytvorenie Google Gemini API kľúča
Na používanie Gemini je potrebné vytvoriť vlastný API kľúč.
Prihláste sa do Google AI Studio a vytvorte nový API kľúč.

Po kliknutí na Create key si API kľúč skopírujte. Z bezpečnostných dôvodov ho Google po zatvorení okna už nemusí zobraziť znova.
Konfigurácia Google Gemini v Home Assistante
Teraz sa vráťte späť do Home Assistanta a ako poskytovateľa vyberte Google.
Do poľa API kľúč vložte kľúč vytvorený v Google AI Studio.

Ostatné nastavenia môžete pokojne ponechať na predvolených hodnotách.
V čase písania článku používam model gemini-3.1-flash-lite, ktorý je veľmi rýchly a na analýzu obrázkov z bezpečnostných kamier úplne postačuje.
Po uložení konfigurácie je Google Gemini pripravený na používanie.
Prvé otestovanie AI analýzy
Skôr ako začneme vytvárať automatizácie, odporúčam najskôr overiť, že všetko funguje správne.
V Home Assistante otvorte:
Nástroje pre vývojárov → Akcie
a vyhľadajte službu Image Analyzer.

Vyplňte:
- Provider: Google Gemini
- Image Entity: vaša kamera
- Response format: Text
- Target Width: predvolená hodnota
- Maximum Tokens: približne 300
- Expose Images: zapnuté
Najdôležitejšou časťou je však samotný prompt.
Prompt rozhoduje o kvalite výsledkov
Veľa používateľov napíše iba:
Opíš obrázok.
Takýto prompt síce funguje, ale odpovede bývajú zbytočne všeobecné.
Ja som kameru využíval na sledovanie prístupovej cesty popri dome a vstupu do záhrady. Nezaujímalo ma, či AI vidí stromy alebo oblohu. Chcel som vedieť iba to, čo robí človek zachytený kamerou.
Preto používam tento prompt:
Odpovedaj vždy po slovensky.
Analyzuješ záber z bezpečnostnej kamery pri rodinnom dome.
Kamera sleduje prístupovú cestu popri dome a vstup do záhrady.
Na obrázku je osoba zachytená bezpečnostnou kamerou.
Stručne opíš:
- čo osoba robí,
- kam smeruje,
- či niečo nesie,
- či vstupuje na pozemok alebo iba prechádza okolo.
Ak si nie si istý, nepíš domnienky.
Odpoveď nech má maximálne dve krátke vety.
Takto sa AI sústredí iba na informácie, ktoré sú pre bezpečnostnú kameru skutočne dôležité.
Po spustení služby by ste mali dostať podobnú odpoveď:
Osoba v čiernom oblečení prechádza po ceste popri dome smerom k bráne. Nič nenesie a pokračuje v chôdzi okolo pozemku bez vstupu do areálu.
Ak ste dostali podobný výsledok, máte úspešne nakonfigurovaný LLM Vision aj Google Gemini a môžete pokračovať vytvorením automatizácie, ktorá bude túto analýzu vykonávať automaticky pri detekcii osoby.
Automatická AI analýza pri detekcii osoby
Samotný Image Analyzer je výborný na testovanie, ale jeho skutočná sila sa ukáže až pri automatizáciách.
V mojom prípade používam kameru TP-Link VIGI, ktorá už sama dokáže spoľahlivo rozpoznať osobu. Nepotrebujem teda, aby Google Gemini neustále analyzoval kameru. To by bolo zbytočne pomalé a zároveň by som zbytočne míňal API požiadavky.
Celé riešenie preto funguje oveľa inteligentnejšie.
Najskôr kamera rozpozná osobu a vytvorí udalosť v Home Assistante.
Až následne sa spustí Google Gemini, ktorý analyzuje jeden aktuálny snímok z kamery.
Celý proces vyzerá nasledovne:
VIGI deteguje osobu
│
▼
Home Assistant
│
▼
LLM Vision Image Analyzer
│
▼
Google Gemini analyzuje obrázok
│
▼
Push notifikácia do mobilu
Vďaka tomu sa AI používa iba vtedy, keď je to naozaj potrebné.
Automatizáciu som nevytváral ručne
Keďže už mám nastavený Home Assistant MCP, rozhodol som sa automatizáciu nevytvárať ručne.
Celú automatizáciu vytvoril Claude Desktop, ktorý bol pripojený k môjmu Home Assistantu cez MCP.
Ak ešte MCP nemáte nastavené, odporúčam najskôr prečítať môj návod:
👉 Ako pripojiť Claude Desktop k Home Assistantu pomocou MCP
Veľkou výhodou MCP je, že Claude nemusí nič hádať.
Claude automatizáciu nevytváral podľa návodu z internetu. Cez MCP si najskôr načítal aktuálnu konfiguráciu môjho Home Assistanta a až následne vytvoril automatizáciu priamo pre moje prostredie.
Najskôr si vie z Home Assistanta načítať:
- dostupné entity,
- názvy služieb,
- názvy kamier,
- notifikačné služby,
- parametre jednotlivých integrácií.
Až potom vytvorí samotnú automatizáciu.
Tým sa výrazne znižuje riziko, že automatizácia nebude fungovať kvôli nesprávnemu názvu entity alebo služby.
Čo automatizácia robí
Automatizácia sa spustí pri zmene entity:
binary_sensor.vigi_c250_person_detection
na hodnotu ON.
Po detekcii osoby ešte približne dve sekundy počká.
Tým sa zabezpečí, že osoba sa dostane viac do stredu záberu a AI nebude analyzovať okamih tesne po začiatku detekcie.
Následne Home Assistant zavolá službu LLM Vision Image Analyzer, ktorá odošle aktuálny snímok do Google Gemini.
Výsledok analýzy sa následne odošle ako push notifikácia do aplikácie Home Assistant.
Výsledná notifikácia môže vyzerať napríklad takto.

Namiesto obyčajného upozornenia:
Person detected
dostanem oveľa užitočnejšiu informáciu:
Osoba v čiernom oblečení prechádza po ceste popri dome smerom k bráne. Nič nenesie a pokračuje v chôdzi okolo pozemku bez vstupu do areálu.
Takéto upozornenie má pre mňa výrazne väčšiu hodnotu, pretože okamžite viem, či ide iba o okoloidúceho človeka alebo niekoho, kto vstupuje na pozemok.
Claude automatizáciu aj otestoval
Veľkou výhodou MCP je, že Claude automatizáciu iba nevytvoril.
Po vytvorení ju tiež:
- skontroloval,
- otestoval,
- overil výsledok,
- opravil chyby,
- opätovne otestoval.
Počas konfigurácie sa ukázalo niekoľko drobných problémov, ktoré by som pravdepodobne ručne hľadal oveľa dlhšie.
Napríklad sa ukázalo, že notifikácia síce obsahovala text, ale nezobrazoval sa snapshot z kamery.
Claude preto analyzoval výsledok služby LLM Vision, zistil, akú cestu vracia parameter key_frame, porovnal ju s dokumentáciou Home Assistant Companion App a automatizáciu upravil tak, aby sa obrázok správne zobrazil aj v push notifikácii.
Podobne vyriešil aj ochranu proti opakovaným notifikáciám, aby sa AI analýza nespúšťala niekoľkokrát za sebou pri jednej osobe.
To je podľa mňa jedna z najväčších výhod využitia MCP pri Home Assistante. Claude totiž nevytvára automatizácie naslepo, ale pracuje priamo s vašou existujúcou konfiguráciou a vie ich okamžite overiť v praxi.
Inteligentná AI namiesto desiatok notifikácií
Pri prvých testoch som si uvedomil ešte jednu vec.
Ak by sa AI spustila pri každom pohybe, dostával by som množstvo zbytočných notifikácií.
Preto som do automatizácie pridal 30-sekundový cooldown.
30 sekúnd je iba môj príklad. Ak máte kameru na frekventovanom mieste, môžete cooldown predĺžiť alebo skrátiť podľa potreby.
Ak kamera počas tejto doby zachytí tú istú osobu viackrát, automatizácia odošle iba jednu AI notifikáciu.
Výsledkom je oveľa pokojnejšie používanie. Telefón nie je zaplavený upozorneniami a zároveň sa zbytočne nemíňajú požiadavky na Google Gemini API.
Praktické problémy a ich riešenie
Po vytvorení automatizácie sa môže zdať, že je všetko hotové. Aj mne sa spočiatku zdalo, že všetko funguje správne. AI analyzovala obrázky, posielala notifikácie a automatizácia sa spúšťala presne podľa očakávania.
Počas testovania som však narazil na niekoľko drobných problémov, ktoré sa v oficiálnej dokumentácii prakticky nespomínajú.
V tejto kapitole ukážem ich riešenie.
Snapshot sa nezobrazoval v push notifikácii
Prvý problém bol pomerne zvláštny.
Do mobilu mi prišla AI notifikácia s opisom situácie, ale bez obrázka.
Po kliknutí na notifikáciu sa otvoril iba Home Assistant Dashboard.
Claude preto cez MCP analyzoval celú automatizáciu a zistil, že problém nebol v Home Assistante ani v Android Companion App.
LLM Vision vracia cestu k obrázku napríklad v tomto tvare:
/media/llmvision/snapshots/2e44ac32-0.jpg
Táto cesta však nie je priamo použiteľná pre Home Assistant Companion App.
Je potrebné ju upraviť na:
{{ vision_result.key_frame.replace('/media', '/media/local') }}
Výsledná cesta potom vyzerá takto:
/media/local/llmvision/snapshots/2e44ac32-0.jpg
Po tejto úprave sa snapshot začal zobrazovať priamo v push notifikácii.
Je to drobnosť, ale ušetrila mi pomerne dosť času pri hľadaní príčiny.
Funguje obrázok aj mimo domácej Wi-Fi?
Áno.
Ak používate Home Assistant Companion App spolu s Nabu Casa Remote UI alebo máte správne nastavený vzdialený prístup (HTTPS, VPN alebo Tailscale), obrázky sa zobrazia aj mimo domácej siete.
Companion App si snapshot stiahne priamo z Home Assistanta cez adresu /media/local/....
Ak však vzdialený prístup do Home Assistanta nemáte, text notifikácie síce príde, ale obrázok nebude možné načítať.
Odporúčam preto po dokončení celej konfigurácie otestovať notifikáciu aj na mobilných dátach.
Snapshoty sa automaticky nemažú
Na toto som prišiel až po dôkladnejšom skúmaní dokumentácie a GitHub Issues.
LLM Vision síce obsahuje nastavenie Retention Time, ale vzťahuje sa iba na udalosti uložené pomocou parametra:
store_in_timeline: true
V tomto návode však používame parameter:
expose_images: true
Práve ten zabezpečuje, že sa snapshot priloží k push notifikácii.
Tieto obrázky sa ukladajú do adresára:
/media/llmvision/snapshots/
a automaticky sa nikdy nemažú.
To znamená, že po niekoľkých mesiacoch používania môžu zbytočne zaberať miesto na disku.
Automatické čistenie snapshotov
Home Assistant momentálne neobsahuje žiadnu natívnu službu na mazanie súborov zo súborového systému.
Najjednoduchším riešením je vytvoriť vlastný shell_command.
Do súboru configuration.yaml pridajte:
shell_command:
cleanup_llmvision_snapshots: "find /media/llmvision/snapshots -type f -mtime +7 -delete"
Tento príkaz odstráni všetky snapshoty staršie ako sedem dní.
Po úprave konfigurácie je potrebné Home Assistant reštartovať, aby sa nová služba načítala.
Následne stačí vytvoriť jednoduchú automatizáciu, ktorá sa bude spúšťať raz denne, napríklad o 03:30.
Automatizácia zavolá službu:
action:
- service: shell_command.cleanup_llmvision_snapshots
Od tejto chvíle sa budú staré obrázky pravidelne mazať a adresár nebude postupne narastať.
Oplatí sa to?
Po niekoľkých dňoch testovania môžem povedať, že áno.
Rozdiel medzi klasickou detekciou pohybu a AI analýzou je obrovský.
Namiesto všeobecnej správy:
Person detected
dostanem informáciu, ktorá má skutočnú hodnotu.
Napríklad:
- Osoba prechádza popri dome smerom k bráne.
- Na pozemok vstupuje kuriér s kartónovým balíkom.
- Dve osoby sa pohybujú smerom do záhrady.
- Osoba iba prechádza okolo pozemku bez vstupu do areálu.
Práve tento kontext je podľa mňa najväčšou výhodou LLM Vision.
Záver
LLM Vision spolu s Google Gemini posúva bezpečnostné kamery v Home Assistante na úplne inú úroveň.
Ak už vaša kamera dokáže spoľahlivo rozpoznať osobu, nepotrebujete ďalší systém na detekciu objektov. Stačí využiť existujúcu detekciu ako spúšťač a nechať AI opísať, čo sa na zábere skutočne deje.
Počas tvorby tohto návodu som všetko konfiguroval a testoval na reálnom systéme. Automatizácie som vytváral pomocou Claude Desktop pripojeného cez Home Assistant MCP, ktorý dokázal nielen vytvoriť automatizácie, ale ich aj otestovať, opraviť chyby a overiť výsledky priamo v mojom Home Assistante.
Ak už máte MCP nastavené, odporúčam tento spôsob práce vyskúšať. Pri zložitejších automatizáciách dokáže ušetriť veľa času a zároveň výrazne znížiť počet chýb spôsobených nesprávnymi názvami entít alebo služieb.
