# 🔑 Własne słowo kluczowe aktywujące komendę głosową

**URL:** <https://ai-speaker.discourse.group/t/wlasne-slowo-kluczowe-aktywujace-komende-glosowa/2483>\
**Category:** Programowanie\
**Created:** [7 Grudzień 2021 15:46 UTC](https://ai-speaker.discourse.group/t/wlasne-slowo-kluczowe-aktywujace-komende-glosowa/2483 "2021-12-07T15:46:30Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Autor:** ![jolka](https://yyz2.discourse-cdn.com/free1/user_avatar/ai-speaker.discourse.group/jolka/32/5_2.png) [@jolka](https://ai-speaker.discourse.group/u/jolka)\
**Data wpisu:** [7 Grudzień 2021 15:46 UTC](https://ai-speaker.discourse.group/t/wlasne-slowo-kluczowe-aktywujace-komende-glosowa/2483/1 "2021-12-07T15:46:30Z")

</div>

# Bezpłatne własne słowo kluczowe 🔑 trigger 🚀 w Picovoice

Właśnie dostaliśmy emaila z Picovoice → od dziś, każdy może używać Picovoice do trenowania modeli głosowych i wdrażania ich, nawet komercyjnie, za darmo.

> **[Introducing Picovoice's Free Tier: State-of-the-art on-device AI is available...](https://picovoice.ai/blog/introducing-picovoices-free-tier/)**
>
> Anyone with an email address, GitHub, or Google account can train on-device AI models and deploy them for free.

Oczywiście jest mały haczyk…

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/2/2a1f5ba143248f0fd8ab0c1f46bdccb7462c490a.png)

max 3 użytkowników może korzystać z takiego wytrenowanego hotword-a - max 3 urządzenia.

Nasz kod jest w github, więc pokażemy jak wytrenować i dodać własne wyrażenie aktywujące komendę głosową. Każdy, kto potrafi kodować w języku Java i ma Android Studio powinien sobie poradzić.

# 1. Trenujemy nasze własne słowo aktywujące komendę

## Logujemy się do konsoli picovoice

> **[Developer Console | Picovoice On-Device Voice Recognition](https://console.picovoice.ai/)**
>
> Developer Console for adding voice and transcribing speech to text with the best Speech Recognition. Access to on-device AI models that outperform cloud APIs

## Wybieramy Wake Word Engine

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/2/2a4947ee68ee3ee1a6674a22dfd2bd8a0e08db7e.png)

## Wpisujemy słowo którym checemy uruchamiać komendy głosowe w domu

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/e/e8d1d07de4ddc0503017d12564f8890a8cf87d64.png)

## Wybieramy platformę Android i trenujemy słowo

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/8/88527bb31bd5882314add6480e6b8285c8622879.png)

## Pobieramy wytrenowany model

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/7/7d7738c434327b78c0b948d3a9cdf4aeda04fa1c.png)

## Tworzymy i pobieramy klucz dostepu:

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/1/1fb01dd52b7a6dd9e47d8c054e36bf6799511335.png)

# 2. Dodajemy nasze własne słowo aktywujące komendę, do ais-dom

## Forkujemy kod aplikacji AIS dom

Dodajemy konto w Github i robimy foka kodu AIS-dom

> **[GitHub - sviete/AIS-dom: This is our main application that works both on...](https://github.com/sviete/AIS-dom)**
>
> This is our main application that works both on the gateway and on other devices including: tablets, phones, Android TV.

> ⚠ **Jeżeli nie programowałeś żadnej aplikacji, na platformę Android w języku Java to dalej nie dasz rady**. Zakoduj najpierw jakąkolwiek aplikację na Android, za kilka miesięcy wróć do tego kodu… wtedy się może uda skompliować i uruchomić ais-dom 😉

## Dalej postępujemy zgodnie z opisem Picovoice dla Android:

> **[porcupine/demo/android at master · Picovoice/porcupine](https://github.com/Picovoice/porcupine/tree/master/demo/android)**
>
> On-device wake word detection powered by deep learning - Picovoice/porcupine

## Ustawiamy klucz dostępu w Android Studio

W pliku PorcupineService.java dodajemy nasz klucz dostępu → AccessKey

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/d/df70ae393213495e2d467b500691a33ac3ea0f9b.png)

## Kopiujemy nasze wytrenowane słowo do `assets`

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/0/0d2c1a42cad270154b79e468e7b47cea1e58f705.png)

## Dodajemy nasze wytrenowane słowo do list z wartościami typu string w języku Polskim i Angielskim

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/b/be9138dc8587261ade197fc1398bf1a309752502.png)

## Modyfikujemy funkcje `startHotWordListening`

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/f/fb91fb5defbc8aa7bf2b317ce22063c5e249580b.jpeg)

po uruchomieniu aplikacji dostaniemy nowe wartości do wyboru

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/1/11306969fbb4b2253b011089597664b0ef8a2f09.jpeg)

 ![image](https://global.discourse-cdn.com/free1/uploads/ai_speaker/original/2X/7/75764307459045e2ceb7609761d3353599e6409c.jpeg)

# PS

To nie jest proste, na 99% się nie uda za pierwszym razem, a jeżeli nie kodowałeś w Android, to nie uda się na 100%. Niestety nie mamy czasu odpowiadać każdemu, na pytanie “dlaczego mi nie działa” / “Jolka, przeczytaj za mnie instrukcje” itd.. Programowanie niestety nie jest proste i nie jest dla każdego, podobnie, jak integrowanie systemu automatyki domowej.

Jeżeli jednak masz do tego zacięcie i poświęcisz na to kilka wieczorów, dni, tygodni, miesięcy… 😉 to zacznie Ci to działać! 🎉 Wtedy, może za jakiś czas, będziesz nawet w stanie dostarczyć jakąś poprawkę do naszego kodu, bo wszystko da się zrobić lepiej. Oczywiście jesteśmy otwarci → Twój pull request do repozytorium, będzie bardzo mile widziany ❤
