Home / Data

Soup

Fine-tune LLMs from one YAML. Layer streaming trains an 8B model on a 4 GB laptop GPU.

FreeShort listing2 views
Visit website

Sign in to rate this tool.

Overview

Soup is a command‑line tool that lets you fine‑tune large language models from a single YAML configuration. It focuses on post‑training steps such as building, expecting, training, x‑ray, merging, bisecting and shipping, all from one interface. The current version is v0.77.0 and runs on Python 3.11‑3.13.

The core workflow starts with `soup init --template chat`, which creates a `soup.yaml` file containing the task, dataset paths, quantization settings and training hyper‑parameters. You then run `soup train` and the CLI handles data pre‑flight checks, selects a fine‑tuning method, writes the final config and derives evaluation data from your own files. The tool supports 23 fine‑tuning methods, including DPO, ORPO, SimPO and KTO, and can apply LoRA adapters with configurable rank, alpha and dropout. If the model you want to fine‑tune is larger than the GPU memory, an opt‑in key streams the frozen base layer by layer from CPU RAM or NVMe and optionally quantizes it to 4‑bit NF4, allowing Llama‑3.1‑8B to train on a 4 GB laptop GPU. The streaming approach keeps peak VRAM bounded by a single decoder layer, and the NF4 quantization reduces the streamed base size by roughly four times.

Soup also includes a migration command that converts configurations from other tools such as LLaMA‑Factory, Axolotl or Unsloth into the Soup format without manual editing. After training, the `ship` command lets you attach a SHIP or DON'T‑SHIP verdict to the generated weights, supporting a simple compliance check before deployment. The project is open source under the Apache‑2.0 license, installs without a PyTorch dependency, and lists integrations with HuggingFace, Ollama, vLLM, DeepSpeed, Unsloth, ONNX, NVIDIA TensorRT, Weights & Biases and FlashAttention.

Key features

  • One‑CLI workflow for data preparation, training, evaluation and model shipping
  • Layer‑wise streaming of the frozen base from RAM or NVMe, enabling 8 B models on 4 GB GPUs
  • Built‑in support for DPO, ORPO, SimPO, KTO and 23 other fine‑tuning methods
  • Automatic migration from LLaMA‑Factory, Axolotl and Unsloth configuration files
  • 17 quantization formats, including 4‑bit NF4 for memory‑efficient training
  • Offline operation with 171 predefined recipes and no vendor lock‑in

Details

Pricing
Free
Category
Data
Suggest an edit

Sign in to suggest an edit.

Pros and cons

Pros

  • Enables fine‑tuning of Llama‑3.1‑8B on very low‑end hardware
  • Handles configuration generation and data validation automatically
  • Provides a clear shipping verdict attached to model checkpoints
  • Open‑source, Apache‑2.0 licensed and Python‑only install

Cons

  • No pricing information is published; the tool is free but cost of hardware is implicit
  • Certain features such as AWQ and GPTQ export have been removed in this release
  • Performance measurements are tied to specific GPU clocks and may not be directly comparable across devices
  • BETA status means some limits (e.g., only transformers, text, plain LoRA) are explicitly noted.

Alternatives