Views
No views yet
u ∈ [0, 1], then piecewise-linearly interpolated along a 7-segment Hamiltonian path through the corners of the RGB cube (black → blue → cyan → green → yellow → red → magenta → white). The inverse projects predicted RGB onto the nearest cube edge.train.clean.100 (read English speech), ~28,000 clips with transcripts.| Base | black-forest-labs/FLUX.2-klein-base-4B |
| Adapter | LoRA, rank 256 on transformer attention + rank 32 on text encoder |
| Resolution | 768 × 768 |
| Batch size | 4 |
| Optimizer | AdamW, lr 1e-4, cosine schedule, 300-step warmup |
| Max steps | 15 000 |
| Mixed precision | bf16 |
| Training data | LibriSpeech train.clean.100, ~28 k transcribed clips |
| Audio params | 16 kHz, n_fft 1024, hop 256, 5-second clips |
| Spectrogram encoding | Linear magnitude → dB clipped [−80, 0] → Hilbert RGB-cube path |
1import torch
2from diffusers import Flux2KleinPipeline
3
4pipe = Flux2KleinPipeline.from_pretrained(
5 "black-forest-labs/FLUX.2-klein-base-4B", torch_dtype=torch.bfloat16,
6).to("cuda")
7pipe.load_lora_weights("phanerozoic/sonic-plantain")
8
9prompt = (
10 'Generate a magnitude spectrogram of speech reading: "hello world". '
11 "Time on horizontal axis, frequency on vertical, energy encoded in RGB along "
12 "a Hilbert path through the color cube: black is silence, blue/cyan is low "
13 "energy, green/yellow is moderate, red/magenta is high, white is full-scale."
14)
15img = pipe(
16 prompt=prompt, height=768, width=768,
17 guidance_scale=4.0, num_inference_steps=20,
18).images[0]decode_spectrogram.py.train.clean.100 split of LibriSpeech ASR corpus is the sole training-data source. LibriSpeech is licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0). The corpus is derived from public-domain audiobook recordings on LibriVox. See http://www.openslr.org/12/ for the original distribution.