mylearn


Namemylearn JSON
Version 0.0.3 PyPI version JSON
download
home_pagehttps://github.com/MichaelKarpe/mylearn
Summarymylearn: my Machine Learning framework
upload_time2023-04-16 19:52:13
maintainer
docs_urlNone
authorMichael Karpe
requires_python>=3.8,<3.12
licenseMIT
keywords airflow mlflow
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <h2 align="center">mylearn: my Machine Learning framework</h2>

<p align="center">
<a href="https://pypi.org/project/mylearn"><img src="https://img.shields.io/pypi/v/mylearn.svg"></a>
<a href="https://pypi.org/project/mylearn"><img src="https://img.shields.io/pypi/pyversions/mylearn.svg"></a>
<a href="https://github.com/MichaelKarpe/mylearn/blob/main/LICENSE"><img src="https://img.shields.io/pypi/l/mylearn.svg"></a>
<a href="https://github.com/MichaelKarpe/mylearn/actions"><img src="https://github.com/MichaelKarpe/mylearn/workflows/ci/badge.svg"></a>
<a href="https://github.com/psf/black"><img src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
</p>

___

[mylearn](https://github.com/MichaelKarpe/mylearn) is a Machine Learning framework based on
[Airflow](https://github.com/apache/airflow) and [MLflow](https://github.com/mlflow/mlflow) for designing machine
learning systems in a production perspective.

**Work in progress... Stay tuned!**

# Index

1. [Recommended prerequisites](#prerequisites)
2. [Installation & Setup](#installation-setup)
3. [Usage](#usage)

# Recommended prerequisites

## Git

```commandline
sudo apt-get install git
```

## pyenv

Install [binary dependencies and build tools](https://github.com/pyenv/pyenv/wiki#suggested-build-environment):
```commandline
sudo apt update
sudo apt install build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
```

Install pyenv:
```commandline
curl https://pyenv.run | bash
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
source ~/.bashrc
```

Install a Python version and set it as default:
```commandline
pyenv install 3.11.2
pyenv global 3.11.2
```

## poetry

```commandline
curl -sSL https://install.python-poetry.org | python3 -
echo 'export PATH="~/.local/bin:$PATH"' >> ~/.bashrc
```

# Installation & Setup

mylearn leverages [poetry](https://github.com/python-poetry/poetry) and [poethepoet](https://github.com/nat-n/poethepoet)
to make its installation and setup surprisingly simple.

## Installation

It is recommended to install requirements within a `virtualenv` located at the project root level, although not required.
```commandline
poetry config virtualenvs.in-project true
```

Installation is run with:
```commandline
poetry install
```

Should you install from the `requirements.txt` file instead of the `poetry.lock` file:
```commandline
pyenv shell 3.11.2
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```

## Airflow Setup

Airflow setup is initialized via a `poe` command
```commandline
poe airflow-init
```

Airflow Scheduler & Webserver can be run with
```commandline
poe airflow-scheduler
poe airflow-webserver
```

Airflow UI can be opened at [localhost](0.0.0.0:8080) (port 8080), and you can login with username and password `admin`.

If you want to clean your Airflow setup before rerunning `poe airflow-init`, you need to kill Airflow Scheduler &
Webserver and run
```commandline
poe airflow-clean
```

## MLflow Setup

MLflow UI can be opened at [localhost](0.0.0.0:5000) (port 5000) after execution of the following command:
```commandline
poe mlflow-ui
```

# Usage

## MLflow Pipelines Regression Template

The *mlflow-template* pipeline, based on the
[MLflow Pipelines Regression Template](https://github.com/mlflow/mlp-regression-template), can be run independently with
```commandline
poe mlflow-run
```

or via an Airflow Directed Acyclic Graph (DAG) by triggering the *mlflow-template* DAG via Airflow UI or with
```commandline
TO BE COMPLETED
```

## Other examples

**Work in progress... Stay tuned!**

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/MichaelKarpe/mylearn",
    "name": "mylearn",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<3.12",
    "maintainer_email": "",
    "keywords": "airflow,mlflow",
    "author": "Michael Karpe",
    "author_email": "michael.karpe@berkeley.edu",
    "download_url": "https://files.pythonhosted.org/packages/18/b9/3a7879d6c96a185647547f6c026a98a714058a8ed4f0974772e1af6e08ca/mylearn-0.0.3.tar.gz",
    "platform": null,
    "description": "<h2 align=\"center\">mylearn: my Machine Learning framework</h2>\n\n<p align=\"center\">\n<a href=\"https://pypi.org/project/mylearn\"><img src=\"https://img.shields.io/pypi/v/mylearn.svg\"></a>\n<a href=\"https://pypi.org/project/mylearn\"><img src=\"https://img.shields.io/pypi/pyversions/mylearn.svg\"></a>\n<a href=\"https://github.com/MichaelKarpe/mylearn/blob/main/LICENSE\"><img src=\"https://img.shields.io/pypi/l/mylearn.svg\"></a>\n<a href=\"https://github.com/MichaelKarpe/mylearn/actions\"><img src=\"https://github.com/MichaelKarpe/mylearn/workflows/ci/badge.svg\"></a>\n<a href=\"https://github.com/psf/black\"><img src=\"https://img.shields.io/badge/code%20style-black-000000.svg\"></a>\n</p>\n\n___\n\n[mylearn](https://github.com/MichaelKarpe/mylearn) is a Machine Learning framework based on\n[Airflow](https://github.com/apache/airflow) and [MLflow](https://github.com/mlflow/mlflow) for designing machine\nlearning systems in a production perspective.\n\n**Work in progress... Stay tuned!**\n\n# Index\n\n1. [Recommended prerequisites](#prerequisites)\n2. [Installation & Setup](#installation-setup)\n3. [Usage](#usage)\n\n# Recommended prerequisites\n\n## Git\n\n```commandline\nsudo apt-get install git\n```\n\n## pyenv\n\nInstall [binary dependencies and build tools](https://github.com/pyenv/pyenv/wiki#suggested-build-environment):\n```commandline\nsudo apt update\nsudo apt install build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev\n```\n\nInstall pyenv:\n```commandline\ncurl https://pyenv.run | bash\necho 'export PATH=\"$HOME/.pyenv/bin:$PATH\"' >> ~/.bashrc\necho 'eval \"$(pyenv init -)\"' >> ~/.bashrc\necho 'eval \"$(pyenv virtualenv-init -)\"' >> ~/.bashrc\nsource ~/.bashrc\n```\n\nInstall a Python version and set it as default:\n```commandline\npyenv install 3.11.2\npyenv global 3.11.2\n```\n\n## poetry\n\n```commandline\ncurl -sSL https://install.python-poetry.org | python3 -\necho 'export PATH=\"~/.local/bin:$PATH\"' >> ~/.bashrc\n```\n\n# Installation & Setup\n\nmylearn leverages [poetry](https://github.com/python-poetry/poetry) and [poethepoet](https://github.com/nat-n/poethepoet)\nto make its installation and setup surprisingly simple.\n\n## Installation\n\nIt is recommended to install requirements within a `virtualenv` located at the project root level, although not required.\n```commandline\npoetry config virtualenvs.in-project true\n```\n\nInstallation is run with:\n```commandline\npoetry install\n```\n\nShould you install from the `requirements.txt` file instead of the `poetry.lock` file:\n```commandline\npyenv shell 3.11.2\npython -m venv .venv\nsource .venv/bin/activate\npip install -r requirements.txt\n```\n\n## Airflow Setup\n\nAirflow setup is initialized via a `poe` command\n```commandline\npoe airflow-init\n```\n\nAirflow Scheduler & Webserver can be run with\n```commandline\npoe airflow-scheduler\npoe airflow-webserver\n```\n\nAirflow UI can be opened at [localhost](0.0.0.0:8080) (port 8080), and you can login with username and password `admin`.\n\nIf you want to clean your Airflow setup before rerunning `poe airflow-init`, you need to kill Airflow Scheduler &\nWebserver and run\n```commandline\npoe airflow-clean\n```\n\n## MLflow Setup\n\nMLflow UI can be opened at [localhost](0.0.0.0:5000) (port 5000) after execution of the following command:\n```commandline\npoe mlflow-ui\n```\n\n# Usage\n\n## MLflow Pipelines Regression Template\n\nThe *mlflow-template* pipeline, based on the\n[MLflow Pipelines Regression Template](https://github.com/mlflow/mlp-regression-template), can be run independently with\n```commandline\npoe mlflow-run\n```\n\nor via an Airflow Directed Acyclic Graph (DAG) by triggering the *mlflow-template* DAG via Airflow UI or with\n```commandline\nTO BE COMPLETED\n```\n\n## Other examples\n\n**Work in progress... Stay tuned!**\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "mylearn: my Machine Learning framework",
    "version": "0.0.3",
    "split_keywords": [
        "airflow",
        "mlflow"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9273d0a456b292c83f15b10ce9cae62e3c00d2cb54b7d07e4a997e2921161261",
                "md5": "abdcc94e794d963830d70256588027c4",
                "sha256": "2f7d18a9880d9af9158c8ad97ee9b468bf1df7936a76c855b1f45bb39bab39c6"
            },
            "downloads": -1,
            "filename": "mylearn-0.0.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "abdcc94e794d963830d70256588027c4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<3.12",
            "size": 3474,
            "upload_time": "2023-04-16T19:52:11",
            "upload_time_iso_8601": "2023-04-16T19:52:11.342436Z",
            "url": "https://files.pythonhosted.org/packages/92/73/d0a456b292c83f15b10ce9cae62e3c00d2cb54b7d07e4a997e2921161261/mylearn-0.0.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "18b93a7879d6c96a185647547f6c026a98a714058a8ed4f0974772e1af6e08ca",
                "md5": "68c93b2a456162b28fd658a58983e99c",
                "sha256": "18d4eed45031d70cc3445c6f53671b12032464b4869382ca454c43e890e8fb54"
            },
            "downloads": -1,
            "filename": "mylearn-0.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "68c93b2a456162b28fd658a58983e99c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<3.12",
            "size": 5005,
            "upload_time": "2023-04-16T19:52:13",
            "upload_time_iso_8601": "2023-04-16T19:52:13.184464Z",
            "url": "https://files.pythonhosted.org/packages/18/b9/3a7879d6c96a185647547f6c026a98a714058a8ed4f0974772e1af6e08ca/mylearn-0.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-16 19:52:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "MichaelKarpe",
    "github_project": "mylearn",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "mylearn"
}
        
Elapsed time: 0.05764s