Python tools to submit functions on the Substra platform


Keywords
substra
License
Other
Install
pip install substratools==0.21.3

Documentation

Substra-tools



Substra


Substra is an open source federated learning (FL) software. This specific repository, substra-tools, is a Python package defining base classes for Dataset (data opener script) and wrappers to execute functions submitted on the platform.

This repository also contains a Dockerfile to execute the user Python scripts on the Substra platform. This is currently needed to easily have substratools package available inside the Docker image without using a pypi server.

Getting started

To install the substratools Python package, run the following command:

pip install substratools

Pull the substra-tools Docker image

docker pull ghcr.io/substra/substra-tools:0.16.0-nvidiacuda11.8.0-base-ubuntu22.04-python3.11

Developers

Clone the repository: https://github.com/Substra/substra-tools

Build the Docker image from source

docker build -f Dockerfile .

Setup

To setup the project in development mode, run:

pip install -e ".[dev]"

To run all tests, use the following command:

make test

How to generate the changelog

The changelog is managed with towncrier. To add a new entry in the changelog, add a file in the changes folder. The file name should have the following structure: <unique_id>.<change_type>. The unique_id is a unique identifier, we currently use the PR number. The change_type can be of the following types: added, changed, removed, fixed.

To generate the changelog (for example during a release), use the following command (you must have the dev dependencies installed):

towncrier build --version=<x.y.z>

You can use the --draft option to see what would be generated without actually writing to the changelog (and without removing the fragments).