# helena
Core types and component interfaces for **helena**, a latent data-to-waveform
generation platform: it learns to turn structured source data into audio by
predicting compressed audio latents that a frozen neural codec decodes.
This crate is the foundation the rest of the platform builds on. It holds the
*vocabulary every other crate speaks* — the data structures that flow through the
pipeline and the traits the swappable components implement — and nothing that
pulls in a tensor backend, a neural network, or an FFT. It is host-side,
`serde`-friendly, and dependency-light by design.
```text
source data ──▶ DataEncoder ──▶ ConditioningLatents ──▶ ConditionalGenerator
│
AudioLatent / tokens
│
AudioCodec::decode
▼
Waveform
```
## What's here
- **Pipeline data** — `Tensor` (a host-side, serde-friendly wrapper over Burn's
`TensorData`), `Waveform`, the conditioning and audio latents
(`ConditioningLatents`, `AudioLatent`), and the experiment/generation config and
manifest records.
- **Component seams** — the three traits the platform is built to swap parts
behind: `DataEncoder`, `AudioCodec`, and `ConditionalGenerator`. They are
backend-agnostic: a model's tensor backend never leaks into its callers.
- **The diffusion kernel** — variance-preserving v-prediction levels, a cosine
schedule, classifier-free-guidance scheduling, and Min-SNR loss weighting.
- **Subsystems behind their modules** — generator-output diagnostics under
`eval`, streaming statistics under `stats`, content hashing under `hash`. The
crate root stays the vocabulary; these are reached through their module path.
## Backend
The tensor backend is [Burn](https://burn.dev). helena stays backend-agnostic by
speaking Burn's host-side `TensorData` at its boundaries, so latents serialize,
hash, and disk-cache without a device. Models in the (currently unpublished)
training and inference crates are generic over `B: Backend` and convert to
`Tensor<B, D>` at their edges.
## Status
Pre-1.0 and evolving; the public API may change between `0.x` releases. The other
helena crates (data, model, train, infer, eval, cli) are not yet published.
## License
AGPL-3.0-only.