ONNX Export of Megatron Models#
This guide demonstrates the usage of the ONNX export functionality for Megatron models.
Requirements#
Set up the development environment by launching the latest NeMo container
The minimum version requirements for NeMo and TransformerEngine are below
nemo > 1.19
transformer_engine > 0.10
Export to ONNX#
The export script supports the ONNX export of models with .nemo and .ckpt file extensions. The script also supports the export of the following types of models: GPT, T5, BERT, BART, NMT, RETRO. Commands for both file formats are discussed in the following sections. The model type used for the examples is GPT.
Export using .nemo file#
A model with .nemo file extension can be exported using the command below
python3 examples/nlp/language_modeling/megatron_export.py \
model_type=gpt \
onnx_model_file=gpt_126m.onnx \
gpt_model_file=gpt_126m.nemo
Export using .ckpt file#
A model with .ckpt file extension can be exported using the command below
python3 examples/nlp/language_modeling/megatron_export.py \
model_type=gpt \
onnx_model_file=gpt_126m.onnx \
checkpoint_dir=./gpt_126m/ \
checkpoint_name=model_weights.ckpt \
hparams_file=./gpt_126m/hparams.yaml