Skip to main content

MultiSampler

Trait MultiSampler 

Source
pub trait MultiSampler: Sampler {
    // Required methods
    fn sample_multiple(
        &self,
        logits: &[f32],
        num_samples: usize,
        rng: &mut dyn RngCore,
    ) -> Result<Vec<TokenId>, FerrumError>;
    fn sample_with_probabilities(
        &self,
        logits: &[f32],
        rng: &mut dyn RngCore,
    ) -> Result<(TokenId, Vec<f32>), FerrumError>;
}
Expand description

Multi-sample capability for beam search and parallel sampling

Required Methods§

Source

fn sample_multiple( &self, logits: &[f32], num_samples: usize, rng: &mut dyn RngCore, ) -> Result<Vec<TokenId>, FerrumError>

Sample multiple tokens at once

Source

fn sample_with_probabilities( &self, logits: &[f32], rng: &mut dyn RngCore, ) -> Result<(TokenId, Vec<f32>), FerrumError>

Sample with probabilities for each token

Implementors§