github MakazhanAlpamys/Soup v0.22.0
v0.22.0 — Training Profiler + Multi-Adapter Serving

latest releases: v0.75.2, v0.75.1, v0.75.0...
6 months ago

What's New

soup profile — Know Before You Train

Estimate GPU memory, training speed, and get hardware recommendations before starting a training run:

soup profile --config soup.yaml
soup profile --config soup.yaml --gpu a100
soup profile --config soup.yaml --json

Multi-Adapter Serving

Serve a base model with multiple LoRA adapters and switch between them per-request:

soup serve --model ./base --adapters chat=./chat-adapter code=./code-adapter
curl localhost:8000/v1/chat/completions -d '{"messages": [...], "adapter": "code"}'
curl localhost:8000/v1/adapters  # list loaded adapters

soup data sample — Intelligent Dataset Sampling

Sample subsets using random, diverse (TF-IDF + K-means clustering), or hard (longest examples) strategies:

soup data sample data.jsonl --n 1000
soup data sample data.jsonl --n 1000 --strategy diverse
soup data sample data.jsonl --pct 10 --strategy hard

soup adapters — Adapter Management

Scan, inspect, and compare LoRA adapters:

soup adapters list ./output/
soup adapters info ./output/checkpoint-500/
soup adapters compare adapter1/ adapter2/

Security

  • Multi-adapter: path traversal protection, name validation, no path disclosure
  • Data sample: output path confinement
  • Adapter selection: unknown adapter → 404 (no name leakage)

Install / Upgrade

pip install --upgrade soup-cli

Stats

  • 1890 tests, 66 test files, 65.5% coverage
  • Full CI: ruff lint + pytest on Python 3.9/3.11/3.12 × ubuntu/windows/macos

Don't miss a new Soup release

NewReleases is sending notifications on new releases.