StackMap
Subscribe
Explore / Soup
MakazhanAlpamys

Soup

Fine-tune and post-train LLMs from one YAML: QLoRA, DPO/ORPO/SimPO/KTO — layer streaming trains an 8B model in 3.3GB VRAM on a laptop GPU, bit-exact against a resident run.

396 47 Python Apache-2.0updated yesterday
View on GitHubDispute this mapping →
Curator's take

The layer-streaming trick is the story: the frozen base never sits in VRAM, so preference tuning that normally needs a second model copy runs on a 4GB laptop — and every release ships bit-exactness proofs plus a Zenodo paper, which is more rigor than most tuning tools at ★396. When NOT: multi-GPU serious runs and exotic architectures belong to llamafactory; streaming is still BETA and single-GPU-minded, and the project is one release cycle old.

Mapped by ShipWithAI editors · links verified
README.md

Soup

Soup

Fine-tune and post-train LLMs in one command. No SSH, no config hell.

Website · Quick Start · Config · Docs · Commands · Models · Discord

PyPI Downloads Python 3.10+ Apache-2.0 License Tests CI Website Discord DOI: 10.5281/zenodo.21771064


Soup turns the pain of LLM fine-tuning into a simple workflow. One config, one command, done.

pip install "soup-cli[train]"   # add [train] to fine-tune; bare `soup-cli` is the light CLI
soup init --template chat
soup train

Fine-tune an 8B model on a 4 GB laptop GPU. Layer streaming keeps the frozen base out of VRAM and feeds it to the GPU one decoder layer at a time. Measured on an RTX 3050 Laptop 4 GB: Llama-3.1-8B-Instruct + NF4 at 119.6 tok/s, 3.32 GB peak — bit-exact against a normal resident run. Opt-in (stream_layers: true) and still BETA — how it works · all measurements · paper

soup train pre-flight for Llama-3.1-8B on a 4 GB card: a 3.60 GB base store pinned in RAM across 32 layers and two 113 MB VRAM buffers, then a measured peak of 3.32 GB at 119.6 tok/s, stopping short of the 4 GB line
Llama-3.1-8B-Instruct + NF4, LoRA, batch 1, seq 512 on an RTX 3050 Laptop 4 GB — 3.32 GB peak, 119.6 tok/s. Full video (90s)

Why Soup?

Training LLMs is still painful. Even experienced teams spend 30-50% of their time fighting infrastructure instead of improving models. Soup fixes that.

  • Zero SSH. Never SSH into a broken GPU box again.
  • One config. A simple YAML file is all you need.
  • Auto everything. Batch size, GPU detection, quantization — handled.
  • Works locally. Train on your own GPU with QLoRA. No cloud required.

What's New

v0.72.4 — align on a laptop: DPO, ORPO, SimPO and KTO over layer streaming. Layer streaming keeps the frozen base out of VRAM and feeds it to the GPU one decoder layer at a time. It used to support supervised fine-tuning only; now it runs the preference losses too.

  • DPO's reference model is free. DPO needs a reference to co

Continue your stack

What teams reach for next — and why each earns a place beside Soup. Ranked by curator confidence.