AutoML that writes its own Python scripts
It turns a JSON declaration of your ML problem into generated Python code, sparing you the repetitive boilerplate around data prep and training.

What it does
Lightwood is an AutoML framework built on PyTorch that automates the standard machine-learning lifecycle: pre-processing, feature engineering, and model training. You feed it a pandas DataFrame and a problem definition—chiefly the target column you want to predict—and it infers data types, assigns encoders, and selects a mixer model. The hook is that it does not just train a model; it first produces a JSON-AI specification describing the entire pipeline, then compiles that specification into executable Python code.
The interesting bit
The JSON-AI object is fully exposed, so you can override defaults or swap out entire steps—encoders, cleaners, splitters, mixers—with your own implementations by inheriting from base classes like BaseEncoder or BaseMixer. This makes it less of a black-box AutoML tool and more of a code generator that still expects you to know what you are doing.
Key highlights
- Supports heterogeneous data types—numbers, dates, categories, text, arrays, and multimedia formats—plus a dedicated time-series mode for between-row dependencies.
- Encoders can be rule-based or learned, and mixers are predominantly PyTorch-based but open to other architectures.
- The generated pipeline is plain Python, so you can inspect the code rather than debugging a hidden framework graph.
- “BYOM” support lets you inject custom logic at any stage of the pipeline without forking the library.
Verdict
Data scientists who want AutoML speed without surrendering control over encoders and model architecture will find this useful. If you are looking for a fully opaque, zero-configuration solution, the constant invitation to customize may feel like homework.
Frequently asked
- What is mindsdb/lightwood?
- It turns a JSON declaration of your ML problem into generated Python code, sparing you the repetitive boilerplate around data prep and training.
- Is lightwood open source?
- Yes — mindsdb/lightwood is open source, released under the GPL-3.0 license.
- What language is lightwood written in?
- mindsdb/lightwood is primarily written in Python.
- How popular is lightwood?
- mindsdb/lightwood has 510 stars on GitHub and is currently holding steady.
- Where can I find lightwood?
- mindsdb/lightwood is on GitHub at https://github.com/mindsdb/lightwood.