Halo distributes post-training without moving models out of Hugging Face

White Circle has open-sourced Halo, a post-training framework that adds distributed training, MoE parallelism, and reinforcement learning directly to Hugging Face models without requiring a separate model implementation or checkpoint format.

Between TRL and frameworks built for large clusters

As models grow, post-training eventually exceeds the memory available on a single GPU. Moving to distributed infrastructure can then require teams to reimplement architectures, convert checkpoints, and maintain a separate representation of the model.

Halo is designed to keep that model inside the Hugging Face ecosystem. An architecture loaded in Hugging Face format remains there throughout training and comes back as standard SafeTensors checkpoints compatible with `frompretrained`.

The framework adds four parallelism strategies: Expert Parallelism for distributing MoE experts, Context Parallelism for splitting long sequences, Tensor Parallelism for distributing matrix multiplications, and Expert-Tensor Parallelism for splitting an individual expert across GPUs. These modes are configured through YAML and some can be combined. Up to 2.8× TRL throughput in White Circle's tests

On `gpt-oss-20b`, White Circle reports between 2.3 and 2.8 times the throughput of stock TRL depending on configuration, while using less peak memory in the corresponding comparisons. Both sides use the same FlashAttention, Liger kernels, fused cross-entropy, and grouped-GEMM optimizations to reduce differences caused by external kernel choices.

At a 4k sequence length and batch size of one, for example, Halo reaches 9,009 tokens/s/GPU compared with 3,885 for stock TRL in the published setup. With a memory-focused configuration, Expert Parallelism brings usage down to 26 GB per GPU versus 47.6 GB for TRL ZeRO-3. These measurements were produced by White Circle on NVIDIA B300 GPUs and are not an independent benchmark.

The advantage is not constant. At 256k tokens, the throughput gain falls to 1.3×. Against Megatron-LM, Halo also leads across several Expert Parallelism configurations, while Megatron moves slightly ahead at EP8 in White Circle's published test. A wrapper instead of a model rewrite

New model families are primarily integrated through wrappers around the relevant blocks. White Circle contrasts this with frameworks that maintain their own implementation of each architecture.

The team counts 127 lines of code for one Halo wrapper, compared with 627 to 1,925 lines in two Megatron-Bridge examples used for comparison. Poolside's Laguna-S-2.1 requires 44 lines of Halo code, while Liquid AI's LFM2.5-8B-A1B uses roughly 120 lines to add EP, ETP, and combined EP+ETP support.

The same architecture extends across post-training methods. SFT, DPO, KTO, GRPO, RLVR, distillation, reward modeling, and embedding training share the distributed layer, while LoRA is supported across several parallelism modes. Reinforcement learning shares the same infrastructure

For agentic and multi-turn RL, Halo uses SGLang as its primary rollout engine in an environment isolated from the trainer. SGLang generates trajectories while Halo trains the model and synchronizes updated parameters through NCCL. With multiple servers, the next batch can be generated while the current one is being trained.

The framework also includes environments where models can call tools, execute code, use MCP, or perform search. The same stack can therefore move from supervised fine-tuning to RL loops involving external environments without replacing the training infrastructure. A 177-million-token training run

White Circle used Halo to fine-tune GLM-4.7-Flash-Coder on 177 million tokens of agentic traces. On SWE-rebench-V2, its resolved rate increased from 33.15% to 41.65% after SFT, a 26% relative improvement in the team's evaluation.

Halo is released under the Apache 2.0 license. The Halo GitHub repository includes the framework, configurations, and the harness used to reproduce its TRL comparisons.