About Ludwig
Ludwig is an open source declarative deep learning framework for building, fine tuning and deploying custom models. Instead of writing training loops, users describe a model in a single YAML configuration file covering inputs, encoders, outputs and training settings, and Ludwig builds and runs it on top of PyTorch.
It is aimed at data scientists and machine learning engineers who want control over model architecture without the engineering overhead of data loaders and distributed setup. A single model can combine tabular data, text, images, audio and time series, and train multiple outputs at once. The LLM fine tuning suite covers SFT, DPO, KTO, ORPO and GRPO, with LoRA, QLoRA, DoRA and VeRA adapters and 4 bit quantization, and multi adapter merging with TIES, DARE or SVD. Adding a Ray backend line to the configuration turns a local job into a distributed one, with DeepSpeed and FSDP supported. Built in hyperparameter optimization uses Ray Tune and Optuna.
For deployment, one command serves a model as a REST API, with export to SafeTensors, ONNX or torch.export, prebuilt Docker images for CPU, GPU and Ray, and upload to the HuggingFace Hub. The project is installed with pip, is released under the Apache 2 license, and is hosted by the Linux Foundation AI and Data. It is free, and the site lists no paid plans.