# AIFlow

[![CI](https://github.com/flink-extended/ai-flow/actions/workflows/flink_ai_flow_ci.yml/badge.svg)](https://github.com/flink-extended/ai-flow/actions/workflows/flink_ai_flow_ci.yml)
[![codecov](https://codecov.io/gh/flink-extended/ai-flow/branch/master/graph/badge.svg?token=ISWZNXUYO5)](https://codecov.io/gh/flink-extended/ai-flow)

## Introduction

AIFlow is an open source framework that bridges big data and artificial intelligence. It manages the entire machine learning lifecycle as a unified workflow, including feature engineering, model training, model evaluation, model service, model inference, monitoring, etc.

In addition to the capability of orchestrating a group of batch jobs, by leveraging an event-based scheduler(enhanced version of Apache Airflow), AIFlow also supports workflows that contain streaming jobs. Such capability is quite useful for complicated real-time machine learning systems as well as other real-time workflows.

Learn more about AIFlow at https://ai-flow.readthedocs.io

## Features

1. Define the machine learning workflows including batch/stream jobs.
2. Manage metadata(generated by the machine learning workflow) of datasets, models, artifacts, metrics, jobs etc.
3. Schedule and run the machine learning workflows from end to end.
4. Publish and subscribe various events and take corresponding actions.

## Contributing

We happily welcome contributions to AIFlow in any ways, whether reporting problems, drafting features, or contributing code changes.
You can report problems to request features in the [GitHub Issues](https://github.com/flink-extended/ai-flow/issues).
If you want to contribute code changes, please check out the [contributing documentation](./CONTRIBUTING.md).


## Contact Us

For more information, we recommend you to join the **AIFlow Community Group** on the [Google Groups](https://groups.google.com) to contact us: **aiflow@googlegroups.com**.

You can also join the group on the [DingTalk](https://www.dingtalk.com). The number of the DingTalk group is `35876083`, which group can also be joined by scanning the QR code below:

![](https://raw.githubusercontent.com/wiki/alibaba/flink-ai-extended/images/dingtalk_qr_code.png)
