Hi all - just a quick clarification about causal masks in GPT2 and BertLMHeadModel.  Its clear that GPT2 automatically adds causal masks (lines 115 and 151 in modeling_gpt2.py).  I believe that this should be the case for BertLMHeadModel as well - my understanding is that it is mainly meant to be used as a decoder in the EncoderDecoder construct (please correct me if this is not the case).  However, I am having a hard time finding where this occurs in the source.  Are causal masks automatically added? I suspect I am just missing where this happens in the code as the attention_mask input (meant for masking padding tokens) wouldn’t take care of this.  Thanks!