# Введение Фреймворк решает проблему размещения проектов в сфере искусственного интеллекта в виде веб-сервисов. В частности: - "Живая" демонстрация работы проекта на любых совместимых данных через веб-сервис - Запуск вычислительных экспериментов и их организация - Управление пользователями, ограничение доступа ## Размещаемые проекты Чтобы существующий проект мог быть подключен к фреймворку, в нём должна быть выделена задача с явно заданными входными и выходными данными: "получить данные A, B и C, произвести вычисления, вывести данные X, Y и Z". - Хороший пример - оптическое распознавание символов. На входе изображение, на выходе текст с этого изображения. - Плохой пример - приложение с базой данных, где основные взаимодействия с приложением регулярно обновляют эту базу данных. - Хороший пример - вычислительная подзадача, которая выполняется на выборке из базы данных. На входе выборка, на выходе результат вычислений. - Плохой пример - набор Jupyter-тетрадей, в которых задачи решаются последовательным вызовом ячеек с кодом. - Хороший пример - тот же код, оформленный в виде скрипта `.py`. Фреймворк предоставляет два варианта организации вычислительных задач: 1. Веб-сервис для быстрых синхронных вычислений - MLComponent 2. Асинхронный запуск вычислительных экспериментов - ExperimentPipeline Как правило, если вычислительная задача требует доли секунды для выполнения, её уместно организовывать как ML-компонент, иначе - пайплайн.