diff --git a/src/soup_cli/utils/layer_shard.py b/src/soup_cli/utils/layer_shard.py index c3faa07..3d3cea7 100644 --- a/src/soup_cli/utils/layer_shard.py +++ b/src/soup_cli/utils/layer_shard.py @@ -1,4 +1,4 @@ -"""soup train --stream-layers — checkpoint sharder (v0.72.0 BETA). +"""training.stream_layers — checkpoint sharder (v0.72.0 BETA). Rewrites an HF checkpoint into one ``layer_NNN.safetensors`` per decoder layer plus a single ``extras.safetensors`` (embeddings / final norm / untied head), diff --git a/src/soup_cli/utils/layer_stream.py b/src/soup_cli/utils/layer_stream.py index e78f7c8..8f5acab 100644 --- a/src/soup_cli/utils/layer_stream.py +++ b/src/soup_cli/utils/layer_stream.py @@ -1,4 +1,4 @@ -"""soup train --stream-layers — layer streaming planner (v0.72.0 BETA). +"""training.stream_layers — layer streaming planner (v0.72.0 BETA). The pure half: tier choice, pinned-vs-pageable decision, the architecture allowlist, and the VRAM / throughput arithmetic. **No top-level torch** — this @@ -856,4 +856,4 @@ def render_stream_panel(plan: StreamPlan, extra_lines: Sequence[str] = ()) -> Pa lines.extend(extra_lines) for note in plan.notes: lines.append(f" [yellow]![/] {note}") - return Panel("\n".join(lines), title="soup train --stream-layers", border_style="cyan") + return Panel("\n".join(lines), title="training.stream_layers", border_style="cyan") diff --git a/src/soup_cli/utils/layer_stream_runtime.py b/src/soup_cli/utils/layer_stream_runtime.py index 4e56d3c..dc89782 100644 --- a/src/soup_cli/utils/layer_stream_runtime.py +++ b/src/soup_cli/utils/layer_stream_runtime.py @@ -1,4 +1,4 @@ -"""soup train --stream-layers — streaming runtime (v0.72.0 BETA). +"""training.stream_layers — streaming runtime (v0.72.0 BETA). The torch half: pre-allocated VRAM buffer pool, the CPU-RAM weight source, the prefetch scheduler, the layer wrapper, and the meta-device model build. diff --git a/tests/test_v07202.py b/tests/test_v07202.py index bbe69db..917f03a 100644 --- a/tests/test_v07202.py +++ b/tests/test_v07202.py @@ -1501,7 +1501,7 @@ training: class TestReportedParameterCount: """Found by the step-6 smoke, not by any unit test: a real - ``soup train --stream-layers`` with ``quantization: 4bit`` printed + ``training.stream_layers`` run with ``quantization: 4bit`` printed "878,154,048 total" for SmolLM2-135M (true count 134,515,008), while the RESIDENT NF4 path printed 134,975,808. PEFT special-cases ``Params4bit`` as ``numel * 2 * quant_storage.itemsize`` — correct for a resident one, whose