LDLMIn construction

Size
306M trained
Published
Meshchaninov et al. · May 2026
Line
Diffusion language model
View
Architecture
Source

LDLM @ e18c42a, not yet public · arXiv:2605.07933v1 · OpenWebText · 1024 · checkpoint, tokenizer and saved statistics not verifiedHow to read

Sampler

Latents at time tz[B, T, 768]Previous estimateẑsc[B, T, 768]Adaptive time grid1,024 stepst[B]ẑ0[B, T, 768]
ϵ^\hat\epsilon==(zt−αtz^0)/σt({\htmlData{light=state}{z_t}}-\alpha_t{\htmlData{light=prediction denoiser}{\hat z_0}})/\sigma_tss==−ϵ^/σt-\hat\epsilon/\sigma_tff==−12βtzt−βts-\tfrac12\beta_t{\htmlData{light=state}{z_t}}-\beta_tsmt′{\htmlData{light=step-mean mean}{m_{t'}}}==zt+f (t′−t){\htmlData{light=state}{z_t}}+f\,(t'-{\htmlData{light=time grid}{t}})zt′{\htmlData{light=next-state diffuse}{z_{t'}}}==mt′+βt (t−t′)  ξ{\htmlData{light=step-mean mean}{m_{t'}}}+\sqrt{\beta_t\,({\htmlData{light=time grid}{t}}-t')}\;\xi
mt′[B, T, 768]zt′[B, T, 768]starts as Gaussian noisereplaced by the next latentsstarts as zerosreplaced by this call’s predictionthe next call’s latentsreturned by the last callcall 1 of 1,024 · m: the step’s mean, before its noise · t′: the grid’s next time · α, σ, β: the schedule at t · ξ: fresh Gaussian noise

Sampler

Euler step

×

no parameters

Move the latents along the drift for the length of the time step.

mt′=zt+f (t′−t){\htmlData{light=step-mean mean}{m_{t'}}}={\htmlData{light=state}{z_t}}+{\htmlData{light=drift}{f}}\,(t'-{\htmlData{light=time grid}{t}})
in
ztz_t [B batch, T positions, 768 d]ff [B batch, T positions, 768 d]tt [B batch]
out
mt′m_{t'} [B batch, T positions, 768 d]
Explanation

The time step is negative: the grid runs from noise towards data.

Sources1

Direct evidence

One Euler–Maruyama step: the mean is x + drift · dt, and the next state adds diffusion · √(−dt) · noise; the clean estimate is returned with them.

The implementation, pinned at revision e18c42acdfb7, not yet public