Skip to main content

common-mlops

This is a set of utilities for end-to-end lifecycle of Machine Learning applications in Python for Inria-Chile. Could be used like a framework and tooling for rapid development of data science and MLOps functions.

Here’s the folder structure for the repository:

common-mlops/
|
├── data/
│   ├── prepared/
│   └── raw/
│   └── metrics/
├── model/
├── mlops/
|   └── *.py
├── test/
|   └── test_*.py
├── venv/
├── check_credentials.sh
├── install.sh
├── LICENSE
├── README.md
├── requirements.txt
├── s3*.py
└── setup.py

There are the folloging folders in our repository:

  • data/ is all versions of the dataset.
  • data/raw/ is the data obtained from an external source.
  • data/prepared/ is for data modified internally.
  • data/metrics/ is for tracking the performance metrics of our models.
  • model/ is for machine learning models.
  • mlops/ is the source code. Python classes used by the Python scripts.
  • test/ is the pyunit of source code.
  • venv/ is the virtual environment.
  • check_credentials.sh bash for check the AWS credentials.
  • install.sh bash for check the installation.
  • LICENSE
  • requirements.txt the dependencies.
  • s3*.py Python scripts for bash executions.
  • setup.py the configuration of the package.

Installation Linux

Perform the following steps in order to install this program. Replace 'access_key_id' and 'secret_access_key' by the account AWS Credentials associated to poc-inriacl.

git clone https://gitlab.com/Inria-Chile/common-mlops.git
./common-mlops/install.sh access_key_id secret_access_key
pip3 uninstall common-mlops
# Version of test
pip3 install -i https://test.pypi.org/simple/ common-mlops
# Version of production
pip3 install common-mlops

Updates in test.pypi.org

Perform the following steps in order to publish new versions to test.pypi.org:

sudo rm -rf build common_mlops.egg-info dist
bumpversion --current-version 1.0.0 minor setup.py mlops/__init__.py
python3 setup.py sdist bdist_wheel
# Version of test
twine check dist/*
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
# Version of production
twine upload dist/*

Tests

Run the unit tests:

python3 -m unittest

Usage

See the example of usage in:

Docker

Build the image:

docker build -t common-mlops .
docker pull common-mlops

Run the image:

docker run -v$HOME/.aws:/root/.aws:ro -e S3_ACCESS_KEY_ID=access_key_id -e S3_SECRET_ACCESS_KEY=secret_access_key -e AWS_ACCESS_KEY_ID=access_key_id -e AWS_SECRET_ACCESS_KEY=secret_access_key common-mlops .

References

Release files for common-mlops 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for common-mlops 0.1.1
File Size Uploaded
common-mlops-0.1.1.tar.gz 14.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for common-mlops 0.1.1
File Interpreter ABI Platform
common_mlops-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 31.3 kB

Release files / common-mlops-0.1.1.tar.gz

Download URL common-mlops-0.1.1.tar.gz
Size 14.6 kB
Tags Source
SHA-256 checksum
How to use checksums
33c6a5a66933fcf2af55531c3c96e6c63c3a0f17313ea29f095ac2df9ae2c6fe
BLAKE2b-256 checksum
How to use checksums
115f2e095da2fb6acf320d2a496f17da904eb23fd45f24ea9a8c750f8b5f71b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

Release files / common_mlops-0.1.1-py3-none-any.whl

Download URL common_mlops-0.1.1-py3-none-any.whl
Size 16.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
af9d3028a776f22bfdb8723a515d9c32fe318ccd1fbfce67ae00de034c83a13d
BLAKE2b-256 checksum
How to use checksums
b908e7cf1f765c4cd5a40109715809d850d76612f339ba5e2a61ac3b8cfeff5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.5

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page