Struct rust_bert::pipelines::text_generation::TextGenerationConfig[][src]

pub struct TextGenerationConfig {
Show fields pub model_type: ModelType, pub model_resource: Resource, pub config_resource: Resource, pub vocab_resource: Resource, pub merges_resource: Resource, pub min_length: i64, pub max_length: i64, pub do_sample: bool, pub early_stopping: bool, pub num_beams: i64, pub temperature: f64, pub top_k: i64, pub top_p: f64, pub repetition_penalty: f64, pub length_penalty: f64, pub no_repeat_ngram_size: i64, pub num_return_sequences: i64, pub num_beam_groups: Option<i64>, pub diversity_penalty: Option<f64>, pub device: Device,
}
Expand description

Configuration for text generation

Contains information regarding the model to load, mirrors the GenerateConfig, with a different set of default parameters and sets the device to place the model on.

Fields

model_type: ModelType
Expand description

Model type

model_resource: Resource
Expand description

Model weights resource (default: pretrained BART model on CNN-DM)

config_resource: Resource
Expand description

Config resource (default: pretrained BART model on CNN-DM)

vocab_resource: Resource
Expand description

Vocab resource (default: pretrained BART model on CNN-DM)

merges_resource: Resource
Expand description

Merges resource (default: pretrained BART model on CNN-DM)

min_length: i64
Expand description

Minimum sequence length (default: 0)

max_length: i64
Expand description

Maximum sequence length (default: 20)

do_sample: bool
Expand description

Sampling flag. If true, will perform top-k and/or nucleus sampling on generated tokens, otherwise greedy (deterministic) decoding (default: true)

early_stopping: bool
Expand description

Early stopping flag indicating if the beam search should stop as soon as num_beam hypotheses have been generated (default: false)

num_beams: i64
Expand description

Number of beams for beam search (default: 5)

temperature: f64
Expand description

Temperature setting. Values higher than 1 will improve originality at the risk of reducing relevance (default: 1.0)

top_k: i64
Expand description

Top_k values for sampling tokens. Value higher than 0 will enable the feature (default: 0)

top_p: f64
Expand description

Top_p value for Nucleus sampling, Holtzman et al.. Keep top tokens until cumulative probability reaches top_p (default: 0.9)

repetition_penalty: f64
Expand description

Repetition penalty (mostly useful for CTRL decoders). Values higher than 1 will penalize tokens that have been already generated. (default: 1.0)

length_penalty: f64
Expand description

Exponential penalty based on the length of the hypotheses generated (default: 1.0)

no_repeat_ngram_size: i64
Expand description

Number of allowed repetitions of n-grams. Values higher than 0 turn on this feature (default: 3)

num_return_sequences: i64
Expand description

Number of sequences to return for each prompt text (default: 1)

num_beam_groups: Option<i64>
Expand description

Number of beam groups for diverse beam generation. If provided and higher than 1, will split the beams into beam subgroups leading to more diverse generation.

diversity_penalty: Option<f64>
Expand description

Diversity penalty for diverse beam search. High values will enforce more difference between beam groups (default: 5.5)

device: Device
Expand description

Device to place the model on (default: CUDA/GPU when available)

Implementations

impl TextGenerationConfig[src]

pub fn new(
    model_type: ModelType,
    model_resource: Resource,
    config_resource: Resource,
    vocab_resource: Resource,
    merges_resource: Resource
) -> TextGenerationConfig
[src]

Instantiate a new text generation configuration of the supplied type.

Arguments

  • model_type - ModelType indicating the model type to load (must match with the actual data to be loaded!)
  • model_resource - The Resource pointing to the model to load (e.g. model.ot)
  • config_resource - The `Resource’ pointing to the model configuration to load (e.g. config.json)
  • vocab_resource - The `Resource’ pointing to the tokenizer’s vocabulary to load (e.g. vocab.txt/vocab.json)
  • merges_resource - The Resource pointing to the tokenizer’s merge file or SentencePiece model to load (e.g. merges.txt).

Trait Implementations

impl Default for TextGenerationConfig[src]

fn default() -> TextGenerationConfig[src]

Returns the “default value” for a type. Read more

impl From<TextGenerationConfig> for GenerateConfig[src]

fn from(config: TextGenerationConfig) -> GenerateConfig[src]

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> Pointable for T

pub const ALIGN: usize

The alignment of pointer.

type Init = T

The type for initializers.

pub unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more

pub unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more

pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more

pub unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V