универсальный алгоритм совмещения / Хабр
Пишу модели для кейсов на Kaggle, изучаю чужие и вдохновляюсь. Все статьи с описанием того, как внедрить их в веб-проект, для меня, школьника Junior Frontend’а, дают overhead сложной инфы, я же хочу просто «позаимствовать» любую крутую модель и быстро внедрить в свой сервис. Руки зачесались придумать универсальный алгоритм, так что решение было найдено быстро.
Приступаем. 1 шаг
Я хочу взять формат большинства моделей с Kaggle, чтобы в дальнейшем было легко заимствовать чужой код любой сложности не разбираясь в нем. Бот для телеги пишем на Python 3.9, с помощью либы pyTelegramBotAPI, для решения проблемы совместимости расширений .py и .ipynb юзаем ipynb.
И так, устанавливаем зависимости:
pip install pyTelegramBotAPI
pip install ipynb
Заходим на Kaggle и выбираем понравившуюся модель. Я начну с классического кейса Titanic — Machine Learning from Disaster, заимствую это решение (Titanic Random Forest: 82.78%), перетаскиваю в проект с ботом.
Устанавливаем появившиеся зависимости:
pip install <имя>
Пилим бота. 2 шаг
Создаем новый файл и импортируем в него наши либы:
import telebot
from ipynb.fs.defs.ml import is_user_alive
В ipynb.fs.defs.ml
вместо ml впишите имя модуля, в котором находится модель, а вместо is_user_alive
имя будущей функции, которую будет эта модель реализовывать. В нашем случае она предсказывает, выживет ли пассажир.
Инициализируем бота, вставляем токен (получите его через @BotFather):
bot = telebot.TeleBot('token')
Пишем хэндлер на команду /start
, описываем в нем как юзать бота и формат ввода дынных. Чтобы его определить, изучите тестовый датасет и поэксперементируйте с вводом своих строк.
@bot.messagehandler(commands=['start'])
def welcome(message):
bot.sendmessage(message.chat.id, 'Привет! Назови Класс билета, Имя (одним словом), '
'Пол (male/female), Возраст, Прибыл ли он с супругом (1-да, 0-нет), '
'с Ребенком (1-да, 0-нет), Номер билета, его Стоимость и Порт '
'пасадки, - а я предскажу, выжил ли этот пассажир на Титанике!')
Теперь какой бы текст юзер не ввел, мы воспринимаем его как данные пассажира. Превращаем их в лист и приводим к формату тестового датасета:
@bot.messagehandler(contenttypes=['text'])
def answer(message):
bot.sendmessage(message.chat.id, 'Анализируем…')
passengerdata = message.text.split()
passengerdata.insert(0, 0)
passengerdata.insert(9, ',')
passengerdata[2] = '"', passengerdata[2], '"'
Как видите, в нашем случае в начало было необходимо добавить бесполезный айдишник, на 9е место незначащую запятую, а имя пассажира заключить в кавычки.
Модифицируем модель. 3 шаг
В файле модели поиском cntrl+f
выделяем и удаляем все разделители на ячейки
кроме первого. Переносим все импорты в начало и табаем массив кода после них. Теперь оборачиваем его в нашу функцию с аргументом в виде пользовательских данных:
<импорты>
def is_user_alive(user_data):
<весь остальной код>
Куда-нибудь в самое начало добавляем код, вписывающий в тестовый датасет наши данные:
with open(os.path.join('input', 'test.csv'), "a") as fp:
wr = csv.writer(fp, dialect='excel')
wr.writerow(user_data)
Predictions
чаще всего содержит результат работы модели (проверьте ваш случай). Так как данные пользователя содержались в конце тестового датасета, возвращаем последнюю его строку (
пишем в конце файла):
return predictions[-1]['Survived']
Допиливаем бота. 4 шаг
В функции answer
создаем переменную с результатом анализа, она будет содержать 0 или 1… в странном формате. Короче, в нашем случае необходимо ответ дополнительно перевести в числовой тип:
answer = is_user_alive(passenger_data)
if int(answer) == 1:
bot.sendmessage(message.chat.id, 'Везунчик! Видимо, этот пассажир успел на спасательную шлюпку.')
elif int(answer) == 0:
bot.send_message(message.chat.id, 'Увы, но Титаник ваш пассажир… не пережил бы.')
answer
с message
аргументом:def do_again(message):
bot.sendmessage(message.chat.id, 'Проверить живучесть кого-нибудь еще?')
Запускаем полинг:
while True:
try:
bot.polling(none_stop=True)
except ():
time.sleep(5)
Результат Все! Довольно просто, правда?
Если не очень, можешь глянуть видео версию:
Код: https://github.com/freakssha/ml-bot-titanic
Это спидран от чешущихся рук, он не оптимизированный и его можно много где улучшить, но я пока не знаю как. Если вы понимаете, как это сделать, не теряя простоты и универсальности — напишите, прошу!
GitHub, Inst, Telegram, YouTube
vk-bot-core — npm
Библиотека для создания ботов ВКонтакте на NodeJS Для получения сообщений бот использует Long Poll https://vk.com/dev/bots_longpoll
Убедитесть что у вас установлена nodejs версии 8 или выше (node -v в консоли)
Пример:
const {Core} = require('vk-bot-core')
const vk_token = "dfbf7f2edd9....cf24858f9a00"
const core = new Core(vk_token)
core.onMessage("привет алиса", `я не Алиса!`)
core.onMessage("", `Привет {first_name}, это самый простой бот, напиши мне "привет алиса"`)
core.startAsLongPoll()
API
core.on(event_name, callback) core.on(event_name, filter, callback)
- event_name – string тип события, полный типов событий можно посмотреть тут https://vk.
com/dev/groups_events
- callback — function(CallbackEvent) return string|object обработчик события, принимает CallbackEvent и возвращает строку или объект с параметрами для метода https://vk.com/dev/messages.send. Можно ничего не возвращать в этом случае пользователю ничего не будет отправленно
- filter – function(CallbackEvent) return bool фильтр событий, если функция вернет true то будет вызван callback, иначе будут проверены другие обработчики этого типа события
Обратите внимание что важен порядок объявления обработчиков событий одного типа
core.on("message_new", msg => msg.HasText("инфо"), () => `kek`)
core.on("message_new", msg => msg.HasText("инфо"), () => `pek`)
core.on("message_new", () => `pek`)
В данном случае второй обработчик никогда не будет вызван так как даже если мы пришлем сообщение с текстом «инфо» сработет фильтр у первого обрабочика и дальше обход обрабочиков не пойдет
core.
on("message_new", () => `pek`)
core.on("message_new", msg => msg.HasText("инфо"), () => `kek`)
core.on("message_new", msg => msg.HasText("инфо"), () => `pek`)
в этом случа 2 и 3 обработчик вообще никогда не будут вызваны потому что 1 обработчик не имеет фильтра, а значит получает все сообщения.
CallbackEvent
Объект с данными события, посомтреть формат объекта можно в документации (последний столбец) https://vk.com/dev/groups_events У него есть несколько вспомогательных методов:
- HasText(string|array) bool — для типов событий message_new,message_reply,message_edit вернет true если указанная строка есть в сообщении
- GetUser() object – данные пользователя от которого пришло событие, объект вида
{
"member": 1, //1 - вступил в текущее сообщество 0 - не вступил
"id": 19039187,
"first_name": "Иван",
"last_name": "Недзвецкий",
"sex": 2,
"city": { "id": 2, "title": "Санкт-Петербург" },
"country": { "id": 1, "title": "Россия" },
"photo_200": "https://pp.
userapi.com/c824602/v824602919/10b152/waP9cXWfHwU.jpg?ava=1"
}
- IsChat() bool – для типов событий message_new,message_reply,message_edit вернет true если сообщение из группового чата
- IsDirect() bool – для типов событий message_new,message_reply,message_edit вернет true если сообщение в личку сообщества (не групповой чат)
- HasMention() bool – для типов событий message_new,message_reply,message_edit вернет true если в сообщении упоменули бота. Актуально если бот получает все сообщения из беседы и надо сделать команду на @botname команда
- IsFirstMessage() bool – для типов событий message_new,message_reply,message_edit вернет true если это «первое» сообщение. Тоесть если пользователь долго не писал боту (по умолчанию час, настраивается в core.sessionTime = 1000 * 60 * 60 (миллисекунд))
- IsFirstTyping() bool – для типов событий вернет true если пользователь первый раз печатает за последний час (по умолчанию час, настраивается в core.sessionTime = 1000 * 60 * 60 (миллисекунд))
- HasAttach(type) bool – проверяет наличие прикремений указанного типа в сообщении
- HasPhoto() bool – проверяет если ли хотябы одна фотография в сообщении
- GetPhotoMaxSizeUrl() string|null – возвращает ссылку на первую фотографию в сообщении
- Button() string|null – вернет кнопку если такая была нажата
Keyboard (клавиатура)
Пример
const {Core, Keyboard, DefaultBtn, NegativeBtn, PositiveBtn, PrimaryBtn} = require('vk-bot-core')
const vk_token = "dfbf7f2edd9f481c3a2302bf5b4595067eb4eab1cdff5851802a4216e2b5e26c2cb2a2117cf24858f9a00"
const core = new Core(vk_token)
const MainKeyboard = [
[ DefaultBtn("Новости") ],
[ NegativeBtn("Топ подписчиков") ],
[ PositiveBtn("Red Bull", "bull") ],
[ PrimaryBtn("Сделай вид типа печатаешь", "typing") ]
]
core.
on("message_new", msg => msg.HasText("Новости"), () => "Сегодня ничего не произошло")
core.on("message_new", msg => msg.HasText("Топ подписчиков"), msg => `1 место ${msg.GetUser().first_name} vk.com/id${msg.GetUser().id}`)
core.on("message_new", msg => msg.Button() === "bull", () => `Muuuuuuuuuuuuuu!`)
core.on("message_new", msg => msg.Button() === "typing", async msg => {
await core.api.call("messages.setActivity", {type:"typing", peer_id:msg.peer_id})
})
core.on("message_new", msg => {
if (msg.IsFirstMessage()) {
return Keyboard("Привет", MainKeyboard)
} else {
return Keyboard("Я просто бот, вот меню", MainKeyboard)
}
})
core.start()
Keyboard(text, buttons[, one_time])
- text — string тескст сообщения (клавиатуру нельзя отправить без текста или аттачей)
- buttons — array of array of button массив с кнопками
- one_time — bool если true то клавиатура сразу пропадет после того как ползователь нажмет на кнопку, по умолчанию false
DefaultBtn(text[, payload]), NegativeBtn, PositiveBtn, PrimaryBtn
- text — string текст на кнопке
- payload — string|object
Эти 4 метода возвращают объект кнопки разных цветов
Дополнительные запросы к api
Пример вызова методов api вконтакте внутри обработчика события в даннам примере мы просто помечаем сообщение прочитанным и ничего не делаем
const {Core} = require('vk-bot-core')
const vk_token = "dfbf7f2edd9f.
...............b2a2117cf24858f9a00"
const core = new Core(vk_token)
core.on("message_new", async msg => {
await core.api.call("messages.markAsRead", {peer_id: msg.peer_id})
})
core.start()
При запуске бота
BOT FAILED: No token passed
Error: No token passed
....
Не передан, или передан пустой API ключ, проверьте строку где написано что-то такое const core = new Core(vk_token)
Error: VkApiError: groups.getById
Передан неверный API ключ, надо получить новый в настройках сообщества
BOT FAILED: VkApiError: groups.getById
Error: VkApiError: groups.getById
API ключ удалили из сообщества, надо получить новый в настройках сообщества
Во время работы бота
Error: VkApiError: messages.send
Не включены возможности бота в Управлении сообществом — Сообщения — Настройки для бота
Как создать ВК бота для сообщества
1.

Администраторам сообществ бот поможет твечать на однотипные вопросы пользователей, а также поможет развлечь их.
Интернет-магазинам бот будет отправлять актуальную информацию о статусе заказа, поможет создавать вопросы в поддержку через команды и раздавать уникальные промо-коды для каждого пользователя.
2. Возможности бота:
- Возможность открыть доступ к боту только подписчикам
- Готовые плагины для взаимодействия с аудиторией
- Массовые рассылки пользователям
- Наборы специальных ответов, отправка медиафайлов
- Возможность создать игру-квест
- Полный набор инструментов для анализа аудитории
- Один бот может работать в ВК, Facebook, Telegram
3. Как создать бота без навыков программирования?
3.1 Переходим на сайт и регистрируемся.
3.2. Выбираем ВК и нажимаем на кнопку «Подключить»
Предварительно нужно активировать в сообществе функцию «Сообщения сообщества»
3. 3 Выбираем администрируемое сообщество и жмем «Подключить»
3.4 Разрешаем приложению подключиться к группе
3.5 Внимание!
В связи с новыми правилами ВКонтакте для ботов не рекомендуется использовать настройку «Ответ неподписчику».
Выдержка из новых правил ВКонтакте:Ботам запрещено:
требовать подписку на сообщество, отметки «Нравится» и репосты;
рассылать рекламу, в том числе ссылки на аккаунты сообщества в других сервисах;
нарушать Правила пользования сайтом ВКонтакте.
3.6 В левом меню находится панель управления ботом. Выбираем «Чат-бот» > «Основное»
3.7 На этой странице можно настраивать то, что будет присылать бот пользователю на первое сообщение (здесь полезно рассказать о всех возможностях вашего бота) и на любое сообщение, ответ на который не запланирован.
И что больше всего понадобится: «ключевые слова» — можно задать слова, на которые должен отвечать бот, а также составить последовательность вопросов и ответом; «для групп Вконтакте» — сообщения, отправляемые неподписчикам (не рекомендуется использовать) и реакции на подписку/отписку; «Рассылка» — инструмент для создания массовых рассылок всем пользователям, написавшим боту.
3.8 Создадим диалог с пользователем. Для этого переходим в раздел «Ключевые слова» и жмем кнопку «Добавить»
3.9 Вводим через запятую слова, на которые должен реагировать бот, и переходим в расширенный режим и добавляем диалог, как показано на скринах.
Нажимаем «Добавить сообщение»
Нажимаете «Добавить сообщение» и добавляете текст или картинку.
4. Проверяем работоспособность бота, написав в сообщество.
Все работает, осталось продумать правильную стратегию и наполнять бота новыми знаниями и командами.
Удачи!
Фляга велосипедная Green Cycle, 600 мл (BOT-27-72)
КОД ТОВАРА: 360414
Запас воды у велосипедиста должен быть всегда, независимо от длительности поездки, поэтому фляга — необходимая вещь в арсенале каждого райдера. Фляга Firedivision от Green Cycle изготовлена из пищевого пластика, поэтому очень лёгкая и прочная. Большой сосок и изгиб вверху фляги позволяют комфортно пить воду, не опасаясь, что она разольётся. Фляга нетребовательна в уходе, её можно мыть даже в посудомоечной машине. Особенности Материал: пищевой пластик LDPE4. Объём: 600 мл.
Green Cycle
КУПИТЬ
Статус: Есть на складе
ДРУГИЕ КОМПЛЕКТАЦИИ
РАССРОЧКАОТ 17 грн/МЕС
59 грн
ДОСТАВКАКиев
ГАРАНТИЯ ВОЗВРАТА
К СРАВНЕНИЮ
В ЖЕЛАЕМЫЕ
СЛЕДИТЬ
О ТОВАРЕ ФОТО, ВИДЕО ОБЗОРЫ
ХАРАКТЕРИСТИКИ
- Цвет
- Зеленый
ОПИСАНИЕ
Запас воды у велосипедиста должен быть всегда, независимо от длительности поездки, поэтому фляга — необходимая вещь в арсенале каждого райдера.
Фляга Firedivision от Green Cycle изготовлена из пищевого пластика, поэтому очень лёгкая и прочная. Большой сосок и изгиб вверху фляги позволяют комфортно пить воду, не опасаясь, что она разольётся. Фляга нетребовательна в уходе, её можно мыть даже в посудомоечной машине.
Характеристики:
- Материал: пищевой пластик LDPE4;
- Объём: 600 мл.
Производитель: Green Cycle (Китай)
Фляга велосипедная Green Cycle, 600 мл (BOT-27-72) купить по не завышенной стоимости 129 грн в каталоге товаров для спорта terrasport.ua. Покупайте Одноместные палатки и тенты для рыбалки, Двухместные палатки и тенты для кемпинга с доставкой в Киеве, а также: Боярке, Буче, Измаиле и в других регионах страны. Также вы можете купить Фляги и флягодержатели таких брендов, как например: Green Cycle в каталоге Терра Спорт
САМЫЕ АКТУАЛЬНЫЕ И ВЫГОДНЫЕ АКЦИИ У ВАС НА ПОЧТЕ
ПОХОЖИЕ
ВСЕ Фляги и флягодержатели
Давно планировали заняться фигурой? Фляга велосипедная Green Cycle, 600 мл (BOT-27-72) будет Вашим первым шагом. В « Фляги и флягодержатели » найдется все, что Вам пригодится. Фляги и флягодержатели удивит Вас своим качеством. Фляга велосипедная Cyclotech Water bottle CBOT-3BL black , Фляга велосипедная Cyclotech Water bottle CBOT-3BL black и Фляга велосипедная Cyclotech Water bottle CBOT-3BL black от знаменитых мировых производителей 6333 Вы сможете увидеть в нашей категории Фляги и флягодержатели . В спортивном онлайн-магазине Terrasport представлен огромный ассортимент товаров Фляги и флягодержатели . Оформляйте с бережной отправкой в Харьков, Одесса, Днепр и иные районы страны волейбольный мяч.
Фляга велосипедная Green Cycle, 600 мл (BOT-27-72) с доставкой по Украине:
Цифровые инновации: чат-боты, RPA и ML на службе бизнеса
Как Peer Zoning упростил нам жизнь и помог сбалансировать нагрузку EMC VPLEX
В материале эксперта рассматриваем пути решения двух проблем, возникших в storage-инфраструктуре компании.
Роботизация простейших процессов — не лучший вариант пилотного проекта для RPA
Валентина Кулагина, руководитель отдела развития продуктов компании ICL Services, — о роли и месте RPA в процессе цифровой трансформации компаний и о своих взглядах на развитие рынка роботизации процессов.
Полуфиналистам конкурса «Лидеры России» провели образовательную сессию
В субботу в Минмолодежи РТ прошла образовательная сессия для полуфиналистов конкурса «Лидеры России». Идейным вдохновителем встречи выступила Александра Лебедева — победительница первого конкурса «Лидеры России» из Казани.
Российский рынок ИТ-услуг: итоги года, прогноз на будущее
В ближайшие годы российский рынок ИТ-услуг ждут значимые изменения. В этих условиях каждому его участнику как никогда важно быть внимательным к трендам. Рассказываем об ИТ-итогах года и основных прогнозах.
Эксперты ICL Services делятся реальными кейсами
Для
любого бизнеса сотрудники — это одна из высших ценностей, его интеллектуальный
потенциал, который постоянно должен быть в развитии.
Технологии настоящего в облаке будущего
Десять лет перемен IT-рынка заставили Россию включиться в гонку технологий
Роботизация бизнес-процессов: быстрый путь к автоматизации
Портфолио сервисов компании ICL Services пополнилось новой услугой: роботизация бизнес-процессов (Robotic Process Automation).
Внедряя ERP на промышленных предприятиях: Алевтина Светозаровна и Excel против суровых архитекторов и английского завода
В материале эксперта ICL Services на Habr разбираемся со сложностями, которые возникают при внедрении ERP, а также находим пути решения данных проблем.
Пять основных рисков RPA
Валентина Кулагина, руководитель отдела развития продуктов компании ICL Services, рассказывает о пяти основных рисках роботизации рабочих процессов (RPA).
Сессия по решению проблем
В материале эксперта ICL Services узнаем о способе, позволяющем устранить проблему за 6 шагов, а также разберем метод сессий для решения проблем разного уровня.
Управление ИТ-услугами (ITSM) стало еще эффективнее благодаря средствам машинного обучения
В статье эксперта рассматривается то, как машинное обучение может решить многие проблемы службы поддержки и ITSM.
5 эффективных возможностей использования технологии process mining
В статье эксперт рассказывает о Process mining простыми словами: что это за технология и как она применяется на практике, каковы ее ключевые задачи.
Технологии VR и AR, которые меняют мир
Видео-обзор приложений для моделирования реальных событий в виртуальной (VR) или дополненной (AR) реальностях для любой сферы бизнеса.
ICL Services победила во всероссийском конкурсе «Российская организация высокой социальной эффективности»
Компания
стала первой в номинации «Создание и развитие рабочих мест в организациях
непроизводственной сферы».
Когда чья-то продуктивность вызывает интерес
В материале эксперта ICL Services рассуждаем: какая команда становится для программиста командой мечты, как ее можно создать, и что делать для поддержания командного духа?
Группа компаний ICL вышла в ТОП крупнейших ИТ-компаний России
По итогам 2018 года группа компаний ICL стала 24, поднявшись в рейтинге Tadviser на 3 позиции вверх, по сравнению с 2017 годом.
Как предотвратить простой системы ДБО
Алексей Складчиков, старший руководитель группы систем управления ИТ-инфраструктурой компании ICL Services, в интервью рассказывает о том, как предотвратить простой бизнес-приложений.
Почему RPA становится технологией года?
В каких сферах применяется RPA, и какие действия можно доверить роботу – читайте в материале, подготовленном экспертами ICL Services.
Состояние и перспективы Process Mining в России
Мировой рынок решений Process Mining, важного элемента цифровой трансформации бизнеса, быстро растет. В России игроков, заявивших об участии в этом рынке, пока больше, чем реализованных проектов, но перспективы его развития оцениваются весьма высоко.
Главный в XXI веке: почему бизнесу в России необходим специалист по информационной безопасности
В начале года в МВД заявили: число кибератак в нашей стране выросло в 16 раз. При этом, по данным исследования компании Anti-malware, в 27% российских компаний до сих пор нет выделенных специалистов по информационной безопасности. Почему специалист по информационной безопасности необходим каждому бизнесу в России отвечают эксперты.
ICL Services запускает социально-образовательный проект для людей с инвалидностью
Крупная ИТ-сервисная компания ICL Services объявила о старте бесплатного онлайн-проекта по ИТ-обучению людей с инвалидностью. В ходе проекта участники смогут изучить основы сферы информационных технологий и познакомиться со спецификой работы направления Сервис Деск.
Scrum вам не поможет. Разбираемся, почему
Эксперт ICL Services Екатерина Ефимова рассказала в своем материале на Habr, почему метод Scrum может быть вреден.
Удаленная работа здорового работодателя
Алексей Готсданкер, эксперт компании ICL Services на Хабр, написал материал про удаленную работу. В материале автор рассказывает о плюсах и минусах удаленной работы, а также повествует о том, каких сотрудников стоит переводить на удаленку.
Технологические тренды 2020: по стопам форума инновационного развития
Материал эксперта ICL Services Никиты Касьянова о трендах 2020. В статье автор расскажет об оптимальной комбинации технологий, направленной на решение практических задач бизнеса.
Искусственный интеллект, ITSM и в общем-то причём тут LEAN?
Эксперт ICL Services Алексей Пятеркин рассказал в своем материале на Habr о кейсе с использованием искусственного интеллекта, ITSM и метода LEAN, который работает у нас на всех сервисных проектах.
ICL Services поздравляет всех с новым 2020 годом!
Пусть 2020 станет для всех годом больших побед и инновационных решений!
Главные тенденции в области ИТ-аутсорсинга после 2020 года
Тенденции на рынке ИТ-аутсорсинга постоянно меняются. Что будет актуально в 2020 году, читайте в материале.
«Мы выступаем мостом между бизнесом и государством»
Директор ICL Services Сергей Соловьев — о реализации нацпроекта «Цифровизация», проблемах IT-отрасли и перспективах четвертой промышленной революции
Как избежать ошибок при моделировании бизнес-процессов?
В чем недостатки развития бизнес-процессов от состояния «как есть» до «как должно быть», какими недостатками обладает подход process mining и какие преимущества дает вытягивающий метод моделирования, рассказал Александр Гончаров, эксперт ICL Services.
Для российского кода откроют хранилище
Андрей Крехов, эксперт компании ICL Services, дал комментарий изданию «Коммерсантъ» касательно создания аналога сервиса GitHub.
Цифровая экономика
Андрей Крехов, заместитель руководителя по специальным программам, написал большой материал для журнала «БИТ — Бизнес & Информационные Технологии» о том, чем запомнился 2019 год в сфере ИТ?
Система DISC: выберите цвет
Евгения Солонина, заместитель директора по операционной работе с персоналом компании ICL Services, рассказала о методике оценки DISC, которая используется у нас в компании.
Искусственный интеллект для россиян: риски или возможности?
Андрей Крехов, заместитель директора по специальными программам ICL Services, комментирует исследование по реализации национальной программы «Цифровая экономика».
Курс на ИТ: мастер-класс для студентов от Ак Барс Банка и ГК ICL
На прошлой неделе состоялась встреча студентов Института вычислительной математики и информационных технологий КФУ с представителями Ак Барс Банка и группой компаний ICL.
ICL Services начинает работу на рынке Дальнего Востока
13 марта в особой экономической зоне Свободный порт Владивосток начинает работу подразделение ICL Services. Компания организовала дочернее предприятие для работы с рынками Японии, Кореи, Сингапура и Юго-Восточной Азии.
Автоматизация с роботизацией
О ключевых технологиях для бизнеса в период постпандемии читайте в материале
ICL Services и SimpleOne стали официальными партнерами
Системный интегратор ICL Services заключил соглашение о сотрудничестве с российской компанией-разработчиком SimpleOne.
Сервисная «эко-система»: автоматизация процесса предоставления услуг
Рассказываем о трех инновациях ICL Services в рамках процесса предоставления услуг
О подключении вашего навыка к API машинного обучения
Подключите своего робота Skill Bot к API машинного обучения
Ф21112-01
Сентябрь 2019
Copyright © 2019, Oracle и/или ее дочерние компании. Все права защищены.
Это программное обеспечение и сопутствующая документация предоставляются по лицензии соглашение, содержащее ограничения на использование и раскрытие информации, и защищены законы об интеллектуальной собственности.За исключением случаев, прямо разрешенных в вашем лицензионном соглашении или разрешено законом, вы не можете использовать, копировать, воспроизводить, переводить, транслировать, изменять, лицензировать, передавать, распространять, демонстрировать, исполнять, публиковать или отображать любую часть в любой форме или посредством любые значения. Обратный инжиниринг, дизассемблирование или декомпиляция этого программного обеспечения, если только требуется по закону для интероперабельности, запрещено.
Информация, содержащаяся здесь, может быть изменена без предварительного уведомления
и не гарантируется отсутствие ошибок. Если вы обнаружите какие-либо ошибки, пожалуйста, сообщите нам о них
на письме.
Если это программное обеспечение или сопутствующая документация, которая доставляется в правительством США или любым лицом, лицензирующим его от имени правительства США, то применимо следующее уведомление:
КОНЕЧНЫЕ ПОЛЬЗОВАТЕЛИ ПРАВИТЕЛЬСТВА США: программы Oracle, включая любые операционные
система, интегрированное программное обеспечение, любые программы, установленные на оборудовании, и/или
документация, доставленная в У.S. Конечными пользователями государственных органов являются «коммерческие компьютерные программы».
в соответствии с применимым Положением о федеральных закупках и
дополнительные положения. Таким образом, использование, копирование, раскрытие, модификация и
адаптация программ, включая любую операционную систему, интегрированное программное обеспечение, любое
программы, установленные на оборудовании, и/или документация подлежат лицензированию
условия и лицензионные ограничения, применимые к программам. Другие права не предоставляются
правительству США.
Данное программное или аппаратное обеспечение разработано для общего использования в различных приложения для управления информацией. Он не разработан и не предназначен для использования в каких-либо потенциально опасные приложения, в том числе приложения, которые могут создать риск личный вред. Если вы используете это программное или аппаратное обеспечение в опасных приложениях, то вы несете ответственность за принятие всех необходимых мер по отказоустойчивости, резервному копированию, резервированию и иные меры, обеспечивающие его безопасное использование.Корпорация Oracle и ее аффилированные лица отказываются от любую ответственность за любые убытки, вызванные использованием этого программного или аппаратного обеспечения в опасных условиях. Приложения.
Oracle и Java являются зарегистрированными товарными знаками Oracle и/или ее
филиалы. Другие наименования могут быть торговыми марками их владельцев.
Intel и Intel Xeon являются товарными знаками или зарегистрированными товарными знаками Intel. Корпорация. Все товарные знаки SPARC используются по лицензии и являются товарными знаками или зарегистрированные торговые марки SPARC International, Inc.AMD, Opteron, логотип AMD и Логотип AMD Opteron является товарным знаком или зарегистрированным товарным знаком Advanced Micro Devices. UNIX является зарегистрированным товарным знаком The Open Group.
Это программное или аппаратное обеспечение и документация могут обеспечивать доступ или
информацию о контенте, продуктах и услугах от третьих лиц. Корпорация Оракл
и ее аффилированные лица не несут ответственности и прямо отказываются от всех гарантий любого
вид в отношении стороннего контента, продуктов и услуг, если не указано иное
в применимом соглашении между вами и Oracle. Корпорация Oracle и ее
аффилированные лица не несут ответственности за любые убытки, расходы или ущерб, понесенные в связи с вашим
доступ или использование стороннего контента, продуктов или услуг, за исключением случаев, указанных в
применимое соглашение между вами и Oracle.
Как создать бота для торговли криптовалютой с искусственным интеллектом?
Вот наше руководство, которое покажет вам, как интегрировать ИИ и машинное обучение для создания бота для торговли криптовалютой на основе ИИ.
1. Планирование проекта
Естественно, вы хотите успешно выполнить этот проект.Поэтому для этого требуется тщательное планирование с участием компетентного менеджера проекта (PM), опытного архитектора разработки программного обеспечения и знающей команды бизнес-аналитиков (BA).
Что должно охватывать ваше упражнение по планированию проекта? Вам необходимо учесть следующее:
- Определение требований, т.
е. того, как вы будете использовать AI/ML, чтобы выделить своего бота для торговли криптовалютой;
- Выбор наборов данных для обучения алгоритмов, которые вы будете разрабатывать.
- Разработка предлагаемой вами системы;
- Разработка;
- Тестирование;
- Развертывание;
Нужна помощь в этом процессе планирования? Наше руководство «Жизненный цикл разработки ИИ: объяснение» — именно то, что вам нужно.
2. Выберите свое решение для ИТ-инфраструктуры и технологический стек
В конечном итоге вы выберете решение для ИТ-инфраструктуры и стек технологий на основе требований вашего проекта, однако я рекомендую следующее:
- Зарегистрируйтесь у поставщика управляемых облачных услуг, такого как AWS, который предлагает различные решения для облачных вычислений, такие как «инфраструктура как услуга» (IaaS) и «платформа как услуга» (PaaS). Таким образом, вы можете сосредоточиться на разработке, а не на управлении ИТ-инфраструктурой.
- Если вы планируете предлагать веб-приложение, кодируйте интерфейс с помощью JavaScript. Для этого вы можете использовать JavaScript, HTML и CSS. Кроме того, вы можете использовать популярные фреймворки с открытым исходным кодом, такие как Angular и React.js.
- Разработайте серверную часть веб-приложения с помощью Node.js. Эта популярная среда выполнения с открытым исходным кодом помогает создавать масштабируемые веб-приложения. Многие разработчики знают JavaScript, и им легко работать с Node.js, поскольку он основан на JavaScript. Наше руководство «10 отличных инструментов для разработки программного обеспечения Node.Js» объясняет различные преимущества Node.js.
- Используйте Python или Julia для кодирования вашего программного обеспечения AI/ML, поскольку оба являются отличным выбором для программирования AI/ML. Хотите узнать больше об этих языках программирования? Прочтите наше руководство «Julia vs Python: сможет ли этот новый язык программирования свергнуть короля?».
3. Оцените свой проект
Вам понадобится реалистичный бюджет, чтобы довести проект до конца. Оцените свой проект, который требует следующих шагов:
- Установление ожиданий с заинтересованными сторонами вашего бизнеса;
- Оценка стоимости рабочей силы разработчиков;
- Оценка стоимости облачной платформы и средств разработки;
- Факторинг прочих административных расходов.
Нужна помощь в оценке вашего проекта? Мы в DevTeam.Space можем помочь, и вы можете оценить наши возможности, прочитав статью «Сколько стоит разработка искусственного интеллекта?».
4. Подключите свою команду разработчиков
Для успешного выполнения этого проекта в вашей команде должны быть правильные люди. На борту компетентные люди для следующих должностей:
- дизайнеры пользовательского интерфейса;
- веб-разработчиков с навыками работы с Node.js;
- разработчиков AI/ML с навыками Python или Julia;
- Тестеры;
- инженеров DevOps.
Хотите знать, как найти компетентных людей? Мы в DevTeam.Space можем помочь. Прочтите наше руководство «Как найти разработчика программного обеспечения», чтобы узнать, почему мы являемся подходящим партнером для вашего проекта.
5. Подготовить данные для обучения и тестирования предлагаемого робота для торговли криптовалютой с искусственным интеллектом
Выполните следующие шаги, чтобы подготовить данные для обучения и тестирования вашего робота для торговли криптовалютой на основе ИИ:
А. Собрать данные
Вам необходимо собрать данные из различных соответствующих источников. Он должен включать торговые данные, рыночную информацию, данные известных криптобирж и т. д.Сделайте следующее:
· Сканировать внешние источники данных.
· Определите соответствующие источники данных.
· Документируйте соответствующие атрибуты в данных после их идентификации.
· Разобрать файлы данных из XML/JSON в нужный вам формат.
· Объедините данные, чтобы сформировать нужное количество наборов данных.
· Создайте планы по устранению систематических ошибок из наборов данных.
B. Анализ данных и создание профилей данных
Проверьте качество собранных вами данных.Выполните следующие действия:
· Ищите тренды в наборах входных данных.
· Проверить наличие выбросов в наборах данных.
· Подумайте о различных исключениях, которые могут возникнуть в этом типе данных. Проверьте, существуют ли они в ваших наборах данных.
· Создайте список отсутствующих элементов данных, кроме того, перечислите неверные точки данных.
· Изучите наборы данных и найдите несоответствия.
· Узнайте об ошибках данных или проблемах с качеством, которые могут привести к искажениям в вашей системе AI/ML.
C. Упорядочить данные в подходящем формате для обеспечения согласованности
Возможно, вы собрали наборы входных данных в разных форматах. Различные члены команды вашего проекта могли использовать разные форматы для загрузки данных. Кроме того, разные источники данных могут традиционно использовать разные форматы данных.
Все эти факторы могут привести к тому, что разные наборы данных будут иметь разные форматы. Это может не сработать для обучения вашей системы AI/ML, поэтому вам необходимо использовать согласованный формат.
Проверьте, какой формат требуется для алгоритмов машинного обучения, которые вы будете использовать. Организуйте наборы входных данных в этом формате, что может потребовать стандартизации некоторых значений в нескольких столбцах.
D. Работа над улучшением качества данных Как мы объясняли в нашем руководстве по разработке алгоритмов машинного обучения, вам необходимо улучшить качество ваших входных данных. Выполните следующие действия:
· Сформулируйте стратегию исправления ошибок в данных.
· Устранить проблемы с отсутствующими значениями во входных наборах данных.
· Изучите и исправьте проблемы с экстремальными значениями во входных данных.
· Проанализируйте проблему выбросов во входных данных и найдите решение.
· Внимательно изучить распределение входных данных, впоследствии выявить расхождения.
· Используйте надежные инструменты подготовки данных для ускорения вашего проекта.
· Просмотрите наборы данных после модификации и убедитесь, что они остаются похожими на реальные наборы входных данных.
Э.Проанализируйте входные переменные и выполните разработку признаков
Вы хотите, чтобы алгоритмы машинного обучения в вашем роботе и платформе для торговли криптовалютами с искусственным интеллектом лучше понимали входные данные. Для этого алгоритмы должны уметь видеть закономерности в данных. Для этого вам нужно выполнить «разработку функций».
Проанализируйте входные переменные в данных. Классифицируйте наборы данных по разным значениям. Впоследствии измените необработанные данные в «функции» для алгоритма ML, чтобы лучше понять отношения в наборах данных.
F. Организация наборов данных для создания наборов данных для обучения и тестирования
Вам необходимо обучить свою систему AI/ML, а также протестировать ее. Следовательно, вам нужно два набора данных. Один для обучения, а другой для проверки системы.
Наборы входных данных не должны быть слишком сильно искажены обучающими примерами. Вы должны предотвращать такие сценарии, чтобы предотвратить систематическую ошибку в ваших наборах входных данных.
G. Задокументируйте процесс, чтобы у вас был повторяемый процесс
Вышеупомянутые шаги являются рекомендациями, и задачи подготовки данных в вашем проекте могут иметь свои уникальные особенности.Вам необходимо тщательно их задокументировать.
В ходе разработки предлагаемого вами бота и платформы для торговли криптовалютами на основе AI/ML вам может потребоваться повторить задачи подготовки данных. Документирование их хорошо поможет вам.
6. Разработайте и внедрите надежное решение для обеспечения информационной безопасности
Криптобиржи регулярно сталкиваются с кибератаками. Трейдеры, работающие с криптовалютой, хотят безопасности, поэтому вам необходимо уделить первостепенное внимание этому аспекту. Позаботьтесь о следующем при создании бота и платформы для торговли криптовалютой с искусственным интеллектом:
· Используйте многофакторную аутентификацию и не полагайтесь только на пароли.
· Используйте функции безопасности, такие как шифрование и цифровая подпись.
· Включите ключевые функции, такие как аутентификация и безопасный шлюз для безопасных API. · Заблаговременно уменьшайте основные риски безопасности приложений, такие как нарушенный контроль доступа, внедрение, неправильная настройка безопасности и т. д. Важно лишить злоумышленников любой точки доступа. Помните, что такие атаки, как отравление данных, серьезно влияют на системы AI/ML, и вам необходимо их предотвращать.
7. РАЗРАБОТКА, ПРОСМОТР И ТЕСТИРОВАНИЕ ВАШЕГО ТОРГОВОГО БОТА НА ИИ С ИИ
Теперь вы находитесь в конце этого проекта.Разработайте своего бота для торговли криптовалютой в соответствии с вашими требованиями.
Вы хотите найти ошибки на ранних стадиях жизненного цикла. Не ждите фазы тестирования, чтобы найти ошибки. Тщательно просматривайте свой код как можно чаще.
Мы предлагаем вам провести тестирование на истории, чтобы убедиться, что у вас есть правильная торговая модель в будущем. Это можно сделать как до, так и во время разработки, но, безусловно, полезно иметь хорошую стратегию, прежде чем создавать своего бота. Вам понадобится специалист по торговым алгоритмам, чтобы помочь вам в этом.
В качестве альтернативы, если вы наймете разработчиков, имеющих опыт разработки такого решения, они могут помочь вам в этом. Не забудьте спросить своих разработчиков о том, как они будут тестировать ваш торговый алгоритм, чтобы убедиться, что они знают, что делают. Протестируйте и разверните свое приложение с помощью инструментов AWS DevOps. Прочтите «DevOps и AWS», чтобы узнать больше об этих инструментах.
Как вы эффективно управляете этим проектом? Я рекомендую вам использовать зрелый процесс, такой как наш Agile-процесс, управляемый данными, поскольку он дает вам правильное представление о проекте.
Совет для профессионалов: ознакомьтесь с экосистемой торговых роботов с искусственным интеллектом. Это поможет вам предложить дифференцированные функции.
Проверьте следующее:
1. Торговый бот, работающий с Binance
Binance — одна из популярных бирж криптовалют. Binance предлагает не только Биткойн (BTC) или Эфир (ETH), но и большое количество криптовалют. Вы можете ознакомиться с ботом для торговли криптовалютой, который работает с Binance. Ознакомьтесь с торговым ботом Binance на GitHub.
Примечание. Binance предлагает ключи API. Разработчики могут использовать их для создания ботов для торговли криптовалютой для Binance.
2. Криптовалютный AI-бот для работы с KuCoin
Популярная криптовалютная биржа KuCoin имеет сообщество торговых ботов. У него также есть сообщество Telegram. Посетите веб-страницу сообщества торговых ботов KuCoin, чтобы узнать об этом больше.
3. CryptoHero: платформа для создания торговых ботов с искусственным интеллектом
CryptoHero — популярная платформа для создания ботов для торговли криптовалютой. Вы можете создавать, тестировать и запускать ботов. Платформа предлагает ключевые функции, такие как автоматизация торговли, тестирование на истории, технические индикаторы, бумажная торговля, управление портфелем, интеграция с несколькими биржами и т. д.
С его помощью вы можете управлять несколькими учетными записями криптобиржи. CryptoHero работает со всеми популярными биржами, такими как Binance, Tokocrypto, Huobi, OKEx, Coinbase Pro, Bittrex, Kraken, Binance US, BitFinex, KuCoin и т. д. CryptoHero имеет активное сообщество Telegram.
4. Shrimpy: известная платформа для торговли криптовалютами
Shrimpy — это комплексная торговая платформа для рынка криптовалют.Он позволяет вам управлять всеми вашими учетными записями и кошельками криптобиржи. Новички могут легко начать торговать с Shrimpy.
Платформа предлагает следующие ключевые функции:
· Подключить разные аккаунты;
· Стратегии тестирования на истории;
· Автоматизировать торговлю;
· Социальная торговля;
· Торговые инструменты для отслеживания эффективности;
· Управление портфелем.
Shrimpy поддерживает популярные кошельки, такие как MetaMask, Coinomi, Huobi Wallet и т. д.Он предлагает интеграцию с популярными криптовалютными биржами, такими как Bitstamp, Bittrex, Coinbase Pro, Huobi Global, KuCoin, Kraken, OKEx, BitFinex, Binance, Binance US и т. д.
5. Empirica: Компания, предоставляющая различные программные решения для крипторынка
Empirica — одна из самых быстрорастущих технологических компаний в Европе. Он предоставляет широкий спектр программных решений для крипторынка. Посмотрите следующие примеры:
· «Движок ликвидности» и «Панель инструментов анализа ликвидности»;
· Программное обеспечение для маркетмейкинга;
· Боты для автоматической торговли криптовалютой;
· Криптовалютные роботы-консультанты.
Платформа помогает криптотрейдерам точно настроить стратегию своих ботов. Например, пользователи могут воспользоваться ботами для криптоарбитража.
Примечание. Empirica не ограничивается рынком криптовалют. Он также предоставляет комплексные программные решения для традиционных рынков.
6. Различные руководства пользователя
Широкий выбор руководств пользователя помогает криптотрейдерам на крипторынке. Эти руководства охватывают широкий круг тем, например:
· Как использовать автоматических ботов для торговли криптовалютой;
· Ребалансировка портфеля;
· Как использовать различные шаблоны криптоторговли;
· Торговые сборы.Примером может служить руководство Bybit по ребалансировке криптопортфеля. Еще одним примером является руководство Traality по ботам для торговли криптовалютой. Объясняет, как фиксировать прибыль, как устанавливать «стоп-лосс» и т. д.
8. «Обучение» криптоторговых ботов
Теперь, когда вы разработали свою платформу для торговли криптовалютой, вам нужно ее «обучить». Выполните следующие действия:
A. Предварительное «обучение» вашего бота торговле криптовалютами
Вы выполнили предварительное тестирование своего робота и платформы для торговли криптовалютами с искусственным интеллектом. Может ли он справиться с реальным сценарием торговли на нестабильном и сложном рынке криптовалют? Вы узнаете это только после того, как обучите модель и снова протестируете ее.
Обучите систему ИИ с помощью набора обучающих данных. Избегайте «переоснащения», которое снижает точность системы AI/ML. Для этого вам следует избегать слишком близкого согласования модели машинного обучения с каким-либо из наборов входных данных.
B. Валидация после предварительной подготовки
Теперь вы должны протестировать свою криптоторговую платформу с искусственным интеллектом.Может ли он создать и реализовать торговую стратегию, которая поможет трейдерам получать прибыль? С другой стороны, предположения, сделанные во время проектирования, оказались неверными? Выясните это на этапе тестирования. Проанализируйте проблемы, обнаруженные во время тестирования.
C. Тестирование с использованием большого набора данных, отражающего реальные сценарии и масштаб
Теперь вы должны провести тестирование с набором данных, максимально приближенным к реальному сценарию. Ваша цель — протестировать систему крипто-торговли AI в производственных масштабах.
D. Проанализируйте результат и определите корректирующие действия
Проверьте, работает ли торговая платформа с искусственным интеллектом в соответствии с вашими ожиданиями. Проанализируйте расхождения. Они могут возникнуть из-за неправильных предположений, сделанных при проектировании системы. Кроме того, расхождения могут возникать из-за проблем с качеством данных.
E. Выполните корректирующие действия и повторите процесс обучения
Предпримите корректирующие действия на основе вашего анализа. Вернитесь к чертежной доске, если предположения о дизайне вашего приложения AI/ML были неверными.С другой стороны, устраните проблемы с качеством данных, если они вызвали проблему. Повторите этот процесс, чтобы заставить систему AI/ML работать должным образом.
ПЛАНИРУЕТЕ ИНТЕГРИРОВАТЬ AI И ML В ВАШ КРИПТОТОРГОВЫЙ бот?
Торговые боты с ИИ — относительно новое явление, к тому же ИИ и МО — нишевые технологии. Вы можете ожидать, что ваш проект разработки будет сложным, поэтому мы настоятельно рекомендуем вам привлечь для этого известную компанию-разработчика программного обеспечения.
Вы можете прочитать наше руководство «Как найти лучшую компанию по разработке программного обеспечения?» о шагах по поиску лучшего партнера по развитию.
Если вы хотите воспользоваться опытом DevTeam.Space в создании криптоботов, наши боты уже пользуются успехом на рынке, отправьте план спецификации проекта по этой ссылке, и мы организуем звонок, чтобы помочь вам с любыми вопросами, которые могут у вас возникнуть.
Часто задаваемые вопросы
Используется ли ИИ в трейдинге? Искусственный интеллект является неотъемлемой частью всех новейших торговых ботов. Это обеспечивает лучшую автоматизацию и точность торговых решений.ИИ позволяет боту совершенствоваться, изучая прошлые тенденции, большинство из которых скрыты в больших пулах данных, интерпретация которых человеку потребовала бы много времени.
Торговые боты используются всеми ведущими инвестиционными банками и инвесторами, чтобы помочь им принимать более обоснованные торговые решения. Поскольку эти боты способны учиться на прошлых тенденциях, они становятся все более и более точными с каждым днем.
Выгодны ли боты для торговли криптовалютой?Боты для торговли криптовалютой, если они хорошо построены, чрезвычайно прибыльны.Учитывая, что цены на криптовалюты по-прежнему сильно колеблются, торговая маржа намного выше и выгоднее для тех ботов, которые понимают это правильно.
Как применять машинное обучение в разработке продуктов
Мы находимся в начале революции в общении с клиентами, основанной на машинном обучении и искусственном интеллекте.
В Intercom мы воспользовались преимуществами этих технологий относительно рано. Наши настраиваемые боты и боты разрешения уже ежедневно работают в тысячах компаний. Эти боты помогают предприятиям обеспечить как радикальную эффективность, так и более качественную и быструю поддержку.
Итак, современное машинное обучение открывает огромные возможности, но как использовать эту технологию для создания реального продукта, ориентированного на клиента?
В конце прошлого года я говорил на конференции Predict о том, как мы создали Resolution Bot, нашего интеллектуального чат-бота для поддержки, который может мгновенно решать распространенные вопросы. Этот пост основан на этом выступлении и подробно описывает наш путь от ранних экспериментов до выпуска, а также некоторые ценные уроки, которые мы узнали о том, как реализовать машинное обучение (ML) в реальном продукте.
Кексовый подход к созданию ботов
Читая статьи о том, как Google или IBM создают свои продукты машинного обучения, легко подумать, что только самые крупные компании могут позволить себе внедрить машинное обучение в продукт. Этим компаниям нужно потратить много времени на рассмотрение проблем, которые возникнут, когда система будет иметь миллионы пользователей, и должны тщательно подумать о технологическом долге ML, учитывая их масштаб. Однако для небольших компаний, заинтересованных в создании успешных продуктов машинного обучения, бережливый подход может принести много пользы.
В Intercom мы обычно придерживаемся подхода к созданию продукта в виде кекса — начинаем с самой маленькой функционирующей версии и быстро итерируем оттуда.
«Неизменно обнаруживается, что сложная система, которая работает, развилась из простой системы, которая работала»
Когда речь идет о машинном обучении, действует закон Галла: «Неизменно обнаруживается, что сложная система, которая работает, развилась из простой системы, которая работала». Продукты машинного обучения также требуют от нас управления относительно большими технологическими рисками — это область, в которой, в отличие от разработки большинства других продуктов, технические ограничения могут сделать весь дизайн невозможным.Мы не можем предполагать, что машинное обучение всегда будет делать то, что мы хотим.
Новые инженеры-программисты быстро узнают, что при обработке ошибок возникает много сложностей. Точно так же большая часть сложности продуктов ML связана с обработкой того, что происходит, когда они допускают ошибку, и с проектированием с учетом несовершенной производительности. Мы не можем просто строить для хорошего пути.
Также легко пере- или недоинвестировать в технологию. Трудно оптимально сбалансировать инвестиции между машинным обучением, продуктом, проектированием и дизайном.
Для решения этих проблем, а также для создания «кексов», мы любим использовать метафору из компьютерных наук: продукты машинного обучения должны создаваться «в ширину».
Не создавайте три поколения технологий машинного обучения до разработки первого готового к поставке проекта. Точно так же не проектируйте далеко за пределы того, что может дать машинное обучение — вместо этого просматривайте дерево разработки продукта, по одному уровню глубины за раз.
Достижение этого баланса на практике требует большой работы.
Практический пример: бот разрешения
Resolution Bot — это продукт, который автоматически отвечает на повторяющиеся вопросы, с которыми сталкиваются группы поддержки клиентов. Служба поддержки получает много повторяющихся входящих вопросов, на которые становится утомительно отвечать. Автоматизация решения этих вопросов помогает компаниям масштабировать свою поддержку — работа в Интернете может означать, что вы можете продавать кому угодно в мире, но вам лучше иметь возможность поддерживать всех этих людей, если вы хотите сохранить свой бренд.
Большой риск в таком проекте всегда связан с конечным пользователем.Вы можете подумать, что для продукта ML UX менее важен, чем обычно, но на самом деле стоит особенно углубиться в UX при запуске проекта ML.
Примером исключительного удобства работы конечного пользователя с продуктом машинного обучения является функция подсказок клавиатуры на смартфонах. Обратите внимание на то, как подсказки незаметно появляются над клавиатурой, не вызывая трения или раздражения, если они бесполезны.
На эту тонкость ушло много дизайнерских усилий, что привело к предложениям, которые одновременно заметны, когда они уместны, и игнорируются, когда они неуместны.
Это то, для чего вы хотите проектировать — вы можете выпустить первую версию с машинным обучением, которая не будет удивительной, но на самом деле не повредит опыту конечного пользователя, потому что дизайн делает стоимость ложных срабатываний относительно низкой. Низкая стоимость ошибки значительно упрощает запуск продукта машинного обучения — вот почему часто лучше начинать с версии, в которой есть предложения, чтобы смягчить влияние ошибок. Это может быть не интуитивно понятным, но дополнительные усилия по UX могут повысить вероятность того, что усилия по машинному обучению принесут хорошие результаты.
«Мы знали, что обработка естественного языка быстро совершенствуется, но достаточно ли она хороша для того, чтобы обеспечить необходимый пользовательский опыт?»
Помня об этой эвристике, мы немного нервничали, когда начинали работу над Resolution Bot. Этот бот должен был неожиданно вмешаться в разговоры со службой поддержки. Пользователей легко раздражать, перебивая их. Какова будет цена ложного срабатывания? Машинное обучение по своей сути вероятностно, поэтому всегда будут случаи, когда оно вставляет ответ, который не имеет значения.Будут ли конечные пользователи рады видеть бота? Не повредит ли их опыт, если бот будет неактуален? Мы знали, что обработка естественного языка быстро совершенствуется, но было ли это достаточно хорошо, чтобы обеспечить необходимый пользовательский опыт? Это очень правильное суждение, и его очень трудно понять без прототипирования.
Наконец, большое беспокойство для нас вызывал опыт настройки клиента. У Intercom десятки тысяч клиентов, и им нужно было установить и настроить Resolution Bot для каждого из своих предприятий без какого-либо вмешательства с нашей стороны, чтобы этот продукт работал как продукт.
Уравновешивание рисков при разработке машинного обучения
Я считаю, что для любого продукта машинного обучения вы должны найти путь, который дешево снижает эти различные типы рисков сбалансированным образом. Если вы обнаружите, что прошло шесть месяцев, а команда глубоко работает над машинным обучением, но еще не выпустила версии, которые используют клиенты, это действительно плохой знак. Вы можете легко переусердствовать со своим решением или решить немного не ту проблему.
Точно так же, если вы потратите шесть месяцев на создание отличного дизайна, но без снижения технического риска, вы можете создать отличный дизайн, который зависит от недостижимой производительности машинного обучения и поэтому никогда не будет выпущен.Один из наших принципов дизайна — «то, что вы отправляете, имеет значение», и это правильно.
Вместо этого вы хотите как можно скорее выделить и проверить приемлемый пакет продукта описанным выше способом в ширину. Сделайте все возможное, чтобы определить версию вашей функции, которая может принести пользу с помощью простейшего машинного обучения. Отправьте это клиентам в какой-нибудь альфа-версии как можно быстрее и запустите маховик итерации.
Год из жизни бота
На создание бота Resolution у нас ушло чуть меньше года, от первого прототипа в ноябре 2017 года до запуска. Я думаю, что взлеты и падения того года — то, чем мы гордимся, и то, что мы испортили, — дает хороший пример того, как подходить к проекту машинного обучения.
В течение первых шести недель проекта мы построили несколько волн быстрых прототипов. Первый прототип был всего лишь чем-то, что мы собрали вместе за неделю, используя Jupyter Notebooks и регулярные выражения. Это позволило нам представить что-то заинтересованным сторонам внутри компании и убедиться, что мы в целом согласованы с целями проекта. Ранний рабочий прототип, с которым вы можете взаимодействовать, обеспечивает ясность и четкость проектов машинного обучения, которые часто страдают нечеткостью.
«Мы видели волшебство пары реальных конечных пользователей, на вопросы которых бот успешно ответил, и мы знали, что время, потраченное на повышение точности с помощью реального машинного обучения, не будет потрачено впустую»
Для следующих нескольких прототипов мы так и не создали машинное обучение. Мы взяли готовую поисковую систему Python и создали еще одного тестового бота, который мог бы отвечать на наши собственные входящие запросы в службу поддержки. Мы использовали эту готовую технологию как можно дольше и сосредоточились на попытках сбалансированного выявления и снижения других типов рисков.
Через шесть недель мы достигли четвертого прототипа — с ним можно было вести диалог, а наши коллеги могли дать полезную обратную связь. Мы до сих пор не занимались «настоящим машинным обучением», но мы видели волшебство пары реальных конечных пользователей, на вопросы которых бот успешно ответил, и мы знали, что время, потраченное на повышение точности с помощью реального машинного обучения, не будет лишним. впустую.
Первоначальная основная задача
Быстрое продвижение и отказ от чрезмерной разработки технологии позволили нам определить нашу первую настоящую проблему: при наличии бота, который может отвечать на вопросы клиентов, как бот получает контент? Как он получает ответы, чтобы предоставить клиентам? Продолжая действовать в стиле кекса, в ширину, мы решили эту проблему раньше, чем могли бы в противном случае.
Решение, к которому мы пришли, заключалось в том, чтобы обучить бота анализу исторических вопросов. Мы создали прототип очень быстрого и грязного JavaScript-инструмента, который задавал кучу исторических вопросов с помощью простого готового алгоритма кластеризации. Наблюдение за этими кластерами помогло нам понять, на какие вопросы нужно научить бота отвечать.
К этому моменту у нас был прототип каждой детали, необходимой для создания простого бота. Ни одна статья не была блестящей, но мы определили большинство категорий риска.Это позволило нам запустить обширную внутреннюю альфа-версию, и мы запустили ее — в течение двух месяцев после запуска проекта она отвечала на реальные вопросы реальных клиентов на Intercom.com. Теперь мы могли повторять действия с позиции силы, наблюдая живое выступление на ходу. Добраться до этой точки как можно быстрее — это лучший известный мне способ ускорить сложный продукт машинного обучения.
Выполнение всего цикла продукта позволило нам осознать несколько ключевых ограничений:
- Во-первых, курирование ответов бота, чтобы он действительно мог отвечать на полезные вопросы, требует итерации, чтобы все получилось правильно.
- Во-вторых, в то время как наши пользователи были очень терпеливы к «ложным срабатываниям» — неуместным предложениям — технология поиска, которую мы использовали, генерировала их много.
В целом, нашим самым большим открытием стало то, что это было похоже на волшебство, когда бот идеально отвечал на вопросы, и множество примеров того, как люди мгновенно получали ответы на свои вопросы, действительно мотивировали нас продолжать продвигать этот продукт.
Курирование бросает вызов дизайну
Получив эти знания, мы были достаточно уверены в себе, чтобы перейти к полному производству с созданной нами оболочкой, но именно тогда нам действительно пришлось столкнуться с невероятно сложной задачей проектирования — настройкой для наших клиентов.
До этого момента мы сами обучали бота и были уверены, что он нравится нашим пользователям. Но можем ли мы разработать интерфейс курирования, который могли бы успешно использовать наши клиенты, не понимая, как все это работает внутри?
Мы надеялись, что сможем решить проблему ложных срабатываний, заставив людей курировать ключевые слова, но несколько раундов исследования пользователей показали, что этот подход не работает. Мы потратили много недель на итерации дизайна, пытаясь упростить выбор необходимых ключевых слов, но, что бы мы ни пытались, слишком много клиентов испытывали затруднения, часто заканчивая тем, что использовали чрезмерно ограничительные ключевые слова, а иногда и вовсе не понимали их.В этот момент колеса могли полностью оторваться от проекта.
«Мы начали работу над собственным алгоритмом машинного обучения, чтобы заменить стандартную поисковую систему чем-то более сложным»
Но нам повезло — именно здесь наш кексовый подход действительно окупился. Доказав полезность концепции на раннем этапе, мы знали, что можем позволить себе инвестировать в решение этой проблемы и что усилия по созданию индивидуального решения здесь не будут напрасными. Поэтому мы начали работу над настраиваемым алгоритмом машинного обучения, чтобы заменить готовую поисковую систему чем-то более сложным — пользовательский алгоритм будет гораздо точнее определять, когда у него есть хорошее совпадение. Сначала мы использовали векторы слов и много пользовательского кода, а теперь используем передовые технологии глубокого обучения.
Это сработало очень успешно. Создание машинного обучения собственными силами дорого и требует много времени, но это лучшее время, чтобы потратить эти ресурсы: когда вы доказали, что машинное обучение является узким местом в реальной проблеме с продуктом, и знаете точные пороговые значения производительности, которые должно достичь решение машинного обучения. .
В этом проекте у нас также была еще одна проблема машинного обучения. Для внутреннего использования мы успешно использовали стандартные алгоритмы тематического моделирования, чтобы предложить общие вопросы для обучения бота, но эти автономные алгоритмы трудно реализовать.
Часто более теоретические алгоритмы кластеризации пытаются найти все возможные кластеры данных и кластеризовать каждую точку данных. Но при создании продуктов мы часто хотим показать клиентам только лучшие кластеры. Так что мы снова закончили тем, что написали собственные алгоритмы, разработанные, чтобы быть более осторожными и избирательными. Мы поместили результаты этих алгоритмов в продукт в очень упрощенном интерфейсе, где мы просто показали лучший отдельный пример каждого кластера. Такой тонкий интерфейс к продукту позволил нам быстро итерировать базовый алгоритм машинного обучения даже после запуска, без необходимости каждый раз переделывать дизайн.Внимательное отношение к интерфейсу, предоставляемому системой машинного обучения, действительно может помочь ускорить итерацию.
Наши метрики показали, что эти предложения отлично помогли уменьшить первоначальные трения, помогая клиентам выбирать свои первые несколько ответов.
Ключевые блюда на вынос
Resolution Bot был запущен в октябре 2018 года и претерпел значительное обновление (и изменение имени) в начале этого года, и теперь использует одни из самых сложных алгоритмов нейронной сети.
Но создавать продукты машинного обучения всегда рискованно. Вы должны сбалансировать риск продукта и технологии. Мои ключевые выводы из этого проекта:
- Не тратьте шесть или 12 месяцев на создание красивого дизайна, для которого просто нужна потрясающая функция машинного обучения, которую невозможно реализовать, или наоборот.
- Как можно скорее начните прототипирование с минимальным машинным обучением.
- Как можно скорее протестируйте его на как можно большем количестве типов пользователей.
- Не поддавайтесь искушению подождать, пока не будет достигнут нереально высокий порог точности перед поставкой — ранняя поставка и быстрое обучение имеют решающее значение для достижения этого порога точности.
Во всей отрасли мы считаем, что технология машинного обучения, которая сейчас доступна, намного опережает применение. Это очень интересное время для работы над машинным обучением, так как есть так много прорывов, которые только и ждут, чтобы быть реализованными и доведенными до клиентов.
Resolution Bot — это только начало нашего видения этого пространства. Мы невероятно рады итерациям и инновациям, которые находятся на подходе.
Domaine Famirial Louis Dupont Etienne Dupont Cidre Triple 375 мл Bot
Сад: в настоящее время насчитывается 6000 деревьев типичных сортов яблок Pays d’Auge. Возраст деревьев в среднем двенадцать лет. Чем старше дерево, тем меньше урожай и тем лучше характер плодов. Кроме того, на низких деревьях растут яблоки с большим количеством сахара. Поэтому большая часть сада состоит из невысоких деревьев.Типичные сорта включают Сен-Мартен, Бине, Ноэль де Шамп, Метте, Фрекен и Руж Дюре. Большинство из них горько-сладкие. Сладкие, кислые и дубильные яблоки используются в одинаковой пропорции для баланса.
Этьен Дюпон считает, что из любого набора яблок можно приготовить только один великолепный сидр, потому что баланс должен быть идеальным. Для каждой общей категории яблок [горькие, сладкие, кислые] существует три степени созревания, всего девять видов. Каждый вид собирают в три разных периода с октября по декабрь в зависимости от срока созревания. Почва известковая, мергелистая. Эта почва дает маленькие плоды с очень концентрированным вкусом, идеально подходящие для производства сидра. Нитраты не используются, что обеспечивает медленное и полное брожение. Нитраты действуют как стероиды в яблоках, наполняя фрукты водой и уменьшая концентрацию вкуса. Таким образом, они нежелательны. Что еще более важно, яблоки собирают вручную, что обеспечивает неизменно высокое качество фруктов.
Артикул | 09288 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Производитель | Domaine Семейную Louis Dupont | ||||||||||||||||||||||||
Тип пива | Сидр | ||||||||||||||||||||||||
Страна | Франция | ||||||||||||||||||||||||
регион | Victot-Pontfol | ||||||||||||||||||||||||
Размер | 975 мл | ||||||||||||||||||||||||
Корпус Количество | 12 | ||||||||||||||||||||||||
Обзор | Строка пузырьков продолжает расти в стекле.![]() | ||||||||||||||||||||||||
Разрешить дата доставки | Да | ||||||||||||||||||||||||
Оценка доставки | |||||||||||||||||||||||||
NO | |||||||||||||||||||||||||
Расчетный период доставки: от | 0 |
Обнаружение ботов на основе | ML теперь находится в бета-версии. Конфигурации и данные модели машинного обучения могут быть потеряны при обновлении FortiWeb Cloud. |
Чтобы настроить правило обнаружения ботов на основе машинного обучения:
- Перейдите к BOT MITIGATION > ML Based Detection (Beta) .
Вы, должно быть, уже включили этот модуль в Добавить модули . См. Как добавить или удалить модуль. - Выберите вкладку Параметры модели .
- Настройте следующие параметры.
-
IP : Данные о трафике в одной выборке должны поступать с одного и того же IP-адреса источника.
-
IP и User-Agent : Данные о трафике в одном образце должны поступать с одного и того же исходного IP и User-Agent (браузера).
-
Файл cookie : данные о трафике в одном образце должны иметь одинаковое значение файла cookie.
-
Отключить : Не выполнять проверку браузера.
-
Real Browser Enforcement : система отправляет клиенту JavaScript, чтобы проверить, является ли он веб-браузером.
-
Применение CAPTCHA : Система требует, чтобы клиенты успешно выполнили запрос CAPTCHA.
- Выберите действие, которое FortiWeb Cloud предпринимает при обнаружении нарушения правила, в правом верхнем углу.
Чтобы настроить действия, необходимо сначала включить Advanced Configuration в Global > Settings .
Оповещение
Примите запрос и создайте сообщение журнала.
Предупреждение и отказ
Заблокируйте запрос (или сбросьте соединение) и создайте сообщение журнала.
Блок периода
FortiWeb Cloud заблокирует ботов и отправит «страницу блокировки» обратно в браузер, а также запишет запрос в журнал атак.Все запросы для этого IP-адреса будут заблокированы на период, указанный вами в Block Duration .
Запретить (нет журнала)
Заблокировать запрос (или сбросить соединение) без создания сообщения журнала.
- Щелкните СОХРАНИТЬ .
Метод идентификации клиента |
FortiWeb Cloud собирает образцы реальных пользователей для построения модели машинного обучения. Выберите, использовать ли IP , IP и User-Agent или Cookie для идентификации пользователя. |
Количество аномалий |
Если система обнаруживает определенное время аномалий от пользователя, она предпринимает такие действия, как отправка предупреждений по электронной почте или блокировка трафика от этого пользователя. Счетчик аномалий определяет, сколько раз аномалии разрешены для каждого пользователя. Например, для счетчика аномалий установлено значение 4, и система обнаружила 3 аномалии в последних 6 выборках. Если 7-й образец снова будет обнаружен как аномалия, система примет меры. Обратите внимание, что если для 7-й выборки не будет собран действительный трафик (например, пользователь покидает ваше приложение), система очистит счетчик аномалий и информацию о пользователе.Если пользователь повторно посещает ваше приложение, он будет рассматриваться как новый пользователь, и система начнет подсчет аномалий заново. Поскольку этот параметр допускает определенные периоды аномалий от пользователя, это может быть хорошим выбором, если вы хотите избежать ложных срабатываний. |
вызов |
Если обнаружен бот, система будет использовать следующие методы, чтобы подтвердить, что это действительно бот. Активирует политику действий, если трафик не из веб-браузера. |
Длительность блока |
Введите количество секунд, в течение которых вы хотите блокировать запросы. Этот параметр действует только при выборе Блок периода в Действие . |
Список исходных IP-адресов |
Щелкните Создать новый , чтобы просмотреть диапазоны исходных IP-адресов образцов.FortiWeb Cloud будет собирать образцы из указанных диапазонов IP-адресов. |
URL-адреса исключений |
Из-за характера некоторых веб-страниц, таких как веб-страница со списком акций, даже обычные пользователи могут вести себя как боты, поскольку они склонны часто обновлять страницы. Нажмите Создать новый , чтобы получить список URL-адресов исключений. Система будет собирать образцы для любого URL-адреса, кроме тех, которые указаны в списке URL-адресов-исключений . |
Когда CDN включен, обнаружение API и обнаружение на основе машинного обучения должны быть отключены.![]() |
14 лучших чат-ботов с искусственным интеллектом на 2022 год
Будь то в Facebook Messenger, на своем веб-сайте или даже в текстовых сообщениях, все больше и больше брендов используют чат-ботов для обслуживания своих клиентов, продвижения своего бренда и даже продажи своей продукции.
Но даже несмотря на то, что большинство чат-ботов могут вести умеренно сложные разговоры, такие как приветственные разговоры и взаимодействия по знакомству с продуктом, логика «если/то», которая поддерживает их диалоговые возможности, может ограничивать их возможности.Например, если клиент задает уникальный, но неотложный вопрос, который вы не учли при разработке логики своего чат-бота, он никак не сможет ответить на его вопрос, что выводит вашего клиента из себя и в конечном итоге оставляет его недовольным вашим обслуживанием клиентов. .
К счастью, следующее достижение в технологии чат-ботов, способное решить эту проблему, набирает обороты — чат-боты на базе искусственного интеллекта.
Что такое чат-бот с искусственным интеллектом?
Чат-бот с искусственным интеллектом — это программа на веб-сайте или в приложении, которая имитирует человеческие разговоры с помощью НЛП (обработка естественного языка).Чат-боты запрограммированы на удовлетворение потребностей пользователей независимо от человека-оператора. Общие функции чат-ботов включают ответы на часто задаваемые вопросы и помощь пользователям в навигации по веб-сайту или приложению.
Используя машинное обучение и NLP, чат-боты на основе ИИ могут понимать намерения, стоящие за запросами ваших клиентов, учитывать всю историю разговоров каждого клиента, когда он взаимодействует с ними, и отвечать на их вопросы естественным, человеческим образом.
Если вы в настоящее время используете стандартный чат-бот, но хотите перейти на бот с искусственным интеллектом, мы составили список лучших чат-ботов с искусственным интеллектом на 2021 год. Читайте дальше, чтобы найти правильный для вас.
Лучшие чат-боты с искусственным интеллектом
- Конструктор чат-ботов HubSpot
- Домофон
- Помощник Ватсона
- Дрифт
- Миндсей
- Жирный360
- Zendesk Чат
- Salesforce Эйнштейн
- Рулай
- LivePerson
- Инбента
- Ада
- Вергич
- Получить
1.Конструктор чат-ботов HubSpot
Кредит изображения
HubSpot имеет простое и мощное программное обеспечение для создания чатов, которое позволяет автоматизировать и масштабировать живые чаты. Ваши клиенты смогут получать ответы на часто задаваемые вопросы, назначать встречи и перемещаться по сайту. В то же время их ответы сохраняются в вашей CRM, что позволяет вам квалифицировать потенциальных клиентов и запускать автоматизацию. Имейте в виду, что программное обеспечение HubSpot для создания чатов не совсем подпадает под категорию «чат-бот с искусственным интеллектом», поскольку оно использует систему, основанную на правилах.Однако у HubSpot есть фрагменты кода, позволяющие использовать мощный ИИ сторонних ботов, управляемых NLP, таких как Dialogflow.
Поскольку HubSpot — это CRM-платформа, использование чат-бота HubSpot в сочетании с фрагментами кода позволяет легко интегрировать инструменты маркетинга, продаж и обслуживания.
2. Домофон
Кредит изображения
Intercom — это программное обеспечение, которое поддерживает чат в реальном времени, чат-ботов и многое другое, чтобы предоставить потенциальным клиентам возможности обмена сообщениями.Используя машинное обучение и поведенческие данные, Intercom может ответить на до 33% запросов и предоставить персонализированный опыт.
3. Помощник Ватсона
Кредит изображения
Watson Assistant, разработанный одним из лидеров в области искусственного интеллекта, IBM, является одним из самых передовых чат-ботов на базе искусственного интеллекта на рынке. Предварительно обученный контенту из вашей конкретной отрасли, Watson Assistant может анализировать ваш исторический чат или журналы вызовов, искать ответ в вашей базе знаний, запрашивать у клиентов больше ясности, направлять их к представителям людей и даже давать вам рекомендации по обучению для оттачивания. его разговорные способности.
Watson Assistant может работать на вашем веб-сайте, в каналах обмена сообщениями, в инструментах обслуживания клиентов и в мобильном приложении. Чат-бот также поставляется с визуальным редактором диалогов, поэтому для его разработки вам не нужен опыт программирования.
4. Дрейф
Кредит изображения
Drift предоставляет программное обеспечение для разговорного маркетинга и продаж, основанное как на автоматизации (на основе правил), так и на искусственном интеллекте (NLP). Согласно их веб-сайту, «разговорный ИИ Drift обучен более чем 6 миллиардам разговоров, чтобы определить модели, которые привлекают и превращают посетителей в квалифицированный поток.» Это означает, что машинное обучение, с которым поставляется чат-бот, уже предварительно обучено и готово к работе.
5. Мысли
Источник изображения
Mindsay — это простая в использовании диалоговая платформа искусственного интеллекта с минимальным кодом, которая позволяет любому создать бота. Вы можете легко и быстро улучшить качество обслуживания клиентов и производительность команды.
Если вы используете Mindsay, у компании есть опыт работы с ведущими брендами в различных отраслях, что позволило компании адаптировать диалоговый ИИ к любым потребностям бизнеса.С этой настраиваемой платформой автоматизации обслуживания клиентов вы можете быстро получить готовый к работе чат-бот (независимо от технических навыков).
6. Жирный360
Кредит изображения
Компания Bold360, которой доверяют такие клиенты, как Intuit, Edible Arrangements и Vodafone, запатентовала собственную технологию обработки естественного языка, чтобы помочь брендам создавать чат-ботов, которые могут понять намерения ваших клиентов без необходимости сопоставления ключевых слов и научиться предоставлять им наиболее точные ответы. .
Разговорный ИИ Bold360 может интерпретировать сложный язык, запоминать контекст всего разговора и отвечать клиентам естественными ответами. Клиенты могут даже покупать ваши продукты через чат-бота. Вы также можете придать своему чат-боту индивидуальность и запустить его на большинстве каналов обмена сообщениями.
7. Чат Zendesk
Кредит изображения
Zendesk предлагает онлайн-чат и чат-ботов в рамках своего сервиса Zendesk Chat. Созданный с помощью мощной автоматизации в сочетании с технологиями Answer Bot и Flow Builder для создания потоков разговоров на основе искусственного интеллекта, он позволяет настроить чат-бота для ответов на распространенные вопросы клиентов без написания кода.
8. Salesforce Эйнштейн
Кредит изображения
Salesforce Einstein — это технология искусственного интеллекта, которая использует прогнозный интеллект и машинное обучение для поддержки многих функций Salesforce, включая предложения Salesforce Service Cloud и чат-ботов. Он способен решать запросы клиентов с помощью своих интеллектуальных диалоговых функций, и вы можете рассчитывать на него для сортировки и маршрутизации, а также для анализа данных.
9. Рулай
Кредит изображения
Благодаря глубокому обучению, основанному на понимании естественного языка, и адаптивным многозадачным возможностям, Ruali, чат-бот на основе искусственного интеллекта для корпоративных брендов, может понимать контекст разговора, предсказывать поведение пользователя, понимать предпочтения клиентов, выполнять действия, переключаться на различные задачи, и попросить клиентов для получения дополнительных разъяснений.
Rulai также интегрируется с большинством каналов обмена сообщениями, программным обеспечением для обслуживания клиентов, корпоративным программным обеспечением для бизнеса и платформами облачного хранения. Вы можете либо создать чат-бота Ruali с нуля с его консолью дизайна с перетаскиванием и позволить его ИИ адаптироваться к вашим клиентам, либо вы можете реализовать предварительно обученный чат-бот, которому были переданы данные из вашей конкретной отрасли.
10. Живой Человек
Кредит изображения
Собирая более 20 лет данных расшифровки сообщений и передавая их своему чат-боту на базе искусственного интеллекта, LivePerson может автоматизировать обмен сообщениями практически в любой отрасли и интегрироваться с большинством каналов обмена сообщениями, такими как ваш веб-сайт, мобильное приложение, Apple Business Chat, обмен текстовыми сообщениями, Google Rich Business обмен сообщениями, Line, Facebook Messenger, WhatsApp и Google AdLingo.
BotStudio от LivePerson также позволяет создавать чат-ботов с нуля, без каких-либо знаний в области программирования, а его аналитическая панель может отслеживать такие показатели, как настроение в режиме реального времени, уровень сдерживания ботов, время разговора с ботом, общее время разговора, средняя стоимость заказа и продажи с участием бота. позволяя вам понять влияние вашего чат-бота на прибыль вашего бизнеса.
11. Инбента
Кредит изображения
Разработанный специально для корпоративных брендов, чат-бот Inbenta использует машинное обучение и собственный механизм обработки естественного языка, чтобы определять контекст каждого разговора с клиентом и точно отвечать на его вопросы. Inbenta также предлагает диалоговый менеджер, который позволяет вам создавать собственные потоки и пути разговора.
Кроме того, когда чат-бот Inbenta понимает, что одному из ваших клиентов нужно поговорить с человеком, он передает разговор соответствующему агенту службы поддержки. Чтобы ваш чат-бот выглядел более человечным, вы также создаете для него собственный аватар.
12. Ада
Кредит изображения
Ada, которой доверяют такие клиенты, как Medium, Shopify и MailChimp, — это чат-бот на базе искусственного интеллекта, в котором есть конструктор перетаскивания, который вы можете использовать для его обучения, добавления GIF-файлов в определенные сообщения и хранения данных о клиентах.
Ada также может интегрироваться с большинством каналов обмена сообщениями и программным обеспечением обслуживания клиентов, отправлять персонализированный контент вашим клиентам, запрашивать отзывы клиентов и сообщать об экономии времени, усилий и затрат ваших ботов. Согласно их веб-сайту, Ada сэкономила своим клиентам более 100 миллионов долларов экономии и 1 миллиард минут усилий по обслуживанию клиентов.
13. Вергич
Кредит изображения
Vergic предлагает чат-бота на базе искусственного интеллекта, который может служить первой линией поддержки клиентов вашего бизнеса, обрабатывать транзакционные чаты и передавать более сложные проблемы вашим реальным агентам по обслуживанию клиентов.Это как гибридный чат-бот, который может повысить производительность ваших сотрудников.
Используя обработку естественного языка и понимание естественного языка, Vergic также может выполнять анализ настроений, делиться документами, выделять страницы, управлять диалоговыми рабочими процессами и составлять отчеты об аналитике чат-ботов.
14. Получить
Изображение предоставлено
Бренды в сфере розничной торговли, финансовых услуг, путешествий и других отраслей автоматизируют запросы клиентов с помощью ботов, высвобождая агентов, чтобы сосредоточиться на более сложных потребностях клиентов. Acquire предлагает интеллектуальных чат-ботов без кода как часть своей платформы взаимодействия с клиентами.
Acquire легко настраиваются с помощью визуального редактора, что позволяет создавать пользовательские потоки, соответствующие потребностям вашего бренда. Платформа интегрируется с рядом сторонних поставщиков ботов, что позволяет брендам легко использовать дополнительные библиотеки.
Примечание редактора: этот пост был первоначально опубликован в марте 2019 г. и был обновлен для полноты картины.
Как обнаружить ботов на вашем сайте, в приложении и API.
Распространенные методы и приемы обнаружения ботов (и их ограничения)
Капчи
Captcha были созданы в конце 1990-х годов для предотвращения спама ботами поисковых систем или форумов. В то время ботов было не так сложно отфильтровать, а капчи работали довольно хорошо в течение почти двух десятилетий. Однако сегодня капчи стали проблематичными по двум причинам.
Во-первых, капчи делают Интернет менее доступным.Проблемы с распознаванием аудио или изображений — кошмар для людей с ограниченными возможностями. Они также убивают ваши конверсии, потому что их может быть довольно сложно решить, и они добавляют трения в критические моменты на ваших веб-сайтах или в веб-приложениях.
Во-вторых, капчи больше не помогают идентифицировать ботов. Многие боты теперь используют API, который подключается к фермам капчи, которые могут решить любую задачу за считанные секунды практически бесплатно. Кроме того, боты теперь могут казаться настолько человечными, что зачастую им вообще не вводят капчу.
WAF
Брандмауэры веб-приложений предназначены для защиты веб-сайтов или веб-приложений от известных атак, таких как SQL-инъекции, перехват сеанса и межсайтовые сценарии. Они используют набор правил, которые отфильтровывают хороший бот-трафик от плохого бот-трафика. В частности, WAF ищут запросы, содержащие знакомые сигнатуры атак.
В результате WAF могут блокировать только знакомые угрозы. Они неэффективны для блокировки современных постоянно меняющихся продвинутых ботов, которые не несут очевидных признаков атаки.Кроме того, многие атаки ботов, такие как мошенничество с захватом учетных записей, остаются в рамках совершенно нормальной бизнес-логики. Просто похоже, что кто-то пытается войти в систему, что WAF не распознает как потенциальную проблему.
WAF также в значительной степени зависят от репутации IP-адресов для управления ботами. Если IP-репутация запроса плохая, предполагается, что все действия с этого IP-адреса будут плохими. И наоборот, если репутация IP-адреса хорошая, он, вероятно, пропустит все запросы, поступающие с этого IP-адреса. Как упоминалось ранее, операторы ботов теперь могут дешево и легко чередовать высококачественные резидентные IP-адреса, что делает WAF неэффективным решением для обнаружения и предотвращения ботов.
МИД
Многофакторная аутентификация — хороший способ защитить учетную запись пользователя. Если у ваших пользователей есть учетные записи на ваших веб-сайтах или в приложениях, вы должны порекомендовать им переключить его. Но вы быстро заметите, что многие пользователи не будут беспокоиться. Это просто слишком много трения. Это ограничивает возможности MFA в качестве решения для обеспечения безопасности.
Кроме того, хотя MFA помогает защитить ваших пользователей от атак с подменой учетных данных и захвата учетных записей, он не защищает ваш бизнес от других атак ботов, которые все еще могут нанести серьезный ущерб, таких как поисковые роботы или DDOS-атаки.
.