fairseq/sequence_generator.py

Killed 0 out of 11 mutants

Survived

Survived mutation testing. These mutants show holes in your test suite.

Mutant 22

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -93,7 +93,6 @@
         self.model.cuda()
         return self
 
-    @torch.no_grad()
     def forward(
         self,
         sample: Dict[str, Dict[str, Tensor]],

Mutant 23

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -112,7 +112,7 @@
         return self._generate(sample, prefix_tokens, bos_token)
 
     # TODO(myleott): unused, deprecate after pytorch-translate migration
-    def generate_batched_itr(self, data_itr, beam_size=None, cuda=False, timer=None):
+    def generate_batched_itr(self, data_itr, beam_size=None, cuda=True, timer=None):
         """Iterate over a batched dataset and yield individual translations.
         Args:
             cuda (bool, optional): use GPU for generation

Mutant 24

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -144,7 +144,6 @@
                 )
                 yield id, src, ref, hypos[i]
 
-    @torch.no_grad()
     def generate(self, models, sample: Dict[str, Dict[str, Tensor]], **kwargs):
         """Generate translations. Match the api of other fairseq generators.
 

Mutant 25

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -688,7 +688,6 @@
     def max_decoder_positions(self):
         return min([m.max_decoder_positions() for m in self.models])
 
-    @torch.jit.export
     def forward_encoder(self, net_input: Dict[str, Tensor]):
         if not self.has_encoder():
             return None

Mutant 26

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -697,7 +697,6 @@
             for model in self.models
         ]
 
-    @torch.jit.export
     def forward_decoder(
         self,
         tokens,

Mutant 27

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -703,7 +703,7 @@
         tokens,
         encoder_outs: List[EncoderOut],
         incremental_states: List[Dict[str, Dict[str, Optional[Tensor]]]],
-        temperature: float = 1.0,
+        temperature: float = 2.0,
     ):
         log_probs = []
         avg_attn: Optional[Tensor] = None

Mutant 28

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -760,7 +760,6 @@
             avg_attn.div_(self.models_size)
         return avg_probs, avg_attn
 
-    @torch.jit.export
     def reorder_encoder_out(self, encoder_outs: Optional[List[EncoderOut]], new_order):
         """
         Reorder encoder output according to *new_order*.

Mutant 29

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -782,7 +782,6 @@
             )
         return new_outs
 
-    @torch.jit.export
     def reorder_incremental_state(
         self,
         incremental_states: List[Dict[str, Dict[str, Optional[Tensor]]]],

Mutant 30

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -797,7 +797,7 @@
 
 
 class SequenceGeneratorWithAlignment(SequenceGenerator):
-    def __init__(self, models, tgt_dict, left_pad_target=False, **kwargs):
+    def __init__(self, models, tgt_dict, left_pad_target=True, **kwargs):
         """Generates translations of a given source sentence.
 
         Produces alignments following "Jointly Learning to Align and

Mutant 31

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -811,7 +811,6 @@
         super().__init__(EnsembleModelWithAlignment(models), tgt_dict, **kwargs)
         self.left_pad_target = left_pad_target
 
-    @torch.no_grad()
     def generate(self, models, sample, **kwargs):
         finalized = super()._generate(sample, **kwargs)
 

Mutant 32

--- fairseq/sequence_generator.py
+++ fairseq/sequence_generator.py
@@ -894,8 +894,6 @@
             avg_attn.div_(len(self.models))
         return avg_attn
 
-
-@torch.jit.script
 class BeamContainer(object):
     def __init__(self, score: float, elem: Dict[str, Tensor]):
         self.score = score