Всем привет! С вами команда МТС Digital: Иван Жоров и Вячеслав Саушкин — разработчики RPA, Вячеслав Диасамидзе — руководитель центра «Роботизация», Владимир Абрамов — тим-лидер.
Сегодня обсудим импортозамещение в области софта на примере технологии RPA (Robotic Process Automation). Этот инструмент позволяет создавать ботов, которые будут выполнять за сотрудника рутинные задачи. Как это выглядит на практике и какие сейчас есть платформы, обсудим в статье. А еще поделимся, какую платформу и почему в свое время выбрали в МТС. Кейс тоже будет!
![](https://habrastorage.org/getpro/habr/upload_files/80c/6fd/470/80c6fd4708fe34eed7d4d7dbccbce5ab.jpg)
В крупных компаниях только и говорят о переходе на отечественные продукты. В целом переход на что-то свое по софту сейчас в тренде. Если с автомобилями все понятно, то по софту мы действительно можем конкурировать с мастерами ИТ и из Китая, и из Индии.
![](https://habrastorage.org/getpro/habr/upload_files/131/b97/a6c/131b97a6c23c97408bd513c41a3cb252.png)
Что такое RPA и чем она полезна
RPA (Robotic Process Automation) — технология, которая позволяет автоматизировать бизнес-процессы. Это как классическое создание линейного скрипта, так и возможность интеграции с AI-моделью — а это дает вариацию при работе с данными. Простыми словами, это инструмент для создания бота, который будет выполнять запрограммированную последовательность действий или операций.
Как это выглядит на практике? Например, сотрудник бухгалтерии каждое утро выполняет один и тот же комплекс операций: проверяет почту, скачивает отчет по зарплатам, сверяет данные из 1С с данными в отчете, загружает в SAP сверенные данные. Можно забрать этот утренний ритуал у бухгалтера и делегировать его боту RPA, который будет запускаться на компьютере простым щелчком мыши. Бот быстрее обработает большой объем данных, нивелирует человеческий фактор и сократит количество ошибок.
![](https://habrastorage.org/getpro/habr/upload_files/231/6ff/062/2316ff062b7dd7b299f8c8d055aab243.png)
Получается, с RPA можно делегировать рутинные задачи роботу и освободить человеческий ресурс для действительно сложной работы. К тому же боту не нужно отдыхать, он работает круглые сутки.
Все упирается в доступность виртуальной среды, где работает бот. Главное — мы можем тиражировать бота на разные виртуальные среды. То есть если мы понимаем, что сегодня пришел отчет на 10 миллионов строк, не беда: мы просто клонируем бота 100 раз на 100 виртуальных средах Windows или Astra Linux — отечественный дистрибутив, к слову про импортозамещение. Остается запустить отработку задачи.
Теперь возьмем пример из жизни HR-специалиста. Один из кейсов HR: нужно скачать анкету с ресурса, потом договориться с соискателем по поводу встречи, выбрать удобное время для собеседования и сохранить информацию по собеседованиям, чтобы не запутаться. В этом кейсе хватает трудностей и креатива. На первый взгляд, выполнять все эти шаги должен именно сотрудник и это не тот случай, когда бот может забрать на себя «рутину». Но на радость HR-специалистам подход RPA поможет и здесь — в связке с языковой моделью. Не переключайтесь — этот кейс разберем в конце статьи. Но сначала расскажем, как мы выбирали платформу RPA в МТС.
![](https://habrastorage.org/getpro/habr/upload_files/5db/86b/71e/5db86b71e432351ef8b323653a135e65.gif)
Как выбирали платформу RPA в МТС
Тут есть о чем поговорить. Когда зарубежные платформы начали уходить из России, компании стали искать отечественные аналоги на внутреннем рынке. В 2022-м году выбор был, но с оговорками. Спойлер: тогда платформы были «сырыми», сейчас ситуация сильно изменилась.
Из каких платформ выбирали
Мы проанализировали рынок, и у нас получилась такая выборка:
![](https://habrastorage.org/getpro/habr/upload_files/32a/2e1/1b8/32a2e11b8a5c7abce3705666fa8aa635.png)
С платформами определились. Дальше нужно было понять, как их оценивать.
Как оценивали платформы
Мы сформировали для себя четыре основных критерия:
Система управления роботами: критерии работы в оркестраторе. Например, создание новых ролей.
Разработка: критерии, относящиеся к написанию робота в студии разработки. Например, работа в Chrome (GUI).
Технические критерии: критерии, относящиеся к технической части платформы. Например, скорость работы платформ.
Сопутствующие факторы: факторы удобства работы в платформе. Например, наличие академии.
Дополнительно ввели понятие бизнес-важности — это о том, как тот или другой критерий влияет на бизнес-процесс роботизации. Самый значимый оценивался в 3 балла, средней значимости — в 2 балла, низкой — в 1 балл. После этого оценка по критерию перемножалась на бизнес-важность и выводилась конечная оценка.
Но это еще не все. Итоговая оценка по каждой платформе включала в себя две составляющие:
конечная оценка по критериям (критерий «бизнес-важность»);
определение блок-факторов.
С критериями разобрались, теперь объясним, что такое блок-факторы. Так называют факторы, которые на текущий момент и для текущих процессов будут критическими. Например, все компоненты работают отлично, но платформа не поддерживает работу в окружении Linux и не собирается добавлять поддержку в дальнейших обновлениях. Это и есть пример блок-фактора.
Дальше наглядно покажем, как мы оценивали платформы. Но сначала важное уточнение: все описания основаны на аналитике конца 2022 года — того периода, когда мы выбирали для себя внутреннюю платформу. Конечно, платформы RPA, как и другое ПО, могут меняться. И то, чего не было раньше, возможно, уже появилось в новых версиях.
![](https://habrastorage.org/getpro/habr/upload_files/39d/b5e/c44/39db5ec4475e9217a3b1b10138d45539.png)
Комментировать таблицу будем снизу вверх.
ROBIN: Robin Manager Console-2.3.0 (orchestrator); Robin Manager Console 2.7.11.39669
RPA — платформа, основанная в 2019 году, уже довольно узнаваемая. Крупные компании уже вовсю писали роботов на Robin.
На момент сравнения у платформы не было многих функций, которые нам были нужны в оркестраторе. Например, создание новых ролей, отсутствие встроенных очередей транзакций и так далее. Поэтому у платформы невысокий балл в системе управления роботами. Что касается критериев разработки, у платформы есть студия, основная концепция которой — no-code-разработка. Поэтому в части разработки платформа набрала высокий балл.
PIX: Pix Master v1.15 (orchestrator); Pix Studio v2.8.7
В 2020 году была выпущена первая версия. У платформы свое хорошее комьюнити и PIX Academ, где можно познать дзен в этом продукте. Есть конвертер переноса процессов с UIpath на PIX, что может сильно облегчить жизнь при миграции процессов.
Pix прошел практически все критерии в части проверки функциональности оркестратора. Были и критерии, которые не прошли блок-факторы. Например, возможность перезапуска ручных транзакций вручную. Но они были заявлены в ближайших релизах.
С точки зрения критериев разработки роботов в студии можно писать как с помощью low-code-подхода, так и с помощью классического построчного написания кода. Hа момент сравнения был сильный перекос на работу с кодом. У базовых активностей было мало функциональности — например, не хватало готовых активностей для работы с почтой.
Shepra Rpa: Sherpa Designer v1.21; Sherpa Orchestrator 1413
Первая версия дизайнера появилась в 2019 году. Создание роботов в платформе напоминает BluePrism, а значит разработчикам, которые работали с BluePrism, будет легче перейти на Shepra Rpa. Роботы пишутся на языке PowerShell, что не совсем обычно для RPA-платформ.
В платформе очень много готовых активностей. У Sherpa RPA неплохой оркестратор, но не лучший UI/UX. Ранние версии страдали от неприятных багов — например, был баг мерцания интерфейса, при котором было трудно выбирать роботов из списка. Если исключить из расчета баги, то оркестратор у Serpa Rpa прошел больше всех блок-тестов и оказался на первом месте в части системы управления роботами.
Тут есть комьюнити, и очень хорошее. В платформе много готовых активностей, но большая их часть не была покрыта документацией. Это мешает так называемым citizen developer — тем, у кого нет образования программиста и кто мало связан с автоматизацией. В целом, это очень сильный вендор. Платформа прошла 98% наших критериев, но оценка не везде была «5».
Primo RPA: Orchestrator v2.2.3.0; Primo Robot v1.1.24.1; Primo Studio v1.1.24.1 (целевая платформа)
Primo RPA — российский приемник у UIPath. Часть команды, которая раньше занималась поддержкой UIPath в России, перешла в Primo.
Эта платформа действительно похожа на UIPath, а значит разработчику не придется искать инструменты, он интуитивно понимает, где что находится. Переход с одного продукта на другой будет более быстрым.
У оркестратора Primo та же функциональность, что и у оркестратора UIPath, но с небольшими оговорками. Как и в PIX, тут есть конвертер. Но всегда нужно держать в голове, что конечная цифра полного переноса с UIPath на Primo не всегда 100%. Более реальная цифра — 40–50%. Все зависит от сложности переносимого процесса.
Работать в студии Primo можно как с помощью low-code-подхода, так и с помощью построчного написания кода. Активности в большей части покрыты документацией.
Другие сильные стороны: вариативная функциональность в работе с переменными и типами данных, своя Academy для погружения пользователей в платформу.
Недостатки тоже были. Например, программные ошибки в студии разработки. Спустя какое-то время работы в режиме написания проекта могла возникнуть ошибка. В дальнейших обновлениях это поправили. Другой пример — скудная реализация работы с очередью: нельзя было перезапустить ошибочные транзакции вручную.
Какую платформу выбрали
Как вы уже поняли по сравнительной таблице, больше всего баллов набрала Primo RPA. На наш взгляд, эта платформа оказалась самой сбалансированной среди всех.
Были блок-факторы, которые на момент теста платформа не прошла — например, перезапуск ошибочных транзакций вручную. Но вендор заявил их в будущих релизах. Забегаю вперед: эту функциональность действительно добавили.
Что с Primo сейчас
Сегодня Primo решила проблемы в плане стабильности платформы, перестала вылетать. Оркестратор с выпуском каждого релиза становится более удобным и user friendly. Например, если раньше нельзя было останавливать работы нескольких роботов за один раз, то в более поздних версиях добавили эту возможность. В Help Desk можно создавать заявки и получать обратную связь, если нужно что-то исправить в платформе или добавить.
Еще у платформы теперь есть Primo RPA Idea Hub. Это программный продукт для комплексного управления процессом роботизации. Встроенный инструментарий собирает и анализирует предложения по роботизации процессов внутри организации, оценивает эффективность, мониторит статус реализации задач.
Появилась RPA MWS — облачная платформа на базе Primo RPA. Пока такая интеграция есть только у МТС. Подход удобен тем, что вся архитектура, которая нужна для разработки роботов на Primo, уже развернута. Есть техническая поддержка этой инфраструктуры 24/7. Финальная гарантия доступности платформы SLA — 99,95%.
У облачного RPA много плюсов:
удобная тарификация;
![](https://habrastorage.org/getpro/habr/upload_files/a08/fef/2c7/a08fef2c7b292e688c0115ff875984bc.png)
разные типы реализации;
![](https://habrastorage.org/getpro/habr/upload_files/d27/25d/291/d2725d291b39803d45f7b1d2e01865ba.png)
готовая и развернутая инфраструктура;
![](https://habrastorage.org/getpro/habr/upload_files/6cc/733/fa4/6cc733fa4868cc54f8f693693d76806a.png)
А главное преимущество — все это можно быстро интегрировать в инфраструктуру компании, даже если все ее системы функционируют в закрытом контуре. С таким подходом можно эффективно внедрять RPA-процессы в своей инфраструктуре.
Ну а теперь вернемся к обещанному HR-кейсу.
Кейс интеграции RPA с языковой моделью. Бот в HR
Задачи у HR-специалиста такие:
Среди множества анкет на HeadHunter выбрать ту, которая отвечает требованиям.
Связаться с соискателем в Telegram и договориться по поводу собеседования.
Назначить звонок на время, которое удобно соискателю, HR-специалисту и руководителю отдела, куда будет собеседоваться соискатель.
Зафиксировать встречи во внутренней системе компании с возможностью отображения данных на досках — по аналогии с Jira. Это важно, чтобы избежать накладок.
Создать встречу в Outlook.
Тут-то и получается идеальная интеграция RPA с языковой моделью. C HeadHunter по GUID-форме мы собираем всю информацию. Потом передаем на вход модели массив данных по собеседуемому человеку и позиции, на которую он собеседуется. Еще на вход подаем данные с внутренней системы компании по свободным слотам для собеседования. Бот уточняет у собеседуемого, актуальна вакансия или нет. Если актуальна, уточняет, какое время удобно для собеседования. Получает или не получает обратную связь, заносит в файл данные. Выглядит это примерно так:
![](https://habrastorage.org/getpro/habr/upload_files/a6b/c8c/eb5/a6bc8ceb5407768dee365747b8bff524.png)
После анализа HR проверяет информацию. Если боту не удалось связаться с соискателем, подхватывает задачу и отрабатывает ее в ручном режиме. Потом модель дает массив выходных данных, по которому мы формируем файл для HR и параллельно передаем информацию для занесения на внутренний ресурс.
![](https://habrastorage.org/getpro/habr/upload_files/fe6/735/a7a/fe6735a7a26df7849e8b6820405040ac.png)
Так это и работает.
Вывод
С 2022 года вендоры сильно поднажали, так что в 2024 есть из чего выбирать. Все упирается в бюджет и конкретные задачи, которые вы хотите достичь с помощью RPA.
На нашем опыте внутри МТС Digital для выбора платформы можно выделить такие шаги:
определить бюджет и тип лицензий, который будет удобен именно вашей компании;
определить требования, которые важны в компании и для ваших задач;
выделить из этих требований блок-факторы;
если блок-факторы выявятся, узнайте, может ли вендор в дальнейших релизах внедрить функциональность под них.
Основное рассказали, пока на этом все. Задавайте вопросы в комментариях — будем обсуждать!