Home Assistant LAB · Głos i AI w praktyce · Lekcja 15
Whisper po polsku: swobodne STT w drugim pipeline i benchmark ze Speech-to-Phrase
W poprzedniej lekcji przygotowaliśmy dwa wake wordy i dwa osobne pipeline. Teraz pierwszy raz naprawdę je różnicujemy. Okay Nabu nadal korzysta z szybkiego Speech-to-Phrase, a Hey Jarvis dostaje Whispera, czyli otwarte rozpoznawanie mowy. Nie dokładamy jeszcze AI. Najpierw mierzymy samą warstwę STT.
Dlaczego ten etap jest ważny
Whisper potrafi przepisać swobodne polskie zdanie, ale to nie znaczy, że Home Assistant od razu wie, co z nim zrobić. Ta lekcja pokazuje bardzo ważną granicę: STT odpowiada za słyszenie, Conversation agent za rozumienie i działanie. Dopiero później dołożymy LLM.
W pełnej lekcji zrobisz to krok po kroku
Instalujemy oficjalnego Whispera przez Settings > Apps
Konfigurujemy język polski, model, backend, beam size, zadanie transkrypcji i tryb lokalnych modeli. Nie stroimy dziesięciu parametrów naraz.
Polski ustawiamy jawnie jako `pl`
Nie zostawiamy wykrywania języka na auto, bo automatyczne rozpoznanie języka dodaje opóźnienie. Dla polskiego pipeline nie ma takiej potrzeby.
Zmieniamy tylko STT drugiego Assistanta
MarkLabs Local PL pozostaje nietknięty. W MarkLabs Rozszerzony PL podmieniamy Speech-to-Phrase na Whisper. Conversation nadal jest Home Assistant, TTS nadal Piper.
Raw Debug rozdziela STT od intentu
Sprawdzamy `stt-start`, `stt-vad-end`, `stt-end`, tekst transkrypcji, pipeline i intent. Dzięki temu dokładnie wiemy, czy problemem było słyszenie, rozumienie czy target.
Robimy prawdziwy benchmark A/B
Te same polskie zdania, ten sam Voice PE, ta sama odległość, ta sama akustyka. Porównujemy Speech-to-Phrase i Whisper na prostych komendach, nazwach własnych, liczbach i swobodnym języku.
WAN OFF dopiero po pobraniu modelu
Najpierw pozwalamy modelowi się pobrać i rozgrzać. Potem włączamy `local_files_only` i dopiero wtedy sprawdzamy, czy Hey Jarvis działa bez Internetu.
Pełna wersja zawiera
- dokładne porównanie Speech-to-Phrase i Whisper
- wyjaśnienie STT kontra Conversation agent
- instalację Whisper przez Settings > Apps
- połączenie przez Wyoming
- ustawienie language: pl
- model: auto jako kontrolowany start
- wyjaśnienie tiny/base/small/medium/large/turbo
- wyjaśnienie, których `.en` nie używać dla polskiego
- stt_library: auto
- beam_size: 0
- whisper_task: transcribe
- initial_prompt i kiedy ma sens
- vad_clip i dlaczego nie zmieniamy go przed baseline
- local_files_only po pierwszym pobraniu
- pierwszy warm-up modelu
- zmianę wyłącznie STT w MarkLabs Rozszerzony PL
- Raw Debug i zdarzenia STT
- pomiar czasu od końca mowy do tekstu
- medianę zamiast samej średniej
- benchmark prostych komend
- benchmark nazw własnych
- benchmark swobodnej polszczyzny
- osobny PASS dla STT i intentu
- test liczb i procentów
- test przeciwieństw włącz/wyłącz
- test hałasu
- debug recording audio do /share/assist_pipeline
- kontrolowany upgrade do base-int8 lub small-int8
- przeniesienie Whispera na mocniejszy host przez Wyoming
- zasadę niewystawiania Wyoming do Internetu
- multiroom z jednym wspólnym Whisperem
- test własnych Sentence triggers
- WAN OFF po pobraniu modelu
- ważny caveat backupów modeli
- diagnostykę zbyt wolnego STT
- diagnostykę poprawnego STT i nieobsługiwanego intentu
- rollback do Speech-to-Phrase
- test drugiego domownika
- Benchmark Test Pack i Model Decision Matrix
Jak pracujemy w pełnej wersji
Nie zakładamy, że większy model jest lepszy. Najpierw mierzymy domyślne `auto`, potem zmieniamy tylko jeden parametr i powtarzamy identyczny zestaw zdań.
Nie mylimy lepszych uszu z lepszym mózgiem. Jeśli Whisper zapisze zdanie poprawnie, ale Home Assistant Conversation go nie obsłuży, STT ma PASS. To właśnie przygotowuje nas do kolejnej lekcji z Ollamą.
Efekt po zakończeniu lekcji
Okay Nabu zachowuje szybkie Speech-to-Phrase, a Hey Jarvis dostaje pełne otwarte STT Whisper. Wiesz, ile kosztuje to czasu na Twoim sprzęcie i czy przewaga jakości rzeczywiście jest warta tej ceny.
Chcesz, żeby Home Assistant naprawdę słyszał swobodny polski język?
Ta lekcja jest częścią kursu Smart Home od Zera na platformie MarkLabs E-Learning. Pełna wersja prowadzi od instalacji Whispera do benchmarku i prawdziwego testu offline.
Kup dostęp do kursu: 29 zł
Dożywotni dostęp | Wszystkie lekcje | Bez subskrypcji
Oddzielimy błąd nagrania, STT i intentu. Nagrania diagnostyczne zostaną wyłączone i usunięte po teście, ponieważ mogą zawierać prywatne rozmowy.