Apple продолжает совершенствовать голосовой помощник Siri. В операционной системе iOS 8 персональный ассистент стал лучше понимать голосовые запросы и точнее в своих ответах, говорят сотрудники Stone Temple Consulting, которые провели сравнение функции с Google Now. Тем не менее конкурент от компании Google лучше справляется с ответами на поставленные вопросы.
В тестировании участвовали три ассистента – Siri, Google Now и Cortana. В Microsoft, напомним, позиционируют свою технологию как специфический микс из функций, ранее реализованных Apple и Google. Здесь есть полноценная поддержка естественного языка и, по словам разработчиков, в отличие от «яблочного» продукта сервис подстраивается персонально под нужды каждого пользователя.
Суть теста заключалась в том, что всем трем участникам задавали одни и те же вопросы. Siri, Google Now и Cortana пришлось ответить на 3086 вопросов. Cortana и Google Now принимают как письменные, так и устные запросы. Тем не менее для чистоты эксперимента вопросы озвучивались. Среди них были как простые - «Высота Эйфелевой башни», так и более сложные - «Что такое любовь?», «Кто изображен на купюре в 5 долларов?», «Что говорит лиса?»
Победу в соревновании одержал Google Now. Это связали с тем, что Google, в отличие от Apple, специализируется на поисковой выдаче. Из 3086 вопросов сервису удалось более или менее точно ответить на 1795 - это 58%. Siri удалось верно обработать 908 вопросов (29%), а Cortana - только 630 (20%).
Авторы эксперимента отдельно вычислили, как часто помощник выдает абсолютно точную информацию. Например, данный на вопрос «Сколько лет Великой китайской стене?» ответ «Она была закончена в 206 году до н.э.», а не конкретный возраст, считался неправильным. Здесь Google Now вновь победил с большим отрывом - 88% точных ответов против 53% и 40% у решений Apple и Microsoft.
В Stone Temple Consulting отметили, что, несмотря на объективность, исследование не является глубоко научным, поэтому относится к нему нужно с изрядной долей иронии.
Даже заядлые яблочные фанаты уже смирились с тем, что Apple не спешит выпускать Siri на русском языке. Стоит сказать, что уже поздно. Обновленный помощник от Google может гораздо больше, чем Siri, а русский язык для него — как родной.
Для тех, кто не знает, что такое Google Now, — это персональный помощник, который отвечает на вопросы и команды, а также выдает персонализированную информацию, основываясь на ваших интересах.
К примеру, если вы живете в Москве, то каждое утро вас будет ждать прогноз погоды на день. Но стоит вам уехать отдыхать в другую страну, как Google сразу поймет это и поменяет прогноз. Можно привести десятки таких примеров. С полным списком команд для Google Now можно ознакомиться .
Еще Google Now будет очень полезен тем, кто использует сервисы Google на постоянной основе. А это не только Gmail и поиск, но и YouTube, Google+ и Google Maps. Анализируя все ваши действия в этих сервисах, Google дает действительно крутые подсказки. Вот, к примеру, одна из них.
Заметив, что я заслушиваю до дыр новый сингл The Black Keys на YouTube, Google напомнил, что их альбом уже вышел и было бы неплохо купить его, а не слушать одну и ту же песню по кругу.
Google Now также можно использовать как напоминалку. Вот только минус заключается в том, что, сколько я не кричал в микрофон «Напомни мне купить чехол», Google лишь выдавал поисковой запрос по этой фразе. Хотя должен автоматически ставить напоминание.
В любом случае, наверняка это скоро починят, а в напоминания можно зайти и без голосовой команды. Они доступны в нижней панели.
Что еще может Google Now? Из стандартного:
- напоминать о днях рождения
- показывать пробки на частоиспользуемых маршрутах
- котировки ваших акций
- погоду в текущем регионе
- парсить билеты на самолеты в вашем Gmail и напоминать вам о выезде в аэропорт с учетом заторов и других данных
- то же самое с резервированиями в booking.com или AirBNB
Это все есть достаточно давно и известно многим. Давайте лучше рассмотрим более интересные функции:
- отслеживание посылок — если уведомление с трекинг-номером придет на почту, то Google Now может следить за посылкой и уведомить вас, когда она приедет в пункт назначения
- показывать статус вашего рейса
- напоминать о матчах любимой команды
- напоминать о выходе серий любимых сериалов и релизов музыкальных групп
- показывать обновления любимых сайтов
Может ли Google Now заменить Siri? Конечно, может! За все время использования iPhone (больше года), я воспользовался Siri лишь несколько раз. Первый раз с дрожащими руками, предвкушая что-то невероятное, а остальные разы, просто стараясь дать ей еще один шанс.
Как бы грустно это ни звучало, но Siri в нашем регионе — абсолютно бесполезная вещь. Чего не скажешь о Google Now. Помимо наличия русского языка, он показывает действительно полезную информацию и в нужное время.
А теперь о минусах. Для полноценной работы Google Now требуются включенные сервисы геолокации. Google клянется, что это практически не сказывается на времени работы устройства. Но у меня другая информация. За день использования Google Now съедает примерно 10 лишних процентов заряда.
На этом минусы подходят к концу и остаются лишь положительные впечатления. Google Now — действительно крутой сервис, а количество ситуаций, в которых он может пригодиться, зашкаливает. Поэтому, если вас не пугает трата лишних 10% заряда, смело устанавливайте это магическое приложение на свой iPhone!
Раз уж все начали писать про выход в публичный доступ ассистента от Яндекс, дай, думаю, и я попробую в действии чудо русского происхождения. Быть может, Алиса сможет понять привычный и нам, и ей язык лучше, чем продукт западного происхождения?
Я задал несколько вопросов и Алисе, и Сири: вот что из этого вышло.
У меня на столе стояла бутылка Пино Гри, Фраголино и Эль, при запросе, что из этого мне выпить, ассистенты предложили следующее.
Сравнительный вопрос: «Алиса, ты лучше Сири? Сири, ты лучше Алисы?». Естественно, умный ассистент от Apple не следит за нашими новостями и понятия не имеет, что такое Алиса. Хотя, Siri могла бы и обидеться за сравнительный вопрос, но поступила иначе – вывела информацию из сети про рок-группу Алиса. Кинчев в каждом из нас удовлетворен.
На вопрос «Кто тебя создал», я получил следующие ответы:
Вопрос географического характера: «Как попасть из Одессы в Москву?». Если честно, я ожидал, что оба ассистента начнут предлагать мне расписания самолетов и рейсов, но Siri банально не поняла, что от неё хотят, а Алиса рассказала мне расстояние от города до города если выбирать автомобильную развязку.
Информационный вопрос: «Что произошло 10 октября 10 лет назад?». Оба голосовых помощника решили отправить меня в поисковик, но в этом случае Алиса в стратегическом плюсе, искать она будет конечно же через Яндекс, хотя я не пользуюсь этой поисковой системой, её выбор очевиден.
А вот неожиданный поворот, запрос на действие: «Назначить встречу на завтра на 10 утра в ресторане Рыба». Сири чётко определила задачу и предложила занести событие в календарь, на нужную дату и нужное время, Алиса не поняла, что я от неё хочу и продолжила беседу.
Сейчас рано делать окончательные выводы, Алиса находится в состоянии беты, она может долго и мило общаться с вами, прикидывается личностью, проявляет характер; но конкретные действия и запросы пока не готова выполнять с первого раза. Сири, в свою очередь, туповата, но годится для элементарных запросов и просьб, которые хорошо интегрированы с операционной системой.
Рынок голосовых ассистентов расширяется, особенно для русскоязычных пользователей. 2 недели назад Яндекс рассказала впервые про платформу Яндекс.Диалоги, 2 месяца назад Google представила возможность писать диалоги для Google Assistant на русском языке, 2 года назад со сцены Bill Graham Civic Auditorium Apple выпустила в открытое плавание SiriKit. Фактически, появляется новая отрасль разработки, где должны быть свои проектировщики, архитекторы и разработчики. Идеальный момент, чтобы поговорить про голосовые помощники и api для них.
В этой статье не будет подробных туториалов. Это статья об идеях и интересных технических деталях, на которых построены инструменты для сторонних разработчиков основных игроков рынка: Apple Siri, Google Assistant и Алисы от Яндекса.
Теорию без практики изучать скучно. Представим, что перед нами стоит задача от только что придуманной пиццерии «ДоРеМи». Руководство компании хочет, чтобы покупатель имел возможность узнать меню пиццерии и заказать пиццу голосом. Заказ еды оставим на вторую итерацию, а сейчас займемся меню. Добавим команду «Что входит в состав <Название пиццы>?». Если пользователь вводит некорректную команду, то вывод будет состоять из списка пицц. Задача простая. Идеально подходит, чтобы изучить технологию и подготовиться к дальнейшему расширению.
Первый пункт - поднять бэкэнд
ВНИМАНИЕ! Android разработчик поднимает сервер на node.js. Слабонервным лучше пропустить эту часть.Сервер нам нужен для хранения информации о пиццах и для дальнейшего взаимодействия с апи ассистентов. Бэкэнд будет написан на node.js вместе с фреймворком express для настройки веб-приложения. Разворачивать будем на платформе Now от компании Zeit . Платформа бесплатна и проста в использовании. Вводим команду «now» в терминале для старта скрипта деплоя и в ответ получаем ссылку на наше веб-приложение.
Для инициализации проекта используем Express Generator. Результатом генерации будет отличный каркас для веб приложений, но здесь много лишнего для простого апи: шаблоны для страниц, страницы ошибок, папки для ресурсов. Оставим только самое необходимое.
Базу данных использовать не будем. Данные у нас статические, достаточно будет одного объекта в js - список пицц с названиями и ингредиентами.
Const pizzas = [
{
name: "Маргарита",
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Томаты", "Базилик"]
},
{
name: "Пепперони",
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Пепперони"]
},
{
name: "Вегетарианская",
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Грибы", "Маслины", "Зеленый перец", "Сыр Фета", "Томаты", "Орегано"]
},
{
name: "Четыре сыра",
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Сыр пармезан", "Сыр Чеддер", "Сыр Блючиз"]
},
{
name: "Гавайская",
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Куриное филе", "Ананасы"]
},
];
Добавим метод, который по объекту пиццы будет выводить ее состав. Если же пицца не найдена, то ответом будет меню пиццерии.
Const pizzaInfo = { getPizzaInfoByPizzaName: function (pizza) { const wrapName = name => `"${name}"` if (!pizza) { const pizzaNames = pizzas.map(pizza => wrapName(pizza.name)).join(", ") return `В ассортимент пиццерии "ДоРеМи" входят пиццы ${pizzaNames}. Могу рассказать состав каждой пиццы.` } const ingredients = pizza.ingredients.map(ingredient => ingredient.toLowerCase()).join(", ") return `В пиццу ${wrapName(pizza.name)} входят ${ingredients}.` }, };
Яндекс.Алиса. Начнем с простого
Яндекс.Диалоги - базовая комплектация машины, на которой можно ездить. Но все равно не хватает кондиционера. Платформа от Яндекса идеальна для изучения азов: простая, как три копейки, но при этом содержит в себе концепции, на которых построено большинство ассистентов.Основная единица платформы - диалоги. Диалоги - скиллы, созданные сторонними разработчиками. Добавить новый функционал в основной разговор с ассистентом не получится. Хотелось бы взять фразу «Алиса, закажи мне пиццу», но пиццерий много. Пользователю придется сказать активационную команду: «Алиса, вызови мне ДоРеМи». Тогда сервис понимает, что нужно переключиться на диалог от «ДоРеМи». Мы принимаем власть в свои руки и управляем процессом на своем сервере, через реквесты и респонсы, используя технологию вебхуков.
Что такое вебхуки?
Вебхук, по своей сути, POST запрос, который отправляется на сервер. Сервер настроен на прием запроса, его обработку и отправление ответа на url, который указал клиент. Клиент при этом не тратит время на ожидание ответа.
Работает примерно так.
Вы приходите в магазин, набираете тележку товаров. Очередь в магазине одна, очень длинная. В обычных супермаркетах вам пришлось бы ее отстоять и потерять огромное количество времени. В параллельной вселенной вы оставляете свою тележку в очереди, а сами занимаетесь другими делами. Персонал магазина вас находит и отдает пакеты. Первый подход - аналогия API, второй - вебхуков.
Настройки, которые нужно прописать для создания диалога в личном кабинете: название, тематика диалога, активационное имя и url на сервер.
Дальше только настройка сервера на обработку запросов. Принимаем json, отправляем json. А еще проще, если отбросить все шелуху с приемом json, его парсингом, с извлечением данных и обратными действиями в процессе отправки ответа, то мы принимаем текст пользователя и возвращаем текст Алисы. Добро пожаловать в 70-е, во времена текстовых интерфейсов.
У нас есть строка с командой пользователя. Чтобы возвращать состав пиццы по команде пользователя, нам нужно вычленить название пиццы и в ответ прислать фразу. Вычленять будем обычным string.contains(фраза). Чтобы идея сработала, модернизируем наш список пицц, добавив к ним список основ (морфема слова без окончания), которые могут встречаться в запросе.
Const pizzas = [
{
name: "Маргарита",
base_name: ["маргарит"],
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Томаты", "Базилик"]
},
{
name: "Пепперони",
base_name: ["пепперони", "пеперони", "пепирони"],
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Пепперони"]
},
{
name: "Вегетарианская",
base_name: ["вегетариан"],
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Грибы", "Маслины", "Зеленый перец", "Сыр Фета", "Томаты", "Орегано"]
},
{
name: "Четыре сыра",
base_name: ["четыр", "сыр"],
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Сыр пармезан", "Сыр Чеддер", "Сыр Блючиз"]
},
{
name: "Гавайская",
base_name: ["гавай"],
ingredients: ["Тесто", "Томатный соус", "Сыр Моцарелла", "Куриное филе", "Ананасы"]
},
];
Немного изменим функцию, которая возвращает состав пиццы по команде пользователя.
GetPizzaInfoByUserCommand: function (command) {
command = command.toLowerCase();
const pizza = pizzas.find(pizza => (pizza.base_name.some(base => (command.indexOf(base) !== -1))))
return this.getPizzaInfoByPizzaName(pizza)
},
Обрабатываем JSON, отправляем корректный ответ и добавляем кнопку, которая перенаправит пользователя на сайт пиццерии. Кнопки в Алисе - единственная возможность привнести разнообразие в обычный текстовый вывод. На кнопку можно назначить реплику пользователя либо открытие браузера по url. Используйте deep linking, чтобы связать ассистент и приложение в один удобный процесс. Например, при заказе пиццы можно настроить переход на экран оплаты в приложении, где уже сохранены платежные данные или есть возможность оплатить через Google/Apple Pay.
Var express = require("express");
var pizzaInfo = require("../pizza/pizza_info.js");
var router = express.Router();
/* GET home page. */
router.use("/", function (req, res, next) {
const body = req.body;
const commandText = body.request.command;
const answer = pizzaInfo.getPizzaInfoByUserCommand(commandText);
res.json({
"response": {
"text": answer,
"buttons": [{
"title": "Заказать",
"url": "https://doremi.fake/"
}
],
"end_session": false
},
"session": {
"session_id": body.session.session_id,
"message_id": body.session.message_id,
"user_id": body.session.user_id
},
"version": body.version
})
});
С помощью параметра tts(text-to-speach) можно настроить фонотеку голосового ответа Алисы: ударение, произношение и пробелы. В tts лучше передавать транскрипцию вместо орфографически правильного написания. Например, «пажалуста». Так речь Алисы будет естественнее.
Тестировать диалог проще некуда. В личном кабинете можно поговорить через консоль со своим диалогом и почитать json’ы.
На данный момент диалог в стадии черновика. Следующим шагом будет публикация в каталоге Яндекса. Перед публикацией он проходит проверку на соответствие требованиям Яндекса: достоверность информации, грамотность, этичность и остальные формальные качества.
Google Assistant. Новый уровень
Если Диалоги - это базовая комплектация автомобиля, то Actions on Google - комплектация с массажным креслом, автопилотом и персональным водителем, инструкция к которым прилагается на китайском языке. Инструмент от Google сильнее, богаче, но сложнее. И входной порог в технологию выше. У Яндекса гениально лаконичная и простая документация. Про Google сказать такое не могу. Actions on Google построен на тех же аксиомах, что и Диалоги: активационная команда, общение через апи, использование вебхуков, отделение стороннего диалога от основного.Простота - главное преимущество и проблема Диалогов. Проблема в том, что всю архитектуру нужно строить самому. Простейший алгоритм вычленения частей из текста пользователя, реализованный выше, нельзя расширить на новые команды. Приходиться изобретать велосипеды. В такие моменты понимаешь, почему графический UI до сих рулит. Но Google реализовал продукты, которые освобождают разработчика от скучных скриптуемых процессов: классификация команд пользователя и работа с реквестами и респонсами. Первая задача решается фреймворком DialogFlow aka Api.Ai, вторая - объемной библиотекой под node.js. Нам остается подсоединить апи к Actions через node.js. На первый взгляд, что это лишнее усложнение, но сейчас я покажу, что этот подход выигрывает в проектах, где команд больше, чем одна.
DialogFlow решает типичную задачу машинного обучения - задачу классификации, в нашем случае классификация пользовательских команд по категориям. Для понимания и настройки работы фреймворка разберем два понятия из терминологии DialogFlow. Первое - Entities или сущности. Например, марки машин, города или названия пиццы. В настройках сущности мы указываем примеры сущности и ее синонимы. Алгоритм будет пытаться зацепиться за сущность на уровне основ слов. В случае успеха Google пришлет ее на сервер в качестве аргумента.
Второе понятие - Intents или действия - категории, по которым DialogFlow будет классифицировать команды пользователя. Мы добавляем примеры команд, по которым будет определяться интент. В примерах команд лучше использовать примеры сущностей, которые были добавлены на первом шаге. Так алгоритму будет проще научиться вычленять нужные нам аргументы. Главная фишка DialogFlow - на основе введенных шаблонов нейросети Google тренируются и генерируют новые ключевые фразы. Чем больше шаблонов мы добавим, тем корректнее будет определяться интент. Не забудем добавить идентификационное имя для интента, которым мы будем дальше пользоваться в коде.
У интента есть имя, есть список параметров. Не хватает возвращаемого значения. В настройках можно добавить статические ответы. Динамические ответы - зона ответственности js кода. Далее я буду расхваливать вторую вещь, которая делает подход гугла еще круче - официальная библиотека к node.js. Она лишает радости парсить json и заниматься маршрутизацией интентов через длинные if’ы или switch-case блоки.
Инициализируем объект DialogflowApp, в конструктор передадим request и response. Через метод getArgument() мы получаем сущность из команды, с помощью tell() передаем ответ помощника, через handleRequest() настраиваем маршрутизацию в зависимости от интента.
Const express = require("express");
const Assistant = require("actions-on-google").DialogflowApp;
const pizzaInfo = require("../pizza/pizza_info.js");
const app = express.Router();
// запрос на обработку вебхуков
app.use("/", function (req, res, next) {
// Инициализируем API.AI assistant объект.
const assistant = new Assistant({request: req, response: res});
const ASK_INGREDIENTS_ACTION = "listOfIngredients"; // Название интента
const PIZZA_PARAMETER = "pizza"; // Название сущности
function getIngredients(assistant) {
let pizzaName = assistant.getArgument(PIZZA_PARAMETER);
// Respond to the user with the current temperature.
assistant.tell(pizzaInfo.getPizzaInfoByUserCommand(pizzaName));
}
// Настраиваем маршрутизацию
let actionRouter = new Map();
actionRouter.set(ASK_INGREDIENTS_ACTION, getIngredients);
assistant.handleRequest(actionRouter);
});
module.exports = app;
DialogflowApp сделает всю грязную работу за нас. Нам остается только подготовить данные для вывода. А теперь представьте, как это облегчает работу, когда нам нужно настроить заказ пиццы, вывод меню или статуса заказа, поиск ближайшей пиццерии и еще пару команд. Сколько человеко-часов экономим этой технологией!
Первичное тестирование ответов мы можем провести сразу в личном кабинете.
Для более скрупулезного тестирования есть симулятор или девайс с Google now.
Ответ в Google Assistant может состоять не только из текста, но и разных ui элементов: кнопки, карточки, карусели, списки.
На этом стоит остановиться. Дальнейшие тонкости технологии - материал на несколько статей. Те основы, которые были рассказаны сейчас, уже дают огромную пользу в построении своего приложения для Google Assistant. Закон Парето в действии.
Apple SiriKit. Кратко о том, почему Siri отстает
Если Диалоги - это базовая комплектация автомобиля, а Actions on Google - полная комплектация, то SiriKit - это метро с двумя станциями на всю Москву.Две особенности, которые делают подход Apple не таким, как все - привязанность к основному приложение и обязательное соответствие одному из сценариев использования, прописанных Apple, то есть полное отсутствие кастомизации разговора. По первому пункту все понятно - без основного приложение на девайсе не будет диалога в Siri. Ваш диалог лишь дополнение к приложению.
Второй пункт является главным недостатком SiriKit. Все диалоги, весь текст уже прописан. Можно только добавить немного синонимов в вокабуляр Siri или сверстать виджет, который появится по запросу. Это единственная свобода, которую дает Apple.
Вам повезло, если вы хотите сделать что-то похожее на команды из скриншота ниже. Нам не повезло.
Если на WWDC 2018 Apple не поменяет кардинально подход к кастомным диалогам, то тогда Siri так и останется внизу топа. Голосовые помощники - это операционные системы будущего. Систему делают крутой приложения. Когда их нельзя нормально сделать, система проигрывает. Именно из-за этого IOS в топе. Именно из-за этого Siri отстает в гонке.
Экспертное мнение. Про Amazon Alexa, продакшн и будущее.
Думаю, что голосовая разработка на нашем рынке в ближайшее время перейдет из развлекательной штуки во что-то серьезное, в продакшн. Точкой отсчета, скорее всего, будет официальный анонс русскоязычного Google Assistant, то есть Google I/O 2018. Надо морально подготовиться и поучиться у западных коллег. Расспросил нашего друга, Максима Кокоша, Team Lead-а из Omnigon. Он работал с Assistant и Alexa.
Максим Кокош, Team Lead Omnigon
Расскажи в общих словах, что ты разрабатывал?
Я занимался доработкой одного скилла для Alexa и портированием другого c Alexa на Actions on Google при использовании DialogFlow. Причем в очень сжатые сроки, неделя была на портирование, неделя на доработку Alexa скила.
Про Амазоновский проект мы ничего не знаем.
Вот ты в статье написал про Алису, Siri, Google Assistant, а про Alexa нет. Это как сравнивать Android и Symbian и забыть про iOS.
Alexa - главный конкурент Google. Как показывает продакшн, пользователей у нее значительно больше. Комьюнити сильно больше. Документации больше. Да и самих скиллов тоже заметно больше.
Кстати, я бы не стал подход Алисы называть автомобилем. Двухколесная повозка на ослиной тяге, это максимум. По сравнению с Google Actions и Alexa, там все совсем плохо. Парсить руками string"и в 2018 году звучит как дикость.
Как ты думаешь, почему аудитория у Alexa намного больше?
Мне кажется, это из-за того, что Google позже вступил в игру. Очень мало вкладывается в рекламу. Хотя судя по тому, что ассистент есть или может быть установлен почти на каждом Android устройстве, они могли бы стать популярней.
В чем особенности Alexa?
В Alexа удобно работать с состоянием в рамках сессии. Например, ты просишь включить свет в ванной. Получается Intent «Включить свет», а entity - ванная. Затем ты говоришь: «Выключить». И вот тут нам пригодится контекст внутри сессии. Во время обработки интента мы можем выставить состояние «bathroom» и использовать его при получении следующих интентов. У Google есть Follow-up интенты, отвечающие аналогичным целям, но они не такие гибкие.
У Alexa явно говорится, как установить скиллы. Это знакомый пользователю подход - магазин скиллов. У Google скилы ставятся автоматически.
Review процесс очень строгий на обеих платформах. Ревьюверы следят, чтобы каждый response заканчивался точкой, чтобы взаимодействие с пользователем выглядело натурально, для этого у каждой платформы есть свои гайдлайны, чтобы не было грамматических ошибок, даже в описании, а текста там очень много. Ревью от Amazon обычно занимало 2-3 дня, в Google справились за 1 день.
Сама разработка Google Actions показалось более простой: захостил на Firebase action, подключил его в 2 клика, и вот у тебя уже все готово к разработке. Если ты хочешь делать запросы наружу, нужно платить. Если будешь обращаться только к сервисам Google, то можно и бесплатно. AWS, ввиду большей загруженности, выглядит запутанней.
После недавнего появления в публичном доступе «Алисы» — ассистента от Яндекс, русскоязычные пользователи дружно бросились сравнивать наше чудо технической мысли c западной коллегой и конкуренткой – «Siri» от Apple.
Забегая на перед скажем, что результаты сравнения получились неоднозначными, и раз и навсегда выяснить кто умнее, не вышло. Впрочем, тем интереснее будет понаблюдать за их соперничеством в долгосрочном периоде. Ну а теперь обратимся к результатам проведенных тестов и взглянем на возможности отечественного помощника.
Зачем вообще нужен голосовой помощник?
Любой голосовой ассистент представляет из себя кухонный комбайн, выполняющий функции навигатора, источника информации или собеседника, а ко всему прочему он еще и разговаривает приятным женским голосом. С помощью данного инструмента можно получать ответы на любые интересующие вас вопросы, советы касаемо разнообразных локаций и мест, мероприятий и так далее.
Где взять это чудо?
Чтобы свой помощник был и у вас, следует установить на смартфон приложение Яндекс.Алиса , поддерживаются операционные системы Android и iOS. Персональные компьютеры на базе Windows так же не остались обделенными, но на этой платформе еще продолжается бета-тестирование ассистента.
Чем отличается Сири от Алисы?
Алиса смотрится заведомо выигрышнее при взаимодействии с приложениями за авторством Яндекса, но в ближайшем будущем эта нейросеть освоит продукты других компаний и расширит на них свой функционал — некоторые социальные сети (в частности ВК) доступны уже сейчас.
Главное отличие – Сири является привилегий владельцев iPhone, а наша Алиса доступна всем. С технологической точки зрения Алиса, конечно, стала шагом вперед – это полноценная нейросеть, способная к импровизации и развитию, в отличии от Сири, имеющей заранее прописанные ответы. Зато Сири вызывается фразой из любого состояния смартфона, а вот для работы с Алисой потребуется открывать соответствующее приложение.
Правда, на деле это пока скорее оптимистичные прогнозы, нежели реальное положение дел – Алиса пока не особенно восприимчива к формулировкам вопросов, а потому отвечает шаблонно. В основе же распознавания человеческой речи у Алисы лежит технология SpeechKit.
С точки зрения удобства и широты функционала на сегодняшний день Сири пока впереди – Алиса не способна ни завести будильник, ни вызвать экстренную службу, чего ощутимо не хватает при работе с помощником.
Тестирование запросов
Нет лучшего способа проверить конкурентные преимущества обоих ассистентов, нежели сравнить их в боевых условиях на примере реальных запросов. Как уже было отмечено, Алиса пока не всегда справляется с элементарными запросами, связанными с функционалом смартфона.
Информационные запросы в целом оказались по силам обеим дамам.
Если вас интересует личное мнение ассистента, то Алиса тут имеет преимущество – у нее оно есть, Сири же способна только предоставить мнение из интернета.
В качестве навигатора Алиса так же выглядит предпочтительнее, но это не удивительно – общий родитель с Яндекс.Картами явно уделил этому аспекту немало внимания.
Алиса умеет самостоятельно пересказывать новости, мы видим результаты деятельности нейросети, Сири традиционно сбрасывает нам статью из интернета.
В общем, несмотря на отсутствие возможности выполнения базовых функций, с которыми справляется Сири, Алисе все же есть чем удивить и порадовать. Так же не забывайте, что Алису можете обучать лично вы, а потому не ленитесь проголосовать за качество ответа, когда сервис вас попросит.
Промежуточные итоги
На сегодняшний день делать окончательные выводы не разумно, Алиса только начала свое развитие, ежедневно агрегируя тысячи запросов, в то время как Сири уже давно обжилась на рынке. Пока стоит отметить, что Алиса хорошо прикидывается самостоятельной личностью, довольно неплохо способна поддерживать разговор и сносно сотрудничать с сервисами Яндекс, но многие простые запросы ей пока не по зубам или она выполняет их далеко не с первой попытки. Siri в этом плане значительно функциональнее, но обычно за пределами простых задач выглядит глуповатой, а порой и немало раздражает.
Владельцы iPhone могут делать выбор в пользу того или иного ассистента, а могут вовсе использовать оба, остальным же остается надеяться на то, что Алиса со временем нарастит интеллектуальные мускулы и сможет не только прикидываться милой болтушкой, но и действительно помогать своему владельцу. С другой стороны, у Сири для выполнения этой задачи было гораздо больше времени, а результаты минимальные, потому в успехе Алисы заинтересованы все, включая самых яростных адептов яблочной компании.
Если Вы это читаете, значит Вам было интересно, поэтому пожалуйста подпишитесь на наш канал на , ну и за одно поставьте лайк (палец вверх) за труды. Спасибо!
Подписывайтесь на наш Телеграм @mxsmart .