How makazhanalpamys/soup works
Soup is a command-line LLM fine-tuning and post-training product, with a local Web UI and optional integrations. Its principal workflow is user supplies a configuration and training data, then invokes training to produce a tuned model; the repository also exposes data preparation, evaluation, serving, model management, trace ingestion, and automation capabilities. The graph includes indexed core modules and documented features. Edges are limited to relationships visible in the excerpts/index or README; unsampled wiring is not inferred.
Main entry points: cli.py Soup CLI · dispatch.py Trainer Runtime · app.py Web UI · ingest.py Trace Ingestion
Components 31
User Entry
- Soup CLI
src/soup_cli/cli.py - Web UI
src/soup_cli/ui/app.py - Terminal Helpers
src/soup_cli/utils/terminal.py
Data and Config
- Config Schema
src/soup_cli/config/schema.py - Data Commands
src/soup_cli/commands/data.py - Data Pipeline
src/soup_cli/utils/data_pipeline.py - Training Data Loader
src/soup_cli/data/loader.py - Trace Ingestion
src/soup_cli/commands/ingest.py - Trace Parsers
src/soup_cli/utils/ingest_sources.py - Path Safety
src/soup_cli/utils/paths.py
Training Runtime
- Trainer Runtime
src/soup_cli/trainer/dispatch.py - GPU Sizing
src/soup_cli/utils/gpu.py - Layer Streaming
src/soup_cli/utils/layer_stream.py - Mixed Precision
src/soup_cli/utils/mixed_precision.py - Quantization
src/soup_cli/utils/quant_menu.py - DeepSpeed Support
src/soup_cli/utils/deepspeed.py - MoLE Trainer
src/soup_cli/trainer/mole_routing.py - MoLE Routing
src/soup_cli/utils/mole_routing.py - Compatibility Features
src/soup_cli/utils/v028_features.py
Model Operations
- Evaluation
src/soup_cli/eval - Model Serving
src/soup_cli/commands/serve.py - Model Registry
src/soup_cli/registry/store.py - Auto-Distillation
src/soup_cli/autodistill/mlx_worker.py - Autopilot
src/soup_cli/commands/autopilot.py - Run Provenance
src/soup_cli/utils/run_provenance.py - Recipe Catalog
src/soup_cli/recipes/catalog.py - Eval Scheduling
src/soup_cli/utils/eval_schedule.py
Extensions
- MCP Server
src/soup_cli/mcp_server/server.py - Cloud Backends
src/soup_cli/cloud - Network Guard
src/soup_cli/utils/net_guard.py
Other components
- Engineer
Connections 31
- Engineer → Soup CLI: runs commands
README.md - Soup CLI → Data Commands: registers
src/soup_cli/cli.py - Soup CLI → Web UI: registers
src/soup_cli/cli.py - Soup CLI → Trace Ingestion: registers
src/soup_cli/cli.py - Engineer → Config Schema: configures
README.md - Engineer → Trainer Runtime: starts training
README.md - Trainer Runtime → Config Schema: reads schema
- Trainer Runtime → GPU Sizing: uses sizing
- Trainer Runtime → Layer Streaming: uses streaming
- Trainer Runtime → Mixed Precision: uses precision
- Trainer Runtime → Quantization: uses quantization
- Trainer Runtime → DeepSpeed Support: uses backend
- Trainer Runtime → Run Provenance: records run
- MoLE Trainer → MoLE Routing: uses routing
src/soup_cli/trainer/mole_routing.py - Data Commands → Data Pipeline: supports data work
- Data Commands → Path Safety: validates paths
- Trace Ingestion → Trace Parsers: parses sources
src/soup_cli/commands/ingest.py - Trace Ingestion → Path Safety: checks containment
src/soup_cli/commands/ingest.py - Trace Ingestion → Network Guard: pulls securely
- Web UI → Config Schema: loads config
src/soup_cli/ui/app.py - Web UI → Training Data Loader: loads data
src/soup_cli/ui/app.py - Web UI → Recipe Catalog: reads recipes
src/soup_cli/ui/app.py - Web UI → Model Registry: tracks runs
src/soup_cli/ui/app.py - Soup CLI → Evaluation: registers commands
- Soup CLI → Model Serving: registers command
src/soup_cli/cli.py - Soup CLI → Model Registry: registers commands
src/soup_cli/cli.py - Soup CLI → Autopilot: registers command
src/soup_cli/cli.py - Soup CLI → MCP Server: registers command
src/soup_cli/cli.py - Soup CLI → Cloud Backends: offers backends
- Trainer Runtime → Eval Scheduling: schedules evaluation
- Trainer Runtime → Compatibility Features: uses compatibility