class_docstr: GPT2 with Retriever Model.
  
  A GPT2 model that receives documents from a retriever.
class_docstr_tok: ["GPT2","with","Retriever","Model",".","A","GPT2","model","that","receives","documents","from","a","retriever","."]
docstr: Override to get rid of start token input.
docstr_tok: ["Override","to","get","rid","of","start","token","input","."]
code: def decode_forced(self, encoder_states, ys):
      """
      Override to get rid of start token input.
      """
      if self.add_start_token:
          return super().decode_forced(encoder_states, ys)
      seqlen = ys.size(1)
      inputs = ys.narrow(1, 0, seqlen - 1)
      latent, _ = self.decoder(inputs, encoder_states)
      logits = self.output(latent)
      _, preds = logits.max(dim=2)
      return logits, preds
  
imports: from typing import Optional, Type, Tuple, List, Dict, Any
  import torch
  import torch.nn
  from parlai.agents.fid.fid import FidModel, concat_enc_outs
  from parlai.agents.hugging_face.gpt2 import GPT2Decoder, Gpt2Agent
  from parlai.agents.rag.args import RetrieverType
  from parlai.agents.rag.modules import RagModel
  from parlai.agents.rag.retrievers import Document, BLANK_DOC, SearchQuerySearchEngineRetriever, retriever_factory, RagRetriever
  from parlai.core.dict import DictionaryAgent
  from parlai.core.opt import Opt
  import parlai.utils.logging
  from projects.seeker.agents.seeker_modules import ComboFidSearchQuerySearchEngineRetriever
  from projects.seeker.agents.seeker_modules import combo_fid_retriever_factory, interleave_fid_combo_outputs, ComboFidModel
label_desc: Use image node_id 14 for calling the GPT2WithRetrieverModel obj's underlying member method code with example usage: obj.decode_forced(encoder_states, ys) and returns: logits,  preds, super