Version 1.3.0

We are happy to announce the AutoGluon 1.3.0 release!

AutoGluon 1.3 focuses on stability & usability improvements, bug fixes, and dependency upgrades.

This release contains 144 commits from 20 contributors! See the full commit change-log here: https://github.com/autogluon/autogluon/compare/v1.2.0…v1.3.0

Join the community: Get the latest updates: Twitter

Loading models trained on older versions of AutoGluon is not supported. Please re-train models using AutoGluon 1.3.


Highlights

AutoGluon-Tabular is the state of the art in the AutoML Benchmark 2025!

The AutoML Benchmark 2025, an independent large-scale evaluation of tabular AutoML frameworks, showcases AutoGluon 1.2 as the state of the art AutoML framework! Highlights include:

  • AutoGluon’s rank statistically significantly outperforms all AutoML systems via the Nemenyi post-hoc test across all time constraints.

  • AutoGluon with a 5 minute training budget outperforms all other AutoML systems with a 1 hour training budget.

  • AutoGluon is pareto efficient in quality and speed across all evaluated presets and time constraints.

  • AutoGluon with presets="high", infer_limit=0.0001 (HQIL in the figures) achieves >10,000 samples/second inference throughput while outperforming all methods.

  • AutoGluon is the most stable AutoML system. For “best” and “high” presets, AutoGluon has 0 failures on all time budgets >5 minutes.

https://raw.githubusercontent.com/Innixma/autogluon-doc-utils/refs/heads/main/docs/whats_new/v1.3.0/amlb2025_fig1.png

AutoGluon Multimodal’s “Bag of Tricks” Update

We are pleased to announce the integration of a comprehensive “Bag of Tricks” update for AutoGluon’s MultiModal (AutoMM). This significant enhancement substantially improves multimodal AutoML performance when working with combinations of image, text, and tabular data. The update implements various strategies including multimodal model fusion techniques, multimodal data augmentation, cross-modal alignment, tabular data serialization, better handling of missing modalities, and an ensemble learner that integrates these techniques for optimal performance.

Users can now access these capabilities through a simple parameter when initializing the MultiModalPredictor after following the instruction here to download the checkpoints:

from autogluon.multimodal import MultiModalPredictor
predictor = MultiModalPredictor(label="label", use_ensemble=True)
predictor.fit(train_data=train_data)

We express our gratitude to @zhiqiangdon, for this substantial contribution that enhances AutoGluon’s capabilities for handling complex multimodal datasets. Here is the corresponding research paper describing the technical details: Bag of Tricks for Multimodal AutoML with Image, Text, and Tabular Data.

Deprecations and Breaking Changes

The following deprecated TabularPredictor methods have been removed in the 1.3.0 release (deprecated in 1.0.0, raise in 1.2.0, removed in 1.3.0). Please use the new names:

  • persist_models -> persist, unpersist_models -> unpersist, get_model_names -> model_names, get_model_best -> model_best, get_pred_from_proba -> predict_from_proba, get_model_full_dict -> model_refit_map, get_oof_pred_proba -> predict_proba_oof, get_oof_pred -> predict_oof, get_size_disk_per_file -> disk_usage_per_file, get_size_disk -> disk_usage, get_model_names_persisted -> model_names(persisted=True)

The following logic has been deprecated starting in 1.3.0 and will log a FutureWarning. Functionality will be changed in a future release:

  • (FutureWarning) TabularPredictor.delete_models() will default to dry_run=False in a future release (currently dry_run=True). Please ensure you explicitly specify dry_run=True for the existing logic to remain in future releases. @Innixma (#4905)

General

Improvements

  • (Major) Internal refactor of AbstractTrainer class to improve extensibility and reduce code duplication. @canerturkmen (#4804, #4820, #4851)

Dependencies

Documentation

Fixes and Improvements


Tabular

Removed Models

  • Removed vowpalwabbit model (key: VW) and optional dependency (autogluon.tabular[vowpalwabbit]), as the model implemented in AutoGluon was not widely used and was largely unmaintained. @Innixma (#4975)

  • Removed TabTransformer model (key: TRANSF), as the model implemented in AutoGluon was heavily outdated, unmaintained since 2020, and generally outperformed by FT-Transformer (key: FT_TRANSFORMER). @Innixma (#4976)

  • Removed tabpfn from autogluon.tabular[tests] install in preparation for future tabpfn>=2.x support. @Innixma (#4974)

New Features

  • Add support for regression stratified splits via binning. @Innixma (#4586)

  • Add TabularPredictor.model_hyperparameters(model) that returns the hyperparameters of a model. @Innixma (#4901)

  • Add TabularPredictor.model_info(model) that returns the metadata of a model. @Innixma (#4901)

  • (Experimental) Add plot_leaderboard.py to visualize performance over training time of the predictor. @Innixma (#4907)

  • (Major) Add internal ag_model_registry to improve the tracking of supported model families and their capabilities. @Innixma (#4913, #5057, #5107)

  • Add raise_on_model_failure TabularPredictor.fit argument, default to False. If True, will immediately raise the original exception if a model raises an exception during fit instead of continuing to the next model. Setting to True is very helpful when using a debugger to try to figure out why a model is failing, as otherwise exceptions are handled by AutoGluon which isn’t desired while debugging. @Innixma (#4937, #5055)

Documentation

Fixes and Improvements

  • (Major) Ensure bagged refits in refit_full works properly (crashed in v1.2.0 due to a bug). @Innixma (#4870)

  • Improve XGBoost and CatBoost memory estimates. @Innixma (#5090)

  • Improve LightGBM memory estimates. @Innixma (#5101)

  • Fixed plot_tabular_models save path. @everdark (#4711)

  • Fixed balanced_accuracy metric edge-case exception + added unit tests to ensure future bugs don’t occur. @Innixma (#4775)

  • Fix HPO logging verbosity. @Innixma (#4781)

  • Improve logging for use_child_oof=True. @Innixma (#4780)

  • Fix crash when NN_TORCH trains with fewer than 8 samples. @Innixma (#4790)

  • Improve logging and documentation in CatBoost memory_check callback. @celestinoxp (#4802)

  • Improve code formatting to satisfy PEP585. @celestinoxp (#4823)

  • Remove deprecated TabularPredictor methods: @Innixma (#4906)

  • (FutureWarning) TabularPredictor.delete_models() will default to dry_run=False in a future release (currently dry_run=True). Please ensure you explicitly specify dry_run=True for the existing logic to remain in future releases. @Innixma (#4905)

  • Sped up tabular unit tests by 4x through various optimizations (3060s -> 743s). @Innixma (#4944)

  • Major tabular unit test refactor to avoid using fixtures. @Innixma (#4949)

  • Fix XGBoost GPU warnings. @Innixma (#4866)

  • Fix TabularPredictor.refit_full(train_data_extra) failing when categorical features exist. @Innixma (#4948)

  • Reduced memory usage of artifact created by convert_simulation_artifacts_to_tabular_predictions_dict by 4x. @Innixma (#5024)

  • Minor fixes. @shchur (#5030)

  • Ensure that max model resources is respected during holdout model fit. @Innixma (#5067)

  • Remove unintended setting of global random seed during LightGBM model fit. @Innixma (#5095)


TimeSeries

The new v1.3 release brings numerous usability improvements and bug fixes to the TimeSeries module. Internally, we completed a major refactor of the core classes and introduced static type checking to simplify future contributions, accelerate development, and catch potential bugs earlier.

API Changes and Deprecations

  • As part of the refactor, we made several changes to the internal AbstractTimeSeriesModel class. If you maintain a custom model implementation, you will likely need to update it. Please refer to the custom forecasting model tutorial for details.

    No action is needed from the users that rely solely on the public API of the timeseries module (TimeSeriesPredictor and TimeSeriesDataFrame).

New Features

  • New tutorial on adding custom forecasting models by @shchur in #4749

  • Add cutoff support in evaluate and leaderboard by @abdulfatir in #5078

  • Add horizon_weight support for TimeSeriesPredictor by @shchur in #5084

  • Add make_future_data_frame method to TimeSeriesPredictor by @shchur in #5051

  • Refactor ensemble base class and add new ensembles by @canerturkmen in #5062

Code Quality

Fixes and Improvements


Multimodal

New Features

AutoGluon’s MultiModal module has been enhanced with a comprehensive “Bag of Tricks” update that significantly improves performance when working with combined image, text, and tabular data through advanced fusion techniques, data augmentation, and an integrated ensemble learner now accessible via a simple use_ensemble=True parameter after following the instruction here to download the checkpoints.

Documentation

Fixes and Improvements

  • Update s3 path to public URL for AutoMM unit tests by @suzhoum in #4809

  • Fix object detection tutorial and default behavior of predict by @FANGAreNotGnu in #4865

  • Fix NLTK tagger path in download function by @k-ken-t4g in #4982

  • Fix AutoMM model saving logic by capping transformer range by @tonyhoo in #5007

  • fix: account for distributed training in learning rate schedule by @tonyhoo in #5003


Special Thanks

  • Zhiqiang Tang for implementing “Bag of Tricks” for AutoGluon’s MultiModal, which significantly enhances the multimodal performance.

  • Caner Turkmen for leading the efforts on refactoring and improving the internal logic in the timeseries module.

  • Celestino for providing numerous bug reports, suggestions, and code cleanup as a new contributor.

Contributors

Full Contributor List (ordered by # of commits):

@Innixma @shchur @canerturkmen @tonyhoo @abdulfatir @celestinoxp @suzhoum @FANGAreNotGnu @prateekdesai04 @zhiqiangdon @cheungdaven @LennartPurucker @abhishek-iitmadras @zkalson @nathanaelbosch @Killer3048 @FireballDWF @timostrunk @everdark @kbulygin @PGijsbers @k-ken-t4g

New Contributors