Skip to main content

a notebook task interface built on big data and machine learning.

Project description

Contributors Stargazers Issues MIT License


praxxis logo

A Command Line Notebook Task Interface
Explore the docs »

Report Bug · Request Feature

Table of Contents

About The Project

praxxis is a task interface built on big data and machine learning. Using your own storage pool to collect data on your notebook-running habits, praxxis will learn about the problems you are solving, correlate that with the problems everyone else is solving, and predict the next notebook you should run without interrupting your workflow. It is a tool based on a collaborative paradigm of problem solving, allowing every person to leverage the knowledge of their larger organization to come to a solution more quickly.

Using praxxis, any command can be run, documented, and reproduced using executable code cells in jupyter notebooks. By using notebooks to execute, praxxis enforces that your workflows are well documented and replicable, allowing even the least technical user to jump in right where you left off. In exchange, even the most frustrating sequence of commands can be processed by simply typing "prax 1".

Features

Scenes

praxxis scenes are situation-specific configurations that can be saved, closed, reopened and shared. Scenes store your execution history and parameter settings, allowing you to easily fix old problems and get help with new ones. When you share your scenes, your peers are able to see the same outputs, predictions, history, and parameter values you see, effectively containerizing a working environment.

Predictions

With or without a big data cluster, praxxis's predictions are usable through trained machine learning models. If you have your own big data cluster, you can top up or train a new model with your own data. With some configuration, the training code can be run locally as well.

History

With praxxis, a history of commands is preserved, allowing you to backtrack through problems and move forward quickly through complex problems. Since situation specific configurations are saved as parameters in scenes, you'll always be able to track exactly what commands were run, what was changed, and where you need to go next.

Notebook Libraries

praxxis runs on libraries of notebooks, allowing every command on your system to be documented and explained in a beautiful markdown format. praxxis combines the idea of functional documentation with every part of a system, allowing every person on a team to operate with the same understanding as even the most senior engineer, through docs that remain up to date because they're packaged with executable solutions.

Parameters

praxxis uses parameterized jupyter notebooks to inject parameters into code cells. By saving parameters through praxxis, parameters are saved through sessions and restarts, and are documented in an easily accessible format, allowing you to run every notebook with absolute certainty.

Getting Started

to get started developing or using praxxis, follow these steps.

Prerequisites

  • python 3.6 or above

Installation

git clone this repo, and run

pip install .

or

pip install -e .

for development mode.

Usage

praxxis is a command line tool for running jupyter notebooks. To run for the first time, open up your terminal after installing, and run

prax

to see the help page.

For more examples, please refer to the Documentation

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

We would love your help!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Praxxis uses pytest for testing, and it would be much appreciated if you could write tests for your changes before opening a pull request!

We also reference Python PEP-8 for our coding style.

Please see our contributing.md for more details on our coding standards, and code of conduct.

License

Distributed under the MIT License. See LICENSE for more information.

Project Link: https://github.com/microsoft/praxxis

Project details


Download files

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

Source Distribution

praxxis-0.1.dev0.tar.gz (40.4 kB view hashes)

Uploaded Source

Built Distribution

praxxis-0.1.dev0-py3-none-any.whl (70.1 kB view hashes)

Uploaded Python 3

Supported by

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