Alquist: Czech bot that can talk about film, fotball or landing on the moon. And it has made millions.

0
1091

Czech language only
Zdroj: Svět chytře

Dnes už není tak výjimečné, když na vás v domácnosti promluví lednice, kávovar nebo vysavač. Prodejní rekordy trhají i chytré reproduktory typu Alexa od Amazonu. Jenže debata s nimi pořád ještě vázne. Český tým vědců z pražského ČVUT proto vytvořil chatbota, který dokáže nejen odpovídat na dotazy, ale umí vést i plynulou konverzaci. Dostal jméno Alquist.

Když se řekne chatbot, představí si většina lidí chytrý reproduktor typu Alexy od Amazonu. Řeknete mu, aby pustil televizi nebo vám prozradil výsledek včerejšího fotbalu, a on to udělá. Jenže jít se dá ještě podstatně dál. Dokazuje to výsledek týmu Jana Šedivého z pražského institutu CIIRC, který chatbota nazvaného Alquist vytvořil. Inspirací pro jeho název byla jedna z hlavních postav Čapkova R.U.R. Český tým s Alquistem dvakrát bodoval v prestižní soutěži Alexa
Prize
, což kromě uznání přineslo i odměnu přes osm milionů korun.

„Na Alexe a podobných systémech jsou pro většinu lidí zajímavé hlavně tři funkce. Poslech hudby, ovládání internetu věcí a pak takzvané skilly neboli dovednosti. V současné době jich Alexa má asi osmdesát tisíc – můžete se zeptat třeba na to, jak včera hráli fotbalisté Manchesteru United, oblíbený tým z americké basketbalové ligy, nebo jaké bude příští týden počasí na plážích u Los Angeles. Přístroj vám na to odpoví,“ vysvětluje šéf týmu a pedagog ČVUT Jan Šedivý. „Aby to dokázal, potřebuje tazateli rozumět, tedy zvládat sémantiku řeči a umět ji převést na text. Potom musí umět prohledávat internetové databáze a z nich si vytáhnout potřebné informace. A my jsme napsali program, který obě tyto schopnosti má. To je Alquist.“

Takže se dá zjednodušeně říci, že učíte Alexu povídat si s lidmi o tom, co je zajímá?

V podstatě ano, ale oproti základnímu modelu Alexy jdeme ještě o hodně dál. Alexa v základu funguje tak, že na jednu otázku nabízí jednu odpověď – zeptáte se, kolik lidí žije v Itálii, a dozvíte se, že něco málo přes 60 milionů. Tomu se říká turn neboli výměna – jedna otázka, jedna odpověď, tečka. Jenže náš systém dokáže těchto výměn za sebou řetězit až několik desítek, což znamená, že si se systémem můžete regulérně povídat, nikoli jen zjišťovat odpovědi na konkrétní otázky. 

Znamená to, že s roboty budeme moci vést normální konverzaci jako s jinými lidmi?

Úplně stejně jako v kavárně s kamarádem si s Alexou nepopovídáte. Konverzace má pořád svá specifika – jednotlivé skilly musíte hlasem takzvaně otevřít, aby systém věděl, z čeho má vyhledávat, takže musíte použít konkrétní klíčové slovo. Když zůstaneme u toho příkladu s americkou basketbalovou ligou neboli NBA, je nutné napřed přikázat „Open NBA“, díky tomu systém vyhledá vhodné databáze a pak bude moci odpovědět. Ale samozřejmě se snažíme vylepšovat konverzační možnosti tak, abychom se přirozenému hovoru blížili.

Jedna věc jsou technické možnosti, druhá praktické využití chatbotů. Kde vidíte jejich místo ve skutečném životě? Slavná humanoidní robotka Sophie sice vypadá moc hezky, ale v praxi se svou slovní zásobou omezenou na pár frází zrovna velkou díru do světa nepředstavuje…

Sophie je pro mě obyčejný reklamní trik, dětská hračka. Praktické využití moc nemá, leda tak přitáhne lidi k tématu. Lepší jsou roboti v obchodech nebo na letištích, ale to je v podstatě jednoúčelová záležitost, zaměřená na konkrétní produkt. Náš Alquist má mnohem širší záběr, patří do kategorie sociálních chatbotů – můžete si s ním popovídat o fotbale, o celebritách, můžete s ním probírat aktuální zprávy nebo techniku, témat je v současné době asi třicet.

Tím pádem je jasné i praktické určení – jsou lidé, kteří si nemají s kým popovídat. V rámci zmíněných témat už máte poměrně značnou volnost, můžete mluvit o jednotlivých filmech, o hercích, přeskakovat z jednoho tématu na druhé…

Takže Alquist v zásadě dokáže vést nespecifickou, nezávaznou konverzaci?

Ano, respektive tímto směrem kráčíme. To je mimochodem z programátorského hlediska nekonečně složitější, než když máte konkrétní cíl, třeba zamluvit stůl v restauraci. Musíte při tom probrat spoustu okolností – co to má být za restauraci, co tam mají k jídlu a k pití, kolik vás je, kolik by to mělo stát a podobně, ale všechno směřuje jednoznačně k té rezervaci. Přesně takového chatbota, který to zvládl i po telefonu, nedávno předváděl Google. Složitější systémy slouží třeba v cestovních kancelářích nebo pro homebanking, ale pořád je to takzvaný goal-oriented system, tedy systém zaměřený na určitý cíl.

Tento typ chatbotů ale dnes převažuje, ne? Většinou slouží ke splnění určitého konkrétního cíle, typu té rezervace stolu…

Ano, přesně tak, i když samozřejmě existují i složitější a sofistikovanější systémy – a v nich se naše technologie dokáže uplatnit rovněž, protože je na tu složitější úroveň stavěná. Například v autech, kde to má dva háčky. Za prvé máte dost velké množství témat, která za volantem lidé chtějí probírat, a za druhé se řidič musí věnovat především řízení, takže po něm nemůžeme chtít, aby se plně soustředil na správné kladení otázek.

Nebo ve zdravotnictví, kde chatboty často pacienty nabádají, aby si vzali léky nebo podstupovali různé procedury. Případně si lze představit aplikace, které můžou uživateli radit, jak něco spravit – dnešní přístroje jsou obecně hodně komplikované a opravovat je většinou mohou jen odborníci. Lidem by se jistě líbilo, kdyby to zvládli s pomocí konverzačního robota sami, protože by ušetřili čas i peníze. Alquist dokáže fungovat jako základ pro všechny tyhle typy konverzací.

S Alquistem jste uspěli na mezinárodní scéně – dva roky po sobě jste skončili stříbrní v prestižní soutěži Alexa Prize. Co je to za soutěž?

Vyhlašuje ji Amazon, účastní se jí akademické týmy z celého světa. V prvním ročníku v roce 2016 se jí zúčastnilo přes sto týmů, o rok později už sto devadesát. V prvním kole Amazon ze zaslaných projektů vybere semifinalisty a těm dá peníze na realizaci jejich nápadů – náš tým dostal v prvním roce sto tisíc a ve druhém už čtvrt milionu dolarů, s tím už se opravdu dalo něco dělat.

Kromě toho máme k dispozici počítače v Amazonu, na kterých systém běží. Amazon ho pak nabízí svým zákazníkům ke konverzaci a ti ho vždycky na konci rozhovoru hodnotí jednou až pěti hvězdičkami. Na základě tohoto hodnocení postupují tři týmy do finále, nějakou dobu ještě na systému mohou pracovat a vylepšovat ho a v samotném finálovém kole hodnotí systémy pevně stanovenou metodikou speciální porotci Amazonu. Následně se vyhlašuje první, druhé a třetí místo. 

Co vám účast v soutěži především přinesla? Tedy kromě peněz.

Finance bych moc neopomíjel. Jsou samy o sobě skvělou odměnou – na Alquistu pracují především doktorandi a ti jsou jak známo mizerně placení, takže tohle přilepšení opravdu vítají, jinak by byl velký problém je vůbec udržet ve škole. Jinými slovy, peníze nám pomohly udržet dohromady původní tým už skoro čtyři roky a jeho členové si nemusejí přivydělávat bůhvíčím. To se na kvalitě práce samo sebou hodně projevuje. Takže hlavní přínos vidím ve stálém a stabilním pracovním týmu.

A co mezinárodní publicita?

S tou je to trochu slabší. Dokonce se přihodila událost, kterou popravdě moc nechápu – o soutěži poslala do světa zprávu agentura Reuters, napsali, kdo skončil na prvním a na třetím místě, jen nás jaksi zapomněli zmínit. To mi připadá jako docela velká drzost. Vyhráli Američané, bronz získali Skotové – globální tiskovou agenturu očividně nezajímal tým z neanglicky mluvící země, ačkoli Alquist samozřejmě funguje v angličtině.

Máte nějaké plány na rozšíření Alquistu do dalších jazyků, zejména do češtiny?

Momentálně je tohle otázka spíš pro Amazon, a ten do Alexy zatím češtinu podle všeho nechystá, ačkoli se o tom často mluví.

A vy jste v použití systému závislí na Amazonu?

Prakticky momentálně ano, protože nikdo jiný o něj nejeví zájem, a koneckonců na platformě Amazonu vznikal a logicky se pro ni nejlépe hodí. A Amazon má také právo zdarma využívat naše duševní vlastnictví. Ale jinak je to dobrá otázka, a odpověď zní ne – vlastně nejsme na Amazonu závislí, jsme autory systému a ten patří nám, byť v podmínkách soutěže bylo, že Amazonu poskytneme veškeré kódy, a to samozřejmě respektujeme. Ale nic nám nebrání nabízet Alquist i jinde.

Takže kdyby měl o systém zájem dejme tomu některý z našich mobilních operátorů, jimž by se vyspělý chatbot mohl hodit…

Tak bychom byli moc rádi. A není problém v takovém případě pracovat na češtině. Alquist může fungovat i na jiných platformách – softwarově třeba na Google Home, jehož česká verze bude snad k dispozici ještě letos, a hardwarově dejme tomu na chytrých telefonech, nepotřebujeme výhradně inteligentní reproduktory.

Lidská řeč je pro umělou inteligenci obecně hodně těžká struktura – strojové překlady se sice vylepšují, ale pořád mají do dokonalosti ještě hodně daleko…

Naprosto souhlasím. Samozřejmě už lze prohnat překladačem nějaký suchý technický text, v němž nejde o nic jiného než o holé porozumění, v tom jsou počítače dobré. Ale jakmile má jít kvalita o krok dál a text má mít jakékoli literární kvality, nemají stroje šanci, a ještě hodně dlouho mít nebudou.

Co je zapotřebí k tomu, aby umělý systém dokázal při zpracování jazyka maximálně využít současných možností? Stačí mít v týmu špičkové programátory, nebo potřebujete i další profese, třeba lingvisty?

Ve vývoji umělé inteligence existuje speciální obor, jemuž se říká natural language processing neboli přirozené zpracování jazyka – a to je vlastně obdoba běžné lingvistiky pro počítače. Mnozí programátoři se na tenhle obor specializují. Bez nich bychom se neobešli. Při přirozeném zpracování jazyka se využívá strojového učení, při němž se systém učí rozpoznávat určité struktury v řeči na základě častého opakování slovních spojení a dialogů.

Když jich máme k dispozici dostatek, systém postupně zjistí, že na určité otázky většinou následuje konkrétní typ odpovědi, a takhle si postupně osvojuje sémantiku. Ovšem při samotném vytváření oněch posloupností jazykových prvků se uplatní i skuteční lingvisté, protože musíme docílit maximální lexikální diverzity. Kromě toho nám lingvisté pomáhají se správnou formulací dialogů, aby byly maximálně přesné. Využíváme i psychology, kteří nám radí, jak se lidé v jistých situacích chovají.

Dokázal byste jednoduše vysvětlit, jak chatbot po technické stránce funguje?

Konkrétní příklad: v angličtině je relativně jednoduché poznat otázku, protože velmi často začíná tázacími zájmeny – what, where, why, when, who, how a tak dále (co, kde, proč, kdy, kdo, jak – pozn. red.). Ať už se tazatel ptá, jaký je provoz na dálnici D1, jaké je počasí v Londýně nebo kolik je obyvatel v Ugandě, systém okamžitě rozpozná, že se jedná o dotaz, a zároveň odhalí takzvanou entitu – tedy D1, Londýn nebo Ugandu.

My musíme zjistit záměr, přiřadit k němu správně entitu a pak s tím dál pracovat, protože do hry vstupuje ještě řada proměnných, synonyma a podobně. Ale základ funguje zhruba takhle – jde o to, rozpoznat základní stavební kameny věty a správně je rozložit a zase složit. Důležité je, že věty musejí být krátké a pokud možno jednoznačné. Trochu to připomíná konverzaci s dítětem.

Strojové učení je obecně považováno za předstupeň skutečné umělé inteligence – mnozí odborníci tvrdí, že aby se dalo hovořit o skutečné inteligenci, musí zvládat na nějaké úrovni abstraktní myšlení. A jazyk je vysoce vyspělý abstraktní systém. Může tedy vývoj přirozeného zpracování jazyka fungovat jako zásadní motor při vývoji umělé inteligence i v jiných oblastech?

Ono se to dá zajímavě otočit – komunikovat se musí primárně učit lidé. A až se naučí se stroji správně komunikovat, začne to fungovat i opačně. V současném stadiu dokážou stroje plánovat, kombinovat, vytvářet strategie a rozhodovat, ale musíme jim přesně říci, co po nich chceme. My při vývoji chatbotů hledáme způsob, jak to udělat co nejlépe, a tím se vylepšují i možnosti samotné umělé inteligence.

Jméno Alquist je symbolické – v Čapkově dramatu R.U.R. se jednalo o stavitele, který ve vzbouřených robotech vidí spoustu lidských kvalit včetně citů. Proč jste si ho vybrali?

Především jsme chtěli vzdát čest samotnému Čapkovi, možná nejlepšímu českému spisovateli všech dob, který by dnes platil za krále science fiction, ačkoli se tomu žánru tehdy takhle neříkalo. A jeho knihy nezestárly dodnes – u nás již několik generací panuje kult Kurta Vonneguta, ale Čapek se mu podle mého vyrovná, a svým humanismem ho dokonce překonává.

foto: zdroj archiv redakce