Skip to main content

Welcome to EdgeML

EdgeML is the simplest way to train ML models across thousands of edge devices without moving data. Privacy-first federated learning in 5 lines of code.

pip install edgeml-sdk

Why EdgeML?

Traditional ML requires centralizing data. EdgeML trains on distributed data while preserving privacy.

For Data Scientists

Train models on real-world distributed data:

  • No data movement - Models travel, data stays on-device
  • Privacy-first - Built-in differential privacy and secure aggregation
  • Production-ready - Deploy to millions of devices with rollbacks and A/B testing

For Edge Devices

Participate in collaborative learning:

  • Simple SDK - Just pull model, train locally, submit updates
  • Lightweight - PyTorch/ONNX/TFLite/CoreML support
  • Flexible - Works on mobile, IoT, edge servers

Quick Example

Server-Side (Orchestrator)

import edgeml

# Initialize federation
federation = edgeml.Federation(
api_key="ek_live_...",
name="my-federation"
)

# Run federated training (FedAvg)
federation.train(
model="my-classifier",
rounds=10,
min_updates=100 # Wait for 100 devices per round
)

# Deploy with gradual rollout
federation.deploy(
rollout_percentage=10,
target_percentage=100
)

Client-Side (Edge Device)

import edgeml
import torch

# Initialize client
client = edgeml.FederatedClient(
api_key="ek_live_...",
device_identifier="device-001"
)

# Join federation
client.join_federation("my-federation")

# Train locally and submit updates
def train_locally(base_model):
model = base_model # Your model
# ... train on local data ...
return model.state_dict(), sample_count, metrics

client.train_from_remote(
model="my-classifier",
local_train_fn=train_locally,
rounds=5
)

Core Concepts

🎯

Federation

Coordinate federated training across devices. Run aggregation rounds with FedAvg and deploy with progressive rollouts.

📱

FederatedClient

Edge devices that participate in training. Pull models, train locally, submit encrypted weight updates.

🗂️

ModelRegistry

Manage model versions, convert formats (ONNX/TFLite/CoreML), and track model lineage.

🔒

Privacy

Built-in differential privacy and secure aggregation. Data never leaves the device.

Features

  • FedAvg Algorithm - Industry-standard federated averaging
  • Cross-Platform - Python, iOS (Swift), Android (Kotlin)
  • Model Formats - PyTorch, ONNX, TFLite, CoreML
  • Secure Aggregation - Cryptographic privacy guarantees
  • Progressive Rollouts - A/B test and gradually deploy models
  • Real-Time Dashboard - Monitor training rounds and device health

Get Started

Need Help?