Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

  • Introduction

     FATE (Federated AI Technology Enabler) is an open-source project initiated by Webank's AI Department to provide a secure computing framework to support the federated AI ecosystem. It implements secure computation protocols based on homomorphic encryption and multi-party computation (MPC). It supports federated learning architectures and secure computation of various machine learning algorithms, including logistic regression, tree-based algorithms, deep learning and transfer learning.

  • License

     Apache License 2.0

  • How to use this document

     Just follow the instruction.

  • Deployment Architecture

  • Pre-Installation Requirements

    • Hardware Requirements

      • Minimum Hardware Requirements

                           Single Machine with Linux or Mac system installed.

      • Recommended Hardware Requirements

    • Software Prerequisites

Introductions

FATE can be installed on Linux or Mac. Now, FATE can support:

  • Native installation: standalone and cluster deployments;

  • KubeFATE installation:

    • Multipal parties deployment by docker-compose, which for devolopment and test purpose;

    • Cluster (multi-node) deployment by Kubernetes

Native installation:

Software

...

environment :jdk1.8+、Python3.6、python virtualenv、mysql5.6+

...

Standalone

FATE provides Standalone runtime architecture for developers. It can help developers quickly test FATE. Standalone support two types of deployment: Docker version and Manual version. Please refer to Standalone deployment guide: standalone-deploy

Cluster

FATE also provides a distributed runtime architecture for Big Data scenario. Migration from standalone to cluster requires configuration change only. No algorithm change is needed.

To deploy FATE on a cluster, please refer to cluster deployment guide: cluster-deploy.

KubeFATE installation:

Using KubeFATE, FATE can be deployed by either docker-compose or Kubernetes:

  • For development or testing purposes, docker-compose is recommended. It only requires Docker enviroment. For more detail, please refer to Deployment by Docker Compose.

  • For a production or a large scale deployment, Kubernetes is recommended as an underlying infrastructure to manage FATE system. For more detail, please refer to Deployment on Kubernetes.

More instructions can be found in KubeFATE.

    • Database Prerequisites

      • Schema scripts

    • Other Installation Requirements

      • Jump Host Requirements

      • Network Requirements

      • Bare Metal Node Requirements

      • Execution Requirements (Bare Metal Only)

  •    Installation High-Level Overview

    • Bare Metal Deployment Guide

      • Install Bare Metal Jump Host

      • Creating a Node Inventory File

      • Creating the Settings Files

      • Running

    • Virtual Deployment Guide

      • Standard Deployment Overview

      • Snapshot Deployment Overview

      • Special Requirements for Virtual Deployments

        • Install Jump Host

        • Verifying the Setup - VMs

    • Upstream Deployment Guide

      • Upstream Deployment Key Features

      • Special Requirements for Upstream Deployments

      • Scenarios and Deploy Settings for Upstream Deployments

      • Including Upstream Patches with Deployment

      • Running

      • Interacting with Containerized Overcloud

  • Verifying the Setup as defined the Akraino validation feature project plus any additional testing specific to the blue print

Running Tests

A script to run all the unittests has been provided in ./federatedml/test folder.

Once FATE is installed, tests can be run using:

sh ./federatedml/test/run_test.sh

All the unittests shall pass if FATE is installed properly.

...

Developer Guide and Troubleshooting

  • Utilization of Images

  • Post-deployment Configuration

  • Debugging Failures

  • Reporting a Bug

...

Uninstall Guide

...

Troubleshooting

  • Error Message Guide

...

Maintenance

  • Blue Print Package Maintenance

    • Software maintenance
    • Hardware maintenance
  • Blue Print Deployment Maintenance

...

Frequently Asked Questions

...

License

...

References

FATE-Client Installation

FATE-client is an easy tool for interacting with FATE. We strongly recommend you install FATE-client and take its advantage to use FATE conveniently. Please refer to this document for more details on FATE-Client.

...