Starszy brat Cortany – Microsoft Agent
01.12.2015 | aktual.: 01.12.2015 13:49
Jednym z powodów, dla których uwielbiam film „2001: Odyseja Kosmiczna” jest estetyka opisu przyszłości. Rozglądając się po dziełach tworzonych w czasach premiery filmu (a było to niemal 50 lat temu!), czy to produkcjach sci‑fi, czy zwykłych materiałach reklamowych, łatwo dostrzec boleśnie toporne scenariusze „świata przyszłości”, gadających tosterów, lodówek mrugających bez powodu, absurdalnie niepraktycznych kształtów i ewidentnie niewygodnych ubrań. W „Odysei” nie ma nawet śladu czegoś takiego, dzięki czemu film niemal w ogóle się nie zestarzał. Clarke w jednym z wywiadów wprost powiedział, że zanim zdecydowano się na to, jak będzie wyglądał HAL 9000, wstępnym planem był robot-kobieta. Odrzucono ów pomysł – był bowiem „zbyt kiczowaty”.
Właśnie – kicz. Ma on to do siebie, że wygląda tandetnie już w momencie poczęcia, a w dodatku bardzo brzydko (i bardzo szybko!) się starzeje. Banalne stwierdzenie, że prostota wolniej wychodzi z mody jest jak najbardziej trafne. Nie oznacza to, że prosty design nie może być odrażający (Windows 10), ale paradzie żenujących ornamentów zawsze będzie łatwiej o brzydotę. Po prostu więcej rzeczy da się popsuć. A ja bardzo źle to znoszę. Mam wbudowany Wykrywacz Kiczu i prędko dostrzegam, gdy coś „ultranowoczesnego” po kilku latach będzie się kurzyło na strychu. Tak było z laserowymi klawiaturami oraz telewizorami 3D i tak, metaforycznie, będzie z cyfrowymi asystentkami w urządzeniach mobilnych.
Apple’owa Siri, jak większość jabłkowych produktów, była zapowiadana jako rewolucja. Nieco trudno, w atmosferze ciągłej euforii, szacować istotność wynalazków z Cupertino, zwłaszcza że wyniki finansowe są doskonałe niezależnie od jakości. Należy więc zwrócić się w kierunku popkultury: filmów, seriali, blogów, memów, żartów. Dopiero wtedy można odkryć, czy nowy „eksplorator wiedzy”, będący zarazem nową metodą interakcji z urządzeniem, faktycznie się przyjął. A z tym jest trochę słabo: widać dziś wyraźnie, że Siri nie sprawiła, że na masową skalę gadamy do swojego telefonu. Apple jednak ma niezaprzeczalne wyczucie smaku, w dziale badawczym przewidziano bowiem, że mówienie do telefonu nieco trąci kiczem, wzbudzając skojarzenia typu „dalej, dalej kalendarzu Gadżeta” lub „baza wirusów została zaktualizowana”. Dlatego z Siri możemy się porozumiewać również pisząc. Skoro tak, to dlaczego dalej uznawana jest za marginalny dodatek, który szybko się nudzi? W Polsce moglibyśmy szukać odpowiedzi w braku obsługi regionu, ale powód jest nieco bardziej przyziemny. Otóż Siri, podobnie jak Cortana, jest po prostu głupia jak but.
Microsoft nieco zaskoczył mnie swoim pomysłem z Cortaną. Nie przywykłem do poprawnie prowadzonych kampanii reklamowych w wykonaniu Microsoftu, jestem też przyzwyczajony (wskutek wieloletnich perypetii) do nieposiadania szczególnie wysokich oczekiwań względem jakichkolwiek nowości z Redmond. Dlatego założyłem, że głosowy asystent od MS będzie kompletną katastrofą, o której wszyscy szybko zapomną. Nazwanie jej „Cortana”, a następnie pozostanie przy nazwie kodowej było miłym zaskoczeniem. Kolejne kroki, w postaci zintegrowania asystentki z Windows 10, sprzężenie z nawigacją, wyszukiwanie semantyczne oraz wbudowana pomoc, zdecydowanie przypadły mi do gustu i wzbudziły nadzieje, że wreszcie powstanie asystent, który nie jest zabawką. Bardzo szybko okazało się, że mobilne asystentki dalej są bezużyteczne. Windows Phone uparcie odmawiał włączenia Cortany, a Windows Technical Preview, po przestawieniu ustawień regionalnych w dwóch panelach sterowania i pasku języka, wreszcie łaskawie zezwolił na pogadanie z niebieskim kółeczkiem. To było okropne. Cortana nie potrafiła sprostać żadnym, nawet prostym zadaniom, sugerowała błędne programy, idiotyczne rady niedostosowane do sytuacji i wykazywała rozpaczliwą bezradność przy zadaniu pytań celowo ślepych, jak „na czym polega porządek wszechświata”. Dotarło wtedy do mnie, że dałem się nabrać na zbyt rozbuchane zapowiedzi. Z technicznego punktu widzenia, Cortana to nic nowego, jedynie zbiór już obecnych technologii w nowym opakowaniu. Mowa o narzędziach Microsoft Speech API, Semantic Search, Windows Desktop Search oraz Bing. Używałem każdego z nich. Najgorzej radzi sobie Speech API, oprogramowywałem je w .NET swego czasu i miałem ochotę płakać nad wynikami. Świadomość, że Cortana składa się z nienowych składników sprawiła, że znacznie trudniej jest zastosować argument o „wersji 1.0”: że to przecież nowe, że jeszcze poprawią, no i algorytmy muszą się nauczyć, a tak w ogóle to w tym regionie to przecież i tak ma nie działać. W praktyce jest jednak jeszcze gorzej. Nie dość, że narzędzia składowe Cortany są dość wiekowe, to jeszcze sam pomysł ich zestawienia w asystenta jest naprawdę stary. A poprzednie inkarnacje okazywały się nie mniej głupie. Zapraszam zatem do skromnego zestawienia dotychczasowych prób stworzenia interfejsów personalnych przez Microsoft, by pokazać, od jak dawna nie potrafimy rozwiązać tego problemu.
Gdy komputery ogólnego przeznaczenia stały się cenowo osiągalne dla gospodarstw domowych, ale w dalszym ciągu były zbyt trudne w obsłudze dla masowego klienta, próbowano naprędce zmodyfikować metody interakcji z urządzeniem, by przemówić do osób nietechnicznych. Było to motorem znacznego postępu (jak Chicago i Windows 95) ale i wielu rozwiązań pobocznych, prowadzących w przepaść. Niezapomnianym koszmarem był tu legendarny Microsoft BOB, który usiłował przerobić interfejs Windows na „Dom”, wprowadzając interakcje. Zamiast uruchamiać programy przechodziło się miedzy wirtualnymi pokojami, zadania wykonywało się za pomocą przedmiotów codziennego użytku, jak notes, długopis itd. Tego typu interfejs był potem popularny w tzw. „encyklopediach multimedialnych” na CD, mimo że nigdy się nie przyjął. BOB był tak zły, że Vista była przy nim sukcesem. Brak kompromitującego rozgłosu w związku z owym koszmarkiem można tłumaczyć chyba jedynie mniejszą popularnością internetu. Naturalny interfejs BOB‑a prędko przepadł w mrokach dziejów, jednak wyekstrahowano z niego komponent bezpośrednio odpowiedzialny za interakcję z użytkownikiem. Był nim pies Rover, zaimplementowany z wykorzystaniem wbudowanego silnika Microsoft Actor. Gdy wydawało się, że cukierkowy BOB ze swoim niedorozwiniętym psem Roverem przeminął na zawsze, Microsoft Actor nagle powrócił, nieco zaktualizowany, w pakiecie Microsoft Office 97. Ponieważ psów nie trzyma się w biurze, Rover został zastąpiony znienawidzonym Spinaczem.
Spinacz (Clippit, potocznie Clippy) był bezpośrednim poprzednikiem Cortany. Nie tylko był jeszcze głupszy od Cortany, ale w dodatku wchodził ludziom w drogę i przeszkadzał w pracy. Był bowiem rażąco niedokończonym produktem. Ale można mu to wybaczyć, był wszak „wersją 1.0”. Oznacza to zatem, że ta wymówka względem Cortany straciła ważność 18 lat temu. Początkowym planem była przebudowa interfejsu pakietu Office tak, by dało się go używać na zasadzie interakcji. Asystent Office, w postaci Spinacza, miał sugerować pomoc lub samodzielnie przechodzić przez kreatory Office, gdy poproszony po naciśnięciu przycisku F1 i zadaniu pytania w języku naturalnym. W dodatku, Spinacz miał monitorować pracę i wykrywać, jaka pomoc jest najprzydatniejsza w danym momencie, gdy np. wydaje się, że piszemy list albo usiłujemy wstawić wykres. Spinacz miał też umieć dogadać się z programem Outlook i planować nasz terminarz oraz pomagać w wysyłaniu maili. Ten pięknie brzmiący projekt to jednak góra tytanicznej roboty. Asystent z Office 97 nie umiał wykonać nawet skromnego ułamka wyżej wymienionych czynności. Niemal nigdy nie rozumiał pytań zadanych w języku naturalnym, udzielając przez to nonsensownych odpowiedzi. W wersjach językowych innych, niż EN‑US było jeszcze gorzej, bowiem algorytm „rozmowy” ze Spinaczem w ogóle nie istniał i asystent działał jedynie na zasadzie słów-kluczy. Notorycznie wydawało mu się, że chcemy napisać list. Parokrotne przejście do nowej linii prowadziło do nachalnych sugestii na temat włączenia list numerowanych. Funkcja integracji z programem Outlook w ogóle nie istniała, a sam Outlook 97 był tak zły, że Microsoft kilka miesięcy później za darmo wydał aktualizację, w postaci programu Outlook 98. Instalator przyjmował klucz 111‑11111111, dzięki czemu tysiące osób dokonało darmowej aktualizacji nie z Outlook 97, tylko z Outlook Express 4.0. Spinacz został uznany za kretyński dodatek, który niczego nie potrafi zrobić dobrze, Paul Thurrott reagował agresją na wszelką wzmiankę o nim, nawet Microsoft nie wierzył w sens rozwoju asystenta, bowiem jego nazwą kodową było TFC, czyli „that fucking clown”.
Był to kolejny dowód na obecność w Microsoftcie wielu spierających się ze sobą frakcji. Dział badań (oraz Melinda Gates) promował modę na język naturalny, syntezę mowy i cyfrowych asystentów. Marketing wyczuł, że może uda się taki zbiór opakować w ładne pudełko, a ponieważ technologia „pod spodem” jest modna, najlepiej wrzucić ją wszędzie, nawet tam, gdzie nie pasuje. Zapewne w ten sposób Spinacz zawędrował do pakietu Office, gdzie nikt go nie chciał. Jednym z powodów, dla których asystent Office działał tak źle było, poza przedwczesnym wydaniem, niedostosowanie narzędzia do środowiska. Office nie jest zamkniętym przepływem. Nie oferuje identycznego ciągu powtarzalnych czynności, przez które może przeprowadzić nowego użytkownika jakiś przewodnik. Office pozwala zrobić milion rzeczy na milion sposobów i stworzenie asystenta do uniwersalnej obsługi wszystkich scenariuszy jest niemal niemożliwe. Najwyraźniej jednak nikt nie wyczuł, do czego tak naprawdę służą techniki asystentów (nie techniki agentowe! To co innego!). Wyszukiwanie w Pomocy było akceptowalnym zastosowaniem, ale działało źle. Spinacz najlepiej spisałby się w Outlooku, ale jego wersja 97, jak na złość, była katastrofą, przez co integracja nie miała nawet okazji powstać.
Mimo zupełnej klęski i jednoznacznie negatywnych opinii, asystenta Office nie wyrzucono. Zapadła decyzja o głębokiej przebudowie i rozwinięciu silnika Microsoft Actor. Liczono na to, że jeżeli Actor nie sprawdził się w pakiecie Office, to może zewnętrzni programiści wykorzystają go lepiej w swoich projektach. Tak powstał Microsoft Agent. Serwer MSAgent instalował się w systemie wraz z Office 2000. W systemie Windows 2000 (i częściowo w Windows Me – owa „częściowość” jest bardzo wymowna i smutna) integrował się z interfejsami rozpoznawania i syntezy mowy oraz oczywiście dostarczał formant ActiveX, by mogły z niego korzystać strony internetowe. Microsoft Agent sam z siebie nie oferował integracji z niczym, dostarczał jedynie środowiska do zarządzania animowaną postacią. Było to nieco spóźnione – oznaczało bowiem implementację „interfejsów społecznych” w ramach referatu z roku 1995. W międzyczasie metody interakcji z komputerem, oczekiwania użytkowników oraz ergonomia jako nauka, dość mocno się rozwinęły. Agent był zatem programem do wszystkiego i do niczego. O jego skuteczności decydowała implementacja po stronie programu, do którego należał. Naturalnie najważniejszym z nich miał być ponownie Microsoft Office. Oczywiście popełniono identyczne błędy, co 3 lata wcześniej, mimo gigantycznego rozwoju infrastruktury MS Agent oraz całego interfejsu Office 2000. Spinacz oferował nędzną pomoc, nie dało się z nim porozmawiać po polsku (tzn. dało się, ale on tylko udawał, że rozumie), a integrację z Outlookiem znowu odwołano. Asystent Office był zwyczajnie bezużyteczny, a im więcej wiedziało się o tym, jaka technologia czai się „pod spodem”, tym większa była świadomość, co tak naprawdę się marnuje.
Microsoft nigdy nie zrozumiał, co robi źle ze Spinaczem. W wersji 2002 ukrył, a w 2003 odinstalował obsługę asystenta, by następnie zupełnie wyrzucić technologię Microsoft Agent w Office 2007 i Windows Vista. Ostatnim miejscem, w którym Agent został wykorzystany był instalator systemu (Windows Setup) w Windows ME i XP. Paradoksalnie, właśnie do takich zastosowań Agent nadawał się najlepiej: oferował pomoc i wyjaśnienia w przejściu przez jednokierunkowy kreator z małą liczbą rozgałęzień i pytaniami, które mogą wymagać wyjaśnienia. Sęk w tym, że w Windows ME instalator nie miał żadnych rozgałęzień i w praktyce nie było żadnego sensu oferować wskazówki. Po prostu nie dało się popełnić błędu w OOBE Windows Millennium. Co więcej, gdy tak łatwy proces jest zaopatrywany w asystenta, podbija to oczekiwania względem reszty systemu, a gdy otrzymuje się pulpit Windows Me, nie ma już żadnego asystenta, ani żadnych wyjaśnień. Wynika to oczywiście z tego, że nie miały być potrzebne – niestety, nie uporano się z Centrami Aktywności, o których pisałem miesiąc temu. W Windows XP asystent przyjmuje postać pytajnika i w ogóle nie wygląda na asystenta. Ale w Windows XP, również w wydaniu Professional, kryje się jeszcze drugi asystent: pies Rover, znany z BOB‑a, z nieznanych powodów zastępujący doskonałą wyszukiwarkę Windows 2000 niebieskim ekranem z pieskiem.
Przez kilka lat „multimedialne encyklopedie na CD‑ROM” oraz spersonifikowane kreatory zupełnie wyszły z mody. Bardzo rzadko można spotkać interfejs z asystentem, wyglądają one bowiem na tandetne i niepasujące. Całkiem możliwe, że taki odbiór asystentów wynika z wiecznie niesprawnej technologii odpowiedzialnej za ich działanie. Cortana i Siri to asystentki w dokładnie tym miejscu, co trzeba, a w pełni zaimplementowana, sprawna Cortana, byłaby naprawdę doskonałym dodatkiem do systemu, postępem na miarę Longhorna. Niestety, historia Spinacza każe zakładać, że i ona okaże się niewypałem. Uparcie bowiem twierdzę, że Cortana i Spinacz są ulepieni z tej samej gliny.
Technologie takie, jak „semantic web”, wyszukiwanie kontekstowe, automatyczne translatory, język naturalny, cyfrowy asystent itd. uchodzą obecnie za „modne”. Moda w technice działa inaczej, niż w informatyce czysto użytkowej i biżuterii (jak smartfony), ma zupełnie inną datę ważności. Zdają się o tym zapominać dziennikarze informatyczni, usiłujący wyciągać od czasu do czasu owe zagadnienia, wieszcząc rychłą rewolucję. Mam zatem nadzieję, że historia Spinacza pozwoli zapamiętać, że wszystkie te „nowe” technologie rozwijają się od lat, nakładem ciężkiej i żmudnej pracy, oferując bardzo mało korzyści dostrzegalnych dla użytkownika końcowego. A więc mimo niezaprzeczalnego postępu w dziedzinie cyfrowej lingwistyki i, powiedzmy, „sztucznej inteligencji”, dzisiejsza Cortana potrafi być tak samo zagubiona, jak stary, poczciwy Spinacz. Oczywiście, w czasach spinacza nie było mowy o Google Translate, żywym translatorze w smartfonie czy dźwiękowym tłumaczeniu symultanicznym wideokonferencji Skype. Nie trzeba jednak podważać dotychczasowych zdobyczy technicznych, by móc z przekonaniem powiedzieć, że dalej jesteśmy bardzo daleko od prawdziwej cyfrowej asystentki. Więc nie czekajmy specjalnie ochoczo na polską Cortanę.
Cheers!
PS
Co do dziennikarskiej niekompetencji, znalazłem niedawno kwiatek dotyczący Spinacza, świadczący o kompletnym niezrozumieniu zarówno technologii asystenckiej, jak i dawnych ograniczeń technicznych. Otóż pani Roz Ho, mimo pracy na poważnym stanowisku (wtedy, jak i dziś), twierdzi, że powodem złego odbioru Spinacza było to, że jest zbyt silnie nacechowany płciowo i kobiety czują się niekomfortowo, gdy przez cały czas pracy w programie biurowym, gapi się na nie postać o rzekomo męskich cechach. Makes sense. Na pewno o to chodziło. Swoją drogą, założenie, że to kobieta ma być w roli sekretarki/asystentki to seksizm. Cortana na szczęście jest za głupia, by zrozumieć takie problemy, jej poczucie humoru jest zakodowane na sztywno i reaguje tylko na zamkniętą listę kilku dowcipów.