Set up your system
Before you can use IBM Federated Learning, ensure that you have the required hardware, software, and dependencies.
Core requirements by role
Each entity that participates in a Federated Learning experiment must meet the requirements for their role.
Admin software requirements
Designate an admin for the Federated Learning experiment. The admin must have:
- Access to the platform with watsonx.ai Studio and watsonx.ai Runtime enabled.
You must create a watsonx.ai Runtime service instance. - A project for assembling the global model. You must associate the watsonx.ai Runtime service instance with your project.
Party hardware and software requirements
Each party must have a system that meets these minimum requirements.
Note: Remote parties participating in the same Federated Learning experiment can use different hardware specs and architectures, as long as they each meet the minimum requirement.
Supported architectures
Requires 4 GB memory or greater for hardware.
- x86 64-bit
- Mac M-series
Supported environments
- Linux
- Mac OS/Unix
- Windows
Software dependencies
- A supported Python version and a machine learning framework.
- The watsonx.ai Runtime Python client.
- If you are using Linux, run
pip install 'ibm_watsonx_ai[fl-rt23.1-py3.10]'
. - If you are using Mac OS with M-series CPU and Conda:
- For runtime 24.1, run
pip install ibm_watsonx_ai[fl-rt24.1-py3.11,fl-crypto-rt24.1]
. - For runtime 23.1, download the installation script and then run
./install_fl_rt23.1_macos.sh <name for new conda environment>
.
- For runtime 24.1, run
- If you are using Linux, run
Network requirements
An outbound connection from the remote party to aggregator is required. Parties can use firewalls that restrict internal connections with each other.
Data sources requirements
Data must comply with these requirements.
- Data must be in a directory or storage repository that is accessible to the party that uses them.
- Each data source for a federate model must have the same features. IBM Federated Learning supports horizontal federated learning only.
- Data must be in a readable format, but the formats can vary by data source. Suggested formats include:
- Hive
- Excel
- CSV
- XML
- Database
Parent topic: Creating a Federated Learning experiment