Открыть сервис

Google Dialogflow

Google Dialogflow — это облачная платформа для разработки диалоговых интерфейсов, предоставляемая компанией Google (входит в холдинг Alphabet Inc.). Платформа позволяет создавать чат-ботов, голосовых ассистентов и другие интерактивные системы, способные понимать естественный язык пользователей и вести с ними осмысленный диалог. Dialogflow относится к классу инструментов для построения разговорного искусственного интеллекта (Conversational AI).

История

Платформа была основана под названием Speaktoit в 2010 году. В 2014 году компания запустила продукт API.AI, который позволял разработчикам интегрировать обработку естественного языка в свои приложения. В 2016 году API.AI была приобретена компанией Google за сумму, по разным оценкам, от 30 до 100 миллионов долларов США. После приобретения продукт был переименован в Google Cloud Dialogflow и интегрирован в экосистему облачных сервисов Google Cloud Platform.

В 2017 году была выпущена версия Dialogflow Enterprise Edition, ориентированная на корпоративных клиентов и предоставляющая расширенные возможности масштабирования, безопасности и поддержки. В 2019 году Google представила Dialogflow CX (Customer Experience) — новую версию платформы, предназначенную для создания сложных, многоэтапных диалоговых систем с развитой логикой. В 2020 году была выпущена версия Dialogflow ES (Essentials), которая стала преемником базовой версии Enterprise Edition. На 2024 год обе версии (ES и CX) активно развиваются и поддерживаются.

Архитектура и принципы работы

Dialogflow использует комбинацию методов машинного обучения и правил для понимания намерений пользователя и извлечения значимой информации из его высказываний.

Агент (Agent)

Агент — это основная сущность в Dialogflow, представляющая собой конкретного чат-бота или голосового ассистента. Каждый агент имеет свою конфигурацию, набор намерений, сущностей и логику диалога. Агент может быть настроен для работы с одним или несколькими языками.

Намерение (Intent)

Намерение — это центральный элемент логики Dialogflow. Оно представляет собой цель или действие, которое пользователь хочет выполнить (например, «заказать пиццу», «узнать погоду», «поздороваться»). Каждое намерение содержит:

  • Обучающие фразы (Training phrases): примеры того, как пользователь может выразить данное намерение (например, «Привет», «Здравствуйте», «Добрый день» для намерения «Приветствие»).
  • Ответы (Responses): текст, который бот отправит пользователю при активации намерения. Ответы могут быть статическими или динамическими (с использованием переменных).
  • Действия (Actions): параметры, которые передаются в приложение или вебхук для выполнения бизнес-логики.

Сущность (Entity)

Сущность — это механизм для извлечения конкретных данных из высказывания пользователя. Сущности бывают:

  • Системные (System entities): предопределённые Google, например, даты, время, числа, адреса электронной почты, названия валют.
  • Пользовательские (Custom entities): создаются разработчиком для специфических нужд, например, названия товаров, типы услуг, имена клиентов.
  • Маппинговые (Mapping entities): позволяют сопоставлять различные варианты написания одного понятия (например, «Москва», «МСК», «столица»).

Контекст (Context)

Контексты используются для управления состоянием диалога и обеспечения связности разговора. Они позволяют боту «помнить», о чём говорилось ранее, и переходить между намерениями в зависимости от истории общения. Контексты бывают входными (активирующими намерение) и выходными (устанавливаемыми после выполнения намерения).

Вебхук (Webhook)

Вебхук — это механизм, позволяющий Dialogflow вызывать внешний сервер для выполнения сложной логики, обращения к базам данных, API сторонних сервисов или выполнения вычислений. Вебхук принимает JSON-запрос с информацией о распознанном намерении и извлечённых сущностях и возвращает JSON-ответ с текстом для пользователя или командами для выполнения.

Версии платформы

Dialogflow ES (Essentials)

Dialogflow ES — это базовая версия платформы, предназначенная для создания простых и средних по сложности диалоговых систем. Она проста в освоении и подходит для небольших проектов, прототипов и стандартных сценариев (например, FAQ-боты, простые заказы). ES использует линейную модель диалога, где намерения активируются на основе текущего контекста.

Dialogflow CX (Customer Experience)

Dialogflow CX — это продвинутая версия, ориентированная на создание сложных, многоэтапных диалоговых систем с разветвлённой логикой. CX использует модель на основе графов состояний (state machines), что позволяет визуально проектировать сложные сценарии, включающие ветвления, циклы, переходы между состояниями и параллельные потоки. CX поддерживает:

  • Страницы (Pages): состояния диалога, каждое из которых имеет свои намерения и обработчики.
  • Потоки (Flows): независимые подсистемы диалога, которые могут быть объединены в один агент.
  • Маршрутизация (Route groups): механизмы для переиспользования логики между разными страницами.
  • Версионирование: возможность сохранять и откатывать изменения.

Интеграции

Dialogflow поддерживает интеграцию с множеством платформ и сервисов, что позволяет развёртывать созданных ботов на различных каналах связи:

  • Голосовые ассистенты: Google Assistant, Amazon Alexa, Microsoft Cortana (через API).
  • Мессенджеры: Telegram, Facebook (продукт Meta, признанной экстремистской и запрещённой в РФ) Messenger, Slack, Viber, Line, Kik.
  • Социальные сети: ВКонтакте, Twitter (через API).
  • Телефония: Twilio, Cisco, Genesys.
  • Веб-сайты: встраиваемый виджет для веб-страниц.
  • Платформы: Actions on Google, Amazon Lex, Microsoft Bot Framework.

Применение

Dialogflow используется в различных отраслях для автоматизации взаимодействия с пользователями:

  • Клиентская поддержка: автоматизация ответов на часто задаваемые вопросы, обработка запросов на возврат, замена товара.
  • Электронная коммерция: помощь в выборе товара, оформление заказа, отслеживание доставки.
  • Здравоохранение: запись на приём, напоминания о приёме лекарств, первичная консультация.
  • Финансы: проверка баланса, история операций, блокировка карты, консультации по продуктам.
  • Образование: виртуальные ассистенты для студентов, интерактивные учебные пособия.
  • Гостиничный бизнес: бронирование номеров, заказ услуг, ответы на вопросы о гостинице.

Ограничения и критика

Несмотря на широкие возможности, платформа имеет ряд ограничений:

  • Зависимость от облачной инфраструктуры Google: для работы требуется постоянное подключение к интернету, что может быть проблемой в регионах с нестабильным соединением.
  • Стоимость: для коммерческого использования, особенно в версии CX, стоимость может быть значительной при большом количестве запросов.
  • Сложность настройки сложных сценариев: хотя CX упрощает проектирование, создание действительно сложных диалогов с глубокой логикой требует значительных усилий и знаний.
  • Ограниченная поддержка русского языка: хотя Dialogflow поддерживает русский язык, качество распознавания намерений и сущностей может быть ниже, чем для английского, особенно для специфических диалектов и сленга.
  • Проблемы с конфиденциальностью: данные, обрабатываемые через Dialogflow, хранятся на серверах Google, что может вызывать опасения у компаний, работающих с чувствительной информацией.
  • Отсутствие офлайн-режима: платформа не поддерживает работу без подключения к облаку, что ограничивает её использование в некоторых сценариях.

Сравнение с альтернативами

На рынке существуют конкурирующие платформы для создания диалоговых систем:

  • Microsoft Bot Framework: открытая платформа с интеграцией в экосистему Microsoft Azure, поддерживает больше языков и имеет мощные инструменты для анализа.
  • Amazon Lex: сервис от Amazon Web Services, тесно интегрированный с Alexa и другими сервисами AWS, предлагает похожий функционал.
  • IBM Watson Assistant: платформа с акцентом на корпоративные решения и глубокую аналитику, но с более сложной настройкой.
  • Rasa: open-source фреймворк, который можно развернуть на собственных серверах, обеспечивая полный контроль над данными и конфигурацией.

Источники

  1. Официальная документация Google Cloud Dialogflow.
  2. Google Cloud Blog: объявления о выпуске Dialogflow CX и Dialogflow ES.
  3. Информация о приобретении API.AI компанией Google (TechCrunch, 2016).
  4. Документация по интеграциям Dialogflow (Telegram, Facebook Messenger, Twilio).
  5. Сравнительный анализ платформ для создания чат-ботов (Gartner, Forrester).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →