Skip to content

Phalanx

Federated learning on the latest Flower, with OpenTelemetry-native observability.

flwr 1.36 Message API Federated LoRA OTel traces and metrics
What is Phalanx?

A federated run you can watch, round by round

A federated-learning research testbed on the latest Flower release. Every round emits a server span and FL metrics, every client a span for its train and evaluate pass, so the whole run shows up in Jaeger, Grafana Tempo or any OpenTelemetry Collector.

How it works

One federated round, traced end to end

  1. Broadcast Adapters go to sampled clients
  2. Train Each client fine-tunes LoRA on its partition
  3. Aggregate FedAvg over the returned adapters
  4. Evaluate On client holdouts and the global test split
  5. Trace A round span with client spans as children
  6. Export OTLP, console, or in-memory for tests

Only the LoRA adapters and the classification head are federated. The frozen backbone never leaves a client.

The default showcase

Sentiment, federated, on a laptop

Model Tiny BERT with LoRA google/bert_uncased_L-2_H-128_A-2
Data IMDB sentiment Partitioned non-IID with a Dirichlet partitioner
Federation Five simulated nodes Reproduced from a clone with no bootstrap step
Hardware CPU is enough No GPU required
Flower 1.36 flwr-datasets HuggingFace Transformers PEFT / LoRA OpenTelemetry uv
2026 AJ Barea