Skip to main content

Train and build models for Argo / Kubernetes

Project description

Gordo


Building thousands of models with timeseries data to monitor systems.


Table of Contents


About

Gordo fulfills the role of inhaling config files and supplying components to the pipeline of:

  1. Fetching data
  2. Training model
  3. Serving model

Components


Documentation is available on Read the Docs


Install

gordo-helm - you can use gordo helm chart from this repository to deploy gordo infrastructure to your Kubernetes cluster.

Python package

pip install --upgrade gordo

With additional extras: pip install gordo[postgres,mlflow]

Bleeding edge:
pip install git+https://github.com/equinor/gordo.git

Developer manual

This section will explain how to start development of Gordo.

Setup

Create and activate a virtual environment first. As a default option, it can be venv module.

Install pip-tools

pip install --upgrade pip
pip install --upgrade pip-tools

Install requirements

pip install -r requirements/full_requirements.txt
pip install -r requirements/test_requirements.txt

Install package:

python3 setup.py install

How to update packages

Note: you have to install pip-tools version higher then 6 for requirements to have same multi-line output format.

To update some package in full_requirements.txt:

  • Change its version in requirements.in file;
  • Compile and upgrade requirements:
pip-compile --upgrade --output-file=full_requirements.txt mlflow_requirements.in postgres_requirements.in requirements.in  

Examples

See our example notebooks for how to develop with gordo locally.

How to run tests locally

List of commands to run tests can be found here. Running of tests takes some time, so it's faster to run tests in parallel:

pytest -n auto -m 'not dockertest' --ignore benchmarks

Run docker-related tests:

pytest -m 'dockertest'

NOTE: To run tests it's required for your system to has (note: commands might differ from your OS):

  • Running docker daemon.
  • Available 5432 port for postgres container.

NOTE: this example is for Pycharm IDE to use breakpoints in the code of the tests.
On the configuration setup for test running add to Additional arguments: in pytest section following string: --ignore benchmarks --cov-report= --no-cov

Build the documentation

This command will run the local documentation server:

> cd docs/
> make watch

Contributing

We welcome contributions to this project! To get started, please follow these steps:

  1. Fork this repository to your own GitHub account and then clone it to your local device.
git clone https://github.com/your-account/your-project.git
  1. Create a new branch for your feature or bug fix.
git checkout -b your-feature-or-bugfix-branch
  1. Make your changes and commit them with a descriptive message.
git commit -m "Add a new feature" -a
  1. Push your changes to your forked repository.
git push origin your-feature-or-bugfix-branch
  1. Open a pull request in this repository and describe the changes you made.

We'll review your changes and work with you to get them merged into the main branch of the project.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gordo-6.0.4.tar.gz (497.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gordo-6.0.4-py3-none-any.whl (218.7 kB view details)

Uploaded Python 3

File details

Details for the file gordo-6.0.4.tar.gz.

File metadata

  • Download URL: gordo-6.0.4.tar.gz
  • Upload date:
  • Size: 497.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.15

File hashes

Hashes for gordo-6.0.4.tar.gz
Algorithm Hash digest
SHA256 db9d07a26e9c042dae1e6c00fd457f8bec31f3eaa7b57ded4771fa84096876ea
MD5 394dfca14624d8c2bd8fc73350170cd6
BLAKE2b-256 690efedf39ab65670d92aa17f48e7cbe227c56c17180a33ce8e2d596bab3d3c1

See more details on using hashes here.

File details

Details for the file gordo-6.0.4-py3-none-any.whl.

File metadata

  • Download URL: gordo-6.0.4-py3-none-any.whl
  • Upload date:
  • Size: 218.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.15

File hashes

Hashes for gordo-6.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6a99ae509e967d7d9860a2576a8a35eff0a0fa932d086bcbb103edb9f7ddb669
MD5 05930914f7b822bab31ace0c97fc028a
BLAKE2b-256 e77088a2cfca8428805253aea4758f2433ea59e851bc320aad4efc0da3743725

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page