Skip to content

Multi-AutoML Interface v5.2.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 17:31
· 35 commits to main since this release

Multi-AutoML Interface 5.2.0

Fixed

  • Most catalog rows pointed at engines the interpreter did not have. The bundled runtime
    installs requirements.txt, whose only AutoML engine is FLAML (plus LightGBM and XGBoost),
    yet the framework selector offered AutoGluon, PyCaret, Lale, TPOT, H2O and AutoKeras for most
    of the 23 (category, task) rows; the background thread then died on No module named 'autogluon', far from the widget that caused it. Both the training selector and the
    model-source selector now list only engines that can be imported and print the pip install
    line for the rest, and the orchestrator raises the same message before starting a thread.
  • FLAML Forecast and Ranking could not train. ts_forecast asserts a forecast period
    before the search starts, so every Forecast run with FLAML failed on the first iteration;
    Forecast now passes the date column as time_col and the horizon as period (Sequential uses
    that native path, Tabular keeps the processor's lag features and trains as regression).
    Ranking handed LightGBM float relevance grades and rows in arbitrary order; it now sorts by a
    new Query / Group Column input and casts integer grades, and Ranking lists only the boosting
    learners because the sklearn forests reject the group argument the ranker forwards. Missing
    inputs raise a readable ValueError instead of failing inside the learner. Both were run end
    to end against the bundled interpreter, and tests/test_flaml_task_paths.py keeps them covered.
  • Rows that no engine implemented. Semi-Supervised Classification was a task row while the
    real feature is the Classification checkbox that wraps the model in SelfTrainingClassifier;
    Text/Clustering had no text featurizer; four Sequential rows dispatched exactly like their
    Tabular twins. Hugging Face logged parameters and returned a successful run id without
    training anything, and its "models" could not be loaded back by the prediction service, so
    run_huggingface_experiment is gone - the Hub push/pull service stays.
  • Forecast models were restored through the wrong PyCaret module. The catalog calls the task
    Forecast, but prediction_service and the generated code still compared the older
    "Time Series Forecasting", so a time-series artifact was loaded with
    pycaret.classification.load_model.
  • The data lake offered Git LFS pointer files as datasets. Several data_lake/raw/*.csv are
    committed through LFS and were never pulled, so pandas read the 130-byte pointer as a
    one-column table and the Training page proposed version https://git-lfs.github.com/spec/v1 as a data column. Loading one now says to run
    git lfs pull.

Changed

  • Text tasks train through AutoGluon's multimodal predictor with the columns you mark as text,
    the same path Multimodal already used, instead of a tabular predictor that treated the text as
    one categorical feature.
  • Sequential is now one row (Forecast): the category exists to hand the raw time ordering to an
    engine's native time series task, which is also why AutoGluon is not offered there - its
    tabular predictor cannot forecast a future step from same-row features.

Added

  • The documented support matrices are checked against the catalog. README.md and
    docs/DOCUMENTATION.md restate TASK_FRAMEWORK_MAP, and had drifted (rows for engines with no
    code path, the Forecast rename). tests/test_doc_matrix_sync.py parses both files and compares
    them pair by pair; it is dependency-free, so it runs in the PR gate.
  • The dispatch contract is read from app.py, not transcribed. The engine-kwargs test kept a
    hand-written key list that had already drifted for PyCaret and Lale; the tests now parse the
    dispatch chain with ast.

What is inside

Each installer bundles a standalone CPython 3.12 with everything in
requirements.txt already installed, so no Python setup is needed on
the target machine. Runs, models and the data lake are written to the app's
per-user workspace (the Electron userData directory):

Operating system Location
Windows %APPDATA%\multi-automl-desktop\workspace\
macOS ~/Library/Application Support/multi-automl-desktop/workspace/
Linux ~/.config/multi-automl-desktop/workspace/

The heavy AutoML backends (AutoGluon, PyCaret, TPOT, Lale, H2O, AutoKeras)
stay optional and are lazy-imported; the bundled runtime
contains the core stack (Streamlit, MLflow, FLAML, scikit-learn, XGBoost,
LightGBM), so the desktop installers offer FLAML until you install whichever
engines you need into it. H2O additionally requires Java 11+.

Signing

These builds are not code-signed or notarized, so SmartScreen and Gatekeeper
will warn on first launch.