Добавлен: 29.11.2023
Просмотров: 320
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
1 ОБЗОР И СРАВНИТЕЛЬНЫЙ АНАЛИЗ СРЕДСТВ ДЛЯ РАЗРАБОТКИ СЕРВИСА
Преимущества и применение чат-ботов в бизнесе
Выбор программного обеспечения для разработки чат-бота
Описание деятельности компании АО «ПФ СКБ «Контур»
Описание бизнес-процесса AS-IS
Разработка ИТ-проекта по внедрению чат-бота в компанию СКБ Контур
Практическая реализация чат-бота на языке программирования Pyhton
Моделирование алгоритма работы программы в соответствии с требованиями ГОСТ 19.701-90
полноценного чат-бота.
Viber присутствует во всем мире, и многие крупные бренды начали использовать его для общения с клиентами. Хотя представители компании говорят, что у мессенджера есть около одного миллиарда уникальных пользователей по всему миру, некоторые сторонние исследования показывают, что 260 миллионов являются более вероятными.
Как и в случае с Telegram, Viber не имеет ограничений API, как в случае с WhatsApp. Напротив, Viber предлагает некоторые довольно изящные функции, которых нет у других мессенджеров. Например, можно полностью отрисовать собственный дизайн кнопок, обоев и пр.
Примеры иностранных viber-ботов: Mica, Tech Talk, Queen.gr.
Facebook Messenger насчитывает 1,3 миллиарда пользователей и более 100 000 активных ботов. Каждый день эти боты собирают данные, рекомендуют продукты, принимают заказы и оказывают поддержку пользователям.
Пользователи могут отвечать с помощью текста, смайликов, GIF- файлов, изображений, аудио, видео, а также перетаскивать чат-роботов в групповые чаты.
Хотя Facebook Messenger имеет широкий спектр инструментов и функций, он не имеет команд в виде кнопок, что удивительно и неудобно. Кроме того, ограничения на отправку сообщений в Facebook Messenger могут рассматриваться рекламодателями как неудобство.
Примеры иностранных брендов, которые используют чат-боты в Facebook Messenger: Kindred Bravely, Spotify, TechCrunch.
API для этого мессенджера платный, а возможность платить за него не гарантирует доступ. Кроме того, чат-боты в этом
приложении основаны на принципе отправки сообщений (нет никаких команд в виде кнопок). Фактически, это не чат-бот в классическом смысле этого слова, а платформа для автоматических сообщений и мгновенных приветствий. Все это делает WhatsApp наименее популярной платформой для запуска чат-бота. Мессенджер является относительно новичком в области чат- ботов, решения внедряются медленно, поэтому невозможно предсказать, когда появятся новые функции и произойдет ли это вообще.
Примеры зарубежных роботов Whatsapp: KLM Royal, RedBus, Sabrina.
По рассмотренным характеристикам можно сделать вывод, что сейчас существует два самых интересных, имеющих много функций и возможностей мессенджера – это Telegram и Facebook Messenger, но так как данный проект необходимо сделать для компании СКБ Контур, то для реализации проекта
выбирается мессенджер Telegram, так как он широко распространен в кругах компании, что нельзя сказать про второй вариант.
Для хранения данных, которые необходимы для корректной работы чат- бота была выбрана база данных SQLite.
SQLite — это компактная интегрированная реляционная база данных. Исходный код библиотеки был передан в общественное достояние. Это чисто реляционная база данных [61].
Поддерживаемые типы данных [62]:
Преимущества:
Недостатки:
таблицах в соответствии с привилегиями, но у SQLite такой функции нет.
В данном подразделе была представлена база данных, необходимая для работы чат-бота, было рассмотрено её понятие, преимущества и недостатки.
В этом разделе были рассмотрены общие понятия чат-бота, показаны функции, приведена классификация всех существующих на данный момент чат- ботов. Также были показаны преимущества использования мессенджеров в бизнесе и где применяются и в каких компаниях чат-боты. Далее был проведен выбор программного обеспечения для реализации чат-бота, по результатам которого, были выбраны следующие средства: язык программирования Python, текстовый редактор Sublime Text, мессенджер Telegram и база данных SQL Lite. В результате проведения анализа и статистики по выбору языка программирования для разработки чат-бота была написана и опубликована статья в сборнике докладов международной конференции студентов и молодых ученых «Весенние дни науки», индексируемом в РИНЦ. Также данная статья была доработана и переведена на английский язык и принята к публикации в журнале «AIP Conference Proceedings», индексируемом в Scopus.
Из первой главы мы выяснили, что язык программирования Python хорошо подойдет для написания чат-бота для мессенджера Telegram. Рассмотрим библиотеки данного языка необходимые для написания чат-бота.
Модуль random предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности [34].
Модуль datetime предоставляет
классы для обработки времени и даты разными способами. Поддерживается и стандартный способ представления времени, однако больший упор сделан на простоту манипулирования датой, временем и их частями [35].
JSON (JavaScript Object Notation) - простой формат обмена данными, основанный на подмножестве синтаксиса JavaScript. Модуль json позволяет кодировать и декодировать данные в удобном формате [36].
Time - модуль для работы со временем в Python [37].
Модуль SqlLite3. SQLite – это автономный, работающий без сервера транзакционный механизм базы данных SQL. Python получил модуль sqlite3 в версии 2.5, что позволяет создавать базу данных SQLite в любой настоящей версии Python, без необходимости скачивания дополнительных инструментов [38].
Модуль telebot необходим для создания и подключения чат-бота.
Urllib — это модуль Python, который можно использовать для открытия URL-адресов. Он определяет функции и классы для обработки URL-адресов [39]. Модуль messagebox предоставляет базовый класс шаблона, а также множество удобных методов для часто используемых конфигураций. Поля сообщений являются модальными и будут возвращать подмножество (True,
False, OK, None, Yes, No) на основе выбора пользователя [40].
Requests — это модуль Python, который можно использовать для отправки всех видов HTTP-запросов. Это простая в использовании библиотека с множеством функций, от передачи параметров в URL до отправки пользовательских заголовков и проверки SSL [41].
Модуль sys обеспечивает
-
Чат-бот в Viber:
Viber присутствует во всем мире, и многие крупные бренды начали использовать его для общения с клиентами. Хотя представители компании говорят, что у мессенджера есть около одного миллиарда уникальных пользователей по всему миру, некоторые сторонние исследования показывают, что 260 миллионов являются более вероятными.
Как и в случае с Telegram, Viber не имеет ограничений API, как в случае с WhatsApp. Напротив, Viber предлагает некоторые довольно изящные функции, которых нет у других мессенджеров. Например, можно полностью отрисовать собственный дизайн кнопок, обоев и пр.
Примеры иностранных viber-ботов: Mica, Tech Talk, Queen.gr.
-
Чат-бот в Facebook Messenger:
Facebook Messenger насчитывает 1,3 миллиарда пользователей и более 100 000 активных ботов. Каждый день эти боты собирают данные, рекомендуют продукты, принимают заказы и оказывают поддержку пользователям.
Пользователи могут отвечать с помощью текста, смайликов, GIF- файлов, изображений, аудио, видео, а также перетаскивать чат-роботов в групповые чаты.
Хотя Facebook Messenger имеет широкий спектр инструментов и функций, он не имеет команд в виде кнопок, что удивительно и неудобно. Кроме того, ограничения на отправку сообщений в Facebook Messenger могут рассматриваться рекламодателями как неудобство.
Примеры иностранных брендов, которые используют чат-боты в Facebook Messenger: Kindred Bravely, Spotify, TechCrunch.
-
Чат-бот в WhatsApp:
API для этого мессенджера платный, а возможность платить за него не гарантирует доступ. Кроме того, чат-боты в этом
приложении основаны на принципе отправки сообщений (нет никаких команд в виде кнопок). Фактически, это не чат-бот в классическом смысле этого слова, а платформа для автоматических сообщений и мгновенных приветствий. Все это делает WhatsApp наименее популярной платформой для запуска чат-бота. Мессенджер является относительно новичком в области чат- ботов, решения внедряются медленно, поэтому невозможно предсказать, когда появятся новые функции и произойдет ли это вообще.
Примеры зарубежных роботов Whatsapp: KLM Royal, RedBus, Sabrina.
По рассмотренным характеристикам можно сделать вывод, что сейчас существует два самых интересных, имеющих много функций и возможностей мессенджера – это Telegram и Facebook Messenger, но так как данный проект необходимо сделать для компании СКБ Контур, то для реализации проекта
выбирается мессенджер Telegram, так как он широко распространен в кругах компании, что нельзя сказать про второй вариант.
-
База данных для чат-бота
Для хранения данных, которые необходимы для корректной работы чат- бота была выбрана база данных SQLite.
SQLite — это компактная интегрированная реляционная база данных. Исходный код библиотеки был передан в общественное достояние. Это чисто реляционная база данных [61].
Поддерживаемые типы данных [62]:
-
NULL: значение NULL. -
INTEGER: целое число со знаком, хранящееся в 1, 2, 3, 4, 6 или 8 байтах. -
REAL: число с плавающей запятой, хранящееся в 8-байтовом формате IEEE. -
TEXT: текстовая строка, закодированная UTF-8, UTF-16BE или UTF-16LE. -
BLOB: тип данных, хранящихся в той же форме, в которой они были получены.
Преимущества:
-
Файловая: вся база данных хранится в одном файле, что облегчает перемещение. -
Стандартизированная: SQLite использует SQL. -
Отлично подходит для разработки и даже тестирования: на этапе разработки большинству требуется масштабируемое решение. SQLite с его богатым набором функций может предоставить более чем достаточную функциональность, а также быть достаточно простым для работы с одним файлом и связанной библиотекой.
Недостатки:
-
Отсутствие пользовательского управления: продвинутые БД предоставляют пользователям возможность управлять связями в
таблицах в соответствии с привилегиями, но у SQLite такой функции нет.
-
Невозможность дополнительной настройки: SQLite нельзя сделать более производительной.
В данном подразделе была представлена база данных, необходимая для работы чат-бота, было рассмотрено её понятие, преимущества и недостатки.
- 1 2 3 4 5 6 7 8 9 ... 16
Результаты и выводы
В этом разделе были рассмотрены общие понятия чат-бота, показаны функции, приведена классификация всех существующих на данный момент чат- ботов. Также были показаны преимущества использования мессенджеров в бизнесе и где применяются и в каких компаниях чат-боты. Далее был проведен выбор программного обеспечения для реализации чат-бота, по результатам которого, были выбраны следующие средства: язык программирования Python, текстовый редактор Sublime Text, мессенджер Telegram и база данных SQL Lite. В результате проведения анализа и статистики по выбору языка программирования для разработки чат-бота была написана и опубликована статья в сборнике докладов международной конференции студентов и молодых ученых «Весенние дни науки», индексируемом в РИНЦ. Также данная статья была доработана и переведена на английский язык и принята к публикации в журнале «AIP Conference Proceedings», индексируемом в Scopus.
-
ОПИСАНИЕ МЕТОДОЛОГИИ РАЗРАБОТКИ СЕРВИСА
-
Python как средство разработки чат-бота
-
-
Необходимые модули для разработки сервиса
Из первой главы мы выяснили, что язык программирования Python хорошо подойдет для написания чат-бота для мессенджера Telegram. Рассмотрим библиотеки данного языка необходимые для написания чат-бота.
Модуль random предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности [34].
Модуль datetime предоставляет
классы для обработки времени и даты разными способами. Поддерживается и стандартный способ представления времени, однако больший упор сделан на простоту манипулирования датой, временем и их частями [35].
JSON (JavaScript Object Notation) - простой формат обмена данными, основанный на подмножестве синтаксиса JavaScript. Модуль json позволяет кодировать и декодировать данные в удобном формате [36].
Time - модуль для работы со временем в Python [37].
Модуль SqlLite3. SQLite – это автономный, работающий без сервера транзакционный механизм базы данных SQL. Python получил модуль sqlite3 в версии 2.5, что позволяет создавать базу данных SQLite в любой настоящей версии Python, без необходимости скачивания дополнительных инструментов [38].
Модуль telebot необходим для создания и подключения чат-бота.
Urllib — это модуль Python, который можно использовать для открытия URL-адресов. Он определяет функции и классы для обработки URL-адресов [39]. Модуль messagebox предоставляет базовый класс шаблона, а также множество удобных методов для часто используемых конфигураций. Поля сообщений являются модальными и будут возвращать подмножество (True,
False, OK, None, Yes, No) на основе выбора пользователя [40].
Requests — это модуль Python, который можно использовать для отправки всех видов HTTP-запросов. Это простая в использовании библиотека с множеством функций, от передачи параметров в URL до отправки пользовательских заголовков и проверки SSL [41].
Модуль sys обеспечивает