Blog (22)
Komentarze (619)
Recenzje (0)
@alucosoftwareWłasny asystent głosowy w Windows? Zbuduj go sobie sam!

Własny asystent głosowy w Windows? Zbuduj go sobie sam!

Technologia rozpoznawania mowy na przykładzie istniejących produktów takich jak Siri, Dragon Naturally Speaking lub dopiero nadchodzących Cortany i intelowskiego Jarvisa to coraz częściej poruszany temat zarówno na łamach dp jak i w innych portalach branżowych. Niesamowity postęp obserwowany w ostatnich latach w tej gałęzi informatyki jest niezaprzeczalny i wynika zarówno z rozwoju czystej myśli technicznej (sposobu przetwarzania sygnałów) jak i dostępności taniej mocy obliczeniowej. Z technologią rozpoznawania mowy rozumianą w jej potocznym (tj. użytkowym) znaczeniu od dawien dawna mamy jednak ten sam problem - mało w niej inteligencji, więcej zaś prostych reakcji przyczynowo skutkowych ukrytych pod zasłoną pustych haseł.

Tak naprawdę warstwa użytkowa gotowych systemów przeżywa... istną stagnację. Za to karmi się nas utopijną wizją wszechwiedzącego i inteligentnego automatu gotowego spełnić wszystkie życzenia, którego - mimo usilnych prób - za nic nie można dostrzec na horyzoncie. Odrzucamy jednocześnie dostępne rozwiązania, które nie odpowiadają opisem fantazjom hucznie zapowiadanym nam przez specjalistów z dziedziny marketingu. I tu popełniamy błąd.

502068

Twórcy interfejsów głosowych niepotrzebnie starają się (już na etapie projektu) przewidzieć przyszłe zachowanie użytkownika. Limitują tym samym możliwość jego interakcji z urządzeniem. Zamiast tego powinni dostarczać im w pełni konfigurowalne rozwiązania o uniwersalnym zastosowaniu, a zatem nielimitowanych możliwościach. Pamiętam gdy po raz pierwszy przeczytałem wywiad z Olivierem Scholzem, kierownikiem zespołu "Speech User Experience for Windows Vista". Wspomniał on w nim o trwających w tamtym czasie pracach nad systemem makr umożliwiającym tworzenie własnych komend głosowych i zwiększaniem możliwości personalizacji WSR (Windows Speech Recognition, niedostępny w PL wersji systemu z powodu ograniczeń językowych). Obietnice zespół ten zrealizował, choć najwyraźniej sam system makr okazał się chyba zbyt trudny do przetrawienia dla zwykłego zjadacza chleba. A może to użytkownicy stali się... zbyt prości dla nieskomplikowanego programu komputerowego. To zmieniałoby drastycznie postać rzeczy. Czy to my idziemy na łatwiznę? Czy mamy wrodzoną lub zaszczepioną tendencję do lenistwa intelektualnego.

Za moich czasów...

Technologia rozpoznawania mowy jest z nami obecna od dawna. Zwrócę tu jedynie uwagę na początek lat 90. i schyłek świetności doskonałych komputerów Amiga. Właśnie w tamtym czasie Richard Horne udostępnił światu AniMan'a, o którym na dyskietkach z kolekcji Freda Fisha pisano, że "jest programem jakiego jeszcze nigdy nie widziałem". I słusznie... Dla małego dziecka wkraczającego w fascynujący świat informatyki widok przemawiającej trójwymiarowej głowy, która na dodatek rozpoznaje krótkie komendy głosowe i wykonuje tajemnicze skrypty ARexx'a był oszałamiający. Program działał zadziwiająco dobrze na przyjaciółkach (Amigach) wyposażonych w niewiele ponad 512KB (czasem 1MB) pamięci RAM i procesor taktowany częstotliwością 7MHz, ale rozwijał skrzydła na prawdziwych demonach szybkości minionej epoki.

502072

Tym co istotne z poziomu naszego tematu było założenie twórcy programu AniMan, że duża część użytkowników ówczesnych komputerów wiedziała czym są i do czego służą skrypty, ba!, prawdopodobnie potrafiła tworzyć własne. I choć z perspektywy czasu była to jedynie zabawka, to jednak efekt WOW pozostał w pamięci na długo. Na tyle długo, by po wielu latach młodzieńcze zainteresowanie przerodziło się w pasję i chęć utworzenia projektu równie inspirującego, a już na pewno przełomowego jak AniMan.

502074

Na nasze nieszczęście, raptowna informatyzacja całych społeczeństw nie poszła w parze ze wzrostem świadomości i potrzebą zwiększania swojej wiedzy, wręcz przeciwnie. Niewdzięczny, a już na pewno nieproporcjonalny podział ról nadal postępuje. Wszyscy korzystamy z rozwiązań teleinformatycznych nie wiedząc nawet na jakiej zasadzie funkcjonują. Zdolność do logicznego myślenia i relatywnie szybkiego przyswajania wiedzy powoli zastępujemy pseudonaukowymi osądami, kierując się przy tym daleko idącym subiektywizmem mającym czysto emocjonalne podłoże. Oceniamy produkty nie przez pryzmat dłuższej z nimi pracy lub posiadanych przez nie możliwości, lecz jak najprostszej z nimi interakcji. Im bardziej dany produkt zwalnia nas z konieczności myślenia, tym lepsze o nim zdanie posiadamy. Nie tak miało być. Stajemy się zakładnikami swojej własnej - nie bójmy się tego stwierdzić - głupoty. Warto o tym pomyśleć choć przez chwilę i spróbować to zmienić.

Automagiczności powiedz STOP

502077

Gdy pod koniec 2011 roku rozpoczynałem prace nad projektem Spikit miałem przed sobą jasną wizję tego, czym powinien być uniwersalny system rozpoznawania mowy. A powinien być tylko jednym - narzędziem w rękach doświadczonego użytkownika, zdolnym wykonać każdą zaprogramowaną czynność, nie tylko utworzoną wcześniej przez autora, ale - podobnie jak we wspomnianym wyżej AniManie - zaprogramowaną przez użytkownika lub dostarczoną z zewnątrz. Ten ostatni nie musi bowiem programować czegoś samodzielnie, wystarczy, że pobierze gotowe skrypty z sieci (trochę ich na przestrzeni ostatnich lat powstało...). Dodajmy do tego relatywnie prostą obsługę, jasne i przejrzyste zasady pracy (współpracy!) z programem i gotowe. Czy to wystarczy? Niezupełnie, pozostaje zawsze czynnik ludzki, a ten potrafi nieraz doprowadzić człowieka do histerii. W najgorszym wypadku zniechęcić do dalszej aktywności ;)

Gdy koncepcja projektu ulega przeobrażeniom, warto zastanowić się nad ideałami lub głównymi przesłankami leżącymi u podstaw jego istnienia. Nie inaczej było w przypadku projektu Spikit i jego 2,5‑letniej historii. To co początkowo było jego wielką zaletą (mechanizm Reguł głosowych), w chwili zwątpienia stało się największym ciężarem (brak zrozumienia), by niedługo potem ponownie nabrać blasku (oświecenie?). Ach, ta przewrotność. Poznaj Spikit, niezwykły system rozpoznawania mowy.

502080

Dostępna od ponad miesiąca nowa wersja tego oprogramowania, czyli Spikit 1.5.x, dzięki kilku prostym zabiegom może stać się Twoim osobistym asystentem głosowym, o którym zawsze marzyłeś. Teraz. Nie jutro, za miesiąc, czy rok. Nie, gdy rynek PC będzie na niego - z marketingowego punktu widzenia - gotowy, lecz w tej chwili. Nie na super-komputerze, a na sprzęcie jakim aktualnie dysponujesz. Pytanie tylko, czy Ty jesteś na to gotów? Czy wiesz czego chcesz, czy może wolisz być tylko biernym obserwatorem?

Weź sprawy w swoje ręce

A raczej: zacznij mówić. Mimo niewielkich różnic w numeracji, kolejne aktualizacje programu wprowadzają znaczne ulepszenia lub pełnią rolę odpowiedzi na zgłaszane przez użytkowników sugestie. Nierzadko są to przełomowe zmiany. Tak było także i w tym przypadku. W efekcie, Spikit 1.5 uległ bardzo pozytywnej transformacji, eliminując błędy poprzedników i otwierając nowe perspektywy wykorzystania programu w naszym codziennym życiu. Zachowując pierwotną ideę, mechanizm tworzenia własnych komend głosowych oferuje teraz niespotykane nigdzie indziej możliwości. Nie jest przy tym sztucznie ograniczony, wręcz przeciwnie - wspiera kreatywność użytkowników. Wymaga jednak intelektualnego zaangażowania.

502084

Zalety usprawnionego mechanizmu Reguł głosowych przedstawiłem już w krótkiej serii filmów tuż przed oficjalnym wydaniem publicznej wersji programu. Jak się następnie okazało, z wersji kandydującej ;) Mimo późniejszych, niewielkich modyfikacji, filmy te nie utraciły na aktualności, więc prezentuję je poniżej z nadzieją, że okażą się pomocne.

Tym co warto tu podkreślić jest wyjątkowa zdolność programu Spikit do bezproblemowej współpracy z każdym innym oprogramowaniem (np. z systemowym Narratorem, szczególnie w jego zaktualizowanej wersji w Windows 8!). Dzięki temu Spikit likwiduje problem bycia pseudointeligentnym automatem i pozostawia Tobie, użytkownikowi, wybór konkretnych narzędzi do realizacji konkretnych celów. Spikit nie musi informować Ciebie o prognozie pogody, ani pełnić roli zaawansowanego czytnika ekranowego. Wystarczy natomiast, że pełni rolę inicjującą prace innych, bardziej specjalistycznych narzędzi, które utworzone zostały w konkretnym celu jakim może być np. głosowe informowanie o stanie pogody lub przebiegu trasy z jednego miejsca w inne. Wystarczy, że Spikit pełni rolę katalizatora i zwiększa wydajność Twojej pracy lub rozszerza możliwości cyfrowej rozrywki! Taką właśnie rolę spełniać mają systemy rozpoznawania mowy przyszłości. AutoCAD sterowany głosem? - nie ma problemu (przypomnij sobie pracę Tony'ego Starka w pracowni i jego konwersacje z filmowym JARVIS'em, a zobaczysz uderzające podobieństwo). Nawet w przypadku aplikacji takich jak Photoshop, Twoja interakcja z komputerem nie musi ograniczać się do klikania lub, zgodnie z aktualnym trendem na rynku, mazania palcem po ekranie dotykowym. Wykorzystaj swoją wyobraźnię i zapisz swoje myśli w postaci Reguły głosowej, schematu określającego sposób komunikowania się z maszyną, by zaraz potem móc do niej faktycznie przemawiać. Właśnie w tym celu powstał Spikit, aby integrować ze sobą istniejące rozwiązania, a nie je zastępować. Spikit to interfejs głosowy dla rzeczy, które widzisz na ekranie.

Odnośniki do pozostałych części prezentacji:

Krótka wizja przyszłości

Spikit jest w połowie drogi ku jeszcze większej wolności jego użytkowników. Czy dotrze tam w niezmienionej postaci? Któż wie... niemniej obecna forma wydaje się być niezwykle stabilna, bo oparta na dobrze przemyślanych fundamentach wspartych sugestiami stale powiększającej się społeczności użytkowników. Istnieją jeszcze obszary wymagające drobnych usprawnień (błądzić jest rzeczą ludzką...), ale też i pomysły, które mogą zrewolucjonizować sposób w jaki komunikujemy się z naszymi urządzeniami (niezależnie od tego czy są to tablety, laptopy czy stacjonarne pecety).

Najważniejsze i najpilniejsze z tych pomysłów to obecnie:

  • implementacja potoków nazwanych lub podobnego mechanizmu komunikacji między procesami, dzięki którym wyniki rozpoznawania mowy mogłyby być w prosty sposób wykorzystywane nawet przez początkującego użytkownika-programistę do jego własnych celów
  • zdolność do automatycznego wczytywania zbiorów poleceń przygotowanych specjalnie dla wykorzystywanej w danej chwili aplikacji (teraz można tego dokonać tylko na żądanie)
  • możliwość wypowiadania na głos komunikatów z okien dialogowych (na systemach starszych niż Windows 8, na których Narrator nie jest dostępny lub nie można nim sterować za pomocą skrótów klawiszowych, a w efekcie za pomocą własnych poleceń głosowych)

Wyraź swoje poparcie

Jeśli tak jak ja pasjonujesz się nowymi technologiami, rozpoznawaniem mowy lub innymi metodami komunikowania się ze sprzętem, zwłaszcza ich użytkowym zastosowaniem - wypróbuj Spikit. Odnajdziesz go w bazie dobrychprogramów, jak i na oficjalnej stronie projektu. Aplikacja w wersji bezpłatnej działa z niewielkim opóźnieniem.

A jeśli masz pytania lub szukasz okazji do wymiany poglądów na temat samego programu lub idei głosowego sterowania PC, weź udział w dyskusji zarówno tu jak i na stronie Spikit (tam komentarze biją kolejne rekordy długości...).

A gdy Spikit przypadnie już Tobie do gustu - nie zapomnij dać mu lajka na Facebooku, Spikit na FB pozytywnie zaskakuje zarówno treścią jak i kulturą przekazu informacji.

Wybrane dla Ciebie

Komentarze (28)

Cenimy Twoją prywatność

Kliknij "AKCEPTUJĘ I PRZECHODZĘ DO SERWISU", aby wyrazić zgodę na korzystanie w Internecie z technologii automatycznego gromadzenia i wykorzystywania danych oraz na przetwarzanie Twoich danych osobowych przez Wirtualną Polskę, Zaufanych Partnerów IAB (883 partnerów) oraz pozostałych Zaufanych Partnerów (405 partnerów) a także udostępnienie przez nas ww. Zaufanym Partnerom przypisanych Ci identyfikatorów w celach marketingowych (w tym do zautomatyzowanego dopasowania reklam do Twoich zainteresowań i mierzenia ich skuteczności) i pozostałych, które wskazujemy poniżej. Możesz również podjąć decyzję w sprawie udzielenia zgody w ramach ustawień zaawansowanych.


Na podstawie udzielonej przez Ciebie zgody Wirtualna Polska, Zaufani Partnerzy IAB oraz pozostali Zaufani Partnerzy będą przetwarzać Twoje dane osobowe zbierane w Internecie (m.in. na serwisach partnerów e-commerce), w tym za pośrednictwem formularzy, takie jak: adresy IP, identyfikatory Twoich urządzeń i identyfikatory plików cookies oraz inne przypisane Ci identyfikatory i informacje o Twojej aktywności w Internecie. Dane te będą przetwarzane w celu: przechowywania informacji na urządzeniu lub dostępu do nich, wykorzystywania ograniczonych danych do wyboru reklam, tworzenia profili związanych z personalizacją reklam, wykorzystania profili do wyboru spersonalizowanych reklam, tworzenia profili z myślą o personalizacji treści, wykorzystywania profili w doborze spersonalizowanych treści, pomiaru wydajności reklam, pomiaru wydajności treści, poznawaniu odbiorców dzięki statystyce lub kombinacji danych z różnych źródeł, opracowywania i ulepszania usług, wykorzystywania ograniczonych danych do wyboru treści.


W ramach funkcji i funkcji specjalnych Wirtualna Polska może podejmować następujące działania:

  1. Dopasowanie i łączenie danych z innych źródeł
  2. Łączenie różnych urządzeń
  3. Identyfikacja urządzeń na podstawie informacji przesyłanych automatycznie
  4. Aktywne skanowanie charakterystyki urządzenia do celów identyfikacji

Cele przetwarzania Twoich danych przez Zaufanych Partnerów IAB oraz pozostałych Zaufanych Partnerów są następujące:

  1. Przechowywanie informacji na urządzeniu lub dostęp do nich
  2. Wykorzystywanie ograniczonych danych do wyboru reklam
  3. Tworzenie profili w celu spersonalizowanych reklam
  4. Wykorzystanie profili do wyboru spersonalizowanych reklam
  5. Tworzenie profili w celu personalizacji treści
  6. Wykorzystywanie profili w celu doboru spersonalizowanych treści
  7. Pomiar efektywności reklam
  8. Pomiar efektywności treści
  9. Rozumienie odbiorców dzięki statystyce lub kombinacji danych z różnych źródeł
  10. Rozwój i ulepszanie usług
  11. Wykorzystywanie ograniczonych danych do wyboru treści
  12. Zapewnienie bezpieczeństwa, zapobieganie oszustwom i naprawianie błędów
  13. Dostarczanie i prezentowanie reklam i treści
  14. Zapisanie decyzji dotyczących prywatności oraz informowanie o nich

W ramach funkcji i funkcji specjalnych nasi Zaufani Partnerzy IAB oraz pozostali Zaufani Partnerzy mogą podejmować następujące działania:

  1. Dopasowanie i łączenie danych z innych źródeł
  2. Łączenie różnych urządzeń
  3. Identyfikacja urządzeń na podstawie informacji przesyłanych automatycznie
  4. Aktywne skanowanie charakterystyki urządzenia do celów identyfikacji

Dla podjęcia powyższych działań nasi Zaufani Partnerzy IAB oraz pozostali Zaufani Partnerzy również potrzebują Twojej zgody, którą możesz udzielić poprzez kliknięcie w przycisk "AKCEPTUJĘ I PRZECHODZĘ DO SERWISU" lub podjąć decyzję w sprawie udzielenia zgody w ramach ustawień zaawansowanych.


Cele przetwarzania Twoich danych bez konieczności uzyskania Twojej zgody w oparciu o uzasadniony interes Wirtualnej Polski, Zaufanych Partnerów IAB oraz możliwość sprzeciwienia się takiemu przetwarzaniu znajdziesz w ustawieniach zaawansowanych.


Cele, cele specjalne, funkcje i funkcje specjalne przetwarzania szczegółowo opisujemy w ustawieniach zaawansowanych.


Serwisy partnerów e-commerce, z których możemy przetwarzać Twoje dane osobowe na podstawie udzielonej przez Ciebie zgody znajdziesz tutaj.


Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać wywołując ponownie okno z ustawieniami poprzez kliknięcie w link "Ustawienia prywatności" znajdujący się w stopce każdego serwisu.


Pamiętaj, że udzielając zgody Twoje dane będą mogły być przekazywane do naszych Zaufanych Partnerów z państw trzecich tj. z państw spoza Europejskiego Obszaru Gospodarczego.


Masz prawo żądania dostępu, sprostowania, usunięcia, ograniczenia, przeniesienia przetwarzania danych, złożenia sprzeciwu, złożenia skargi do organu nadzorczego na zasadach określonych w polityce prywatności.


Korzystanie z witryny bez zmiany ustawień Twojej przeglądarki oznacza, że pliki cookies będą umieszczane w Twoim urządzeniu końcowym. W celu zmiany ustawień prywatności możesz kliknąć w link Ustawienia zaawansowane lub "Ustawienia prywatności" znajdujący się w stopce każdego serwisu w ramach których będziesz mógł udzielić, odwołać zgodę lub w inny sposób zarządzać swoimi wyborami. Szczegółowe informacje na temat przetwarzania Twoich danych osobowych znajdziesz w polityce prywatności.