#1212th of 31 in Training and fine-tuning

soup

CLI for fine-tuning and post-training LLMs from a single YAML config

Stars
9.5k
License
Apache-2.0
Last commit
Oct 2026
Last release
Oct 2026
Language
Python
Stars, last 29 weeks+9,512
1 Apr 2026: 22 stars8 Apr 2026: 32 stars15 Apr 2026: 47 stars22 Apr 2026: 49 stars29 Apr 2026: 51 stars6 May 2026: 53 stars13 May 2026: 56 stars20 May 2026: 58 stars27 May 2026: 61 stars3 Jun 2026: 63 stars10 Jun 2026: 66 stars17 Jun 2026: 66 stars24 Jun 2026: 66 stars1 Jul 2026: 67 stars8 Jul 2026: 70 stars15 Jul 2026: 70 stars22 Jul 2026: 70 stars29 Jul 2026: 75 stars5 Aug 2026: 306 stars12 Aug 2026: 674 stars19 Aug 2026: 2,440 stars26 Aug 2026: 3,161 stars2 Sept 2026: 4,942 stars9 Sept 2026: 5,911 stars16 Sept 2026: 6,671 stars23 Sept 2026: 7,039 stars30 Sept 2026: 7,841 stars7 Oct 2026: 8,323 stars14 Oct 2026: 9,050 stars21 Oct 2026: 9,534 stars

22 on 1 Apr 20269,534 on 21 Oct 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Soup is a Python CLI that runs LoRA/QLoRA fine-tuning and preference or RL post-training (SFT, DPO, GRPO, PPO, KTO, ORPO and others) from one soup.yaml. It also covers batch inference, an OpenAI-compatible server, merge and GGUF export, and a local web dashboard. An opt-in beta layer-streaming mode trains an 8B NF4 model in about 3.3 GB peak VRAM.

Who it is for: Engineers fine-tuning open LLMs on their own GPUs, including small laptop cards

Strengths

  • Many tasks in one config: SFT, DPO, GRPO, PPO, KTO, ORPO, SimPO, IPO, vision, audio
  • Layer streaming trains Llama-3.1-8B NF4 in 3.32 GB peak on a 4 GB laptop GPU
  • Same tool merges adapters, exports GGUF, serves an OpenAI-compatible API, has a web UI
  • Light install without PyTorch for data tools; 100+ ready-made model recipes

Weaknesses

  • Python 3.10-3.12 only; 3.13+ is unsupported
  • Layer streaming is opt-in and still beta; a correctness repair changed its benchmark numbers
  • Recent releases are breaking: unused settings and unknown config keys now fail at load
  • AWQ and GPTQ export are deprecated and slated for removal in v0.77

What it needs

  • GPU optional
  • Docker + Compose
  • Needs PyTorch, transformers, peft, trl, HuggingFace Hub
  • Models: HuggingFace Hub causal LMs, Llama 3.x/4, Qwen 2.5/3, Gemma 3, Mistral
  • port 7860

Also in Training and fine-tuning

See all 31
Also in Training and fine-tuning
RankProjectScore
1unslothDesktop and web app to run, fine-tune and export open models Live demo ↗ (opens in a new tab)78.4k starsApache-2.088 out of 100
2deepspeedPyTorch library for distributed training of large models with ZeRO43.3k starsApache-2.084 out of 100
3verlReinforcement learning training library for LLM post-training with PPO and GRPO24k starsApache-2.084 out of 100
#4peftPython library for LoRA and other parameter-efficient fine-tuning of Transformers models Live demo ↗ (opens in a new tab)21.8k starsApache-2.084 out of 100
#5trlPost-training library with SFT, DPO, GRPO and KTO trainers19.6k starsApache-2.081 out of 100