Гид по технологиям

Как создать чат‑бота доставки пиццы на Google Dialogflow

8 min read Чатботы Обновлено 02 Apr 2026
Чат‑бот доставки пиццы на Google Dialogflow
Чат‑бот доставки пиццы на Google Dialogflow

Что такое Google Dialogflow — простое объяснение

Google Dialogflow — это платформа для создания чат‑ботов и голосовых агентов с поддержкой Natural Language Understanding (NLU). NLU — это способность системы понимать смысл фраз пользователя. Dialogflow позволяет проектировать диалоги, выделять параметры (имя, e‑mail, адрес), связывать действия и выдавать ответы.

Ключевые элементы Dialogflow:

  • Агент — общий контейнер для логики чат‑бота.
  • Интенты — сценарии или категории общения (например, «Заказать пиццу»).
  • Сущности — типы данных, которые нужно распознать (размер, начинка, адрес).
  • Параметры — конкретные значения, извлечённые из фразы пользователя.

Pizza Delivery through Food Delivery Application

ALT: Иллюстрация процесса доставки пиццы через приложение для заказа еды — курьер приносит коробку пиццы к двери.

Когда Dialogflow подходит и когда нет

Важно понимать границы применения:

  • Подходит, если нужен текстовый или голосовой интерфейс с предсказуемыми ветвлениями и формами заказа.
  • Не подходит, если требуется абсолютная генеративная свобода и творческое творчество без ограничений — для этого нужны другие модели и архитектуры.

Примечание: Dialogflow хорош для быстрых MVP и интеграций с веб‑виджетом, мессенджерами и голосовыми ассистентами.

Шаг 0 — Подготовка: что потребуется

  • Google‑аккаунт.
  • Базовое понимание терминов: «агент», «интент», «сущность». (Определение: интенция — цель высказывания пользователя.)
  • Список вариантов размеров, начинок и типов коржей.
  • URL сайта для интеграции или локальная папка для тестирования.

Как построить чат‑бота для доставки пиццы — пошаговая инструкция

Следуйте этой последовательности, чтобы создать простого бота Yummeteria, который соберёт имя, e‑mail, телефон, адрес и параметры пиццы (размер, начинка, корж).

  1. Перейдите в Dialogflow и авторизуйтесь под своим Google‑аккаунтом.
  2. Примите условия и нажмите «Create Agent». Агент — это ваш чат‑бот целиком.

Create agent page on Google Dialogflow

ALT: Страница создания нового агента в Google Dialogflow с полями для имени и языка агента.

  1. Введите имя агента и нажмите «Create». Учтите: в имени нельзя использовать пробелы.

Enter name of the agent and click create

ALT: Поле для ввода имени агента и кнопка создания агента в интерфейсе Dialogflow.

  1. Перейдите в раздел «Intents» и создайте новый интент. Интент описывает цель клиента. По умолчанию есть Welcome‑intent — он приветствует пользователя.

Create intent on Google Dialogflow

ALT: Список интентов в Dialogflow с кнопкой для создания нового интента.

  1. Дайте интенту название, затем добавьте Training Phrases — примеры фраз, которые пользователь может сказать.

Add Training Phrases to Intent of Bot

ALT: Интерфейс добавления обучающих фраз в интент Dialogflow.

  1. Примеры фраз для заказа: “Order Pizza”, “I want a Pizza”, “I want to order a Pizza.” — добавляйте вариативные формулировки и опечатки.

Add Training Phrases to Intent of Bot for ordering Pizza

ALT: Добавление фраз пользователя для интенции заказа пиццы в Dialogflow.

  1. Чтобы распознавать e‑mail, в поле «Add user expression» введите пример вида sampleemail@domainname.com, выделите его и назначьте тип @sys.email.

Select email format for the intent of bot

ALT: Выбор системной сущности @sys.email для распознавания адреса электронной почты.

  1. Сохраните интент. Внизу в секции Action and parameters отметьте параметр email и задайте подсказки (prompts), которые бот будет использовать, если пользователь не дал e‑mail.

Filling email action and parameter field

ALT: Настройка параметров и подсказок для поля электронной почты в интенте Dialogflow.

  1. Добавьте тексты подсказок, которые бот будет задавать при валидации e‑mail.

Adding prompts for email

ALT: Примеры фраз‑подсказок для запроса электронной почты у клиента.

  1. Повторите шаги для имени, телефона и адреса: используйте @sys.given-name, @sys.phone-number, @sys.address соответственно.

  2. Создайте сущности (Entities) для опций пиццы: Size, Topping, Base и т.д. Сущности помогают выделять значения из фраз.

Creating entity to pizza bot

ALT: Экран создания новой сущности в Dialogflow, где задаются варианты значений.

  1. Пример: сущность Size со значениями Regular, Small, Medium, Large, Monster. Сохраните и создайте сущности для Topping и Base.

Add sizes of pizza

ALT: Список размеров пиццы, добавленных как значения сущности Size.

  1. Вернитесь в Intents и добавьте Training Phrases, в которых подставляйте созданные сущности. При выделении слова укажите тип сущности, например @size.

Add size to the intent

ALT: Пример привязки выделенной части фразы к сущности размера пиццы.

  1. Отметьте все обязательные параметры и настройте порядок вопросов. Порядок можно сортировать перетаскиванием.

  2. В разделе Responses задайте текст ответа‑подтверждения. Для подстановки параметров используйте знак $ (например, $size). Это будет финальным подтверждением заказа.

Adding the Text Response on Order of Pizza

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

  1. Нажмите иконку Settings рядом с именем агента, обновите описание и укажите URL изображения — это станет аватаром бота. При желании смените отображаемое имя.

Adding Avatar and Description to Bot

ALT: Настройки агента, где можно добавить описание и ссылку на изображение для аватара бота.

Поздравляем — базовый бот готов для интеграции и тестирования.

Импорт/Экспорт агента

Полный проект доступен в репозитории GitHub в виде ZIP‑архива. Чтобы импортировать: откройте Settings агента → Export and Import → Import from Zip и загрузите архив.

Интеграция Dialogflow‑бота на сайт

  1. В меню слева выберите Integrations и в разделе Text Based включите Dialogflow Messenger.

Dialogflow Messenger Beta

ALT: Раздел интеграций Dialogflow с опцией Dialogflow Messenger для встраивания виджета.

  1. Нажмите Enable.
  2. Скопируйте предложенный скрипт и вставьте в вашей страницы.

Пример локального тестирования виджета

  1. Создайте файл index.html и вставьте базовую разметку. Пример:
  
  
      
  
  

  
  
  
  1. Запустите локальный сервер. Один из простых способов — Python:
python3 -m http.server 9000

Откройте http://localhost:9000/index.html и проверьте работу виджета.

Chatbot Preview in Website

ALT: Предпросмотр чат‑виджета Dialogflow на веб‑странице в исходном виде.

Default Chatbot Integration Preview

ALT: Окно стандартной интеграции чат‑бота Dialogflow в правом нижнем углу веб‑страницы.

  1. Чтобы кастомизировать внешний вид, вставьте CSS‑правила в секцию . Dialogflow Messenger поддерживает ряд CSS‑переменных (цвета, шрифты, форма пузырьков). Пример простого правила:

Customised Website Chatbot Integration

ALT: Вариант виджета Dialogflow после применения кастомных цветов и стиля.

Тестирование и приёмка

Критерии приёмки

  • Бот корректно распознаёт e‑mail, телефон и адрес в 95% типичных примеров (оценка вручную при тестировании).
  • Последовательность вопросов соответствует заданной логике заказа.
  • Функция подтверждения заказа выводит все собранные параметры.
  • Виджет корректно загружается в браузерах Chrome, Firefox, Edge на мобильных и десктопах.

Тест‑кейсы / Acceptance criteria

  • При вводе валидного e‑mail он сохраняется как параметр и не запрашивается повторно.
  • Если пользователь пропустил поле, бот задаёт подсказку (prompt).
  • При выборе размера и начинки все значения подставляются в ответ‑подтверждение.
  • При доступе с мобильного виджет адаптирован под ширину экрана.

Роли и чек‑листы при развертывании

Роль: Продукт‑менеджер

  • Подготовить список сценариев пользователя.
  • Утвердить набор сущностей (размеры, начинки, дополнительные опции).
  • Провести UX‑тесты с живыми пользователями.

Роль: Разработчик

  • Создать агента в Dialogflow.
  • Настроить импорты/экспорты и CI для версии агента.
  • Встроить скрипт виджета на прод‑сайте.

Роль: Дизайнер

  • Подготовить аватар бота и цвета фирменного стиля.
  • Настроить CSS‑переменные Dialogflow Messenger.

Роль: Саппорт/Оператор

  • Проверить тексты подсказок и ответы на частые вопросы.
  • Настроить эскалацию на живого оператора, если бот не справляется.

Безопасность и приватность (GDPR и общие рекомендации)

Important: бот собирает персональные данные (e‑mail, телефон, адрес). Обязательно учесть следующее:

  • Укажите в политике конфиденциальности, какие данные собираются и как они используются.
  • Минимизируйте хранение: сохраняйте только необходимые поля и ограничьте срок хранения.
  • Если вы работаете с пользователями в ЕАЭС/ЕС, получите согласие на обработку персональных данных.
  • Защитите экспорт данных и доступ к проекту Dialogflow через MFA и роль‑базированный доступ.
  • Внешние интеграции (CRM, база заказов) должны передавать данные по HTTPS и иметь аудит логов.

Замечание: Dialogflow может сохранять логи разговоров по умолчанию. Проверьте настройки логирования и при необходимости отключите или анонимизируйте чувствительные поля.

Когда бот может ошибаться — типичные случаи и mitigations

Контрпримеры / Когда это не сработает

  • Пользователь пишет длинную композицию с несколькими запросами в одном сообщении — бот может неверно разделить намерения.
  • Нестандартные форматы адресов или телефонов — расширьте сущности примерами из целевого региона.
  • Языковые диалекты и опечатки — добавляйте вариативные фразы в Training Phrases.

Меры по снижению ошибок

  • Добавляйте примеры с опечатками и разговорными фразами в training phrases.
  • Настройте fallback‑интент с эскалацией на оператора.
  • Введите валидацию полей и дополнительные подсказки при некорректном вводе.

Альтернативные подходы

Если Dialogflow не подходит, рассмотрите:

  • Rasa — self‑hosted решение с открытым исходным кодом и полной приватностью данных.
  • Microsoft Bot Framework — если инфраструктура уже на Azure.
  • Гибрид: использовать генеративную модель для свободного диалога и Dialogflow для формальных действий.

Методология быстрой итерации (мини‑метод)

  1. Собрать минимальные сущности и интенты для 80% сценариев (MVP).
  2. Запустить на небольшой группе пользователей (N=10–30).
  3. Собрать разговорные логи, проанализировать ошибки и добавить 10–20 новых training phrases.
  4. Повторять цикл каждые 1–2 недели.

SOP для производства — краткий план действий

  1. Версионирование агента: экспортируйте ZIP перед каждым релизом.
  2. Тестирование в staging‑окружении с тестовыми заказами.
  3. Проверка доступности виджета и времени отклика.
  4. Перекат в прод только после прохождения приёмочных тестов.
  5. Мониторинг логов и метрик (частота fallback, среднее время завершения заказа).

Частые вопросы (FAQ)

Как импортировать готовый агент из GitHub?

Откройте Settings агента → Export and Import → Import from Zip → выберите архив и нажмите Import.

Как тестировать локально виджет Dialogflow Messenger?

Создайте index.html с вставленным скриптом и запустите локальный сервер (например, python3 -m http.server 9000). Откройте страницу в браузере.

Можно ли подключить бот к Telegram или Facebook Messenger?

Да. Dialogflow поддерживает множество интеграций: Telegram, Facebook Messenger, Slack, Google Assistant и т.д. Настройка выполняется в разделе Integrations.

Как обезопасить хранение персональных данных?

Ограничьте логирование, используйте HTTPS, включите контроль доступа в Google Cloud, обновите политику конфиденциальности и получите согласие пользователей.

Краткое резюме

  • Dialogflow позволяет быстро собрать чат‑бота для заказа пиццы без кодирования.
  • Создайте интенты, сущности и параметры — затем протестируйте локально и встроите виджет.
  • Обратите внимание на безопасность данных и настройку валидации.

Итог: начните с малого, итеративно расширяйте список фраз и сущностей, и не забывайте про приватность пользователей.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как копировать формулы в Excel эффективно
Excel

Как копировать формулы в Excel эффективно

Фокус на iPad — настройка и лучшие практики
iPad

Фокус на iPad — настройка и лучшие практики

Защитить домашний Wi‑Fi: как не дать соседям воровать интернет
Безопасность сети

Защитить домашний Wi‑Fi: как не дать соседям воровать интернет

Профессиональный баннер LinkedIn в Canva
Дизайн

Профессиональный баннер LinkedIn в Canva

Spotify Wrapped 2024 — как посмотреть и что нового
Музыка

Spotify Wrapped 2024 — как посмотреть и что нового

Проверка отправителей в Gmail против фишинга
Безопасность

Проверка отправителей в Gmail против фишинга