Fugue — это библиотека, которая используется для создания и оркестровки workflow машинного обучения.
Она позволяет быстро создавать, тестировать и масштабировать ML приложения, автоматизируя рутинные этапы.
Основные возможности:
— Описание этапов workflow как отдельных функций.
— Автоматическое определение зависимостей между функциями.
— Планирование выполнения функций с учетом зависимостей.
— Кэширование промежуточных результатов для оптимизации.
— Распределенное выполнение на разных ядрах или машинах.
В этом примере с помощью декоратора
@FugueWorkflow() отмечены функции, которые будут этапами workflow.Fugue автоматически определит, что fit_model зависит от preprocess, а predict - от fit_model.
При вызове функций Fugue учтёт эти зависимости и выполнит их в правильном порядке, кэшируя промежуточные результаты.
