An open API service indexing awesome lists of open source software.

https://github.com/carsdotcom/skelebot

Machine Learning Project Development Tool
https://github.com/carsdotcom/skelebot

ai build-tool cli data-science hacktoberfest machine-learning project-development python

Last synced: 3 months ago
JSON representation

Machine Learning Project Development Tool

Awesome Lists containing this project

README

          


Machine Learning Project Development Tool

[![CircleCI token](https://circleci.com/gh/carsdotcom/skelebot/tree/master.svg?style=svg)](https://circleci.com/gh/carsdotcom/skelebot)
[![codecov](https://codecov.io/gh/carsdotcom/skelebot/branch/master/graph/badge.svg)](https://codecov.io/gh/carsdotcom/skelebot)
[![License: MIT](https://img.shields.io/badge/License-MIT-teal.svg)](LICENSE)
![Version](https://img.shields.io/badge/dynamic/regex?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcarsdotcom%2Fskelebot%2Frefs%2Fheads%2Fmaster%2FVERSION&search=(%5Cd%5B%5C.%5Cd%5D*)&label=Dev%20Version&color=purple)
![PyPI](https://img.shields.io/pypi/v/skelebot?color=purple&label=PyPi%20Release)
![PyPI - Downloads](https://img.shields.io/pypi/dm/skelebot?color=purple&label=PyPi%20Installs)






Sean Shookman





Joao Moreira





Sherry Wang





Cody Hutchins





Kazi Tanzim Islam





Samuel Gaist








SanthoshBala18


## About

Skelebot is a command-line tool for developing machine learning projects and executing them in Docker. The purpose of Skelebot is to simply make the life of a Data Scientist easier by doing a lot of the legwork for mundane tasks automatically through a unified, consistent interface.

```
[/code/my-iris-model] > skelebot -h
usage: skelebot [-h] [-v] [-e ENV] [-d HOST] [-s] [-n] [-c] [-V]
{loadData,train,score,push,pull,jupyter,plugin,bump,prime,exec,publish,envs}
...

Iris Example
Example Skelebot Project
-----------------------------------
Version: 1.1.0
Environment: None
Skelebot Version: 2.0.0
-----------------------------------

positional arguments:
{loadData,train,score,push,pull,jupyter,plugin,bump,prime,exec,publish,envs}
loadData Load the Iris Dataset and save it into the data folder for the train job to access (src/loadData.py)
train Use the data loaded in the loadData job to train the iris model (src/train.py)
score Use the model that was built in the train job to score new data against the iris model (src/score.py)
push Push an artifact to Artifactory
pull Pull an artifact from Artifactory
jupyter Spin up Jupyter in a Docker Container (port=8888, folder=.)
plugin Install a plugin for skelebot from a local zip file
bump Bump the skelebot.yaml project version
prime Generate Dockerfile and .dockerignore and build the docker image
exec Exec into the running Docker container
publish Publish your versioned Docker Image to the registry
envs Display the available environments for the project

optional arguments:
-h, --help show this help message and exit
-v, --version Display the version number of Skelebot
-e ENV, --env ENV Specify the runtime environment configurations
-d HOST, --docker-host HOST
Set the Docker Host on which the command will be executed
-s, --skip-build Skip the build process and attempt to use previous docker build
-n, --native Run natively instead of through Docker
-c, --contact Display the contact email of the Skelebot project
-V, --verbose Print all job commands to the screen just before execution
```

## Install

Install Skelebot with Pip:

```
pip install skelebot
```

## Getting Started

To get started using Skelebot you can follow the [Documentation](https://carsdotcom.github.io/skelebot/).

## Contributing

Anyone is welcome to make contributions to the project. If you would like to make a contribution, please read our [Contributor Guide](CONTRIBUTING.md).

## Versioning

This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
Please refer to the [Changelog](CHANGELOG.md) for information regarding the differences between versions of the project.