couler  by couler-proj

Workflow manager for unified ML pipeline construction across engines

created 5 years ago
940 stars

Top 39.8% on sourcepulse

GitHubView on GitHub
Project Summary

Couler provides a unified Python interface for defining and managing machine learning workflows across different orchestration engines, aiming to simplify complex ML operations. It targets ML engineers and researchers seeking a consistent way to build, optimize, and deploy workflows, abstracting away the intricacies of individual engines like Argo Workflows, Tekton, and Airflow.

How It Works

Couler translates Python workflow definitions into engine-specific manifests. It employs an Intermediate Representation (IR) to optimize workflows through auto-parallelism and dynamic artifact caching, reducing redundant computations. The system also integrates LLMs for natural language to workflow code generation and automates hyperparameter tuning using Dataset and Model Cards.

Quick Start & Requirements

  • Install Couler via pip: python3 -m pip install git+https://github.com/couler-proj/couler --ignore-installed
  • Requires Python 3.6+.
  • Currently supports Argo Workflows as the backend; installation instructions for Argo are provided.
  • An interactive Katacoda environment is available for hands-on experience.

Highlighted Details

  • Unified Python SDK for workflow construction, abstracting engine-specific complexities.
  • Features autonomous workflow construction, automatic artifact caching, and auto-parallelism optimization.
  • Integrates LLMs for natural language-based workflow generation.
  • Automates hyperparameter tuning with Dataset and Model Card integration.

Maintenance & Community

  • Included in CNCF Cloud Native Landscape and LF AI Landscape.
  • Technical report published on ICDE 2024.
  • Active development towards supporting Airflow and other engines.
  • Community adoption noted, with over 3000 users at Ant Group and adoption by 20+ companies.

Licensing & Compatibility

  • The repository does not explicitly state a license in the README.

Limitations & Caveats

Currently, Couler only fully supports Argo Workflows; support for Airflow is partial (40-50% of the API). The project aims for broader engine support, but this is an ongoing development effort.

Health Check
Last commit

9 months ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
7 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.