pub mod bnf;
pub mod mirostat;
pub mod nucleus;
pub mod typical;
mod radix;
pub trait Sampler {
fn init(&mut self, model_tokens: &[u16]);
fn transform(&self, output: &mut [f32]);
fn sample(&mut self, probs: &[f32]) -> u16;
}
pub trait Formatter {
fn transform(&self, output: &mut [f32]);
fn update(&mut self, token: u16) -> bool;
}