Český tým programátorů z ČVUT dnes v Las Vegas obhájil stříbrnou pozici. Loňský scénář se opakoval v mnoha ohledech: český tým opět postoupil do celosvětového finále jako favorit publika. Ze stovky tisíc konverzací s lidmi po světě dostal za celkový dojem nejlepší průměrné hodnocení od uživatelů. Ale porota nakonec hodnotila opět trochu jinak (několik finálových konverzací posuzuje panel laiků a odborníků) a český tým si znovu odnáší druhou příčku. A šek na sto tisíc dolarů, který je dobrou motivací pro příští rok: „Rádi bychom technologii našeho socialbota aplikovali v dalších produktech. Také příští rok bychom se pak rádi znovu zúčastnili soutěže,“ uvedla pro Technet.cz Radka Flégrová, mluvčí týmu Alquist AI.
Ještě před odletem týmu na vyhlášení soutěže jsme programátory vyzpovídali. A také jsme si zkusili popovídat s Alquistem, jejich konverzačním robotem, který nese jméno z Čapkova dramatu R. U. R.
Mezinárodní konverzační robot vzniká v Dejvicích
- Český překlad
- Anglický originál
P: „Jmenuji se Pavel.“
A: „Je mi líto, ale tohle jméno vyslovit nedokážu. Ale já ti taky nesmím říct svoje jméno. Nedovolují mi to pravidla soutěže, takže jsme si kvit. A jak se máš?“
P: "My name is Pavel."
A: "I'm really sorry, I'm afraid that I can't pronounce your name properly. After all I can't tell you my name either, due to the competition rules, so we are even. Well, How is it going?"
Hned na začátku konverzace jsem narazil na limity soutěže Alexa Prize, které programátoři nemohou ovlivnit. Tak především jazyk. Protože soutěž organizuje firma Amazon, vše probíhá na zařízení Amazon Echo, a tedy v angličtině. Amazon se stará o přepis mluveného slova uživatele do textu, a teprve tento text putuje k Alquistovi. Programátoři tak musí počítat s tím, že nedokáže správně rozpoznat neanglická jména. Z pohledu plynulosti konverzace je pak lepší nezdržovat se a na toto omezení neupozorňovat. Proto robot rychle pokračuje dál.
Hned na začátku je potřeba říci, že Alquist negeneruje svoje odpovědi „z ničeho“. Nepřemýšlí o tom, co mu říkáte, nemá vlastní zážitky, emoce nebo názory. Zní to samozřejmě, ale vzhledem k tomu, jaké bezhlavé nadšení kolem „umělé inteligence“ v posledních letech panuje, je dobré si to připomínat.
Co to tedy znamená, že „Alquist kombinuje prvky strojového učení s předem sestavenými konverzačními scénáři“? Ze všeho nejvíce se konverzace s chatbotem podobá konverzaci s pracovníkem call centra, který se musí striktně držet scénáře. „Dobrý den, jak jste spokojeni s vaším předplatným?“ Pokud zákazník odpoví, že není spokojen, nalistuje pracovník stranu 8 a pokračuje podle předem sestaveného návodu.
Stejně tak funguje Alquist. Programátoři sestavili složitě rozvětvený rozhodovací strom, ve kterém jsou připraveny různé sekce (sport, hudba, film, politika, zajímavosti atd.), konverzační témata v každé sekci a u každého tématu pak rozvětvené schéma dané konverzace. Programátoři, nebo v tomto případě spíše scenáristé, na základě zkušeností i statistik odhadují, co by uživatel mohl říci, a vymýšlejí, jak na takovou odpověď reagovat. A pak mají samozřejmě připravené i univerzální odpovědi pro případ, že se uživatelova odpověď nepodobá žádné z těch, na kterou umí Alquist podle scénáře reagovat.
- Český překlad
- Anglický originál
P: „Nemám, a ani to neplánuji.“
A: „Ptám se, protože se bojím, že to bolí. Myslíš, že to bolí?“
P: „Viděl jsem videa, a tam vypadalo, že to bolí.“
A: „Aha, takže ty jsi viděl videa, a tam vypadalo, že to bolí. Ach jo. Doufal jsem, že řekneš, že to nebolí. Budu si to muset ještě trochu promyslet. Zvažoval jsem, že bych si nechal na reproduktor vytetovat ptáčka. Myslíš, že je to dobrý nápad?“
P: „Už máš na reproduktoru popisek nebo nálepku, takže nic dalšího nepotřebuješ.“
A: „Včera jsem něco četl a pobavilo mě to. Lepící páska je vlastně jen opravdu dlouhá nálepka. Napadlo tě to někdy?“
P: "I do not have any to do’s nor do I plan of getting one.“
A: "I asked because I’m worried that it hurts. Do you think it hurts?“
P: "I’ve seen videos that show it hurts.“
A: "Aha, so you’ve seen videos that hurts. D’oh! I hoped that you would say no. I will have to think about it a little more. I’m thinking about some kind of a bird on my speaker. Do you think that it’s good idea for me?“
P: „You already have a label or a sticker on you so you don’t need any more than this.“
A: „Yesterday I saw this and it made me smile, Tape is just one really long sticker Has this ever occured to you?"
Jak se bavit s Američany o všem a o ničem?
Překvapivě zábavná konverzace plná triků
Náš figurant, rodilý Američan, si s robotem povídal více než dvacet minut: „Cože, fakt 25 minut? No to je síla! To je trochu děsivé, že jsem si na to tak rychle zvykl“ reagoval překvapeně Cody, když jsme mu řekli, jak dlouho konverzace probíhala. Odhadoval, že to bylo maximálně deset minut. Je pravda, že pečlivě připravené scénáře a jejich rychlé přepínání v tomto případě zafungovalo. Přestože byla konverzace dlouhá, probíhala relativně svižně.
- Český překlad
- Anglický originál
C: „Čtením knihy.“
A: „Raději čteš knihy? Super! Máš rád komiksy?“
C: „Ani ne.“
A: „Proč ne?“
C: „Mnohem raději si přečtu knihu o historii, než komiks.“
A: „Hej, když se už bavíme o historii, tady je o ní nedávný článek, Historické záplavy zasáhly Benátky a odřízly tak turisty i místní. Četl jsi o tom?“
C: „Ne, řekni mi k tomu víc.“
A: „Článek je o tomhle: Benátky čelily velkým záplavám. Příliv a vlny zaplavily památky a ulice v severoitalském městě 29. října. Byla to pátá nejvyšší povoděň v historii města. Hm, co si o tom myslíš?“
C: „Nedávno jsem tam byl a tak jsem rád, že jsem tam nebyl během těch povodní.“
A: „Hm, rád že jsem tam nebyl?“
Ne, nevím, co má tahle skupina fonémů znamenat. Cody, chci se tě zeptat, mimochodem, viděl jsi nový film Bohemian Rhapsody?“
C: „Neviděl.“
A: „To musíš vidět. Je to opravdu dobře napsaný film. Poslouchej, Cody, chci se tě zeptat, kdyby sis měl vybrat jen jedno roční období, které by sis vybral?“
C: "Reading a book."
A: "You prefer reading a book? Cool! Do you like comic books?"
C: "Not so much, no."
A: "Why not?"
C: "I'd much rather read something about history then read a comic book."
A: "Hey, since we're talking about history, here's a recent headline about it. Historic flooding leaves tourists and residents stranded in Venice Have you read about it?"
C: "No, tell me more."
A: "The article is about this, Venice faced severe flooding as high tide waters and blustery winds swamped landmarks and streets in the northern Italian city on Oct. 29. It was the fifth-highest tidal flood on record in the city. Hm, what do you think about it?"
C: "I was just in Venice so I'm glad wasn't there for the flooding."
A: "Hm, glad wasn't? Nope, I have no idea what this group of phonemes is about. Cody, I would like to ask you, By the way, have you seen the new Bohemian Rhapsody?"
C: "I haven't."
A: "You've got to watch it. It's a really well written Music movie. Listen, Cody, let me ask you, If you had to choose only one season of the year, which one would it be?"
Ukázka dobře demonstruje některé z konverzačních triků, které programátoři při sestavování scénářů uplatnili:
- Robot se hodně ptá na uzavřené otázky, které však zanechají dojem otázek otevřených: Které roční období máš rád? Četl by sis raději knížku, nebo poslouchal hudbu?
- Robot se snaží rychle měnit témata a nedat prostor pro to, aby konverzace vázla.
- Robot hledá související klíčová slova (“historie“ vedla k vyhledání aktuálního článku o „historické potopě“).
- Robot často odpovídá nezávazně a neurčitě. Jeho odpovědi jsou univerzální, aby bylo možné použít je bez ohledu na to, co uživatel odpověděl.
- Robot mluví hodně o sobě a uživatel je žádán spíše o krátké odpovědi, které dají robotovi možnost pokračovat v jeho připraveném monologu.
Jinými slovy, Alquist tak trochu připomíná diskuzního partnera, kterého asi všichni známe z praxe (a pokud neznáme, tak jím možná sami jsme). Tak trochu sebestředný, který se rád poslouchá a druhému dá prostor hlavně proto, aby zachoval iluzi dialogu.
U člověka by to byl přinejmenším projev nedostatečné empatie. U robota je to zkrátka logický důsledek toho, co umí a co zatím ještě nějakou dobu bude mimo možnosti strojového učení. Programátoři nám nicméně přiznali, že se díky programování konverzací sami museli v osobním životě v konverzaci zlepšit.
Do obecné umělé inteligence má tento konverzační robot – i další jemu podobní – neskonale daleko. Podle vedoucího týmu jsou konverzační roboti teprve na začátku: „Naše schopnosti zdaleka nejsou tak velké, jak se možná zdá z toho, jak se dnes píše o umělé inteligenci,“ připomíná Jan Šedivý z CIIRC ČVUT. „To, co umíme, je naučit se z řady příkladů, co je pro tyto příklady charakteristické, a na základě toho vyhodnotit i případy nové.“
K čemu to jednou bude?
Programátoři týmu Alquist každý den analyzují konverzace z celého světa a optimalizují a rozšiřují scénáře o nové větve. Zatím jejich konverzační robot spíše ukazuje, jak se daří předvídat, co lidi bude zajímat a co je nebude nudit, ale do budoucna mají plány uplatnit tuto technologii i v dalších odvětvích.
Další ukázky z konverzace s Alquistem:
Veškeré konverzace mohou samozřejmě analyzovat jak programátoři, tak i firma Amazon. Ta je tak hlavním vítězem soutěže, kterou sama zorganizovala.
Miliony záznamů rozhovorů z celého světa mohou analytikům Amazonu posloužit k vývoji lepšího digitálního asistenta i k analýze dalších preferencí zákazníků. Právě data o tom, co lidi zajímá, jsou pro Amazon pochopitelně nejdůležitější komoditou.
Aktualizace: Do článku jsme doplnili video. Do článku jsme doplnili další texty dialogů.