Skip to content

Plato: A Research Framework for Federated Learning

Welcome to Plato, a software framework to facilitate scalable, reproducible, and extensible federated learning research.

Getting Started

Installing and Running Plato

Get Plato up and running in your environment.

  • Installation - Installing Plato and setting up your development environment
  • Quick Start - Getting started with Plato

Examples

Configuration Settings

Configuration Settings

Comprehensive guides for configuring all aspects of Plato.

  • Overview - An overview of configuration settings
  • General - General configuration
  • Clients - Client configuration
  • Server - Server configuration
  • Data - Data handling configuration
  • Trainer - Training configuration
  • Algorithm - Algorithm configuration
  • Results - Results and logging configuration
  • Parameters - Parameter configuration

API Reference

API Documentation

Detailed API reference for customizing Plato components.

  • Clients - Customizing client behavior and processing
  • Servers - Customizing server behavior and aggregation
  • Trainers - Customizing training loops and callbacks

Development and Deployment

Development and Deployment

For developers and production deployments.

Additional Resources

Additional documentation and troubleshooting