Все больше компаний внедряют ИИ в свои бизнес-процессы. По данным последнего опроса McKinsey & Company, доля респондентов, сообщивших, что их организации используют ИИ хотя бы в одной бизнес-функции, выросла с 78% до 88% по сравнению с прошлым годом. Однако широкое распространение технологий не означает их эффективное внедрение. Во многих компаниях использование ограничивается пилотными проектами. Исследования показывают: до 70% AI-инициатив не переходят в полноценное производство из-за сложностей с масштабированием, обновлением и интеграцией в реальные бизнес-процессы.
Сократить разрыв между экспериментальным этапом и реальным внедрением можно с помощью MLOps. Это набор практик и инструментов, которые помогают разрабатывать, запускать и поддерживать системы машинного обучения (ML-модели). О том, как с помощью MLOps внедрять AI-эксперименты в реальный бизнес и какие вызовы ждут компании на этом пути, рассказал Иван Тимонов – DevOps/MLOps-инженер финтех платформы Tabby. Он специализируется на проектировании и автоматизации масштабируемых дата-инфраструктур для аналитики и машинного обучения. В Tabby – финтех-единороге из ОАЭ, первой BNPL-платформе Ближнего Востока – Иван построил платформенные решения, которые позволяют сотням специалистов по data engineering, data science и аналитике эффективно работать с ИИ. Этот опыт дает ему понимание, как международные практики MLOps могут помочь компаниям из Центральной Азии и сопоставимых быстрорастущих рынков.
«Основная задача MLOps – устранить хаос»
— Многие компании запускают AI-эксперименты, но лишь малая их часть доходит до реального применения в бизнесе. С чем это связано?
— Действительно, такая ситуация встречается часто: модель демонстрирует отличные результаты в лаборатории на тренировочных данных, но когда ее запускают в реальных условиях, качество резко падает. Согласно исследованию TRIADA Partners, 70% крупных компаний в горнодобывающей, металлургической, нефтегазовой и строительной отраслях России пока не окупили инвестиции в AI. А отчет MIT «The GenAI Divide» показывает: несмотря на миллиарды инвестиций, 95% компаний пока не получают никакой отдачи от генеративного ИИ.
Основные факторы, которые на это влияют, можно условно разделить на три блока:
Первый – качество данных. Если модель обучалась на неполных или некачественных данных, то она будет плохо работать в реальных условиях.
Второй – задержка при внедрении. Если не выстроены процессы запуска и модель слишком долго проходит путь от теста до реальной работы, то даже «правильные» данные могут потерять актуальность.
Третий – деградация моделей (model drift). В отличие от классических приложений, ML-модели со временем теряют способность предсказывать результат с прежним качеством. Это естественный процесс, связанный с изменением данных и бизнес-контекста. Его нужно отслеживать, иначе модель перестанет отвечать требованиям бизнеса.
— Как MLOps помогает преодолеть эти барьеры и ускорить внедрение моделей в реальный бизнес?
— Основная задача MLOps – устранить хаос, который часто сопровождает работу с ML-моделями, и превратить ее в понятный и управляемый процесс.
Простой пример: на этапе экспериментов дата-сайентисты запускают десятки или даже сотни вариантов моделей, чтобы добиться оптимальных результатов. Если фиксировать параметры вручную, это займет много времени, потребует дисциплины и в любом случае останется ненадежным. В MLOps для этого используют специальные сервисы трекинга экспериментов – MLflow или Weights & Biases. Они позволяют автоматически сохранять параметры, данные и результаты, сравнивать эксперименты и прозрачно выбирать лучший вариант для вывода в продакшен.
Таким образом, MLOps снижает вероятность ошибок, ускоряет внедрение и обеспечивает бизнесу предсказуемость: модель в продакшене работает так же, как на этапе исследований, а ее улучшения фиксируются и масштабируются системно.
pexels.com / Tara Winstead
— В чем принципиальное отличие MLOps от DevOps? Почему нельзя просто позаимствовать практики разработки программного обеспечения?
— На первый взгляд, MLOps и DevOps действительно решают схожие задачи: ускорение процессов, повышение стабильности и качества продукта. Но ключевое различие заключается в том, что мир машинного обучения живет по другим правилам – главным образом из-за роли данных.
Поэтому, несмотря на то что MLOps унаследовал многие принципы DevOps – автоматизацию, CI/CD (способ быстро и автоматически обновлять продукты, – прим.Digital Business), инфраструктуру как код, – наличие фактора данных не позволяет просто перенести DevOps-подход. MLOps требует собственных практик для контроля качества данных, регулярного переобучения и мониторинга моделей в эксплуатации.
Без системного подхода модели ломаются: почему MLOps должен стать стандартом?
— Какие инструменты и подходы в MLOps вы считаете базовыми, без которых невозможно построить стабильную и надежную модель машинного обучения?
— Надежный MLOps-процесс строится вокруг нескольких принципов. Прежде всего – это трекинг экспериментов и воспроизводимость. Для команд, которые тестируют десятки и сотни вариантов моделей, крайне важно точно понимать, какой эксперимент дал лучший результат, с какими параметрами и на каких данных он был проведен. Здесь помогают уже упомянутые MLflow или Weights & Biases, а также DVC (программа, которая помогает хранить и отслеживать разные версии данных и моделей, – прим. Digital Business).
Не менее важно качество данных. Любая модель будет бесполезна, если входные данные изменились или потеряли актуальность. Чтобы избежать этого, MLOps создает четкие правила для данных – что именно и в каком виде должно приходить, а также автоматически проверяет их качество с помощью специальных инструментов, например с помощью OpenMetadata.
Еще один ключевой элемент – автоматический запуск модели в работу. Модель должна попадать в продакшен по понятному и автоматическому пути: сборка вместе со всеми нужными файлами и настройками в один готовый контейнер, тестирование на промежуточных окружениях и выпуск в боевую среду только после прохождения всех проверок.
И наконец, мониторинг. Он нужен не только для технических параметров, но и для отслеживания качества работы модели в реальном бизнес-контексте. Это помогает вовремя замечать снижение качества и корректировать модель до того, как пострадают пользователи или метрики компании.
— Можете привести примеры, когда внедрение MLOps помогло быстрее вывести продукт на рынок или сократить расходы на его поддержку?
— Один из показательных кейсов связан с быстрым ростом нашей команды. За полгода она увеличилась с 7 до 15 инженеров. Вместе с этим начала проявляться проблема: код дублировался из проекта в проект, не было централизованного хранения зависимостей (библиотеки, модули, фреймворки и другие внешние инструменты для проекта, – прим. Digital Business), адаптация новых сотрудников занимала много времени, а разработка становилась все более фрагментированной.
Чтобы решить эту задачу, мы выстроили единый подход к управлению зависимостями и инфраструктурой. Я настроил отдельный проект, где код хранится в виде готовых блоков, которые можно легко использовать повторно. Кроме того, настроил автоматическую «упаковку» рабочей среды в программе Jupyter Notebook. Эта среда запускалась в многопользовательской платформе JupyterHub, и вся команда могла работать с ней без лишних настроек.
В результате любой инженер мог буквально в несколько кликов создать готовую среду для работы и экспериментов – со всеми библиотеками и настройками. Это сократило время подготовки с 20–40 минут до нескольких минут и упростило обмен наработками между коллегами. По сути, MLOps-практика позволила убрать барьеры внутри команды, ускорить эксперименты и снизить затраты на поддержку инфраструктуры.
Иван Тимонов
— Какие ошибки чаще всего допускают компании, когда пытаются внедрять машинное обучение без системного подхода?
— Чаще всего проблемы связаны с отсутствием воспроизводимости и надежной инфраструктуры. Когда модель запускается напрямую из Jupyter Notebook, невозможно гарантировать стабильность: в случае инцидента трудно восстановить прошлую версию или понять, на каких данных и с какими параметрами она обучалась.
Другой распространенный риск – работа с данными без контрактов и тестов. При изменении структуры или распределения входных данных модель может продолжать функционировать, но фактически выдавать некорректные результаты, если не настроен мониторинг внутренних метрик.
Не менее серьезная проблема – отсутствие мониторинга качества моделей в продакшене. Руководитель направления департамента методологии, анализа и консалтинга БФТ-Холдинга Алексей Краснер отмечал, что основной причиной ошибок являются недостаточно комплексный подход и поверхностный анализ.
— Если смотреть в будущее, каким будет MLOps через 3–5 лет? Можно ли ожидать, что он станет стандартом для всех AI-команд?
— На мой взгляд, это неизбежно. Сегодня практики MLOps еще могут восприниматься как дополнительный и необязательный слой инженерии, но очень скоро рынок придет к пониманию: без этого невозможно поддерживать модели в продакшене.
В норму войдут контракты для данных и моделей. Как сейчас никто не выпускает код без тестов, так же не будет «непроверенных» датасетов или фич. Стандартом станет мониторинг качества данных и бизнес-метрик, что позволит отслеживать деградацию модели еще до того, как пострадают пользователи или ключевые показатели компании.
Фактически MLOps превратится в дисциплинарный стандарт: модель нельзя будет вывести в реальную рабочую среду, пока она не прошла тесты, сравнение с текущей версией и не подтвердила, что отвечает бизнес-метрикам. Это обеспечит предсказуемость и снизит риски, а инженерам и дата-сайентистов позволит сосредоточиться на решении ML-задач, а не на борьбе с хаосом вокруг них.