data
Seq2SeqLMOutput
extends
ModelOutputSeq2SeqLMOutput(logits: Tensor, loss: Tensor | None = None, past_key_values: EncoderDecoderCache | tuple[tuple[Tensor, Tensor], ...] | None = None, decoder_hidden_states: tuple[Tensor, ...] | None = None, decoder_attentions: tuple[Tensor, ...] | None = None, encoder_last_hidden_state: Tensor | None = None, encoder_hidden_states: tuple[Tensor, ...] | None = None, encoder_attentions: tuple[Tensor, ...] | None = None)Output of any encoder-decoder seq2seq language model.
Attributes
logitsTensorDecoder vocabulary logits, shape
(B, T_dec, vocab_size).loss(Tensor or None, optional)Scalar cross-entropy loss when
labels were supplied (label
smoothing / shift handled internally).Per-layer decoder
(key, value) cache for autoregressive
decoding.decoder_hidden_states(tuple[Tensor, ...] or None, optional)Per-layer decoder hidden states.
decoder_attentions(tuple[Tensor, ...] or None, optional)Per-layer decoder self-attention weights.
encoder_last_hidden_state(Tensor or None, optional)Final encoder output, cached so callers can run multiple decoder
passes (e.g. beam search) without re-encoding.
encoder_hidden_states(tuple[Tensor, ...] or None, optional)Per-layer encoder hidden states.
encoder_attentions(tuple[Tensor, ...] or None, optional)Per-layer encoder self-attention weights.
Notes
Produced by TransformerForSeq2SeqLM today; T5, BART, and mBART
are the natural future consumers. Caching the encoder output is the
standard pattern for batched generation.
Examples
>>> model = AutoModelForSeq2SeqLM.from_pretrained("transformer_base_seq2seq")
>>> out = model(input_ids=src, decoder_input_ids=tgt)
>>> out.logits.shape
(1, 16, 32000)Used by 2
Constructors
1dunder
__init__
→None__init__(logits: Tensor, loss: Tensor | None = None, past_key_values: EncoderDecoderCache | tuple[tuple[Tensor, Tensor], ...] | None = None, decoder_hidden_states: tuple[Tensor, ...] | None = None, decoder_attentions: tuple[Tensor, ...] | None = None, encoder_last_hidden_state: Tensor | None = None, encoder_hidden_states: tuple[Tensor, ...] | None = None, encoder_attentions: tuple[Tensor, ...] | None = None)