Metadata-Version: 2.5
Name: blut-core
Version: 0.1.0
Summary: Shared Python runtime for BLUT cookbooks: run context, metric log, status wire, run manifest, checkpoint contract, ingredient registry.
Project-URL: Repository, https://github.com/Quitetall/blut-cookbooks
Author: Brian Lam
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: blut,cookbook,metrics,provenance,training
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Provides-Extra: parquet
Requires-Dist: pyarrow>=15; extra == 'parquet'
Provides-Extra: torch
Requires-Dist: torch>=2.5; extra == 'torch'
Description-Content-Type: text/markdown

# blut-core

The shared Python runtime for [BLUT](https://github.com/Quitetall/blut) cookbooks:
domain-agnostic building blocks any cookbook can reuse.

- `runctx` — run identity and filesystem anchors from the BLUT environment
- `MetricLog` — atomic per-epoch CSV/Parquet metric writer
- `read_metric` — verbatim metric/log reader (no model in the path)
- `status` — the StatusUpdate wire protocol
- `RunManifest` — run provenance, written even on crash
- `checkpoint` — corruption-safe save/load and the resume payload contract
- `sysgauge` — best-effort GPU/host snapshot for the metric stream
- `async_io` — bounded, backpressured delivery for persistence work
- the ingredient specs and builders the generic training recipes build on

`torch` is imported lazily, inside `checkpoint` and `sysgauge` only, so
`import blut_core` stays cheap. Install `blut-core[torch]` if you call those, and `blut-core[parquet]` for
Parquet metric logs.

Apache-2.0. Published from the `blut-cookbooks` repository.
