Skip to content
forked from Substra/substra

Substra is a framework for traceable ML orchestration on decentralized sensitive data.

License

Notifications You must be signed in to change notification settings

jeandut/substra

 
 

Repository files navigation

Substra

CLI and SDK for interacting with Substra platform.

Table of contents

Install

To install the command line interface and the python sdk, run the following command:

pip install substra

To enable Bash completion, you need to put into your .bashrc:

eval "$(_SUBSTRA_COMPLETE=source substra)"

For zsh users add this to your .zshrc:

eval "$(_SUBSTRA_COMPLETE=source_zsh substra)"

From this point onwards, substra command line interface will have autocompletion enabled.

Running the Substra platform locally

You can run the Substra platform locally on your machine using one of the two following methods:

Usage

Credentials are required for using this tool.

CLI

substra --help

SDK

import substra

client = substra.Client()
# enjoy...

Documentation

Interacting with the Substra platform:

Implementing your assets in python:

Learning about the Substra platform:

Examples

Compatibility table

These sets of versions have been tested for compatilibility:

substra substra-chaincode substra-backend substra-tests hlf-k8s substra-frontend substra-tools
0.4.0-alpha.3 0.0.8-alpha.6 0.0.12-alpha.13 0.2.0-alpha.1 0.0.11-alpha.1 0.0.16
0.4.0-alpha.4 0.0.8-alpha.9 0.0.12-alpha.20 0.2.0-alpha.2 0.0.11-alpha.1 0.0.16
0.4.0 0.0.8 0.0.12 0.2.0 0.0.11 0.0.16
0.5.0 0.0.8 0.0.14 0.3.0 0.0.12 0.0.16 0.5.0
0.6.0 0.0.10 0.0.19 0.4.0 0.0.12 0.0.17 0.5.0

Adding entries to the compatibility table

$ cd substra-tests
$ make test

Contributing

Setup

To setup the project in development mode, run:

pip install -e .[test]

To run all tests, use the following command:

python setup.py test

Documentation

To generate the command line interface documentation, run the following command:

python bin/generate_cli_documentation.py

Use the following command to generate the python sdk documentation (with Python 3.7):

pydocmd simple substra.sdk+ substra.sdk.Client+ > references/sdk.md

Documentation will be available in docs/ directory.

Deploy

Deployment to pypi.org should be automatic thanks to Travis but if you need to do it manually, here is what you need to do:

rm -rf dist/*
python3 setup.py sdist bdist_wheel
twine upload dist/* --verbose

About

Substra is a framework for traceable ML orchestration on decentralized sensitive data.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.9%
  • Makefile 0.1%