Solved by tom in post #3 
              
              
                Comparing 
output, hidden = model(examples.to(“cpu”), hidden)

and 
at::Tensor output = module->forward({indata1, tuple}).toTensor();

you would not expect the .toTensor() on the output to succeed, but you probably have a tuple that you need to unpack. This is why isTensor fails. 
Best regards 
Thom…