Configuration
Configuration options for syft-flwr federated learning workflows.
Configuration Levels
SyftBox Client Configuration
Base SyftBox client settings:
- Datasite identity and credentials
- Sync server endpoints
- Network settings
- Cache and storage paths
syft-flwr Configuration
Federated learning specific settings:
- Flower server address and port
- Client registration
- Training parameters
- Model checkpoints location
Training Configuration
Model and training hyperparameters:
- Learning rate
- Batch size
- Number of epochs
- Optimizer settings
Configuration Files
Environment Variables
Common environment variables:
# SyftBox settings
SYFTBOX_DATA_DIR=~/.syftbox
SYFTBOX_EMAIL=user@example.com
# Flower settings
FLOWER_SERVER_ADDRESS=localhost:8080
FLOWER_NUM_ROUNDS=10
Config Files
Configuration file formats and locations:
# Example syft-flwr config
server:
address: "localhost:8080"
num_rounds: 10
client:
data_dir: "./data"
model_path: "./model"
training:
batch_size: 32
learning_rate: 0.01
epochs: 5
Configuration Priority
Configuration sources in order of precedence:
- Command-line arguments
- Environment variables
- Configuration files
- Default values
Common Settings
Server Configuration
- Server address and port
- Aggregation strategy
- Minimum number of clients
- Round timeout settings
Client Configuration
- Private data location
- Model architecture
- Training parameters
- Communication settings
Security Settings
- Encryption keys
- Permission configurations
- Access control
note
Complete configuration reference coming soon