Использование ML/Data-опенсорса в России
Проанализировали решения, инструменты и их применимость.
Выделили главных игроков, обозначили проблемы и перспективы.
$ git add
main {

}
<script>

$ git switch
<script>

Photographer
Об исследовании
Авторы исследования ― представители сообщества разработчиков и пользователей открытого научного кода в ИТМО.

Мы создаем свои открытые решения и помогаем создавать и популяризировать опенсорс-решения другим, проводим профильные мероприятия и предоставляем полезные материалы. В составе сообщества около 1000 участников.

Большинство из них уже в нашем телеграм-чате. Здесь также можно связаться с нами и задать любые вопросы по исследованию.
Кто мы?
Авторы исследования ― сотрудники центра «Сильный ИИ в промышленности» ИТМО. Нам есть что сказать о создании ПО с открытым кодом в сферах ИИ/ML/DS и его применении в реальных проектах. С нашим участием в университете сформировалось крупнейшее в России академическое опенсорс-сообщество. Поэтому мы решили поделиться своим опытом и сделать «авторское» исследование. Вместе с тем, мы опираемся на мнения топовых экспертов и количественные метрики.
Несмотря на широкое использование опенсорс-решений в Data/ML в целом, многие специалисты знакомы только с привычным для их области стэком. Поэтому мы решили сделать консолидированный обзор используемых решений в различным категориях, с помощью которого можно сориентироваться в основных инструментах.
ИИ меняет правила в опенсорсе: новые инструменты позволяют создавать решения быстрее и дешевле, это трансформирует существующие практики. Поэтому мы не только поговорили с экспертами о текущем положении дел, но попробовали сформировать прогноз развития области на ближайшие пару лет.
  • Николай Никитин

    к.т.н, лидер сообщества ITMO.OpenSource

  • Андрей Гетманов

    опенсорс-энтузиаст, исследователь в области LLM и AutoML

  • Ирина Деева

    к.ф.м.н, руководитель проекта по развитию открытого кода на факультете ФЦТ

  • Юрий Каминский

    аспирант, исследователь в области LLM, руководитель студенческого опенсорсного клуба

  • Кирилл Федорин

    Cтудент ИТМО

  • Иван Рубин

    Cтудент ИТМО

  • Алексей Пицур

    UX UI Дизайнер

Общепринятой таксономии внутри ML/Data нет, поэтому мы ориентировались на мнения экспертов и укрупненные теги репозиториев на GitHub. Чтобы было понятнее, для каждой категории дали пояснение и несколько примеров. В них мы подобрали представителей разных «уровней» опенсорса ― от разработок гигантских корпораций до академических решений и успешных пет-проектов.
Инструменты ML и AutoML
Инструменты для обучения моделей МО и сборки их в пайплайны (вручную и автоматические).
Яндекс
Сбер
ИТМО
Сообщество
Microsoft
AMAZON
Математическое обеспечение
То, что называют Scientific Computing, ― реализации алгоритмов для работы с данными и моделями
Сообщество
МФТИ
AIRI
Яндекс
RAPIDS
NVIDIA
Инфраструктура
Решения для обработки данных и запуска моделей в конкретном окружении (например, распределенном)
Platform V
Cбер
YTsaurus
Яндекс
Hadoop
Apache
Spark
Apache
Визуализация и BI
Инструментарий для майнинга, визуализации и аналитики данных и таящихся в них зависимостей
Сообщество
Polars
Metabase
Яндекс
Apache
greenplum
Yandex
Хранение данных

Базы данных всех видов и сортов
Сообщество
Tarantool
ClickHouse
Яндекс
Tinkoff
MongoDB Inc
MLOps и LLMOps
Всё, что помогает нам «приземлять» методы и модели ИИ в реальных проекты
LangChain
lmware-ai
Cбер
Начинающим пользователям ML/Data-решений, которые хотят узнать о используемых на практике инструментах;
Авторам собственных открытых проектов, которые ищут лучшие практики их популяризации;
Опытным и начинающим контрибьюторам в опенсорс, которые ищут информацию об интересных проектах для участия;
Опенсорс-энтузиастам, которые хотят иметь представление о структуре опенсорс-сообщества.
Опенсорс - не российский, а общий. Почти все компании-разработчики открытых решений в Data/ML цепляется не только на внутренний, но и на международный рынок. Аналогично с пользователями - используется то, что лучше работает, а не то, что сделано в конкретной стране.
Использование публичных API GitHub-а позволяет собрать много интересных данных - кто, где и когда использует открытые проекты.
В России создается много сильных открытых инструментов, которые реально используются в технологическом стеке крупных компаний и частных пользователей. Их авторы - как “бигтех” (здесь в качестве лидера можно признать Яндекс), так и небольшие команды, в том числе академические (здесь объективно сильные позиции у ИТМО - про это мы уже писали в предыдущем исследовании).
Спойлер
В компаниях (и не только) есть множество энтузиастов опенсорса, продвигающих свои идеи и участвующих в развитии своих и чужих проектов. Однако, сильно не хватает системности и поддержки (в том числе и схем монетизации).
Опенсорс - это не только про код. Публикации моделей, данных и бенчмарков - не менее важное дело, и многие активно используемые датасеты создаются российскими компаниями.
Продвигать свои проекты - сложно. Несмотря на наличие большого числа конференций и митапов, многих форматов и площадок не хватает. Есть и проблемы с квалификацией потенциальных участников открытых проектов. Здесь могут помочь университеты и их студенты - опыт их участия в разработке опенсорса обычно позитивный.
Выводы
Какие компании - в лидерах?
Среди основных российских разработчиков, которые занимаются созданием своих открытых решений или являются контрибюторами в опенсорс (в сфере Data/ML), упомянутых экспертами и обладающих сильными позициями по результатам анализа открытых данных, мы можем выделить:
Яндекс
Сбер
Evrone
1
2
3
4
5
Тинькофф
Postgres Pro
VK
10
9
8
7
6
Avito
MTS
Selectel
Академия
Университеты и институты
Яндекс определяется как лидер благодаря нескольким факторам:
Большое количество активно развивающихся open-source проектов, охватывающих все тематические категории в области Data/ML. Проекты включают в себя открытые модели и данные;
Лучшие показатели используемости этих проектов в России по сравнению с другими российскими компаниями. Это подтверждается как информацией от экспертов, так и открытыми данными (звёздами, форками, скачиваниями и т. д.). Особенно выделяется CatBoost, который активно используется как в России, так и во всём мире;
Высокий уровень качества реализации репозиториев, большое количество контрибьюторов и их высокая активность;
Участие в развитии сообщества через организацию мероприятий в сфере open-source и грантовых программ для поддержки независимых разработчиков.
Конечно, этот список также не претендует на полноту - в контрибьюторами опенсорс-проектов в Росии является огромное число компаний и частных лиц.
Какие проекты используются?
Любой «ТОП» всегда условен и вызывает много споров. Выбирая для более детального анализа проекты ниже, мы ориентировались как на мнения экспертов по используемости в российских компаниях, так и на результаты автоматизированного анализа репозиториев. Мы выделили ТОП-5 используемых в РФ решений по каждой категории.
ML и алгоритмы
CatBoost
LightAutoML
PyTorch
Sklearn
Tensorflow
Математика
Numpy
Optuna
SciPy
Theano
Statsmodels
Инфраструктура
YTsaurus
Spark
Hadoop
Pandas
Caffe
Визуализация и BI
Metabase
SuperSet
DataLens
Matplotlib
Plotly
Хранение данных
Odyssey
Tarantool
Postgres
ClickHouse
YDB
MLOps
LangChain
Kubeflow
MLflow
Wandb
GigaChain
Как сделать свои проекты используемыми?
Максим Савченко
Мы активно взаимодействуем с научно-исследовательскими группами в области машинного обучения, совместно разрабатывая новые методы и алгоритмы для последующей имплементации в наши библиотеки. Также проводим НИОКР с коллективами компьютерных наук для доработки самих библиотек и разрабатываем обучающие курсы по нашим технологиям.
Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Что работает
Сотрудничество с сильными командами разработчиков, имеющими опыт системной разработки и занимающимися развитием платформ, куда внедряются наши библиотеки, приносит значительные результаты.
Мы активно привлекаем стажеров и начинающих специалистов из ведущих технических вузов к развитию библиотек. Командные и технологические проекты, которые студенты могут решать в рамках учебного процесса, вызывают интерес, особенно если они сопровождаются менторингом со стороны опытных разработчиков.
Системная работа с молодежью
Коллаборация внутри компании
Сотрудничество с университетами
Техномаркетинг на таких платформах, как GitHub, не только повышает нашу видимость, но и приносит багрепорты, пулл-реквесты, а также идеи и советы по развитию технологий от серьезных специалистов, включая экспертов из крупных технологических компаний в Силиконовой долине. Иногда это помогает нам находить кадры на международном рынке труда.
Продвижение на международных технологических площадках
Что не работает
Публикации на таких платформах, как VC и Habr, не приносят ожидаемого эффекта.
За полтора года ни одно мероприятие не позволило нам найти хотя бы одного помощника или энтузиаста, даже на возмездной основе. Мы предлагали гранты с гибкими условиями, но интереса это не вызвало.
Системная разработка не является сильной стороной интеграторов, что затрудняет наше сотрудничество с ними.
Привлечение интеграторов
Работа только с российским сообществом
Публикации на русскоязычных ресурсах
Максим Савченко
Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Как привлекать пользователей?
Также играют важную роль в подтверждении нашей экспертизы.
Которые представляют оригинальные научные исследования уровня A*, и включение нашего продукта в бенчмарки служат дополнительным подтверждением нашей ценности.

Однако статьи на Habr, vc.ru и в других СМИ почти не оказывают заметного эффекта.
Статьи
Победы в крупных соревнованиях
Kaggle
От уважаемых блогеров, а также заметки в топах блогов и на платформах вроде TechCrunch также способствуют нашему продвижению.

Размеры российского рынка остаются маргинальными по сравнению с западным, а количество носителей английского языка способствует более эффективному маркетингу.
Активность на Stack Overflow
митап, посвященный временным рядам, на который приглашаем представителей сообщества поделиться своими проектами. Мы также представляем информацию о нашей библиотеке и связанных с ней инициативах.
Александр Чиков
Т-Банк, Тимлид
Наш опыт привлечения пользователей
в которых обсуждаем различные особенности и возможности нашей библиотеки.
Пишем статьи на платформах Habr и Medium
Каждый год организуем Time Series MeetUP
Активно участвуем в различных конференциях
в этом году нам удалось занять призовые места на хакатонах, посвященных временным рядам. В этих мероприятиях мы акцентируем внимание на демонстрации возможностей библиотеки в реальных условиях.
Создаем ноутбуки для платформы Kaggle
посвященных машинному обучению и анализу данных, где делимся нашей экспертизой в области работы с временными рядами и рассказываем о библиотеке.
в таких как ВШЭ и МФТИ, а также в Школе анализа данных и AI Masters. В планах у нас создание собственного курса, в рамках которого мы будем рассказывать о временных рядах и одновременно знакомить студентов с нашей библиотекой.
Проводим лекции в вузах
Cамый простой способ - сделать библиотеку полезной. В исследовательскую библиотеку людей привлечь очень сложно, но тут на помощь приходит образование. Во всех вузах сейчас есть проектная деятельность и для студентов участие в создании открытых библиотек - это идеальный вариант проектов: и практика, и известность, и польза.
Александр Нозик
МФТИ, Директор центра научного программирования
Про привлечение пользователей и контрибьюторов в исследовательские проекты:
Чем больше пользователей, тем больше контрибьюторов.
Привлечение контрибьюторов очень сильно зависит от тематики проекта.
Проекты массового пользования с низким порогом входа вроде UI библиотек привлекают много внимания, в то время как научные библиотеки со сложной инженерной структурой и высокими требованиями - куда меньше.
Опрос экспертов
В исследовании приняли участие эксперты из разных компаний и университетов ― Яндекса, «Сбера», Т-Банка, VK, Wildberries, Rocket Control, CodeScoring и МФТИ.
Про то, какие проекты они используют сами.

Про лидеров ― компании, продукты, сообщества.

Про проблемы и истории успеха.

Про то, что есть и чего не хватает ― мероприятия, инициативы, платформы.

Про актуальное состояние и перспективы опенсорса в эпоху ИИ.
1
2
3
4
5
Эксперты
Что нам ответили эксперты?
Используемый в России опенсорс
Александр Чиков
Т-Банк, Тимлид
Кажется на рынке уже давно сформирован список базовых инструментов, которыми должны владеть плюс минус все, дальше уже нужно плясать от специфики задач, которыми человек занимается. Для Recsys ключевым инструментом возможно является implicit, а для NLP hugginface.

Из специфичных для нашей библиотеки могу выделить: statsmodels, optuna, hydra, pytorch-lightning, wandb, black, mypy, isort, flake8, pytest
Александр Волынский
VK, Технический менеджер Cloud ML Platform, архитектор VK Cloud
Ключевые - Hadoop-стэк, особенно Spark. Также Flink, Kafka.
Для задач ML/MLops - CatBoost, TensorFlow, MLflow, Kubeflow. Также используются ClickHouse, Различные решения от Apache - Airflow, Superset, Nifi. Можно также назвать Trino, k8s, Greenplum, Redis.
Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Сам опенсорс в нашем случае представляет собой стек Python-библиотек, который функционирует без активного взаимодействия с сообществом.

В области глубокого обучения мы используем Torch. Для работы с данными применяются Apache Spark, Greenplum и ArenaData. В машинном обучении мы предпочитаем такие инструменты, как Optuna, LightGBM и CatBoost.

Проприетарный стек (Java / SAS) внутри компании был заменен на open-source на Python в 2013-2014 годах.

В качестве других примеров перехода на опенсорс можно отметить использование Greenplum вместо Teradata и Postgres вместо Oracle.
Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
Для работы с данными мы используем YTsaurus, или, как он называется у нас внутри, — YT. Также, используем свои датасеты и модели, стараясь полагаться на собственные разработки. В рамках коллабораций мы анализируем, как наши модели работают по сравнению с чужими. Это позволяет нам выявить, какие решения показывают лучшие результаты.
Александр Сидоров
Wildberries, Head of Data Science
Для хранения и обработки данных - обычный Kafka, Hadoop+Trino, Spark, Airflow. Для ML - обычный Python ML стек + PyTorch + Jupyter Hub + ClearML + DVC, для inference - Triton. Рекомендации и поиск написали сами, на Go (отдавать эти наработки в open source пока не планируем, как и внутренний ML Tools).
Юрий Кацер
Рокет Контро, DS team lead
Ключевыми библиотеками в области машинного обучения являются Scikit-learn, Pandas и NumPy — это стандартный набор инструментов, используемый всеми специалистами. В этот набор также вошли специфичные библиотеки для градиентного бустинга; если раньше в нем находился XGBoost, то сейчас одним из самых популярных является LightGBM. Также везде, где решаются задачи с бустингом, активно используется CatBoost.

Сейчас становится важным добавление интерпретируемости в общий стек, и здесь на помощь приходит библиотека SHAP, которая уже стала стандартом. Также стоит отметить, что в DL-проектах почти всегда используются TensorFlow и PyTorch.

При обсуждении продуктивизации как этапа в разработке машинного обучения важно упомянуть фреймворки Flask и FastAPI, которые необходимы для большинства простых проектов.
Алексей Смирнов
CodeScoring, Founder & CEO
Большинство инструментов на виду, от себя могу назвать ключевые PyTorch, TensorFlow и CatBoost. MLOps и LLMOps инструментарий особо не назову, т.к. эти задачи мы решаем пока довольно простыми подходами. Математическое обеспечение - у каждого оно свое, инфраструктура - у каждого своя, где то она уходит в облака (это скорее корпоративный тренд), где-то нет.

Безусловно, среди используемых продуктов выделяются линейка продуктов Яндекса, ClickHouse, продукты Apache. Сейчас наблюдаю тренды на использование Trino. Neo4j тоже регулярно встречается. Многие живут с MongoDB.

Для задач связанных со сбором и анализом данных мы используем PostgreSQL, ClickHouse, Airflow. Это база. Для фронтенда используем качественный фреймворк ant.design, для бэкендов Django/FastAPI. Основную функциональность наших продуктовых решений разрабатываем самостоятельно.
Summary
Индустриальный стэк в DS/ML уже сформировался и довольно стандартен. Это открытые библиотеки и фреймворки от различных создателей, которые используются по всему миру ― все знают про CatBoost и Clickhouse, про PyTorch и Hadoop. В компаниях активно используются также «самописные» закрытые решения и форки открытых проектов.

В ML-инструментарии почти все используемые решения опенсорсные. Среди них можно выделить и реализации конкретных моделей машинного обучения (например, SciKit Learn) или фреймворки для «сборки» своих моделей ― например, PyTorch и Tensorflow в случае нейронных сетей. AutoML-решения применяются не столько широко, но про сами инструменты (например, проект LightAutoML) многие знают.

Область математического обеспечения довольно консервативна: как правило, используются хорошо себя зарекомендовавшие numpy и SciPy. Для часто встречающейся постановки задачи оптимизации ― настройки гиперпараметров ― обычно используют optuna.

Используемые инфраструктурные решения сильно зависят от конкретных приложений: где-то для обработки данных хватает Pandas, а где-то необходимо использовать Spark или ytsaurus. Схожая ситуация с хранением данных ― широко используется ClickHouse, но и другие БД находят активное применения в стеке различных компаний.

Визуализация данных обычно обсуждается мало, хотя и там активно применяются открытые решения ― например, DataLens.

Если MLOps ― достаточно сложившаяся область и стандартный инструментарий для неей уже сформировался (например, MLFlow и kubeflow), то сфера LLMOps сейчас бурно развивается (хотя далеко не все пользователи и компании успели с ней познакомиться на практике). Безусловный лидер здесь ― LangChain, однако появление новых подходов (например, агентных LLM) и новых моделей требует создания новых инструментов, которые в подавляющем большинстве случаев являются опенсорсными.
1
2
3
4
5
6
Основные проблемы при использование опенсорса и их решения
Юрий Кацер
Рокет Контро, DS team lead
Нам часто не хватает достаточно какой-то довольно очевидной для нас функциональности, некоторые библиотеки отстают от актуальных исследований. Новые статьи регулярно публикуются, в них описываются современные методы, однако фреймворки и библиотеки часто не успевают за этими новшествами, например, в области ускорения расчетов и повышения точности. В результате мы берем на себя инициативу и дорабатываем необходимые функции, активно работая со статьями и внедряя новые подходы в наши решения.

Например, мы решаем задачи оптимизации в режиме реального времени, чтобы выбирать наиболее эффективные методы управления. Для этого мы использовали солверы, которые обеспечивают высокую скорость и точность. Однако единственным доступным нам решением, которое давало хорошие результаты, был платный проприетарный солвер.

Бывают и проблемы с пригодностью лицензий для корпоративного применения ― так, решая задачу из области компьютерного зрения, пришлось перейти с модели YOLO (AGPL v. 3) на китайский фреймворк MMlab (с лицензией Apache 2.0).


Алексей Смирнов
CodeScoring, Founder & CEO
Глобальных проблем нет, за исключением того, что, конечно, было бы хорошо, если бы был профессиональный саппорт. Для одного отдельного открытого продукта мы закупили премиум-поддержку, теперь наши тикеты и PR рассматриваются приоритетно. Раскрою секрет: качественной поддержки не хватает не только у коммерческих решений, но и у открытых. Если разработчики открытых решений будут брать деньги за саппорт, я буду только рад и это поддержу.

Мы сами активно занимаемся внесением тикетов и пулл-реквестов в чужие проекты ― где-то успешно, где-то нет. Если нет, патчим самостоятельно и синхронизируемся с апстримом.

Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
Большинство опенсорс-проектов ориентированы на массовость, что подразумевает средний уровень как проблем, так и масштабов сервисов, а также уровень квалификации разработчиков. В нашей ситуации, как крупной компании, это создает определенные трудности.

Например, мы разработали систему контроля версий, основная задача которой — масштабирование на огромные монорепозитории. Когда мы принимали решение о переходе в опенсорс, у нас возникли сомнения: «Кому это нужно, кроме Яндекса с его обширным репозиторием?» Не каждая компания располагает таким объемом кода, и не все используют монорепозитории в своей модели разработки. В результате многие аспекты нашей системы оказываются избыточными для большинства пользователей.

Кроме того, сотрудничество с другими командами оказывается сложным из-за понятийного разрыва. Мы решаем задачи различного масштаба и типа, что затрудняет взаимодействие.

Использование популярных фреймворков также создает свои трудности: писать ишью становится бесполезно, так как в таких системах накапливаются тысячи нерешенных запросов, которые остаются без внимания.

Бывает сложно договориться. Приведу пример: однажды у нас возник вопрос о возможности перехода на Playwright ― это опенсорс-инструмент для визуального тестирования интерфейсов. Мы провели обсуждения с командой Playwright, однако, к сожалению, наши взгляды на сотрудничество не совпали. Им не требовалось то, что было необходимо нам. Например, нам нужно тестировать в более широком диапазоне браузеров, чем это предусмотрено в самой системе Playwright, а также учитывать большой объем и поток изменений, с которыми мы работаем.

Александр Волынский
VK, Технический менеджер Cloud ML Platform, архитектор VK Cloud
Типовые проблемы ― поддержка, обновление, безопасность, интеграция с корпоративными системами аутентификации/авторизации.

Вообще, важнее качество продукта и его зрелость, а не принадлежность к open source.
Александр Чиков
Т-Банк, Тимлид
- Сложность установки (Kats): установка некоторых библиотек может быть затруднительной, что создает дополнительные барьеры для использования.

- Плохая документация (Faiss, PaxML, Praxis): документация этих библиотек оставляет желать лучшего, и разобраться в их работе без чтения исходного кода становится крайне сложно. Для библиотек-биндингов не всегда помогает даже изучение кода.

- Непрозрачность (CatBoost, Ruptures): хотя документация этих библиотек может быть качественной, она часто представлена на слишком высоком уровне абстракции. Это затрудняет понимание нюансов, что может быть критически важным при интеграции и настройке.

- Сложности в поиске ответов на вопросы: на таких платформах, как Stack Overflow или в GitHub Issues, обсуждения и решения проблем в основном сосредоточены вокруг крупных библиотек, что затрудняет поиск информации по менее популярным инструментам.

Поскольку мы сами разрабатываем библиотеку, у нас есть определенный уклон в сторону изучения чужого кода. Благодаря этому в большинстве случаев мы можем самостоятельно решать возникающие проблемы.

Тем не менее, были несколько случаев, когда мы обращались к команде разработки с просьбой внести небольшие изменения, такие как обновление версии зависимости или добавление лицензии. Однако такие ситуации скорее являются исключением, чем правилом.

Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Сложно обеспечивать кросс-платформенность, поддержку разных версий Python и обратной совместимости
Александр Сидоров
Wildberries, Head of Data Science
Делать community и платные версии, закрывать код ― плохо. Делать, чтобы его можно было собирать и использовать только с платными «консультациями» ― это зло.
Summary
У создателей и пользователей открытых инструментов часто возникают противоречия в требованиях к реализации ― и это может блокировать совместную работу над проектом. Корпорациям нужно одно (например, повышение масштабируемости решений на большие объемы данных или вычислительные ресурсы), сообществу индивидуальных пользователей ― другое ( удобная установка на одиночные ПК, хорошая производительность на слабых системах и так далее). Часто выделяемые недостатки открытых проектов ― документация (покрытие ей функциональности, уровень проработки и актуальность), поддержка (бизнес готов и на платную поддержку, но не всегда авторы проектов готовы ее обеспечить), совместимость с корпоративными системами и платформами.
Митапы, семинары, сообщество

Александр Чиков
Т-Банк, Тимлид
Сообщество библиотеки ETNA активно функционирует в Telegram, где пользователи могут задавать вопросы как по самой библиотеке, так и по временным рядам в целом. Также в этом канале мы анонсируем наши другие активности, такие как релизы, выступления и статьи.

Наша команда не организует семинары, но у нас есть планы по созданию курса на базе нашей библиотеки. Я слышал о курсе по LightAutoML на ODS, который может быть интересен.

Базовые навыки работы с опенсорсом я в основном получал в рамках курсов по машинному обучению и Data Science, где часто рассказывают о различных инструментах. Обычно достаточно изучить документацию и демо-ноутбуки, чтобы начать.

Я сам делал доклад на секции Open Source DataFest и посещал Yandex Open Source Jam. О других активностях не слышал, хотя в рамках PyData и подобных мероприятий проводятся доклады по опенсорсу.

В рамках русскоязычного сообщества было бы полезно внедрить такие форматы:

- Представление своих инструментов: про новые библиотеки от русскоязычного сообщества знают далеко не все даже из профсообщества. Было бы замечательно создать площадку, где можно было бы ознакомиться с этими инструментами. Yandex уже сделал шаг в этом направлении, предложив гранты.

- Мастер-классы по использованию инструментов: часто документации по инструментам не хватает для их качественного использования. Очень интересно было бы услышать о нюансах от опытных пользователей.


Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Опыт митапов скорее негативный: участие в своих и чужих мероприятиях мало что дало. Были попытки сотрудничества с ODS в рамках проекта LightAutoML, но, к сожалению, не удалось привлечь контрибьюторов из-за недостатка людей с необходимой квалификацией в целом.

Тем не менее, у нас есть позитивный опыт научно-исследовательской работы (НИР) с университетами, такими как ИТМО и Сколтех. Мы реализовали проекты (примеры ― SLAMA, GLAMA и PyBoost), которые включают в себя создание туториалов к библиотекам и обучающие курсы. Мы активно привлекаем студентов (и не только) к доработке проектов через НИР, стажировки и практики, что также включает командные проекты. Мотивацией для участия в таких инициативах служат научная деятельность и публикация статей.

Мы также развиваем партнерство с различными компаниями и командами, такими как Intel, JB, Acronyx, Arenadata, ИТМО и Яндекс, что позволяет нам продвигать технологии и расширять сотрудничество.

В России, к сожалению, очень мало опенсорсеров и разработчиков системного программного обеспечения, а также специалистов в области машинного обучения. Примером этой проблемы может служить отсутствие аналогов типовых CAD-решений, таких как SolidWorks, в инженерном ПО.

Алексей Смирнов
CodeScoring, Founder & CEO
Мы готовим два курса по опенсорсу: по лицензированию опенсорс-компонентов и по композиционному анализу, про понимание из чего состоит программный продукт. Открытых русскоязычных «курсов про Open Source» я не встречал.

Что касается общества, то можно почитать канал «Open Source Россия», в котором тысяча мнений и все ищут общий язык. В этом отражение мирового опенсорса, это не только российская особенность.

Полезные курсы попадаются на Stepik и подобных платформах. В опенсорсе есть амбассадоры ― например, Никита Соболев, который делал значимые доклады на важные темы, или Денис Петухов, который делится опытом работы с опенсорсом и рассказывает о том, каково это на практике.

Как только появляются мероприятия, я всегда стараюсь их поддерживать ― например, Data Fest от ODS. Мы также занимаемся созданием отчетов по состоянию опенсорсных и активно подключаемся к различным «движухам» в этой области, в том числе в статусе партнеров.


Юрий Кацер
Рокет Контро, DS team lead
Мы активно работаем с горно-металлургической индустрией, предоставляя свои рекомендации крупным компаниям. Однако этот процесс несистемный и происходит без спонсирования и выступлений. Важно отметить, что мы нацелены на создание продукта, ориентированного в первую очередь на внутренние нужды нашей компании, а не на внешнюю сторону.

В основном, это исключительно энтузиазм отдельных сотрудников. Я знаю людей, которые выступают на специализированных конференциях, но в целом ситуация довольно плачевная. Такие инициативы не происходят систематически, и компании зачастую сами не развивают эти направления.

Я иногда выступаю на конференциях, посвященных теме data science, с основным акцентом на анализ временных рядов и применение методов data science в промышленности.

В России не хватает качественных научных конференций ― это может быть связано с недостаточным объемом исследований в целом. Те конференции, которые существуют, зачастую ориентированы на студентов, которым нужно выполнить научно-исследовательскую работу, и их уровень оставляет желать лучшего. Также мало технических конференций, аналогичных PyCon. К сожалению, «маркетинговых» мероприятий гораздо больше. Во многом это касается и отраслевых конференций (например, я выступал на мероприятиях ядерной отрасли).


Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
У нас самих есть курсы про наше Облако, есть курсы для YDB. В рамках летних школ освещаем темы, используем нашу инфраструктуру и делаем базовые курсы.

Не хватает глубоких форматов для опытных специалистов уровня Senior и выше, таких как тематические встречи, митапы по сложным вопросам, кворумы и открытые дискуссии, возможно, для меньшего числа участников. Нам нужны мероприятия, где можно в более живом формате пообщаться с авторами опенсорс-проектов и наладить контакт.

Мы организовали Open Source Jam, но эта тема нишевая, аудитория не так велика. Примеры международных конференций подобного уровня — FOSDEM и Open Source Summit — но, к сожалению, мы их пока не посещали.

Александр Волынский
VK, Технический менеджер Cloud ML Platform, архитектор VK Cloud
Мы участвуем в основном в специализированных конференциях по конкретным технологиям (например, k8s conf), а не общеопенсорсных.
Summary
С одной стороны, мероприятий много, но с другой ― не хватает «сложных», технических форматов для подготовленных слушателей, которые позволяют вникнуть в детали или представить свои решения. Во многом это связано с недостатком квалифицированных специалистов в целом и с недостаточным масштабом внутреннего рынка.
О ключевых игроках опенсорса в России

Алексей Смирнов
CodeScoring, Founder & CEO
На мой взгляд, Яндекс является абсолютным “чемпионом” в этой области, т.к. кратно (кратно!) больше вкладывается. Я не утверждаю, что остальные не прилагают усилий — работа ведется, и это замечательно. Сбер также вносит значительный вкла - например, их платформа GitVerse является отличным вложением в опенсорс. Кроме того, в этом списке должен быть и GitFlic — самописный сервис, который появился еще до того, как такие решения стали мейнстримом.

За ClickHouse огромное спасибо Алексею Миловидову - это хороший инструмент, создание которого стало возможным именно в недрах Яндекса.


Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
Я предпочитаю делить опенсорс на несколько уровней. На первом уровне находятся крупные проекты-гиганты, такие как ClickHouse, YDB, YTsaurus, Tarantool. На следующем уровне — более простые проекты с относительно небольшими командами разработчиков, но которые уже известны в определенных кругах, например, Testplane. И, наконец, существует так называемый "пушистый хвост опенсорса" — это мелкие опенсорсные проекты, которые, несмотря на свою скромность, имеют свою ценность и значимость. Они могут быть популярны и широко известны в узких сообществах, как, например, проект Типограф.
Александр Чиков
Т-Банк, Тимлид
Хорошим критерием успешности является известность решений — многие инструменты, такие как CatBoost, ClickHouse, DataLens и LightAutoML, широко известны и активно используются в проектах. Однако на данный момент среди российских компаний сложно найти достаточное число претендентов, которые могли бы соперничать в контексте решений для машинного обучения и анализа данных. В основном используются “международные” решения.
Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
На мой взгляд, Яндекс является абсолютным “чемпионом” в этой области, т.к. кратно (кратно!) больше вкладывается. Я не утверждаю, что остальные не прилагают усилий — работа ведется, и это замечательно. Сбер также вносит значительный вкла - например, их платформа GitVerse является отличным вложением в опенсорс. Кроме того, в этом списке должен быть и GitFlic — самописный сервис, который появился еще до того, как такие решения стали мейнстримом.

За ClickHouse огромное спасибо Алексею Миловидову - это хороший инструмент, создание которого стало возможным именно в недрах Яндекса.


Юрий Кацер
Рокет Контро, DS team lead
Университеты во многом являются самой доминирующей силой в наукоёмком опенсорсе на российском рынке. В топ-5 входят ИТМО, Иннополис, Физтех, МФТИ и Сколтех.

Что касается корпоративного сектора, то Сбер заметно выделяется. Также в этой области активно участвует Т-банк. В сфере промышленности можно было упомянуть ГПН, но они уже сократили участие в открытых проектах, хотя раньше были довольно активны. Яндекс с CatBoost, безусловно, занимает одну из лидирующих позиций. ClickHouse также стал стандартом в стеке.

Компании, такие как Норникель, Полюс, Росатом и другие, никогда не выкладывают свои специфические продукты в опенсорс. В основном, это либо небольшие проекты от энтузиастов, либо неясные инициативы, которые представляют собой каплю в море.


Александр Волынский
VK, Технический менеджер Cloud ML Platform, архитектор VK Cloud
Могу отметить ClickHouse - широко используется и является, стандартом в отрасли для решения специализированных задач.
Summary
Среди корпораций к “ключевым игрокам” чаще всего относят - Яндекс, Сбер, Т-Банк, VK; среди академической среды - ИТМО, Сколтех, ВШЭ, AIRI. Работающие на международном рынке компании упоминают реже. Однако, опенсорс достаточно разнороден: свой вклад вносят все, от компаний-гигантов до авторов небольших проектов.
Текущее состояние опенсорс-среды в России















Александр Чиков
Т-Банк, Тимлид
На мой взгляд, опенсорсные проекты от крупных технологических компаний в значительной степени представляют собой имиджевую инициативу. В нашем случае это был вклад в демонстрацию технологической продвинутости компании.

Мы значительно отстаем в разработке собственных решений — известные российские разработки в области машинного обучения и анализа данных можно пересчитать по пальцам одной руки. Это, похоже, связано с тем, что мы привыкли использовать уже готовые решения, как закрытые, так и открытые, и у нас не хватает времени на создание сложных внутренних разработок, которые затем можно было бы выложить в опенсорс.

Тем не менее, культура использования опенсорсных инструментов у нас хорошо развита. Сложно сказать, что именно изменилось за последние пять лет, так как я сам слежу за этой областью не более трех лет. Однако в рамках моего домена появилось множество библиотек с различной спецификой, и самому старому фреймворку уже около пяти лет. Похоже, что такой тренд наблюдается и в других областях: за последние пять лет для каждой задачи был создан набор качественных открытых инструментов.

Основным драйвером этого процесса, по-видимому, являются крупные технологические компании. У них достаточно экспертизы и ресурсов для создания собственных инструментов и их продвижения на рынок, в то время как разработки от энтузиастов часто остаются незамеченными.

Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Существующие инициативы завязаны на конкретных людях. Поддержка исходит от верхнего и среднего звена, а также от отдельных техноэнтузиастов. Команды небольшие, и проблема заключается в отсутствии системы — все держится на горстке энтузиастов.

Такие компании, как Amazon, могут пользоваться решениями сотен, а то и тысяч организаций. В России же наблюдается тенденция: "не хотим использовать чужое, будем делать свое". Вместо того чтобы выделять ресурсы на стартапы, компании предпочитают разрабатывать собственные решения.

Одной из серьезных проблем является монополизация рынка: многие компании разрабатывают решения in-house, что раздергивает и без того ограниченные ресурсы. Однако, если всех обязывать использовать одно и то же решение, ситуация может стать еще хуже.

Малый размер рынка усложняет внедрение результатов исследований и разработок, и при сопоставимом качестве это приводит к ухудшению ситуации. На энтузиазме много не сделаешь, и это блокирует развитие. Есть шанс для российских команд выйти на международный рынок, например, в Латинскую Америку, Африку или Индию. Ориентировать только на рынок внутри страны - малоперспективно.

Также, мощные облачные платформы и маркетплейсы предоставляют разработчикам опенсорсного программного обеспечения возможность напрямую выйти к конечным потребителям.

Необходимо стимулировать развитие облачных сервисов для конечных пользователей. Это позволит компаниям и командам сотрудничать с аналогами AWS или Azure для машинного обучения, поставляя опенсорсные компоненты и предлагая их на продажу.

В настоящее время у нас отсутствуют полные "цепочки" создания открытого программного обеспечения, что затрудняет его развитие и внедрение.

Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
На мой взгляд, опенсорс переживает настоящий ренессанс. Если 15 лет назад мы наблюдали подъем и воодушевление, затем последовал спад, вызванный трудностями, связанными с взаимодействием с пользователями, обработкой пулл-реквестов и объемом работы, то в последние годы мы видим осознанную любовь к этой сфере. Несмотря на существующие недостатки, плюсы также очевидны, и люди продолжают активно заниматься опенсорсом. Появились новые силы, и теперь подход к этой деятельности стал более зрелым и продуманным, без розовых очков.


Юрий Кацер
Рокет Контро, DS team lead
В целом, в России есть все необходимое: открытые сообщества, множество опенсорсных библиотек. Однако в области машинного обучения, особенно в промышленности, все еще отсутствует системность. Существуют лишь несколько объединений и консорциумов, и в этой сфере очень мало людей. Опенсорсом в промышленности занимаются в основном ИТМО, Сколтех, немного Иннополис и AIRI. Проблема заключается в нехватке финансирования, кадров и качественного образования в данной области. В итоге, только отдельные группы и энтузиасты продолжают развивать эту тему.
Алексей Смирнов
CodeScoring, Founder & CEO
В целом, вся Open Source среда - токсичненькая. Наша не исключение ;). Есть отдельные островки разума, а есть прямо и просветления. Вот и Яндекс тоже молодцы, но суммарно у нас пока ещё нет какой-то большой среды (даже экосистемы!), все по островкам сидят. Очень надеюсь на то, такая площадка в скором времени появится.

Я активно выступаю за создание нормальной площадки с адекватным спонсорством и диалогом, где будет понимание различий между корпоративным и частным опенсорсом. Компании зачастую не выкладывают свои ключевые разработки в открытый доступ.

При этом опенсорс — это глобальное явление, принадлежащее всему миру, и говорить о “российском опенсорсе” смысла нет.

Александр Нозик
МФТИ, Директор центра научного программирования
Главная проблема опен-сорса в России - это отсутствие инфраструктуры для "проектов среднего размера". Компании радостно вкладываются во что-то большое и международное вроде Postgres. Маленькие проекты, которые делаются одним человеком хорошо растут силами отдельных разработчиков и студентов. А вот средние проекты, которые требуют команды в 3-4 человека, делать особенно негде. В Европе и Америке с этим справляются фонды вроде Apache и Eclipse, но в России ничего похожего нет. Роль таких фондов могли бы играть вузы, но даже в ведущих вузах финансирование опен-сорса крайне низкое.
Summary
Есть много позитивных тенденций, растет число участников опенсорс-движения - как в сообществе в целом, так и на уровне компаний. Есть развитая культура открытого кода, моделей и данных. Опенсорс-сообщество в России в ML в значительной степени интегрировано в общемировое, его представители участвуют в развитии многих открытых проектов.

С другой стороны - не хватает масштаба и системности (все сильно завязано на конкретных энтузиастах). Сотрудникам компаний трудно продвигать идеи выноса части корпоративного кода в опенсорс, обосновывать финансирование этого направления и его пользу для имиджа компании. Новые проекты тяжело развиваются и популяризируются - недостаточно мероприятий, программ поддержки, грантов, каналом для привлечения пользователей и участников проектов.

Среди контрибьюторов часто не хватает сочетания “предметных” компетенций (например, инженерных) в сочетании с навыками разработки ПО. Не всегда хватает разработческого опыта и специалистам в ML/DS.
1
2
3
Платформы














Александр Чиков
Т-Банк, Тимлид
Внутри компании мы используем GitLab, но в основном для внутренней разработки. На данный момент мы не рассматривали альтернативы GitHub для опенсорса. Вероятнее всего, мы займемся этим вопросом, когда возникнет острая необходимость и появится ясное понимание, какая платформа может стать нашей следующей флагманской.
Максим Савченко
Сбер, Управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Нет - уход от GitHub-а скорее обременение, снижающие эффективность.
Юрий Кацер
Рокет Контро, DS team lead
В нашей компании мы активно используем GitLab для всей внутренней разработки, и это стало своего рода стандартом. Если говорить об опенсорсе, которым я пользуюсь, то 99% проектов размещены на GitHub. У Atlassian есть Bitbucket, и некоторое время я пользовался этой платформой, но в целом видел лишь несколько публичных проектов на GitLab. Подавляющее большинство находится именно на GitHub.


Summary
GitHub по прежнему является стандартом де-факто для открытого кода. Однако, интерес к альтернативным площадкам (Gitee, GitVerse) на всякий случай” все же имеет место. Также компании активно используют внутренние окружения GitLab или Bitbucke (в меньшей степени).
Перспективы опенсорса на ближайшие несколько лет
Александр Нозик
МФТИ, Директор центра научного программирования
Не думаю, что роль ML/AI будет определяющей. Очевидно, что опен-сорс будет развиваться просто потому что это экономически выгодно. Есть некоторый скепсис в смысле открытых пользовательских программ, таких как офисные приложения, графические редакторы и так далее. Эти приложения требуют огромного количества работы над "неинтересными" вещами, такими как пользовательский интерфейс, то есть требуются ресурсы, которые сложно добыть без продаж.

С другой стороны инструменты разработки и исследований очень быстро окупаются. Они нужны всем, причем примерно одинаковые. Они часто не приносят денег сами по себе, так что их куда выгоднее делать сообществом один раз вместо того, чтобы повторять всю работу только для своей компании. Единственным существенным барьером на этом пути является "недальновидность" менеджеров среднего и нижнего звена. Для того, чтобы выполнить KPI, надо сделать свое и быстро. Вклад в опен-сорс - это же вроде как помощь конкурентам. Видно, что эта доктрина постепенно уходит в прошлое даже в России, хотя местами еще очень сильна.

Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
Сложно предсказать будущее. Ранее количество разработчиков и программистов было невелико, и многие проекты не выдерживали испытания временем. Теперь же существует обширная аудитория, которая может обеспечить продукту необходимую поддержку для его существования. Набранная аудитория способна поддерживать проект, и те инициативы, которые достигли определенного уровня стабильности, могут продолжать развиваться и жить своей жизнью. Не обязательно быть самым известным и популярным фреймворком; даже небольшой проект с преданной аудиторией может найти свое место и успешно функционировать.

Перспективы применения искусственного интеллекта в разработке и опенсорсе представляют собой сложную картину. Возможно, мы столкнемся с "хоккейной клюшкой" сингулярности, когда изменения произойдут стремительно и неожиданно. Есть вероятность, что мы доживем до технологической сингулярности в течение ближайших 10-20 лет.

У нас уже есть база в виде больших языковых моделей (LLM), но их необходимо контролировать и задавать им четкие задачи. Возможно, исчезнет часть рутинной работы программистов, а разработчики опенсорса займут более высокие позиции, такие как CTO или руководители разработки.

Я активно использую нейросетевые технологии и задаю вопросы о коде. В некоторых случаях результаты впечатляют, но в других я осознаю, что нам еще далеко до идеала. Да, произошел значительный скачок с развитием LLM, и они действительно способны значительно улучшить процессы. Однако я не уверен, что нас ждет дальнейший скачкообразный рост возможностей в ближайшее время.
Александр Волынский
VK, Технический менеджер Cloud ML Platform, архитектор VK Cloud
LLM - основная новая технология. Новые способы работы в проде с LLM, обеспечения стабильной воспроизводимой работы LLM будут играть ключевую роль; новые прикладные способы использования LLM для самых разных задач; различные интеграции и инструменты, обеспечивающие подобную интеграцию. Можно ожидать взрывной рост в сфере LLMOps.


Чиков
Т-Банк, Тимлид
Глобально я вижу несколько направлений развития:

- Появление инструментов для новых задач и доменов. Например, библиотеки для работы с большими языковыми моделями (LLM).

- Интеграция помощников на основе LLM в существующие инструменты. Например, в Functime уже реализованы подобные функции.

- Разработка библиотек для вычислений на альтернативных вычислительных устройствах, аналогичных GPU. Пока сложно сказать, какие именно это будут аналоги.

- Улучшение подходов к решению существующих задач. Мы наблюдаем переход от Pandas к более эффективным инструментам, таким как Polars и Rapids, а также демократизацию нейросетевых технологий.

- LLMOps — в настоящее время в индустрии активно внедряются эти практики, и, безусловно, появятся новые артефакты, связанные с их реализацией.

- Что касается альтернатив GPU и квантовых процессоров, мы сейчас сталкиваемся с ограничениями вычислительных мощностей, и нам необходим новый скачок в этой области.

- AutoML также становится все более актуальным, поскольку многие разработчики стремятся избежать решения однотипных задач, предпочитая автоматизировать процесс создания модели.

Самым важным аспектом является демократизация и доступность инструментов для решения практически любых задач. Еще пять лет назад многие проблемы приходилось решать с нуля, тогда как сейчас под каждую мелочь можно найти библиотеку на GitHub. Кроме того, к большинству качественных статей прилагается код, что значительно упрощает процесс обучения и внедрения новых решений. Это действительно замечательно, что такая культура уже сложилась.

Максим Савченко
Сбер, управляющий директор, руководитель Центра инструментов машинного обучения Лаборатории AI
Что касается влияния новых ИИ-технологий на разработку открытого ПО - приведу пример из медицины. В XIX веке врачи выступали против использования обезболивающих, опасаясь, что это может угрожать профессии хирурга. На практике же это привело к появлению новой специальности — анестезиолога.

Можно провести исторические аналогии:

- COBOL — высокоуровневая разработка на естественном языке, которая способствовала появлению системных программистов.
- SQL в 70-е годы также представлял собой разработку на естественном языке, что привело к возникновению программистов баз данных.
- Аналогично, с развитием профессии дата-инженеров.
- LLM (большие языковые модели) породили новую специальность — промпт-инженеров, и сейчас мы наблюдаем развитие автопромптинга.

Это рекурсивный процесс, в котором мы уходим все дальше.

Любая технология может снизить порог входа — например, библиотека scikit-learn с ее методами fit/predict. Однако человек с улицы не сможет создать что-то значительное, даже используя решения без кода. Да, появится новый мощный инструмент, но, проводя аналогию - написать "Войну и мир" только с помощью Word невозможно.

В новых реалиях можно будет привлечь к разработке опенсорса более доступных специалистов. Прогресс, безусловно, будет, но революции не произойдет. Например, полностью устранить галлюцинации в моделях вряд ли возможно.


Александр Сидоров
Wildberries, Head of Data Science
На мой взгляд, все перспективы - в максимально “стандартном” Open Source. Нет российского Open Source и какого-то ещё, плохо и вредно плодить ветки по странам, разделять Open Source на "своё" и "чужое".
Алексей Смирнов
CodeScoring, Founder & CEO
Главная проблема Open Source в том, что очень важно находить своих последователей, которые будут развивать и поддерживать проект, даже если ты из него уходишь.

Очень здоровский инкубатор ML-проектов в Open Data Science - мне кажется, что это главный источник в России “частного” опенсорса по теме ML. Корпорации и так сделают, а частники должны иметь некую точку, “котёл” в котором все варятся и откуда выходят. ODS, в этом плане, лучшая точка приземления. Всем желаю синергии с ними. Должна быть хорошая экосистема жизни разных сообществ, разных хабов.

Есть GitFlic, как аналог гитлаба, есть GitVerse как аналог гитхаба, - они наверное, в России и будут жить. Для меня сейчас больше вопрос в том, как дальше мировой опенсорс будет дробиться (если продолжит). Появляются частные площадки, есть китайские, будут российские, появятся и другие. Если страны сейчас пытаются объединиться, то площадки опенсорсные сейчас пытаются разъединиться - возможно этот тренд будет продолжаться ближайшие 10 лет.


Summary
Общее мнение: развитие технологий ИИ многое изменит, но люди останутся на первом месте. Велики ожидания от мультиагентных подходов на основе LLM — вплоть до замены части команды разработки на ИИ-агентов. Однако, общая постановка задачи остается человеку. С практической точки зрения это значит рост запроса инструменты из сферы LLMOpts и AutoML — несмотря на то, что уже существует множество активно используемых проектов, многие нише всё ещё не закрыты.

Есть запрос на демократизацию и автоматизацию применения ИИ-решений — упрощение «погружения» в новые проекты (как в роли пользователя, так и в роли разработчика), авто-генерацию кода для связывания библиотек и фреймворков между собой, облегчение работы с документацией (для пользователей) и ее генерации (для разработчиков), интерпретация и объяснение результатов работы ИИ.

Международность опенсорса (создаваемого как в России, так и во всем мире) по прежнему сохраняется — без этого никак. Это обусловлено как связностью внутри сообщества, так и «эффектом масштаба» — чем больше у проекта потенциальных пользователей, тем выше его шанс на успешное развитие. В то же время, это не отменяет создание региональных площадок и платформ.
1
2
3
О чем говорят недостаточно?
Сергей Бережной
Яндекс, Директор по взаимодействию с разработчиками
Обычно не поднимаются вопросы, касающиеся монетизации опенсорса, юнит-экономики и того, как сохранить код открытым, одновременно получая финансовую выгоду. В научной среде существует грантовая модель, которая может действовать в течение одного-пяти лет, но она часто оказывается неустойчивой и не обеспечивает стабильного дохода. Хотя такая модель может защитить проект на год, ее недостатки делают долгосрочную перспективу проблематичной.

Не хватает четких подходов к выстраиванию устойчивой экономики опенсорса. В основном гранты предоставляются на создание проектов, но не на их поддержку. Возникает вопрос: как измерять пользу и за что следует платить разработчикам?

Большие компании зачастую не знают, как правильно распределить свои средства для поддержки опенсорс-проектов, которые они используют. Отсутствие ясных пропорций между ними и механизмов поддержки создает дополнительные трудности в этой области.


Алексей Смирнов
CodeScoring, Founder & CEO
Я всегда говорю про анализ кода :). Верю что в понимании кода и умении его генерации есть некое будущее. Тут спектр задач очень широкий: от классических задач статического, композиционного и динамического анализа и фаззинга до решений с применением LLM призванных ассистировать программистам (а может быть и заменять).

Юрий Кацер
Рокет Контро, DS team lead
Про код говорят больше, чем про данные, но это не совсем оправданно. Нужно больше инвестиций в эту область открытых данных. Сейчас деньги на это у больших компаний есть, но обычно они хотят сохранить свою позицию на рынке и не хотят плодить конкурентов - продукты-стартапы.

Summary
О open-source много говорят и пишут, но не все важные вопросы получают достаточное внимание. Среди них, например — монетизация открытых проектов и открытость данных, необходимых для обучения и валидации ИИ-решений.
Анализ открытых репозиториев
Даже в самом масштабном исследовании невозможно претендовать на полноту — особенно в части, основанной на общении с неизбежно ограниченным кругом экспертов.

Поэтому следующая часть будет посвящена открытым репозиториям как таковым — автоматизированному анализу кода, ссылок на него, информации о профилях пользователей. Упор мы делали на платформу GitHub.
Методика оценки ML-решений
Общая информация
Оценка масштаба проекта (насколько он велик, как давно разрабатывается, давно ли обновлялся)
Contributors Count
Количество contributors
Contributions Count
Количество contributions
Code Files Count
Количество файлов с кодом
Created At
Репозиторий создан
Last Commit
Последний коммит
Total code Lines Count
Количество строк кода в файлах с кодом
Оценка того, насколько он «проработан» (наличие информации для контрибьюторов и пользователей, частота релизов)
Basic Info Present
Наличие базовой информации (description, homepage, topics)
License Present
Наличие лицензии
Readme Present
Наличие readme
Not Brand New
Репозиторий существует более полугода
Contributors
Количество Contribution (log)
Has Multiple Versions
Несколько версий
Has 1.0.0 Version or Greater
Версия больше 1.0.0
Recent Release Last Six Months
Последний release менее полугода назад
Критерии степени развития проекта
Recent pushed Last Six Months
Изменения в репозитории менее полугода назад
Test folder
Наличие test
Tutorials folder
Наличие tutorials
Community score
Наличие файлов: code_of_conduct, contributing, issue_template, pull_request_template
pypi_install
установка через pypi
Оценка того, насколько проект используется (часто ли его добавляют в избранное, часто ли пишут пользователи, часто ли скачивают и цитируют, широка ли география использования)
forks_count
количество форков
Stars
Количество звезд (log)
Временная динамика звезд
open_issues_count
количество открытых issues
Downloads last month
количество скачиваний за последний месяц (если есть на pypi)
Критерии степени используемости проекта
В любом проекте есть десятки и сотни зависимостей. В сфере ML большинство из них — опенсорсные.

Но в этом исследовании мы трактуем «используемость» несколько уже (и не ожидаем, что эксперт зачитаем нам весь requirements. txt). Речь о ключевых в стеке решениях, работы с которыми не сводится просто к их скачиванию.
Для категорий Visualization, Infrastructure, DB доступны (по РФ):
  • количество звёзд (Stars)
  • количество созданных issues (Issues)
  • количество создателей PR (PR)
Использование многих опенсорсных проектов связано с плотным изучением документации, созданием issue общением с авторами, участии в них в роли контрибьюторов.
Именно таким сценарии использования нам наиболее интересны.
Какой опенсорс мы считаем «используемым»?
Результаты анализа
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Сравнение метрик репозиториев
Сравнение совокупной метрики используемости
Cовокупный рейтинг используемости R рассчитывается следующим образом:
Для категорий ML, Math, MLops также доступно число скачиваний по РФ (Downloads). Для них рейтинг R рассчитывается так:
Nikola Tesla
Nikola Tesla was a Serbian American inventor, electrical engineer, mechanical engineer, physicist, and futurist best known for his contributions to the design of the modern alternating current (AC) electricity supply system.
Ключевые игроки опенсорса в России
Мы собрали статистику по открытым репозиториям основных технологических компаний, имеющих свои опенсорсные разработки, попадающие в выделенные нами категории в сфере Data/ML. Дополнительно мы учли и «академию» — институты и университеты.
*postgresspro - компания-контрибьютор в основной репозиторий postgress, а также автор ряда собственных инструментов
По количеству звезд
По количеству forks
Уровень «развитости» репозиториев
Для оценки “развитости” использован критерий SourceRank, расширенный доп. критериями (перечисленными ранее).

Это кумулятивная метрика, учитывающая как базовые вещи типа наличия readme и лицензии, так и частоту релизов, количество зависимых репозиториев и число контрибьюторов.

Для уравновешивания нишевых и массовых проектов SourceRank использует логарифмическую шкалу при расчёте некоторых её составляющих. Видно, что большинство активно используемых проектов проработаны на высоком уровне.
Cуммарные статистики приведены по ТОП-10 решений от каждой компании.
Компании
120
65 065
173
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
13.5
Средний рейтинг
Дата сбора данных: 19.08.2024
YDB, CatBoost, YTsaurus
ТОП3 решений
Вне рейтинга: ClickHouse — изначально созданный в Яндексе проект, в 2016 году выпущенный в опенсорс и развивающийся независимо с 2021 года.
100
9 406
59
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
11.25
Средний рейтинг
LightAutoML, GigaChain, RePlay
ТОП3 решений
Дата сбора данных: 19.08.2024
132
1 262
48
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
11.25
Средний рейтинг
ETNA, CORL, Katakomba
ТОП3 решений
Дата сбора данных: 19.08.2024
65
4 480
38
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
11.25
Средний рейтинг
Tarantool
ТОП решений
Дата сбора данных: 19.08.2024
37
648
21
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
13.7
Средний рейтинг
RecTools, Ambrosia, CoolGraph
ТОП3 решений
Дата сбора данных: 19.08.2024
79
1 410
26
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
12
Средний рейтинг
PostgresPro, rum, jsquery
ТОП3 решений
Дата сбора данных: 19.08.2024
37
185
11
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
13.7
Средний рейтинг
Aqueduct
ТОП3 решений
Дата сбора данных: 19.08.2024
329
7 573
67
Количество open-source решений
Звезд
Кол-во уникальных контрибьюторов
15.3
Средний рейтинг
DeepPavlov, FEDOT, SKAB
ТОП3 решений
Дата сбора данных: 19.08.2024
Академические команды
Опенсорс в академии
Конечно, список не исчерпывающий и не ограничивающийся только создателями своего опенсорса. Например, Институт системного программирования РАН не только создает свои инструменты, но и активно участвует в развитии PyTorch, Tensorflow и других проектов в части исправления ошибок, выявленных с помощью разработанных в институте статических и динамических анализаторов (в основную ветку принято более 60 исправлений).
А кроме кода?
Опенсорс - это не только про код. Многие компании выкладывают также обученные модели и наборы данных (как для обучения моделей, так и для их тестирования)
Большая языковая модель YAML-100b
NLP-модели
Различные модели для текста и изображений
Социальная сеть Facebook запрещена на территории РФ
Исследовательские наборы данных
Датасеты Golos, Dusha для обучения и бенчмаркинга речевыхмоделей на русском языке
Платформы и сообщества
Опенсорс-сообщества
Сообщество Яндекса объединяет как разработчиков и пользователей корпоративных открытых проектов, так и опенсорс-энтузиастов, создающих своих проекты (для них есть конкурс грантов). Организуются различные мероприятия — Yandex Open Source Jam, Data Open Source Day, регулярно проводятся цикл открытых лекций Yandex for Developers.
Сообщество неразрывно связано с экосистемой GitVerse, поддерживаемой Сбером — организуется собственная конференция GigaConf, выдаются премии «Звезда GitVerse». Стенды GitVerse представлен на большом количестве технологических конференций
ИТМО, ITMO.OpenSource
ВШЭ, «Открытый код ФКН»
Наше сообщество сфокусировано на научном опенсорсе в области ИИ — и является крупнейшим среди университетских. Организуем онлайн- и оффлайн- митапы, помогаем менторингом.

ODS Хаб, чат, канал
Недавно созданное сообщество факультета компьютерных наук делает ставку на применение опенсорса для повышения качества и прозрачности научных работ.

Сайт, канал
МФТИ, Scientific Programming Center
Сообщество центра научного программирования МФТИ, возникшее на базе одноименной магистратуры, фокусируется на разработке ПО на языках Java и Kotlin, предназначенного для различных исследовательских задач.

Сайт, канал, чат
ИТМО AI Talent Hub, Учебно-научные лаборатории МФ ТиНТ
Другой аспект опенсорса в ИТМО — использование его при обучении студентов бакалаврианта и магистратуры. В учебно-научных лаборатория МФ ТиНТ (LISA, CTLab) реализуются многочисленные опенсорсные мини-проекты в сфере ИИ, проводятся семинары. В магистратуре AI Talent Hub опенсорсные проекты создаются как выпускные работы студентов, а также как результат специализированных треков хакатонов.

Группа ВК, AI Talent Hub,
ФОСС Кружок
Это сообщество объединяет не только студентов, но и школьников - а также организует масштабный конкурс проектов.

Канал
Сообщество, созданное студентами Иннополиса, направлено на повышение востребованности опенсорса в бизнесе.

Сайт, канал GOS, канал GoOpenSource
Инициативы
Гранты Yandex на Open-Source
Стипендии компании Selectel
Гранты КОД-ИИ
Предоставление ресурсов для индивидуальных разработчиков.
Поддержка научно-популярных публикации про OpenSource
Для разработки открытых библиотек
ФОСС Кружок
АНО “Открытый код”
Подборка авторские инструментов, скриптов, инструкций и руководств, которые могут быть полезны при создании проектов с открытым исходным кодом
Обучающий курс по культуре и инструментам open source разработки
Популяризируют открытый код в государственных и коммерческих организациях
GitVerse, Сбер — аналог Гитхаба от СберТеха.
Gitee — аналог Гитхаба от китайской компании OSChina и российской 3LogicGroup.
Сейчас платформа активно развивается и популяризируется, но открытой она стала не так давно - и пока ней не очень много проектов. Сильная сторона платформы - её интеграция с экосистемой инструментов GigaIDE, GigaCode, AI-помощником разработчик.
У платформы большие планы - “100 000 репозиториев в концу 2024”. Однако, практический опыт работы с ней имеет не столько большое число специалистов - о таковом не упомянул ни один вовлеченный в опрос эксперт.
GitFlic
одна из первых платформ для кода России. Используется в образовательном процессе ряда университетов. Однако, она скорее похожа на GitLab - и не дает функциональность “социальной сети для опенсорса”, присущей GitHub-у.
Что дальше?
ИИ все больше проникает в рабочую деятельность любого разработчика. Базовый уровень такого взаимодействия — помощники общего назначения вроде ChatGPT или более специализированные — например, CoPilot от GitHub.
Инструмент для авто-генерации документации;
Индивидуальный разработчик) — инструмент, предназначенный для суммаризации файлов кода (.py) и документации (.md) в репозитории;
(индивидуальный разработчик) инструмент для ревью pull request-ов с помощью БЯМ
LLM-агент, способный самостоятельно исправлять ошибки из по их описанию;
Однако, сейчас появляется много решений нацеленных именно на помощь в создании опенсорс-проектов, например:
Какие задачи могут быть решены такими инструментами:
Чат на основе документации
Сode Review
Актуализация примеров
Анализ результатов тестирования
Автоматизированное исправление ошибок
Вопросы и ответы по коду и документации
В перспективе - резкое повышение автоматизации разработки проекта в целом
Неизбежно, появление таких возможностей это окажет существенное влияние на то, как создаются, развиваются и используются открытые проекты.

Меняются и схемы монетизации. Так, уже существуют сервисы поддержки авторов опенсорса (например, https://thanks.dev и https://blog.tidelift.com) - и стоит ожидать появления чего-то подобного и в России.
Конечно, масштабы реальных изменений покажет только время. Однако, уже сейчас разработчикам (да и пользователям) открытых проектов стоит следить за возможностями, которые дают новые сервисы и инструменты.
Другие исследования
Об авторах
  • Николай Никитин

    к.т.н, лидер сообщества ITMO.OpenSource

  • Андрей Гетманов

    опенсорс-энтузиаст, исследователь в области LLM и AutoML

  • Ирина Деева

    к.ф.м.н, руководитель проекта по развитию открытого кода на факультете ФЦТ

  • Юрий Каминский

    аспирант, исследователь в области LLM, руководитель студенческого опенсорсного клуба

  • Кирилл Федорин

    Cтудент ИТМО

  • Иван Рубин

    Cтудент ИТМО

  • Алексей Пицур

    UX UI Дизайнер

Правила использования информации в доменной зоне itmo.ru

Политика по обработке Персональных данных
Федеральное государственное автономное образовательное учреждение высшего образования «Национальный исследовательский университет ИТМО»
197101, г. Санкт-Петербург, Кронверкский проспект, д. 49 лит. А
ИНН 7813045547
ОГРН 1027806868154
Содержание
О сообществе
Telegram-чат
Информация © 1993–2024 Университет ИТМО
Разработка © 2024 Университет ИТМО