(
self,
x: torch.Tensor,
offset: Union[int,
torch.Tensor] = 0)
| 216 | self.scale = scale |
| 217 | |
| 218 | def forward( |
| 219 | self, |
| 220 | x: torch.Tensor, |
| 221 | offset: Union[int, |
| 222 | torch.Tensor] = 0) -> Tuple[torch.Tensor, torch.Tensor]: |
| 223 | |
| 224 | pos_emb = self.position_encoding(offset, x.size(1), True) |
| 225 | pos_emb = pos_emb.unsqueeze(2) # [1,seq, 1, head_dim//2] |
| 226 | # NOTE(Mddct): some model don't scale |
| 227 | if self.scale: |
| 228 | x = x * self.xscale |
| 229 | return self.dropout(x), pos_emb |
| 230 | |
| 231 | def position_encoding(self, |
| 232 | offset: Union[int, torch.Tensor], |
nothing calls this directly
no test coverage detected