Metadata-Version: 2.4
Name: falcon-ml
Version: 1.0.0
Summary: AutoML library for fast experimentation.
Author-email: Oleh Kostromin <oleh@dataforce.solutions>, Iryna Kondrashchenko <iryna@dataforce.solutions>
License: MIT
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: skl2onnx<1.21.0,>=1.20.0
Requires-Dist: scikit-learn<1.10.0,>=1.5.0
Requires-Dist: numpy<3.0.0,>=1.23.0
Requires-Dist: onnx<2.0.0,>=1.16.0
Requires-Dist: pandas<3.0.0,>=2.0.0
Requires-Dist: pyarrow>=12.0.0
Requires-Dist: scipy>=1.9.0
Requires-Dist: protobuf<7.34,>=4.25.1
Provides-Extra: runtime
Requires-Dist: fnnx[core]<0.1.0,>=0.0.3; extra == "runtime"
Requires-Dist: onnxruntime<1.24.0; python_full_version < "3.11" and extra == "runtime"
Requires-Dist: onnxruntime>=1.18.1; extra == "runtime"
Provides-Extra: gbdt
Requires-Dist: catboost>=1.2.10; extra == "gbdt"
Requires-Dist: lightgbm>=4.7.0; extra == "gbdt"
Requires-Dist: onnxmltools>=1.16.0; extra == "gbdt"
Requires-Dist: xgboost>=3.2.0; extra == "gbdt"
Provides-Extra: hpo
Requires-Dist: optuna<5.0.0,>=3.0.0; extra == "hpo"
Requires-Dist: tqdm>=4.0.0; extra == "hpo"
Dynamic: license-file

<p align="center">
<picture>
  <img alt="Falcon logo" src="https://gist.githubusercontent.com/OKUA1/55e2fb9dd55673ec05281e0247de6202/raw/41063fcd620d9091662fc6473f9331a7651b4465/falcon.svg" height = "250">
</picture>
</p>


# FALCON: A Lightweight AutoML Library
Falcon is a lightweight python library that allows to train production-ready machine learning models in a single line of code. 

## Why Falcon ? 🔍

- Simplicity: With Falcon, training a comprehensive Machine Learning pipeline is as easy as writing a single line of code.
- Flexibility: Falcon offers a range of pre-set configurations, enabling swift interchangeability of internal components with just a minor parameter change.
- Portability: A standout feature of Falcon is its deep native support for [FNNX](https://github.com/BeastByteAI/FNNX)/[ONNX](https://onnx.ai/) models. This lets you export complex pipelines into a single production-ready file, irrespective of the underlying frameworks. As a result, your model can be conveniently deployed without any dependency on the training environment.

⭐ If you liked the project, please support us with a star!

## Quick Start 🚀

You can try falcon out simply by pointing it to the location of your dataset.

```python
from falcon import AutoML

AutoML(task = 'tabular_classification', train_data = '/path/to/titanic.csv')
```

Alternatively, you can use one of the available demo datasets.

```python
from falcon import AutoML
from falcon.datasets import load_churn_dataset, load_insurance_dataset 
# churn -> classification; insurance -> regression

df = load_churn_dataset()

AutoML(task = 'tabular_classification', train_data = df)
```

## Installation 💾 

Stable release from [PyPi](https://pypi.org/project/falcon-ml/)
```bash 
pip install falcon-ml
```

Latest version from [GitHub](https://github.com/OKUA1/falcon)
```bash
pip install git+https://github.com/OKUA1/falcon
```

Optional extras add the FNNX runtime, the gradient boosting candidates and hyperparameter search.

```bash
pip install "falcon-ml[runtime]"
pip install "falcon-ml[gbdt]"
pip install "falcon-ml[hpo]"
```

## Documentation 📚
The [user guide](docs/guide.md) covers configuration, evaluation, export and inference.

