Umělá inteligence ve webovém prohlížeči?

Působí to celé na první pohled jako zvláštní nápad, ale výpočetně náročné úlohy z oblasti umělé inteligence/strojového učení by nemusely běžet pouze na serveru. Konsorcium W3C uvažuje o tom, že by měly být možné i přímo v rámci webového prohlížeče.
V čem je problém? Příslušný program, nemá-li vyžadovat instalaci zásuvného modulu, může být samozřejmě napsán v JavaScriptu. Takový program by ale kvůli omezením JavaScriptu při běhu nemohl přihlížet ke konkrétnímu hardwaru. (Je klient počítač nebo smartphone? Jaké má grafické procesy? Nebylo by výhodné dočasně změnit nastavení systému z hlediska nějaké hardwarové akcelerace?) Druhou možností jsou nativní aplikace, zde si však uživatelé musejí stahovat speciální programy a vývojář by jich musel vytvořit celou řadu. Výhodné pro vývojáře naopak je napsat jediný program ve formě vloženého objektu do HTML, přičemž o hardwarovou optimalizaci by se už staraly přímo příslušné standardy implementované na úurovni prohlížeče. Právě o toto usiluje skupina World Wide Web Consortium (W3C) Machine Learning for the Web Community Group. Na práci této skupiny se podílejí všichni dodavatelé významnějších prohlížečů, tedy Google, Mozilla, Microsoft i Apple. Existuje i související skupina GPU for the Web, s níž chce W3C ML své aktivity koordinovat.

Máme zde už sice např. podobně „výpočetně“ orientované WebGL, ale tento standard je poměrně starý, vůbec třeba nepočítá s procesory specializovanými na strojové učení (různé TPU apod.), paralelizací na úrovni CPU nebo efektivním využíváním moderních grafických procesorů.

Tolik Tim Anderson na The Register.

Celé to poněkud připomíná koncept javových appletů se sloganem „write once, runs everywhere“. Nicméně se to současně zdá být přece jen hodně složitý, příslušné API by toho muselo umět strašně moc.

Video na Youtube ukazuje jako možné využití rozpoznávání tváří v reálném čase na smartphonu, dále se zmiňuje rozpoznávání řeči.

Nejde-li o „službu poskytovanou serverem“, proč vše neřešit nativní aplikací? Má webový prohlížeč suplovat operační systém? Budete se moci vývojář spoléhat, že to v rámci prohlížeče bude efektivní (v různých verzích různých prohlížečů atd). Argumentů z různých stran lze vznášet dost. Tak třeba, bude-li mít program spuštěný v prohlížeči takto přímý přístup k hardwarovým prostředkům, co související bezpečnostní rizika? Je třeba možné, že by návštěvníci webu platili poskytovatelům právě formou takových specializovaných výpočtů, podobně jako se to zkouší s těžbou kryptoměn?

Zda se tato architektura ujme, to není samozřejmě zdaleka jen otázka kvality samotného nápadu, ale spíše jeho konkrétní implementace. A pak samozřejmě těžko předvídatelného zájmu samotných tvůrců aplikací, eventuálně toho, zda vývoj mezitím nenabere úplně jiný směr. Nezbývá než se nechat překvapit.

Exit mobile version