Autorski): Lindo Św. Anioł
Oryginalnie opublikowano w „W stronę sztucznej inteligencji”.
Kamery inteligentnego domu to hałaśliwi gawędziarze. Liść się porusza, światło miga, a Twój telefon znów wibruje. Otrzymujesz ruch, a nie znaczenie.
The Analizator wideo wewnątrz Domowy agent generacyjny integracja dla Asystent domowy to zmienia.
Przekształca strumień migawek ruchu w jedno czyste, oparte na faktach zdanie — rodzaj linii, na której można polegać w zakresie automatyzacji bez fałszywych alarmów.
Szerszy obraz: część Home Generative Agent
Analizator wideo nie jest samodzielnym dodatkiem. To podstawowy podsystem Agent generujący dom (HGA) — niestandardową integrację z Asystentem Home, która zapewnia Twojemu domowi inteligentny interfejs pamięci i języka.
Na poziomie architektonicznym:
— HGA łączy wiele dużych modeli — wizję, język i osadzenie w ramach jednej warstwy orkiestracji.
— Każda kategoria (czat, VLM, podsumowanie, osadzanie) wykorzystuje dostawcy podłączani — OpenAI, Ollama lub Gemini.
— Integracja udostępnia ustrukturyzowane wyniki w postaci obiektów i zdarzeń Home Assistant, umożliwiając współpracę automatyzacji, pulpitów nawigacyjnych i „pamięci” opartych na wektorach.
W tym ekosystemie Analizator wideo to część wizualna. Komunikuje się z kamerami, przywołuje modele wizji i podsumowań, a następnie publikuje wynik semantyczny z powrotem do systemu.
Jeśli agentem byłby mózg, analizator wideo to jego płat potyliczny — stale zmieniający piksele w zwięzłe, gotowe do automatyzacji znaczenie.
Po co w ogóle to budować?
Czujniki ruchu to przerwania, a nie znaczenie. Uruchamiają się pod wpływem cieni, hałasu lub światła słonecznego, ale nie można powiedzieć Co się stało.
To, czego potrzebujesz, to wiarygodna abstrakcja — stan tekstowy opisujący scenę:
„Dwie paczki na werandzie, nikogo nie ma.”
„Alicja jest przy drzwiach wejściowych”.
„Osoba bierze pudełko i wychodzi”.
Oto obietnica: kompresja semantyczna — zamienianie gigabajtów wideo w jedno, precyzyjne zdanie.
Przepływ funkcjonalny
Wyzwalaj → Przechwytuj → Opisz → Publikuj → Powiadom → Zapamiętaj
Spust: Kamery lub czujniki ruchu rozpoczynają krótką pętlę przechwytywania.
Schwytać: migawki wchodzą do kolejek asynchronicznych dla każdej kamery, deduplikowane za pomocą percepcyjnego skrótu + logiki pulsu.
Opisać:
— Ścieżka heurystyczna dla pojedynczych klatek (szybka, deterministyczna).
— Model języka wizyjnego (VLM) + podsumowanie dla kontekstu wieloramkowego.
Publikować: aktualizuje „najnowszy” wizerunek + podmioty „rozpoznane osoby”; uruchamia zdarzenia HA.
Notyfikować: opcjonalny push mobilny (zawsze lub w przypadku anomalii).
Pamiętaj: wektor DB przechowuje tekst i metadane w celu długotrwałego przypomnienia.
Szybki model mentalny
(Camera) --> (Queue) --> (Describe (VLM + heuristic)) --> frame texts + identities
|
v
(Summarizer LLM + rules) --> {summary, recognized_people}
|
+--> Publish entities
+--> Notify user
+--> Store vectors
Gdzie pojawiają się modele
Analizator wideo wykorzystuje trzy warstwy modeli, każdy dostrojony na podstawie stałych konfiguracyjnych const.py.
1. Model języka wizyjnego (VLM) — opisuje pojedynczą klatkę
Domyślny: Być qwen3-vl:8b (temperatura 0,2)
Podpowiedź systemowa (klauzule podstawowe):
„Stwórz krótki, oparty na faktach opis (1–3 zdania).
NIE spekuluj, nie wnioskuj o tożsamości ani nie opisuj niewidzianych treści.
Używaj spójnego sformułowania w podobnych ramkach.
Nigdy nie zakładaj płci, jeśli jest niejasna.”
Dlaczego: Wymusza neutralne, deterministyczne sformułowanie, dzięki czemu podobne obrazy dają podobne zdania — kluczowe dla niezawodnego osadzania i wykrywania anomalii.
Gdy dostępny jest tekst poprzedniej klatki, VLM może opisać ruch tylko wtedy, gdy zgadza się wiele wskazówek; w przeciwnym razie domyślnie jest to „stoi” lub „przechodzi w pobliżu”. Takie podejście minimalizuje fałszywe narracje o ruchu, które są plagą konsumenckich kamer AI.
Monit użytkownika:
“Opisz ten obraz jasno i rzeczowo w 1-3 zdaniach. Nie dodawaj nazw, sygnatur czasowych ani spekulacji. “
Wariant skupiony akceptuje słowa kluczowe (Primary attention: {key_words}), gdy chcesz skierować uwagę, powiedzmy, pakiety Lub drzwi.
VLM opisuje jedynie to, co jest wizualnie obecne — nie rozpoznaje twarzy ani nie przypisuje tożsamości. Rozpoznawanie osób odbywa się na późniejszym etapie za pośrednictwem osobnej usługi rozpoznawania twarzy, która przed etapem podsumowania oznacza ramki znanymi tożsamościami. To oddzielenie zapewnia neutralność VLM i bezpieczeństwo prywatności, a jednocześnie pozwala systemowi w razie potrzeby łączyć działania z rozpoznanymi osobami.
2. Model podsumowujący — splot wiele klatek w jedną linię
Domyślny: Być qwen3:8b (temperatura 0,2)
Fragment zasad systemowych:
„≤150 znaków, ≤2 zdań.
Opowiedz wydarzenia w odpowiedniej kolejności (t+Xs).
Podaj maksymalnie dwa znane nazwiska; w przeciwnym razie powiedz „osoba”.
Traktuj „Nieznaną osobę” jak człowieka.
Opisz tylko widoczne działania; żadnych spekulacji.”
Te ograniczenia wymuszają zwięzłe, bezpieczne dla automatyzacji podsumowania.
Jeśli istnieje wiele ramek, podsumowanie łączy je chronologicznie:
„Lindo St. Angel wchodzi na ganek i opiera się o poręcz”.
Załóżmy, że jest tylko jedna ramka, heurystyka najpierw próbuje wyczyścić tekst, wstawić temat, jeśli zostanie rozpoznany, i obciąć jego długość. Dopiero gdy ta ścieżka zawiedzie, wywoływany jest LLM.
Przypomnienie monitu użytkownika:
“Napisz ≤150 znaków (≤2 zdania). Przestrzegaj wszystkich zasad i opowiadaj po kolei.”
3. Warstwy osadzania i czatu — pamięć i rozumowanie
Monit o osadzenie:
„Przedstaw to zdanie, aby wyszukać odpowiednie fragmenty: {query}”
Dzięki temu każdy podpis staje się stabilnym wpisem wektorowym do późniejszego wyszukiwania lub oceniania nowości.
Komunikat systemowy podsumowania czatu:
„Jesteś botem, który podsumowuje wiadomości od inteligentnej sztucznej inteligencji domowej”.
Razem tworzą one HGA pamięć ciągła: zdarzenia wideo, dzienniki tekstowe i automatyka korzystają z tej samej przestrzeni językowej.
Podpowiedzi jako umowy
Każdy monit dotyczący modelu to a umowa między tobą a modelem języka. Zniszcz go, a Twoja automatyzacja ulegnie dryfowaniu. Zachowaj szczelność, a Twój system będzie łatwy do wyjaśnienia.
Umowy te wymuszają:
- Neutralny, obserwowalny język
- Krótkie, deterministyczne sformułowanie
- Stabilne osadzenie do wykrywania anomalii
- Treści chroniące prywatność (bez zgadywania płci i zamiarów)
Te podpowiedzi działają w postaci wersjonowanych, edytowalnych stałych — a nie ukrytych w kodzie — dzięki czemu można je rozwijać w sposób odpowiedzialny.
Jak integruje się z resztą HGA
Analizator wideo działa jako część skoordynowanego stosu wizualnego wewnątrz agenta generującego dom (HGA). Nie działa sam — współpracuje z dedykowanym Rozpoznawanie twarzy obsługa i Środowisko wykonawcze HGA aby zamienić surowe dane wejściowe z kamery w ustrukturyzowaną pamięć z możliwością przeszukiwania.
- Analizator wideo → Rozpoznawanie twarzy → Podsumowanie → Czas działania:
Kiedy nadejdzie nowa klatka, Analizator wideo najpierw wysyła ją do Model języka wizyjnego (VLM) do opisu. Tekst opisuje widoczną scenę – oświetlenie, ruch, postawę i przedmioty – ale nigdy nie zgaduje, kto jest obecny. The Moduł rozpoznawania twarzy przetwarza tę samą klatkę równolegle, co porównuje twarze z lokalną bazą danych znanych tożsamości. Rozpoznane nazwy (jeśli istnieją) są dołączane jako metadane i przekazywane z powrotem do analizatora wideo. Model podsumowania łączy następnie tekst ramki i metadane tożsamości w jeden, czytelny dla człowieka podpis, taki jak:
„Lindo St. Angel wchodzi na ganek i opiera się o poręcz”. - Strukturalne wyjście i sygnały:
Każde podsumowane wydarzenie jest publikowane w Magazyn środowiska uruchomieniowego HGA — baza danych wektorowych wspierana przez Postgres — indeksowana pod("video_analysis", camera_name)do wyszukiwania semantycznego. Analizator wysyła również ustrukturyzowane sygnały Home Assistant (hga_new_latest,hga_recognized_people), które aktualizują encje i wyzwalają automatyzację w czasie rzeczywistym. - Powiadomienia i ochrona obrazu:
Gdy analizator wykryje anomalie lub nieznane twarze, może wysyłać powiadomienia mobilne push za pośrednictwem skonfigurowanychnotify_service. Odpowiednia migawka jest oznaczona do przechowywania, aby zapobiec jej usunięciu przez zadania czyszczenia. - Ujednolicona pamięć poprzez osadzanie:
Każdy wygenerowany podpis — niezależnie od tego, czy pochodzi z wideo, podsumowań czatów, czy dzienników czujników — jest osadzany w tej samej przestrzeni wektorowej. Dzięki temu HGA może przypomnieć sobie lub uzasadnić różne modalności:
„Kto przyszedł na ganek po zachodzie słońca?”
– Czy ktoś był widziany przed otwarciem drzwi?
Oddzielając percepcja wzrokowa (VLM), rozpoznanie tożsamościI synteza semantyczna (podsumowanie)system pozostaje modułowy, łatwy do wyjaśnienia i uwzględnia prywatność. Każdy element dobrze spełnia jedno zadanie — a razem sprawiają, że Twój dom nie tylko widzi, ale i rozumie.
Dlaczego to działa
- Heurystyka przed modelem — nadawać priorytet szybkości i determinizmowi; użyj drugiego LLM.
- Krótkie podsumowania — Maksymalnie 150 znaków zapewnia szybkie osadzanie i powiadomienia.
- Chronologia- Wydarzenia rozwijają się logicznie, zapobiegając błędnemu uporządkowaniu narracji.
- Neutralny głos — wyzwalacze automatyzacji pozostają przewidywalne.
- Wąskie pętle asynchroniczne — każda kamera działa niezależnie; kolejki i semafory, aby uniknąć przeciążenia.
W rezultacie powstał podsystem kamery, który zachowuje się jak kolega, a nie papuga — krótko, rzeczowo i niezawodnie.
Wyniki w świecie rzeczywistym: Analizator wideo w akcji
Uwaga: moduł rozpoznawania twarzy wstawia imiona i nazwiska osób do podpisów; sam VLM tworzy opisy neutralne dla danej osoby.

„Św. Anioł Lindo idzie ścieżką z torbami, a potem staje na werandzie, trzymając jedną”.
(Zwięzła narracja, która łączy wiele klatek — ruch i przybycie — w jedno 17-wyrazowe zdanie odpowiednie do wyzwalaczy automatyzacji.)

“Ktoś idzie w pobliżu domu, potem wchodzi po schodach na ganek. Nosi plecak, później trzyma dmuchawę do liści i ostatecznie odchodzi, zostawiając ganek pusty.”
(Wiele klatek połączonych chronologicznie; podsumowanie sprawia, że czasowniki są konkretne i oparte na faktach.)

“Osoba w pomarańczowej koszuli spaceruje po trawiastym terenie w pobliżu domu, niosąc kosz na śmieci. Pochyla się, podnosi przedmioty, a później zamiata liście w pobliżu werandy.”
(W tym przypadku LLM łączy postawę, dopełnienie i czasowniki sekwencyjne w jedno zwarte podsumowanie — bez zbędnych szczegółów i bez domysłów.)

„Święty Anioł Lindo stoi przy bramie, a potem idzie ścieżką”.
(Krótka, wieloklatkowa progresja odzwierciedlająca bezpośrednie wskazówki wizualne.)

“Na werandzie obok ciemnych drzwi stoi osoba, trzymając biały przedmiot. Na werandzie obok wiklinowego krzesła stoi czarny kot. “
(Analizator poprawnie identyfikuje oba byty — osobę i kota — bez nadmiernego opisywania i wnioskowania o powiązaniach.)
Większy obraz
Asystent domowy obsługuje czujniki i kamery; the Analizator wideo interpretuje to, co widzą. Każde wydarzenie staje się pojedynczym, rzeczowym zdaniem – wystarczająco zwięzłym, aby można je było zautomatyzować i wystarczająco wyrazistym, aby je zrozumieć. Zdania te są wprowadzane do Domowy agent generacyjny rdzeń, gdzie są osadzone, indeksowane i przechowywane. Inni agenci mogą następnie wyszukiwać, podsumowywać i działać na podstawie tej wiedzy.
Rezultatem jest zamknięta pętla: zobacz → opisz → zapamiętaj → odpowiedz. Każda klatka, która przechodzi, staje się częścią żywej pamięci — takiej, która może wnioskować o tym, co się dzieje, a nie tylko to rejestrować.
Krok w kierunku znaczącej percepcji
Video Analyzer to coś więcej niż moduł inżynierski; to mała demonstracja tego, jak ugruntowana i możliwa do wyjaśnienia sztuczna inteligencja może wyglądać w prawdziwym domu. Narzucając neutralny język i deterministyczne podpowiedzi, zastępuje hałas narracją i sprawia, że widzenie maszynowe staje się odpowiedzialne.
Piksele stają się zdaniami. Zdania stają się kontekstem. Kontekst staje się zrozumiały. Czasami model dryfuje, ale ograniczenia przywracają go do prawdy i znaczenia.
Mapa systemu — jak Video Analyzer mieści się w Home Generative Agent
Analizator wideo znajduje się pomiędzy kamerami Home Assistant i rdzeniem pamięci HGA, przekształcając surowy ruch w ustrukturyzowany język.
┌───────────────────────────────────────────────────────────────┐
│ Home Generative Agent (HGA) │
│ ┌──────────────────────────┐ ┌───────────────────────┐ │
│ │ Language + Memory Core │◄────►│ Vector Store (Postgres │
│ │ - Chat / Summarization │ │ + Embeddings Index) │
│ │ - Context Manager │ └───────────────────────┘ │
│ └──────────▲───────────────┘ │
│ │ │
│ │ (semantic summaries, embeddings) │
│ │ │
│ ┌──────────┴──────────────┐ │
│ │ Video Analyzer │ │
│ │ - Captures frames │ │
│ │ - Runs VLM + Summary │ │
│ │ - Detects anomalies │ │
│ │ - Publishes entities │ │
│ └──────────▲──────────────┘ │
│ │ │
│ │ (events, images, people, summaries) │
│ │ │
│ ┌──────────┴──────────────┐ │
│ │ Home Assistant Core │ │
│ │ - Cameras │ │
│ │ - Sensors │ │
│ │ - Automations │ │
│ └─────────────────────────┘ │
│ │
│ Notifications → Mobile App (via notify.mobile_app_*) │
│ Dashboards → Lovelace or custom UI │
│ Memory Search → “What happened on the porch today?” │
└───────────────────────────────────────────────────────────────┘
Home Assistant obsługuje czujniki i kamery; Analizator wideo interpretuje to, co widzą. Zamienia obrazy w język — jedno zdanie oparte na faktach na każde wydarzenie — i przekazuje ten tekst do rdzenia Agenta Generującego Dom. HGA następnie osadza i przechowuje te zdania w swojej pamięci wektorowej, gdzie inni agenci i automaty mogą je wyszukiwać, podsumowywać lub na nich reagować. Te same dane obsługują powiadomienia mobilne, pulpity nawigacyjne i rozumowanie kontekstowe. Razem moduły te tworzą zamkniętą pętlę: zobacz → opisz → zapamiętaj → odpowiedz.
Opublikowano za pośrednictwem Towards AI

















