Skip to content

Commit 6a3fef1

Browse files
committed
Fix non-deterministic inference
forgot to clear buffer property ref #38
1 parent cda1ca4 commit 6a3fef1

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

deepvoice3_pytorch/deepvoice3.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -487,8 +487,17 @@ def incremental_forward(self, encoder_out, text_positions, speaker_embed=None,
487487
return outputs, alignments, dones, decoder_states
488488

489489
def start_fresh_sequence(self):
490-
for conv in self.convolutions:
491-
conv.clear_buffer()
490+
_clear_modules(self.preattention)
491+
_clear_modules(self.convolutions)
492+
self.last_conv.clear_buffer()
493+
494+
495+
def _clear_modules(modules):
496+
for m in modules:
497+
try:
498+
m.clear_buffer()
499+
except AttributeError as e:
500+
pass
492501

493502

494503
class Converter(nn.Module):

deepvoice3_pytorch/nyanko.py

+1
Original file line numberDiff line numberDiff line change
@@ -342,6 +342,7 @@ def incremental_forward(self, encoder_out, text_positions,
342342
def start_fresh_sequence(self):
343343
_clear_modules(self.audio_encoder_modules)
344344
_clear_modules(self.audio_decoder_modules)
345+
self.last_conv.clear_buffer()
345346

346347

347348
def _clear_modules(modules):

0 commit comments

Comments
 (0)