GPT-NeoX logo

GPT-NeoX

Free

An implementation of model parallel autoregressive transformers on GPUs, based on the DeepSpeed library.

FreeFree tier
Type
Open Source
Company
EleutherAI

About GPT-NeoX

GPT-NeoX is EleutherAI's open-source library for training large-scale autoregressive language models on GPUs. Built on NVIDIA's Megatron Language Model and augmented with techniques from DeepSpeed, it provides distributed training with ZeRO and 3D parallelism (data, tensor, and pipeline). The library supports a wide variety of hardware and cluster schedulers, including AWS, CoreWeave, ORNL Summit/Frontier, LUMI, and launching via Slurm, MPI, and IBM Job Step Manager. It implements cutting-edge architectural innovations such as rotary and alibi positional embeddings, parallel feedforward attention layers, and flash attention. GPT-NeoX comes with predefined configurations for popular architectures like Pythia, PaLM, Falcon, and LLaMA 1&2, and offers curriculum learning, integration with Hugging Face tokenizers/transformers, experiment monitoring via WandB, Comet, TensorBoard, and evaluation via the Language Model Evaluation Harness. Recent additions include Transformer Engine integration, preference learning (DPO, KTO, reward modeling), Mixture-of-Experts (MoE), and RWKV pipeline parallelism. It is used by researchers at Oak Ridge National Lab, Carnegie Mellon University, Stability AI, and others. Note: GPT-NeoX is designed for training billion‑parameter models from scratch; for generic inference, the Hugging Face transformers library is recommended.

Key Features

Distributed training with ZeRO and 3D parallelism (data, tensor, pipeline)
Support for diverse hardware and schedulers (Slurm, MPI, AWS, CoreWeave, ORNL Summit/Frontier, LUMI)
Cutting-edge architectural innovations: rotary/alibi positional embeddings, parallel feedforward attention layers, flash attention
Predefined configurations for Pythia, PaLM, Falcon, LLaMA 1&2
Curriculum learning
Integration with Hugging Face tokenizers/transformers, WandB, Comet, TensorBoard, Language Model Evaluation Harness
Preference learning via DPO, KTO, and reward modeling
Mixture-of-Experts (MoE) support
Transformer Engine integration
Open-source, community-driven development with regular updates

Pros & Cons

Pros
  • Open-source and completely free to use
  • Powerful distributed training with 3D parallelism and ZeRO for scaling to hundreds of GPUs
  • Supports a wide variety of hardware and cluster schedulers (cloud, HPC, on-prem)
  • Integrates cutting-edge architectural innovations (rotary, alibi, flash attention)
  • Predefined configs for popular architectures speed up setup
  • Active development with frequent new features (MoE, preference learning, Transformer Engine)
  • Strong community adoption and used in notable research institutions
Cons
  • Designed only for training billion-parameter models, not suitable for generic inference or smaller projects
  • Steep learning curve due to complexity of distributed training configuration
  • Not recommended for users unfamiliar with large-scale model training and HPC environments
  • Documentation may be challenging for newcomers; the README notes it's not for generic use

Best For

Training large-scale autoregressive language models from scratchResearch into scalable training techniques and model architecturesAcademic, industry, and government labs needing distributed training on HPC clustersPretraining models for downstream NLP tasks

FAQ

What is GPT-NeoX?
GPT-NeoX is EleutherAI's open-source library for training large-scale autoregressive language models on GPUs, based on Megatron and DeepSpeed, with 3D parallelism and many optimizations.
Who should use GPT-NeoX?
Researchers and engineers looking to train language models with billions of parameters from scratch. For generic inference, the Hugging Face transformers library is recommended.
What hardware does GPT-NeoX support?
It supports AWS, CoreWeave, ORNL Summit/Frontier, LUMI, and others, with launching via Slurm, MPI, and IBM Job Step Manager.