Самому обеспечивать гибкость и контроль собственного ML-пайплайна — это важно. Команды по машинному обучению могут использовать проприетарные платформы или создавать собственные решения с помощью Open-Source-инструментов. Компании часто представляют проприетарные платформы как более мощные, эффективные и простые в использовании. Но в действительности они часто оказываются более сложными и менее мощными, чем их Open-Source-конкуренты.
Команда VK Cloud перевела статью с аргументами в пользу Open Source по сравнению с проприетарным ПО, основанную на опыте компании, которая создает MLOps-архитектуру исключительно из Open-Source-компонентов.
У Open Source выше качество
Многие с подозрением относятся к бесплатным инструментам. Но у Open-Source-программ качество часто оказывается выше, чем у платных конкурентов. ИТ-гиганты вроде Google и Microsoft активно используют в работе Open-Source-программы и часто поручают работу над этими проектами своим лучшим разработчикам.
С Open-Source-проектами часто имеет дело гораздо больше людей, чем с Closed Source. У такого положения дел есть преимущества: если разработчик обнаружил баг, он может исправить ошибку — на пользу всем.
Наконец, Open-Source-программы обычно не рекламируют. Успех таких проектов определяется прежде всего высоким качеством продукта. А вот успех коммерческого проекта зависит от многих факторов, например от маркетинга, брендинга и привлеченных партнеров. Ведь компании часто склонны тратить на эти факторы больше времени и сил, чем на разработку.
Так что выражение «бесплатный сыр только в мышеловке» совершенно не работает применительно к Open Source.
Open Source способствует профессиональному росту и упрощает поиск сотрудников
Разработчики стремятся изучать Open-Source-инструменты, потому что эти знания можно использовать и в других компаниях. Никто не хочет попасть в ловушку на своей нынешней работе из-за того, что он десять лет кряду во всех подробностях изучал одну внутреннюю платформу.
Не всем нравится, когда их команда пользуется инструментами вроде TensorFlow и Kubernetes, которые востребованы и в других компаниях. Но на самом деле это единственный экологичный способ привлечь самых талантливых специалистов.
Знание распространенных решений может пригодиться и вашей команде: гораздо легче найти эксперта-консультанта или даже просто получить помощь сообщества, если вы работаете с теми же инструментами, что и вся отрасль.
Для Open-Source-решений характерна модульная архитектура
Корпоративные платформы часто позиционируют себя как полномасштабные. Именно так они пытаются выделиться на фоне конкурентов. Они предлагают себя не просто как платформу для обучения или инструмент для развертывания, а как универсальные решения, как «инструмент, после которого вам не понадобятся другие программы».
Но нельзя быть лучшим во всем сразу. Монолитная природа этих решений не позволяет менять отдельные компоненты. Если ваша команда хочет использовать лучший реестр моделей, его просто не получится встроить в существующую платформу.
Напротив, более гранулярные Open-Source-программы гораздо проще интегрировать с другими платформами. Open-Source-решение больше напоминает конструктор «Лего»: если какой-то компонент вам не подходит, от него можно просто отказаться и подобрать альтернативу.
У проприетарных платформ есть скрытые расходы
Проприетарные платформы стремятся постоянно продавать имеющимся клиентам обновления и новые функции. Во многих случаях это значит, что они не озвучивают открыто свои ограничения.
В момент продажи вас, возможно, будут убеждать, что вам идеально подойдет недорогой тариф. И только после покупки вы вдруг поймете, что в этом тарифе нет ключевых функций или действуют определенные лимиты, парализующие рабочие процессы. По крайней мере, пока вы не заплатите за апгрейд.
А еще эти платформы могут без предупреждения поднимать цены, так что вашей команде придется в спешке все переписывать или платить сверх запланированного бюджета.
Справедливости ради: когда имеет смысл использовать проприетарные платформы
Если у вас не очень опытная команда разработчиков, особенно в том, что касается DevOps, создания инфраструктуры и управления ею, настройка и эксплуатация Open-Source-решений может оказаться трудоемкой задачей.
Open-Source-инструменты обычно создают «разработчики для разработчиков». В ряде случаев нетехническая команда, например отдел маркетинга, предпочтет проприетарные платформы.
Наконец, если вы работаете над маленькими внутренними проектами или экспериментальными предложениями, инфраструктура зачастую практически не нужна. Если люди не пользуются вашим решением как продуктом, подойдут и готовые инструменты — например, для быстрой визуализации.
Построить систему машинного обучения поможет Cloud ML Platform от VK Cloud — система, построенная на базе Open-Source-инструментов. Это готовая платформа для полного цикла ML-разработки и совместной работы Data-команд. Новым пользователям для тестирования мы начисляем 3000 бонусных рублей.
Комментарии (2)
Soupbreak
13.06.2023 10:43+1Можно поменять "опенсоурс" и "проприетарное" местами и статья никак не потеряет и не приобретет в ценности
wadik69
Так а где ответ на вопрос почему для MLOps лучше выбирать Open Source, а не проприетарное ПО ? В статье рассказывается в общем, почему стоит использовать Open Source решение