Kurs Home Assistant od Zera

Skrypty jako bezpieczne tools dla AI: deterministyczne akcje zamiast improwizacji Ollamy

Wystaw skrypt jako precyzyjne narzędzie LLM, ogranicz parametry, zwracaj prawdziwy wynik i odbierz dostęp bez usuwania konfiguracji.

Home Assistant LAB · Głos i AI w praktyce · Lekcja 19

Skrypty jako bezpieczne tools dla AI: deterministyczne akcje zamiast improwizacji Ollamy

LLM świetnie rozumie naturalny język, ale nie powinien samodzielnie improwizować całej sekwencji smart home. W tej lekcji uczymy Ollamę wybierać gotowe, kontrolowane skrypty Home Assistant jako tools. Model rozpoznaje zamiar użytkownika, a Home Assistant wykonuje dokładnie taką logikę, jaką wcześniej napisaliśmy i przetestowaliśmy.

Dlaczego ten etap jest ważny

Jedno dobrze zaprojektowane narzędzie jest bezpieczniejsze i bardziej przewidywalne niż seria kilku decyzji LLM. Skrypt może mieć własną walidację, warunki, timeouty, dokładnie ograniczone parametry i jawny wynik zwracany modelowi.

W pełnej lekcji zrobisz to krok po kroku

Pierwszy script tool bez parametrów

Zaczynamy od helpera `LLM test`, aby zobaczyć poprawny tool call, realny efekt i response_variable bez ryzyka dla urządzeń fizycznych.

Description staje się kontraktem dla LLM

Opisujemy dokładnie co tool robi, kiedy powinien być używany i jaki wynik ma zakomunikować użytkownikowi. Nie zostawiamy modelowi pola do zgadywania.

Drugi tool dostaje ograniczony parametr

Tworzymy `AI LAB | Przygotuj salon` z polem jasności 10-60%, własną walidacją, obsługą unavailable i deterministyczną sekwencją świateł.

Skrypt zwraca wynik do modelu

Stop + response_variable zwraca mapę ze statusem, komunikatem i parametrami. Ollama nie musi wymyślać, czy operacja się udała.

Najpierw manual test, potem AI

Każdy skrypt przechodzi ręczny commissioning w Tools > Actions. Dopiero gdy działa bez LLM, wystawiamy go jako tool.

Negative tests są częścią projektu

Sprawdzamy 95%, brak parametru, zły pokój, unavailable, granice 10/60%, unexpose oraz zachowanie przy wyłączonej Ollamie.

Pełna wersja zawiera
  • dlaczego script tool ogranicza improwizację LLM
  • różnicę między script entity i callable tool
  • pierwszy bezpieczny tool na input_boolean
  • poprawny description skryptu
  • aktualne ścieżki UI exposure
  • Stop i response_variable
  • mapę wyniku status/message
  • kontrolowany error: true
  • pola wejściowe scripts
  • limit 128 znaków dla field description
  • number selector 10-60%
  • wewnętrzną walidację argumentów
  • obsługę missing field
  • obsługę unavailable
  • pełny skrypt Przygotuj salon
  • manual commissioning przez Tools > Actions
  • test 95% bez LLM
  • wystawienie do Voice assistants > Assist
  • limit 128 script tools
  • test naturalnego języka
  • kontrolę tool args
  • wynik skryptu kontra odpowiedź modelu
  • negative test z parametrem poza zakresem
  • zły use case kuchnia kontra salon
  • description jako kontrakt wyboru
  • anti-pattern dowolna action/entity/data
  • zasadę jeden tool = jedna zdolność
  • działania na encjach wewnętrznych skryptu
  • audyt niejawnych skutków skryptu
  • mode single jako bezpieczny start
  • różnicę script tool i Sentence trigger
  • local-first + skrypt jako wspólny backend
  • pełny test Voice PE
  • kilka parafraz tego samego zamiaru
  • brak liczby i pytanie doprecyzowujące
  • testy graniczne 10/60%
  • restart Home Assistant
  • WAN OFF
  • Ollama OFF kontra Sentence trigger
  • select zamiast wolnego tekstu
  • bezpieczne zastosowanie text field
  • unexpose test
  • rollback toola
  • Tool Test Pack, Design Matrix i Security Checklist
Jak pracujemy w pełnej wersji

Nie wystawiamy złożonego skryptu i nie zaczynamy od głosu. Najpierw test manualny, potem tekstowy tool call, dopiero na końcu Voice PE.

Nie używamy promptu jako zabezpieczenia. Parametry i preconditions są sprawdzane przez sam skrypt, a możliwość LLM ograniczamy do konkretnego toola.

Efekt po zakończeniu lekcji

Ollama może przyjąć naturalne „zrób w salonie spokojne światło do filmu”, ale zamiast samodzielnie sterować kilkoma encjami wywołuje jeden sprawdzony skrypt Home Assistant z ograniczonym parametrem i jawnym wynikiem.

Chcesz, żeby AI rozumiało język, ale automatyka nadal była deterministyczna?

Ta lekcja jest częścią kursu Smart Home od Zera na platformie MarkLabs E-Learning. Pełna wersja prowadzi od pustego script toola do kontrolowanego parametrycznego narzędzia i testów awarii.

Kup dostęp do kursu: 29 zł
Dożywotni dostęp | Wszystkie lekcje | Bez subskrypcji

Skrypt stanie się małą, deterministyczną funkcją z walidacją wejścia i jawnym wynikiem. Najszybszy rollback to wyłączenie ekspozycji narzędzia.

🔒

Pełna treść dostępna po zakupie kursu

Za symboliczne 29 zł zyskujesz dostęp do 200+ stron praktycznej wiedzy o Home Assistant — wszystkich lekcji, przykładów i aktualizacji.

  • Dożywotni dostęp do całego kursu
  • Nowe lekcje bez dodatkowych opłat
  • Bez reklam i bez abonamentu

Nikt nie jest nieomylny. Coś nie gra w tej lekcji? Zgłoś błąd